baoyu-comic

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Knowledge Comic Creator

知识漫画生成器

Adapted from baoyu-comic for Hermes Agent's tool ecosystem.
Create original knowledge comics with flexible art style × tone combinations.
改编自 baoyu-comic,适配Hermes Agent的工具生态。
创建原创知识漫画,支持灵活的艺术风格与基调组合。

When to Use

使用场景

Trigger this skill when the user asks to create a knowledge/educational comic, biography comic, tutorial comic, or uses terms like "知识漫画", "教育漫画", or "Logicomix-style". The user provides content (text, file path, URL, or topic) and optionally specifies art style, tone, layout, aspect ratio, or language.
当用户要求创建知识/教育漫画、传记漫画、教程漫画,或使用“知识漫画”“教育漫画”“Logicomix风格”等术语时,触发此技能。用户需提供内容(文本、文件路径、URL或主题),还可选择性指定艺术风格、基调、布局、宽高比或语言。

Reference Images

参考图像

Hermes'
image_generate
tool is prompt-only — it accepts a text prompt and an aspect ratio, and returns an image URL. It does NOT accept reference images. When the user supplies a reference image, use it to extract traits in text that get embedded in every page prompt:
Intake: Accept file paths when the user provides them (or pastes images in conversation).
  • File path(s) → copy to
    refs/NN-ref-{slug}.{ext}
    alongside the comic output for provenance
  • Pasted image with no path → ask the user for the path via
    clarify
    , or extract style traits verbally as a text fallback
  • No reference → skip this section
Usage modes (per reference):
UsageEffect
style
Extract style traits (line treatment, texture, mood) and append to every page's prompt body
palette
Extract hex colors and append to every page's prompt body
scene
Extract scene composition or subject notes and append to the relevant page(s)
Record in each page's prompt frontmatter when refs exist:
yaml
references:
  - ref_id: 01
    filename: 01-ref-scene.png
    usage: style
    traits: "muted earth tones, soft-edged ink wash, low-contrast backgrounds"
Character consistency is driven by text descriptions in
characters/characters.md
(written in Step 3) that get embedded inline in every page prompt (Step 5). The optional PNG character sheet generated in Step 7.1 is a human-facing review artifact, not an input to
image_generate
.
Hermes的
image_generate
工具仅支持文本提示——它接收文本提示和宽高比,返回图像URL。它不接受参考图像。当用户提供参考图像时,需从中提取文本特征,并嵌入到每一页的提示词中:
接收方式:当用户提供文件路径(或在对话中粘贴图像)时接受:
  • 文件路径 → 复制到漫画输出目录旁的
    refs/NN-ref-{slug}.{ext}
    ,用于溯源
  • 粘贴的无路径图像 → 通过
    clarify
    工具询问用户路径,或作为文本回退方案,口头提取风格特征
  • 无参考图像 → 跳过此部分
参考图像使用模式(每幅参考图像对应一种模式):
使用模式效果
style
提取风格特征(线条处理、纹理、氛围),追加到每一页的提示词主体中
palette
提取十六进制颜色,追加到每一页的提示词主体中
scene
提取场景构图或主体说明,追加到相关页面的提示词中
当存在参考图像时,在每页提示词的前置元数据中记录
yaml
references:
  - ref_id: 01
    filename: 01-ref-scene.png
    usage: style
    traits: "muted earth tones, soft-edged ink wash, low-contrast backgrounds"
角色一致性由
characters/characters.md
(步骤3中编写)中的文本描述驱动,这些描述会嵌入到每一页的提示词中(步骤5)。步骤7.1中生成的可选PNG角色表是面向人工审核的产物,并非
image_generate
的输入。

Options

选项

Visual Dimensions

视觉尺寸

OptionValuesDescription
Artligne-claire (default), manga, realistic, ink-brush, chalk, minimalistArt style / rendering technique
Toneneutral (default), warm, dramatic, romantic, energetic, vintage, actionMood / atmosphere
Layoutstandard (default), cinematic, dense, splash, mixed, webtoon, four-panelPanel arrangement
Aspect3:4 (default, portrait), 4:3 (landscape), 16:9 (widescreen)Page aspect ratio
Languageauto (default), zh, en, ja, etc.Output language
RefsFile pathsReference images used for style / palette trait extraction (not passed to the image model). See Reference Images above.
选项可选值描述
Artligne-claire(默认)、manga、realistic、ink-brush、chalk、minimalist艺术风格/渲染技术
Toneneutral(默认)、warm、dramatic、romantic、energetic、vintage、action情绪/氛围
Layoutstandard(默认)、cinematic、dense、splash、mixed、webtoon、four-panel分镜布局
Aspect3:4(默认,竖版)、4:3(横版)、16:9(宽屏)页面宽高比
Languageauto(默认)、zh、en、ja等输出语言
Refs文件路径用于提取风格/调色板特征的参考图像(不传入图像模型)。详见上方参考图像部分

Partial Workflow Options

部分工作流选项

OptionDescription
Storyboard onlyGenerate storyboard only, skip prompts and images
Prompts onlyGenerate storyboard + prompts, skip images
Images onlyGenerate images from existing prompts directory
Regenerate NRegenerate specific page(s) only (e.g.,
3
or
2,5,8
)
Details: references/partial-workflows.md
选项描述
Storyboard only仅生成分镜脚本,跳过提示词和图像生成
Prompts only生成分镜脚本+提示词,跳过图像生成
Images only从现有提示词目录生成图像
Regenerate N仅重新生成指定页面(例如
3
2,5,8
详情:references/partial-workflows.md

Art, Tone & Preset Catalogue

艺术风格、基调与预设目录

  • Art styles (6):
    ligne-claire
    ,
    manga
    ,
    realistic
    ,
    ink-brush
    ,
    chalk
    ,
    minimalist
    . Full definitions at
    references/art-styles/<style>.md
    .
  • Tones (7):
    neutral
    ,
    warm
    ,
    dramatic
    ,
    romantic
    ,
    energetic
    ,
    vintage
    ,
    action
    . Full definitions at
    references/tones/<tone>.md
    .
  • Presets (5) with special rules beyond plain art+tone:
    PresetEquivalentHook
    ohmsha
    manga + neutralVisual metaphors, no talking heads, gadget reveals
    wuxia
    ink-brush + actionQi effects, combat visuals, atmospheric
    shoujo
    manga + romanticDecorative elements, eye details, romantic beats
    concept-story
    manga + warmVisual symbol system, growth arc, dialogue+action balance
    four-panel
    minimalist + neutral + four-panel layout起承转合 structure, B&W + spot color, stick-figure characters
    Full rules at
    references/presets/<preset>.md
    — load the file when a preset is picked.
  • Compatibility matrix and content-signal → preset table live in references/auto-selection.md. Read it before recommending combinations in Step 2.
  • 艺术风格(6种):
    ligne-claire
    manga
    realistic
    ink-brush
    chalk
    minimalist
    。完整定义见
    references/art-styles/<style>.md
  • 基调(7种):
    neutral
    warm
    dramatic
    romantic
    energetic
    vintage
    action
    。完整定义见
    references/tones/<tone>.md
  • 预设(5种),包含超出单纯艺术风格+基调的特殊规则:
    预设等效组合特色
    ohmsha
    manga + neutral视觉隐喻,无对话头像,道具展示
    wuxia
    ink-brush + action气效表现,战斗画面,氛围感
    shoujo
    manga + romantic装饰元素,眼部细节,浪漫情节
    concept-story
    manga + warm视觉符号系统,成长弧线,对话与动作平衡
    four-panel
    minimalist + neutral + four-panel layout起承转合结构,黑白+局部色彩,简笔角色
    完整规则见
    references/presets/<preset>.md
    ——当选择预设时加载该文件。
  • 兼容性矩阵内容信号→预设对照表位于references/auto-selection.md。在步骤2中推荐组合前,请先阅读该文件。

File Structure

文件结构

Output directory:
comic/{topic-slug}/
  • Slug: 2-4 words kebab-case from topic (e.g.,
    alan-turing-bio
    )
  • Conflict: append timestamp (e.g.,
    turing-story-20260118-143052
    )
Contents:
FileDescription
source-{slug}.md
Saved source content (kebab-case slug matches the output directory)
analysis.md
Content analysis
storyboard.md
Storyboard with panel breakdown
characters/characters.md
Character definitions
characters/characters.png
Character reference sheet (downloaded from
image_generate
)
prompts/NN-{cover|page}-[slug].md
Generation prompts
NN-{cover|page}-[slug].png
Generated images (downloaded from
image_generate
)
refs/NN-ref-{slug}.{ext}
User-supplied reference images (optional, for provenance)
输出目录:
comic/{topic-slug}/
  • Slug:从主题提取2-4个单词,采用短横线分隔格式(例如
    alan-turing-bio
  • 冲突处理:追加时间戳(例如
    turing-story-20260118-143052
目录内容
文件描述
source-{slug}.md
保存的源内容(短横线分隔的slug与输出目录匹配)
analysis.md
内容分析报告
storyboard.md
带分镜拆解的脚本
characters/characters.md
角色定义
characters/characters.png
角色参考表(从
image_generate
下载)
prompts/NN-{cover|page}-[slug].md
生成提示词
NN-{cover|page}-[slug].png
生成的图像(从
image_generate
下载)
refs/NN-ref-{slug}.{ext}
用户提供的参考图像(可选,用于溯源)

Language Handling

语言处理

Detection Priority:
  1. User-specified language (explicit option)
  2. User's conversation language
  3. Source content language
Rule: Use user's input language for ALL interactions:
  • Storyboard outlines and scene descriptions
  • Image generation prompts
  • User selection options and confirmations
  • Progress updates, questions, errors, summaries
Technical terms remain in English.
检测优先级
  1. 用户指定的语言(显式选项)
  2. 用户的对话语言
  3. 源内容语言
规则:所有交互均使用用户输入语言:
  • 分镜大纲和场景描述
  • 图像生成提示词
  • 用户选择选项与确认信息
  • 进度更新、问题、错误提示、总结
技术术语保留英文。

Workflow

工作流

Progress Checklist

进度检查表

Comic Progress:
- [ ] Step 1: Setup & Analyze
  - [ ] 1.1 Analyze content
  - [ ] 1.2 Check existing directory
- [ ] Step 2: Confirmation - Style & options ⚠️ REQUIRED
- [ ] Step 3: Generate storyboard + characters
- [ ] Step 4: Review outline (conditional)
- [ ] Step 5: Generate prompts
- [ ] Step 6: Review prompts (conditional)
- [ ] Step 7: Generate images
  - [ ] 7.1 Generate character sheet (if needed) → characters/characters.png
  - [ ] 7.2 Generate pages (with character descriptions embedded in prompt)
- [ ] Step 8: Completion report
Comic Progress:
- [ ] Step 1: Setup & Analyze
  - [ ] 1.1 Analyze content
  - [ ] 1.2 Check existing directory
- [ ] Step 2: Confirmation - Style & options ⚠️ REQUIRED
- [ ] Step 3: Generate storyboard + characters
- [ ] Step 4: Review outline (conditional)
- [ ] Step 5: Generate prompts
- [ ] Step 6: Review prompts (conditional)
- [ ] Step 7: Generate images
  - [ ] 7.1 Generate character sheet (if needed) → characters/characters.png
  - [ ] 7.2 Generate pages (with character descriptions embedded in prompt)
- [ ] Step 8: Completion report

Flow

流程

Input → Analyze → [Check Existing?] → [Confirm: Style + Reviews] → Storyboard → [Review?] → Prompts → [Review?] → Images → Complete
Input → Analyze → [Check Existing?] → [Confirm: Style + Reviews] → Storyboard → [Review?] → Prompts → [Review?] → Images → Complete

Step Summary

步骤摘要

StepActionKey Output
1.1Analyze content
analysis.md
,
source-{slug}.md
1.2Check existing directoryHandle conflicts
2Confirm style, focus, audience, reviewsUser preferences
3Generate storyboard + characters
storyboard.md
,
characters/
4Review outline (if requested)User approval
5Generate prompts
prompts/*.md
6Review prompts (if requested)User approval
7.1Generate character sheet (if needed)
characters/characters.png
7.2Generate pages
*.png
files
8Completion reportSummary
步骤操作关键输出
1.1分析内容
analysis.md
source-{slug}.md
1.2检查现有目录处理冲突
2确认风格、重点、受众、审核选项用户偏好
3生成分镜脚本+角色定义
storyboard.md
characters/
4审核大纲(若用户要求)用户批准
5生成提示词
prompts/*.md
6审核提示词(若用户要求)用户批准
7.1生成角色表(若需要)
characters/characters.png
7.2生成页面图像
*.png
文件
8生成完成报告总结

User Questions

用户疑问

Use the
clarify
tool to confirm options. Since
clarify
handles one question at a time, ask the most important question first and proceed sequentially. See references/workflow.md for the full Step 2 question set.
Timeout handling (CRITICAL):
clarify
can return
"The user did not provide a response within the time limit. Use your best judgement to make the choice and proceed."
— this is NOT user consent to default everything.
  • Treat it as a default for that one question only. Continue asking the remaining Step 2 questions in sequence; each question is an independent consent point.
  • Surface the default to the user visibly in your next message so they have a chance to correct it: e.g.
    "Style: defaulted to ohmsha preset (clarify timed out). Say the word to switch."
    — an unreported default is indistinguishable from never having asked.
  • Do NOT collapse Step 2 into a single "use all defaults" pass after one timeout. If the user is genuinely absent, they will be equally absent for all five questions — but they can correct visible defaults when they return, and cannot correct invisible ones.
使用
clarify
工具确认选项。由于
clarify
一次仅处理一个问题,请先询问最重要的问题,再按顺序进行。完整的步骤2问题集见references/workflow.md
超时处理(关键)
clarify
可能返回
"The user did not provide a response within the time limit. Use your best judgement to make the choice and proceed."
——这并不代表用户同意所有默认选项。
  • 仅将其视为该单个问题的默认选择。继续按顺序询问步骤2的剩余问题;每个问题都是独立的确认点。
  • 在后续消息中明确告知用户默认选择,以便他们有机会更正:例如
    "风格:默认使用ohmsha预设(clarify超时)。如需切换请告知。"
    ——未告知的默认选择等同于从未询问过。
  • 不要在一次超时后将步骤2简化为“全部使用默认选项”。如果用户确实未回复,他们对所有五个问题都会未回复,但当他们返回时可以更正可见的默认选择,而无法更正不可见的。

Step 7: Image Generation

步骤7:图像生成

Use Hermes' built-in
image_generate
tool for all image rendering. Its schema accepts only
prompt
and
aspect_ratio
(
landscape
|
portrait
|
square
); it returns a URL, not a local file. Every generated page or character sheet must therefore be downloaded to the output directory.
Prompt file requirement (hard): write each image's full, final prompt to a standalone file under
prompts/
(naming:
NN-{type}-[slug].md
) BEFORE calling
image_generate
. The prompt file is the reproducibility record.
Aspect ratio mapping — the storyboard's
aspect_ratio
field maps to
image_generate
's format as follows:
Storyboard ratio
image_generate
format
3:4
,
9:16
,
2:3
portrait
4:3
,
16:9
,
3:2
landscape
1:1
square
Download step — after every
image_generate
call:
  1. Read the URL from the tool result
  2. Fetch the image bytes using an absolute output path, e.g.
    curl -fsSL "<url>" -o /abs/path/to/comic/<slug>/NN-page-<slug>.png
  3. Verify the file exists and is non-empty at that exact path before proceeding to the next page
Never rely on shell CWD persistence for
-o
paths.
The terminal tool's persistent-shell CWD can change between batches (session expiry,
TERMINAL_LIFETIME_SECONDS
, a failed
cd
that leaves you in the wrong directory).
curl -o relative/path.png
is a silent footgun: if CWD has drifted, the file lands somewhere else with no error. Always pass a fully-qualified absolute path to
-o
, or pass
workdir=<abs path>
to the terminal tool. Incident Apr 2026: pages 06-09 of a 10-page comic landed at the repo root instead of
comic/<slug>/
because batch 3 inherited a stale CWD from batch 2 and
curl -o 06-page-skills.png
wrote to the wrong directory. The agent then spent several turns claiming the files existed where they didn't.
7.1 Character sheet — generate it (to
characters/characters.png
, aspect
landscape
) when the comic is multi-page with recurring characters. Skip for simple presets (e.g., four-panel minimalist) or single-page comics. The prompt file at
characters/characters.md
must exist before invoking
image_generate
. The rendered PNG is a human-facing review artifact (so the user can visually verify character design) and a reference for later regenerations or manual prompt edits — it does not drive Step 7.2. Page prompts are already written in Step 5 from the text descriptions in
characters/characters.md
;
image_generate
cannot accept images as visual input.
7.2 Pages — each page's prompt MUST already be at
prompts/NN-{cover|page}-[slug].md
before invoking
image_generate
. Because
image_generate
is prompt-only, character consistency is enforced by embedding character descriptions (sourced from
characters/characters.md
) inline in every page prompt during Step 5
. The embedding is done uniformly whether or not a PNG sheet is produced in 7.1; the PNG is only a review/regeneration aid.
Backup rule: existing
prompts/…md
and
…png
files → rename with
-backup-YYYYMMDD-HHMMSS
suffix before regenerating.
Full step-by-step workflow (analysis, storyboard, review gates, regeneration variants): references/workflow.md.
所有图像渲染均使用Hermes内置的
image_generate
工具。其模式仅接受
prompt
aspect_ratio
landscape
|
portrait
|
square
);它返回URL,而非本地文件。因此,每个生成的页面或角色表都必须下载到输出目录。
提示词文件要求(硬性规定):在调用
image_generate
之前,将每个图像的完整最终提示词写入
prompts/
下的独立文件(命名格式:
NN-{type}-[slug].md
)。提示词文件是可复现性记录。
宽高比映射——分镜脚本中的
aspect_ratio
字段与
image_generate
的格式映射如下:
分镜脚本宽高比
image_generate
格式
3:4
9:16
2:3
portrait
4:3
16:9
3:2
landscape
1:1
square
下载步骤——每次调用
image_generate
后:
  1. 从工具结果中读取URL
  2. 使用绝对输出路径获取图像字节,例如:
    curl -fsSL "<url>" -o /abs/path/to/comic/<slug>/NN-page-<slug>.png
  3. 在进行下一页之前,验证该文件是否存在且非空
永远不要依赖shell的当前工作目录(CWD)持久性来指定
-o
路径
。终端工具的持久shell CWD可能在批次之间变化(会话过期、
TERMINAL_LIFETIME_SECONDS
、失败的
cd
命令导致处于错误目录)。
curl -o relative/path.png
是一个隐蔽的陷阱:如果CWD发生变化,文件会被写入其他位置且无错误提示。始终向
-o
传递完全限定的绝对路径
,或向终端工具传递
workdir=<abs path>
。2026年4月事件:某10页漫画的第6-9页被写入仓库根目录而非
comic/<slug>/
,因为批次3继承了批次2的过期CWD,
curl -o 06-page-skills.png
写入了错误目录。随后Agent多次声称文件存在于预期路径,但实际并非如此。
7.1 角色表——当漫画为多页且有重复角色时,生成角色表(保存到
characters/characters.png
,宽高比为
landscape
)。对于简单预设(例如四格极简风格)或单页漫画,可跳过此步骤。调用
image_generate
之前,必须存在
characters/characters.md
提示词文件。渲染后的PNG是面向人工审核的产物(以便用户直观验证角色设计),也是后续重新生成或手动编辑提示词的参考——它不驱动步骤7.2。页面提示词已在步骤5中根据
characters/characters.md
中的文本描述编写完成;
image_generate
不接受图像作为视觉输入。
7.2 页面生成——在调用
image_generate
之前,每页的提示词必须已存在于
prompts/NN-{cover|page}-[slug].md
。由于
image_generate
仅支持文本提示,角色一致性通过在步骤5中将角色描述(源自
characters/characters.md
)嵌入每页提示词
来保证。无论是否在7.1中生成PNG角色表,嵌入操作都会统一执行;PNG仅作为审核/重新生成的辅助工具。
备份规则:现有
prompts/…md
…png
文件→在重新生成前重命名为
-backup-YYYYMMDD-HHMMSS
后缀。
完整的分步工作流(分析、分镜脚本、审核关卡、重新生成变体):references/workflow.md

References

参考资料

Core Templates:
  • analysis-framework.md - Deep content analysis
  • character-template.md - Character definition format
  • storyboard-template.md - Storyboard structure
  • ohmsha-guide.md - Ohmsha manga specifics
Style Definitions:
  • references/art-styles/
    - Art styles (ligne-claire, manga, realistic, ink-brush, chalk, minimalist)
  • references/tones/
    - Tones (neutral, warm, dramatic, romantic, energetic, vintage, action)
  • references/presets/
    - Presets with special rules (ohmsha, wuxia, shoujo, concept-story, four-panel)
  • references/layouts/
    - Layouts (standard, cinematic, dense, splash, mixed, webtoon, four-panel)
Workflow:
  • workflow.md - Full workflow details
  • auto-selection.md - Content signal analysis
  • partial-workflows.md - Partial workflow options
核心模板
  • analysis-framework.md - 深度内容分析
  • character-template.md - 角色定义格式
  • storyboard-template.md - 分镜脚本结构
  • ohmsha-guide.md - Ohmsha漫画规范
风格定义
  • references/art-styles/
    - 艺术风格(ligne-claire、manga、realistic、ink-brush、chalk、minimalist)
  • references/tones/
    - 基调(neutral、warm、dramatic、romantic、energetic、vintage、action)
  • references/presets/
    - 带特殊规则的预设(ohmsha、wuxia、shoujo、concept-story、four-panel)
  • references/layouts/
    - 布局(standard、cinematic、dense、splash、mixed、webtoon、four-panel)
工作流
  • workflow.md - 完整工作流详情
  • auto-selection.md - 内容信号分析
  • partial-workflows.md - 部分工作流选项

Page Modification

页面修改

ActionSteps
EditUpdate prompt file FIRST → regenerate image → download new PNG
AddCreate prompt at position → generate with character descriptions embedded → renumber subsequent → update storyboard
DeleteRemove files → renumber subsequent → update storyboard
IMPORTANT: When updating pages, ALWAYS update the prompt file (
prompts/NN-{cover|page}-[slug].md
) FIRST before regenerating. This ensures changes are documented and reproducible.
操作步骤
编辑首先更新提示词文件 → 重新生成图像 → 下载新的PNG
添加在指定位置创建提示词 → 嵌入角色描述生成图像 → 重新编号后续页面 → 更新分镜脚本
删除删除文件 → 重新编号后续页面 → 更新分镜脚本
重要提示:更新页面时,务必先更新提示词文件
prompts/NN-{cover|page}-[slug].md
),再重新生成图像。这确保更改被记录且可复现。

Pitfalls

注意事项

  • Image generation: 10-30 seconds per page; auto-retry once on failure
  • Always download the URL returned by
    image_generate
    to a local PNG — downstream tooling (and the user's review) expects files in the output directory, not ephemeral URLs
  • Use absolute paths for
    curl -o
    — never rely on persistent-shell CWD across batches. Silent footgun: files land in the wrong directory and subsequent
    ls
    on the intended path shows nothing. See Step 7 "Download step".
  • Use stylized alternatives for sensitive public figures
  • Step 2 confirmation required - do not skip
  • Steps 4/6 conditional - only if user requested in Step 2
  • Step 7.1 character sheet - recommended for multi-page comics, optional for simple presets. The PNG is a review/regeneration aid; page prompts (written in Step 5) use the text descriptions in
    characters/characters.md
    , not the PNG.
    image_generate
    does not accept images as visual input
  • Strip secrets — scan source content for API keys, tokens, or credentials before writing any output file
  • 图像生成:每页耗时10-30秒;失败时自动重试一次
  • 务必下载
    image_generate
    返回的URL对应的本地PNG——下游工具(以及用户审核)期望文件位于输出目录,而非临时URL
  • curl -o
    使用绝对路径
    ——永远不要依赖批次间的持久shell CWD。隐蔽陷阱:文件被写入错误目录,后续对预期路径执行
    ls
    会显示无文件。详见步骤7“下载步骤”。
  • 对敏感公众人物使用风格化替代形象
  • 步骤2确认是必需的 - 不可跳过
  • 步骤4/6为可选 - 仅当用户在步骤2中要求时执行
  • 步骤7.1角色表 - 多页漫画推荐生成,简单预设可选。PNG是审核/重新生成的辅助工具;页面提示词(步骤5编写)使用
    characters/characters.md
    中的文本描述,而非PNG。
    image_generate
    不接受图像作为视觉输入
  • 剥离敏感信息 —— 在写入任何输出文件前,扫描源内容中的API密钥、令牌或凭据