skills/baoyu-comic/SKILL.md
Knowledge comic creator supporting multiple styles (Logicomix/Ligne Claire, Ohmsha manga guide). Creates original educational comics with detailed panel layouts and sequential image generation. Use when user asks to create "知识漫画", "教育漫画", "biography comic", "tutorial comic", or "Logicomix-style comic".
npx skillsauth add questnova502/claude-skills-sync baoyu-comicInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Create original knowledge comics with multiple visual styles.
/baoyu-comic posts/turing-story/source.md
/baoyu-comic # then paste content
| 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.
| 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 |
Important: All scripts are located in the scripts/ subdirectory of this skill.
Agent Execution Instructions:
SKILL_DIR${SKILL_DIR}/scripts/<script-name>.ts${SKILL_DIR} in this document with the actual pathScript Reference:
| Script | Purpose |
|--------|---------|
| scripts/merge-to-pdf.ts | Merge comic pages into PDF |
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:
alan-turing-bioConflict Resolution:
If comic/{topic-slug}/ already exists:
{topic-slug}-YYYYMMDD-HHMMSSturing-story exists → turing-story-20260118-143052Source Files:
Copy all sources with naming source-{slug}.{ext}:
source-biography.md, source-portrait.jpg, source-timeline.png, etc.analysis.mdRead source content, save it if needed, and perform deep analysis.
Actions:
source.md in target directoryreferences/analysis-framework.md:
analysis.mdanalysis.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)
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:
Generate storyboard (storyboard-{approach}.md):
references/storyboard-template.mdGenerate matching characters (characters-{approach}/):
characters.md - visual specs matching the recommended style (in user's preferred language)characters.png - character reference sheetreferences/character-template.mdAll variants are preserved after selection for reference.
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:
All storyboards and prompts are generated in the user's selected/preferred language.
Aspect ratio handling:
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:
storyboard.mdcharacters/characters/characters.pngWith confirmed storyboard + style + aspect ratio:
For each page (cover + pages):
prompts/NN-{cover|page}-[slug].md (in user's preferred language)Image Generation Skill Selection:
Character Reference Handling:
characters/characters.pngcharacters/characters.md content in promptSession Management:
If image generation skill supports --sessionId:
comic-{topic-slug}-{timestamp}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.
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
Support for modifying individual pages after initial generation.
Regenerate a specific page with modified prompt:
03-page-enigma-machine.png)prompts/03-page-enigma-machine.md if neededInsert a new page at specified position:
04-page-bletchley-park.md)04-page-tragedy.png → 05-page-tragedy.pngstoryboard.md with new page entryRemove a page and renumber:
03-page-enigma-machine.png)04-page-tragedy.png → 03-page-tragedy.pngstoryboard.md to remove page entryFiles 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.png01-page-early-life.png02-page-cambridge-years.png03-page-enigma-machine.pngSlug rules:
Renumbering:
--style ohmsha)Additional requirements for educational manga:
--characters "Student:小明,Mentor:教授"Reference: references/ohmsha-guide.md for detailed guidelines.
Detailed templates and guidelines in references/ directory:
analysis-framework.md - Deep content analysis for comic adaptationcharacter-template.md - Character definition format and examplesstoryboard-template.md - Storyboard structure and panel breakdownohmsha-guide.md - Ohmsha manga style specificsstyles/ - Detailed style definitionslayouts/ - Detailed layout definitionsCustom styles and configurations via EXTEND.md.
Check paths (priority order):
.baoyu-skills/baoyu-comic/EXTEND.md (project)~/.baoyu-skills/baoyu-comic/EXTEND.md (user)If found, load before Step 1. Extension content overrides defaults.
development
Convert X (Twitter) tweet or article URL to markdown. Uses reverse-engineered X API (private). Requires user consent before use.
development
Image generation skill using Gemini Web. Generates images from text prompts via Google Gemini. Also supports text generation. Use as the image generation backend for other skills like cover-image, xhs-images, article-illustrator.
content-media
Generate elegant cover images for articles. Analyzes content and creates eye-catching hand-drawn style cover images with multiple style options. Use when user asks to "generate cover image", "create article cover", or "make a cover for article".
tools
Cross-platform image compression skill. Converts images to WebP by default with PNG-to-PNG support. Uses system tools (sips, cwebp, ImageMagick) with Sharp fallback.