Knowledge Comic Creator
Create original knowledge comics with multiple visual styles.
Usage
/baoyu-comic posts/turing-story/source.md
/baoyu-comic # then paste content
Options
| Option | Values | |--------|--------| | --style | classic (default), dramatic, warm, tech, sepia, vibrant, ohmsha, realistic, or custom description | | --layout | standard (default), cinematic, dense, splash, mixed, webtoon | | --aspect | 3:4 (default, portrait), 4:3 (landscape), 16:9 (widescreen) | | --lang | auto (default), zh, en, ja, etc. |
Style × Layout × Aspect can be freely combined. Custom styles can be described in natural language.
Aspect ratio is consistent across all pages in a comic.
Auto Selection
| Content Signals | Style | Layout | |-----------------|-------|--------| | Tutorial, how-to, beginner | ohmsha | webtoon | | Computing, AI, programming | tech | dense | | Pre-1950, classical, ancient | sepia | cinematic | | Personal story, mentor | warm | standard | | Conflict, breakthrough | dramatic | splash | | Wine, food, business, lifestyle, professional | realistic | cinematic | | Biography, balanced | classic | mixed |
Script Directory
Important: All scripts are located in the scripts/ subdirectory of this skill.
Agent Execution Instructions:
- Determine this SKILL.md file's directory path as
SKILL_DIR - Script path =
${SKILL_DIR}/scripts/<script-name>.ts - Replace all
${SKILL_DIR}in this document with the actual path
Script Reference: | Script | Purpose | |--------|---------| | scripts/merge-to-pdf.ts | Merge comic pages into PDF |
File Structure
[target]/
├── source.md # Source content (if pasted, not file)
├── analysis.md # Deep analysis results (YAML+MD)
├── storyboard-chronological.md # Variant A (preserved)
├── storyboard-thematic.md # Variant B (preserved)
├── storyboard-character.md # Variant C (preserved)
├── characters-chronological/ # Variant A chars (preserved)
│ ├── characters.md
│ └── characters.png
├── characters-thematic/ # Variant B chars (preserved)
│ ├── characters.md
│ └── characters.png
├── characters-character/ # Variant C chars (preserved)
│ ├── characters.md
│ └── characters.png
├── storyboard.md # Final selected
├── characters/ # Final selected
│ ├── characters.md
│ └── characters.png
├── prompts/
│ ├── 00-cover-[slug].md
│ └── NN-page-[slug].md
├── 00-cover-[slug].png
├── NN-page-[slug].png
└── {topic-slug}.pdf
Target directory:
- With source path:
[source-dir]/[source-name-no-ext]/comic/ - Example:
/posts/turing-story.md→/posts/turing-story/comic/ - Without source:
./comic/[topic-slug]/
Directory backup:
- If target directory exists, rename existing to
<dirname>-backup-YYYYMMDD-HHMMSS
Workflow
Step 1: Analyze Content → analysis.md
Read source content, save it if needed, and perform deep analysis.
Actions:
- Save source content (if not already a file):
- If user provides a file path: use as-is
- If user pastes content: save to
source.mdin target directory - Read source content
- Deep analysis following
references/analysis-framework.md: - Target audience identification
- Value proposition for readers
- Core themes and narrative potential
- Key figures and their story arcs
- Detect source language
- Determine recommended page count:
- Short story: 5-8 pages
- Medium complexity: 9-15 pages
- Full biography: 16-25 pages
- Analyze content signals for style/layout recommendations
- Save to
analysis.md
analysis.md Format:
---
title: "Alan Turing: Father of Computing"
topic: Biography
time_span: 1912-1954
source_language: en
user_language: zh
aspect_ratio: "3:4"
recommended_page_count: 12
---
## Target Audience
- **Primary**: Tech enthusiasts curious about computing history
- **Secondary**: Students learning about scientific breakthroughs
- **Tertiary**: General readers interested in biographical stories
## Value Proposition
What readers will gain:
1. Understanding of how modern computing was born
2. Emotional connection to a brilliant but tragic figure
3. Appreciation for the human cost of innovation
## Core Themes
| Theme | Narrative Potential | Visual Opportunity |
|-------|--------------------|--------------------|
| Genius vs. Society | High conflict, dramatic arcs | Contrast scenes |
| Code-breaking | Mystery, tension | Technical diagrams as art |
| Personal tragedy | Emotional depth | Intimate, somber panels |
## Key Figures & Story Arcs
### Alan Turing (Protagonist)
- **Arc**: Misunderstood genius → War hero → Tragic end
- **Visual identity**: Disheveled academic, intense eyes
- **Key moments**: Enigma breakthrough, arrest, final days
### Christopher Morcom (Catalyst)
- **Role**: Early friend whose death shaped Turing
- **Visual identity**: Youthful, bright
- **Key moments**: School friendship, sudden death
## Content Signals
- "biography" → classic + mixed
- "computing history" → tech + dense
- "personal tragedy" → dramatic + splash
## Recommended Approaches
1. **Chronological** - follow life timeline (recommended for biography)
2. **Thematic** - organize by contributions (good for educational focus)
3. **Character-focused** - relationships drive narrative (good for emotional impact)
Step 2: Generate 3 Storyboard Variants
Create three distinct variants, each combining a narrative approach with a recommended style.
| Variant | Narrative Approach | Recommended Style | Layout | |---------|-------------------|-------------------|--------| | A | Chronological | sepia | cinematic | | B | Thematic | tech | dense | | C | Character-focused | warm | standard |
For each variant:
- Generate storyboard (
storyboard-{approach}.md): - YAML front matter with narrative_approach, recommended_style, recommended_layout, aspect_ratio
- Cover design
- Each page: layout, panel breakdown, visual prompts
- Written in user's preferred language
- Reference:
references/storyboard-template.md
- Generate matching characters (
characters-{approach}/): characters.md- visual specs matching the recommended style (in user's preferred language)characters.png- character reference sheet- Reference:
references/character-template.md
All variants are preserved after selection for reference.
Step 3: User Confirms All Options
IMPORTANT: Present ALL options in a single confirmation step using AskUserQuestion. Do NOT interrupt workflow with multiple separate confirmations.
Determine which questions to ask:
| Question | When to Ask | |----------|-------------| | Storyboard variant | Always (required) | | Visual style | Always (required) | | Language | Only if source_language ≠ user_language | | Aspect ratio | Only if user might prefer non-default (e.g., landscape content) |
Language handling:
- If source language = user language: Just inform user (e.g., "Comic will be in Chinese")
- If different: Ask which language to use
All storyboards and prompts are generated in the user's selected/preferred language.
Aspect ratio handling:
- Default: 3:4 (portrait) - standard comic format
- Offer 4:3 (landscape) if content suits it (e.g., panoramic scenes, technical diagrams)
- Offer 16:9 (widescreen) for cinematic content
AskUserQuestion format (example with all questions):
Question 1 (Storyboard): Which storyboard variant?
- A: Chronological + sepia (Recommended)
- B: Thematic + tech
- C: Character-focused + warm
- Custom
Question 2 (Style): Which visual style?
- sepia (Recommended from variant)
- classic / dramatic / warm / tech / vibrant / ohmsha / realistic
- Custom description
Question 3 (Language) - only if mismatch:
- Chinese (source material language)
- English (your preference)
Question 4 (Aspect) - only if relev