1仕組みと動作原理
描画前に「詳細なコンテンツ分析」を実施:分析フレームワークに従って analysis.md(対象読者、提供価値、コアテーマ、登場人物とストーリーアーク、コンテンツシグナル)を作成し、シグナルに基づいて art/tone/layout およびページ数を推奨します。
Deep analysis framework for transforming source content into effective visual storytelling.
スタイルは art(6) × tone(7) × layout(7) の3次元に preset レイヤーを加えた構成:preset は単なる art+tone のエイリアスにとどまらず、追加のルール(例:ohmsha では「トーキングヘッド」の禁止、視覚的メタファーの必須化など)も適用されます。
**Preset vs Art+Tone**: Presets include special rules beyond art+tone.
キャラクターの一貫性は「キャラクター設定シート + 参照画像」によりエンジニアリング:まずページ間をまたぐ --ref として characters/characters.png を生成し、バックエンドが --ref をサポートしていない場合は各ページのプロンプトにキャラクター説明を埋め込む方式にフォールバックします。
| Exists | Supported | Pass sheet as `--ref` on every page |
ページ生成には厳格な依存関係の順序とバッチ戦略が存在:まずキャラクターシートを生成し、その後ページをバッチでディスパッチします。各ページのプロンプトはディスクに書き込まれてから初めてバックエンドを呼び出すことができます。
Honor workflow dependencies first: generate `characters/characters.png` before pages that use it as a reference.
ページをPDFに結合する実行可能スクリプトを同梱:bun で merge-to-pdf.ts を実行し、pdf-lib でドキュメントを構築、画像の実際の寸法に合わせてページを作成し、Bun.write でディスクに保存します。
const pdfDoc = await PDFDocument.create();
全体を再実行しない部分ワークフローに対応:絵コンテのみ、プロンプトのみ、画像のみの出力や、特定ページの再生成が可能です。
| `--regenerate N` | Regenerate specific page(s) only (e.g., `3` or `2,5,8`) |
再生成前のバックアップを義務化:既存のプロンプトと画像には統一して -backup-YYYYMMDD-HHMMSS サフィックスを付与してリネームし、比較可能な過去バージョンを保持します。
**Backup rule**: If `characters/characters.png` exists, rename to `characters/characters-backup-YYYYMMDD-HHMMSS.png`
対話言語はパイプライン全体で一貫して維持:絵コンテ、プロンプト、選択肢、進捗フィードバックはすべてユーザーの入力言語または保存された希望言語を使用します。
**Rule**: Use user's input language or saved language preference for ALL interactions:
2コア機能
3外部依存関係
| Kind | Dependency / Endpoint |
|---|---|
| cli | bun / npx(${BUN_X} 运行时,跑 scripts/merge-to-pdf.ts) |
| package | pdf-lib(脚本内 import,用于建 PDF) |
| cli | sips / pngquant(压缩角色表,避免 --ref payload 失败) |
| cli | codex CLI / baoyu-image-gen(图像生成后端,codex-imagegen 分支) |
| api | Codex 原生 imagegen / Cursor GenerateImage / Hermes image_generate(宿主原生图像工具) |
4推奨統制措置と判定根拠
- scripts/: ローカルスクリプトまたはコマンドの実行: scripts/merge-to-pdf.ts(bun で実行。ローカルのページ画像のみを読み込み、PDF を作成)
- 本地工作目录: ファイルの読み書きと成果物の出力: comic/{topic-slug}/ 配下: source-{slug}、analysis.md、storyboard.md、characters/ch
5二重目の独立検証
- [ok] 自带脚本只有 merge-to-pdf.ts,且仅本地行为 — 逐行核对:import fs/path/pdf-lib,createPdf() 里 readFileSync 页面图 → embedPng/embedJpg → Bun.write(outputPath);无网络调用、无 env 读取、无子进程。
- [ok] pdf-lib 依赖来源(无自带 package.json) — skill 目录确无 package.json;依赖靠仓库根 workspace 的 dependencies(pdf-lib ^1.17.1)或运行环境解析。这一点写进 risks,不影响档位。
- [ok] SKILL.md 点名单一生成后端(orange 依据) — Codex imagegen / codex CLI (baoyu-image-gen --provider codex-cli) / Cursor GenerateImage / Hermes image_generate 均在 SKILL.md 正文,且 7.2 要求“生成任何页面前先读后端 SKILL.md 判断 --ref 能力”。
- [ok] 角色一致性三策略与失败恢复 — SKILL.md 7.2 表(Exists/Supported、Exists/Not supported、Skipped)与 workflow.md 的 Strategy A/B/C 一一对应,另有 --ref 失败时的压缩→重试→降级链。
- [ok] 预设与默认角色 — workflow.md 列出 ohmsha 默认四角色(大雄/哆啦A梦/胖虎/静香)并写明不得为 ohmsha 自造角色;presets/ 5 个文件均在盘。
- [ok] 备份与局部重跑规则 — workflow.md 7.1 备份规则、SKILL.md Partial Workflow Options 表与 partial-workflows.md 均存在。
- [ok] meta 元数据 — GitHub API:MIT、25926 stars、pushed_at 2026-09-10T15:13:43Z;本地 HEAD 与任务 pin 1567581c26ec… 一致。
6結論
0b7b74a684ebd49d…