Install this skill
npx skills add jimliu/baoyu-skillsWorks across Claude Code, Cursor, Codex, Copilot & Antigravity
Baoyu-comic transforms text-based knowledge into structured, illustrated comics. It performs content analysis to determine appropriate narrative arcs, target demographics, and visual tone. The tool automates the entire production pipeline, from storyboard generation and character consistency tracking to the creation of individual page prompts. It supports various visual aesthetics ranging from classic and sepia to webtoon and wuxia styles, allowing for tailored storytelling. By managing file organization within specific topic directories, the skill maintains a clear history of character variations and thematic storyboards. Users provide source material via markdown files or direct text input, and the tool outputs a final collection of image assets alongside a compiled PDF of the comic, handling aspect ratio normalization and language detection automatically.
When to Use This Skill
- β’Converting technical documentation into instructional webtoons
- β’Illustrating historical biographies with appropriate period-specific art styles
- β’Visualizing complex business case studies for presentation
- β’Creating educational comics for classroom learning materials
How to Invoke This Skill
Example prompts that trigger this skill in Claude Code, Cursor, or Antigravity:
- β/baoyu-comic turn this project history into a dramatic comic
- β/baoyu-comic posts/my-tutorial/source.md --style ohmsha
- β/baoyu-comic
- βConvert this research summary into a webtoon with a vibrant style
Pro Tips
- π‘Experiment with 'custom description' for the `--style` option to achieve highly specific artistic visions not covered by presets.
- π‘Leverage the auto-selection table for initial guidance, but override `--layout` or `--style` for creative twists, e.g., using 'cinematic' for a 'how-to' to add drama.
- π‘For multi-page comics, prepare your content in a structured Markdown file (e.g., `posts/turing-story/source.md`) to maintain consistency and simplify generation.
What this skill does
- β’Automated storyboarding and character sheet creation
- β’Multi-style visual rendering for diverse narrative themes
- β’Content analysis to determine optimal page length and tone
- β’Integrated PDF compilation from generated comic pages
- β’Persistent file structure for versioning of story variants
When not to use it
- βGenerating high-fidelity fine art or non-sequential illustrations
- βHandling confidential documents that cannot be saved to the local file system
- βProducing animations or interactive multimedia content
Example workflow
- Provide the source text file or paste the content directly into the tool
- Allow the tool to analyze the text and generate the analysis.md file
- Review the suggested storyboard variants and character designs
- Approve the generation of individual page prompts and images
- Execute the final merger to produce the downloadable PDF
Prerequisites
- βA local project directory for storage
- βSource material in markdown format or plain text
Pitfalls & limitations
- !The tool creates large directory structures, which can clutter your workspace
- !Automated style selection may require manual overrides if the theme is complex
- !Aspect ratios are locked for the entire comic, preventing mix-and-match page shapes
FAQ
How it compares
Unlike generic image generation prompts, this skill enforces a strict narrative framework and project-based directory structure, ensuring consistency across multiple pages and variants.
π Full skill instructions β original source: jimliu/baoyu-skills
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, sepia, vibrant, ohmsha, realistic, wuxia, shoujo, 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 | ohmsha | dense |
| Pre-1950, classical, ancient | sepia | cinematic |
| Personal story, mentor | warm | standard |
| Conflict, breakthrough | dramatic | splash |
| Wine, food, business, lifestyle, professional | realistic | cinematic |
| Martial arts, wuxia, xianxia, Chinese historical | wuxia | splash |
| Romance, love, school life, friendship, emotional | shoujo | standard |
| Biography, balanced | classic | mixed |
## Script Directory
**Important**: All scripts are located in the
scripts/ subdirectory of this skill.**Agent Execution Instructions**:
1. Determine this SKILL.md file's directory path as
SKILL_DIR2. Script path =
${SKILL_DIR}/scripts/<script-name>.ts3. 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
Each session creates an independent directory named by content slug:
comic/{topic-slug}/
βββ source-{slug}.{ext} # Source files (text, images, etc.)
βββ 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**Slug Generation**:
1. Extract main topic from content (2-4 words, kebab-case)
2. Example: "Alan Turing Biography" β
alan-turing-bio**Conflict Resolution**:
If
comic/{topic-slug}/ already exists:- Append timestamp:
{topic-slug}-YYYYMMDD-HHMMSS- Example:
turing-story exists β turing-story-20260118-143052**Source Files**:
Copy all sources with naming
source-{slug}.{ext}:-
source-biography.md, source-portrait.jpg, source-timeline.png, etc.- Multiple sources supported: text, images, files from conversation
## Workflow
### Step 1: Analyze Content β
analysis.mdRead source content, save it if needed, and perform deep analysis.
**Actions**:
1. **Save source content** (if not already a file):
- If user provides a file path: use as-is
- If user pastes content: save to
source.md in target directory2. Read source content
3. **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
4. Detect source language
5. Determine recommended page count:
- Short story: 5-8 pages
- Medium complexity: 9-15 pages
- Full biography: 16-25 pages
6. Analyze content signals for style/layout recommendations
7. **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" β ohmsha + 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 | ohmsha | dense |
| C | Character-focused | warm | standard |
**For each variant**:
1. **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.md2. **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 + ohmsha
- C: Character-focused + warm
- Custom
Question 2 (Style): Which visual style?
- sepia (Recommended from variant)
- classic / dramatic / warm / sepia / vibrant / ohmsha / realistic / wuxia
- Custom description
Question 3 (Language) - only if mismatch:
- Chinese (source material language)
- English (your preference)
Question 4 (Aspect) - only if relevant:
- 3:4 Portrait (Recommended)
- 4:3 Landscape
- 16:9 Widescreen**After confirmation**:
1. Copy selected storyboard β
storyboard.md2. Copy selected characters β
characters/3. Update YAML front matter with confirmed style, language, aspect_ratio
4. If style differs from variant's recommended: regenerate
characters/characters.png5. User may edit files directly for fine-tuning
### Step 4: Generate Images
With confirmed storyboard + style + aspect ratio:
**For each page (cover + pages)**:
1. Save prompt to
prompts/NN-{cover|page}-[slug].md (in user's preferred language)2. Generate image using confirmed style and aspect ratio
3. Report progress after each generation
**Image Generation Skill Selection**:
- Check available image generation skills
- If multiple skills available, ask user preference
**Character Reference Handling**:
- If skill supports reference image: pass
characters/characters.png- If skill does NOT support reference image: include
characters/characters.md content in prompt**Session Management**:
If image generation skill supports
--sessionId:1. Generate unique session ID:
comic-{topic-slug}-{timestamp}2. Use same session ID for all pages
3. Ensures visual consistency across generated images
### Step 5: Merge to PDF
After all images generated:
npx -y bun ${SKILL_DIR}/scripts/merge-to-pdf.ts <comic-dir>Creates
{topic-slug}.pdf with all pages as full-page images.### Step 6: Completion Report
Comic Complete!
Title: [title] | Style: [style] | Pages: [count] | Aspect: [ratio] | Language: [lang]
Location: [path]
β analysis.md
β characters.png
β 00-cover-[slug].png ... NN-page-[slug].png
β {topic-slug}.pdf## Page Modification
Support for modifying individual pages after initial generation.
### Edit Single Page
Regenerate a specific page with modified prompt:
1. Identify page to edit (e.g.,
03-page-enigma-machine.png)2. Update prompt in
prompts/03-page-enigma-machine.md if needed3. If content changes significantly, update slug in filename
4. Regenerate image using same session ID and aspect ratio
5. Regenerate PDF
### Add New Page
Insert a new page at specified position:
1. Specify insertion position (e.g., after page 3)
2. Create new prompt with appropriate slug (e.g.,
04-page-bletchley-park.md)3. Generate new page image (same aspect ratio)
4. **Renumber files**: All subsequent pages increment NN by 1
-
04-page-tragedy.png β 05-page-tragedy.png- Slugs remain unchanged
5. Update
storyboard.md with new page entry6. Regenerate PDF
### Delete Page
Remove a page and renumber:
1. Identify page to delete (e.g.,
03-page-enigma-machine.png)2. Remove image file and prompt file
3. **Renumber files**: All subsequent pages decrement NN by 1
-
04-page-tragedy.png β 03-page-tragedy.png- Slugs remain unchanged
4. Update
storyboard.md to remove page entry5. Regenerate PDF
### File Naming Convention
Files use meaningful slugs for better readability:
NN-cover-[slug].png / NN-page-[slug].png
NN-cover-[slug].md / NN-page-[slug].md (in prompts/)Examples:
-
00-cover-turing-story.png-
01-page-early-life.png-
02-page-cambridge-years.png-
03-page-enigma-machine.png**Slug rules**:
- Derived from page title/content (kebab-case)
- Must be unique within the comic
- When page content changes significantly, update slug accordingly
**Renumbering**:
- After add/delete, update NN prefix for affected pages
- Slug remains unchanged unless content changes
- Maintain sequential numbering with no gaps
## Style-Specific Guidelines
### Ohmsha Style (
--style ohmsha)Additional requirements for educational manga:
- **Default: Use Doraemon characters directly** - No need to create new characters
- ε€§ι (Nobita): Student role, curious learner
- εε¦Aζ’¦ (Doraemon): Mentor role, explains concepts with gadgets
- θθ (Gian): Antagonist/challenge role, represents obstacles or misconceptions
- ιι¦ (Shizuka): Supporting role, asks clarifying questions
- Custom characters only if explicitly requested:
--characters "Student:ε°ζ,Mentor:ζζ"- Must use visual metaphors (gadgets, action scenes) - NO talking heads
- Page titles: narrative style, not "Page X: Topic"
**Reference**:
references/ohmsha-guide.md for detailed guidelines.## References
Detailed templates and guidelines in
references/ directory:-
analysis-framework.md - Deep content analysis for comic adaptation-
character-template.md - Character definition format and examples-
storyboard-template.md - Storyboard structure and panel breakdown-
ohmsha-guide.md - Ohmsha manga style specifics-
styles/ - Detailed style definitions-
layouts/ - Detailed layout definitions## Extension Support
Custom styles and configurations via EXTEND.md.
**Check paths** (priority order):
1.
.baoyu-skills/baoyu-comic/EXTEND.md (project)2.
~/.baoyu-skills/baoyu-comic/EXTEND.md (user)If found, load before Step 1. Extension content overrides defaults.
How to Use This Skill Unit
Option A: Project-Specific (Recommended)
- Click "Download" above
- In your project, create the directory:
.agent/skills/baoyu-comic/ - Save the file as
SKILL.md - The agent will automatically discover the skill based on its description.
Option B: Global Installation (All Agents)
Save the file to these locations to make it available across all projects:
- Claude Code:
~/.claude/skills/jimliu/baoyu-skills/baoyu-comic/SKILL.md - Cursor:
~/.cursor/skills/jimliu/baoyu-skills/baoyu-comic/SKILL.md - Antigravity:
~/.gemini/antigravity/skills/jimliu/baoyu-skills/baoyu-comic/SKILL.md
π Install with CLI:npx skills add jimliu/baoyu-skills
