Best for
- Use when user asks to "illustrate article", "add images", "generate images for article", or "为文章配图".
JimLiu/baoyu-skills/skills/baoyu-article-illustrator/SKILL.md
Use it for design and research tasks; the detail page covers purpose, installation, and practical steps.
Decision brief
Analyze articles, identify illustration positions, generate images with Type × Style × Palette consistency.
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/JimLiu/baoyu-skills --skill "skills/baoyu-article-illustrator"Inspect the Agent Skill "baoyu-article-illustrator" from https://github.com/JimLiu/baoyu-skills/blob/6b7a2e417500561a5ecdd0b168332f4142584617/skills/baoyu-article-illustrator/SKILL.md at commit 6b7a2e417500561a5ecdd0b168332f4142584617. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
1.5 Load Preferences (EXTEND.md) ⛔ BLOCKING
1.5 Load Preferences (EXTEND.md) ⛔ BLOCKING
CRITICAL: Metaphors → visualize underlying concept, NOT literal image.
Hard gate: this step is mandatory per the Confirmation Policy — Steps 4+ cannot start until the user confirms here (or explicitly opts out with "直接生成" / equivalent wording in the current request).
Save outline.md with frontmatter (type, density, style, palette, imagecount) and entries:
Permission review
The documentation asks the agent to read local files, directories, or repositories.
**Codex via `codex exec` (`codex-imagegen`)** — if the current runtime exposes no native `imagegen` skill but the `codex` CLI is on `PATH` with an active `codex login`, route through `baoyu-image-gen --provider codex-cli` (preferred), or — The documentation asks the agent to create, modify, or delete local files.
For each illustration, create a prompt file per [references/prompt-construction.md](references/prompt-construction.md)The documentation asks the agent to create, modify, or delete local files.
For text-correction regenerations, write a new prompt file and a new output path so the flawed candidate is preserved for comparison.Evidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 87/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 24,555 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Analyze articles, identify illustration positions, generate images with Type × Style × Palette consistency.
When this skill prompts the user, follow this tool-selection rule (priority order):
AskUserQuestion, request_user_input, clarify, ask_user, or any equivalent.Concrete AskUserQuestion references below are examples — substitute the local equivalent in other runtimes.
When this skill needs to render an image, resolve the backend in this order:
EXTEND.md sets preferred_image_backend to a backend available right now, use it.auto, unset, or the pinned backend isn't available):
imagegen) — first, inspect your available-skills / tool inventory. If a skill named imagegen is listed, you are running inside Codex and MUST use it: invoke via the Skill tool with skill: "imagegen", passing the saved prompt file's content (plus output path and aspect ratio per Codex imagegen's own args). Codex imagegen is the official raster backend in that runtime and outranks any non-native skill (e.g., baoyu-image-gen) unless the user has explicitly pinned a different preferred_image_backend.codex exec (codex-imagegen) — if the current runtime exposes no native imagegen skill but the codex CLI is on PATH with an active codex login, route through baoyu-image-gen --provider codex-cli (preferred), or — if baoyu-image-gen is unavailable — invoke the bundled wrapper directly. Details, parameters, and the runtime-discovery procedure live in references/codex-imagegen.md — load that file only when this branch is selected.GenerateImage) — if the runtime exposes a native GenerateImage tool, you are running inside Cursor and it outranks any non-native skill the same way Codex imagegen does. Two hard caveats: (a) it has no aspect-ratio parameter — state the target aspect ratio / dimensions explicitly in the prompt text passed as description; (b) it does not accept an output directory — it saves to a tool-managed location, so after generation copy/move the file to the skill's expected output path (e.g., outputs/.../NN-xxx.png). Reference images go in reference_image_paths.image_generate), use it the same way.baoyu-image-gen), use it.⛔ Never substitute SVG, HTML, canvas, or other code-based rendering for raster image generation. Codex imagegen's own description says it should be used "when the output should be a bitmap asset rather than repo-native code or vector." If you cannot resolve a raster backend via step 3, fall through to step 4 and ask the user — do not silently emit SVG, write inline <svg> markup, or produce HTML/CSS art as a substitute. This applies even if the article/section seems "diagram-like": the consumer skill calling this rule has already decided that a raster image is what it needs.
⛔ Never repair rendered text by painting over a generated bitmap. Do not use ImageMagick, Pillow, Canvas, SVG, HTML/CSS, OCR scripts, or any other programmatic overlay to cover, rewrite, erase, stroke, or replace labels, captions, or any other text inside an already generated illustration. If text is wrong or unclear, regenerate from a corrected prompt, redraw with less or no on-image text, or ask the user which imperfect candidate to keep.
Setting preferred_image_backend: ask forces the step-3 prompt every run regardless of available backends. Users change the pinned backend via the ## Changing Preferences section below.
Prompt file requirement (hard): write each image's full, final prompt to a standalone file under prompts/ (naming: NN-{type}-[slug].md) BEFORE invoking any backend. The backend receives the prompt file (or its content); the file is the reproducibility record and lets you switch backends without regenerating prompts.
Concrete tool names (imagegen, GenerateImage, image_generate, baoyu-image-gen) above are examples — substitute the local equivalents under the same rule.
After every prompt file for the run has been saved and verified, generate images in batches by default.
Priority order:
generation_batch_size images at a time. Default: 4. An explicit user request in the current message, such as --batch-size 4 or "并行4张一起生成", overrides EXTEND.md.Rules:
Default behavior: confirm before generation.
EXTEND.md defaults as recommendation inputs only. None of them authorizes skipping confirmation.Users may supply reference images via --ref <files...> or by providing file paths / pasting images in conversation. Refs guide style, palette, composition, or subject for specific illustrations.
Full detection, storage, and processing rules are in references/workflow.md (Step 1.0 saves to references/NN-ref-{slug}.{ext}; Step 5.3 processes per-illustration usage direct | style | palette). When the chosen backend supports batch input, direct-usage entries in each prompt file's references: frontmatter should be propagated into its batch payload so backends can pass them through (e.g. baoyu-image-gen accepts ref per task).
| Dimension | Controls | Examples |
|---|---|---|
| Type | Information structure | infographic, scene, flowchart, comparison, framework, timeline |
| Style | Rendering approach | notion, warm, minimal, blueprint, watercolor, elegant |
| Palette | Color scheme (optional) | macaron, warm, neon — overrides style's default colors |
Combine freely: --type infographic --style vector-illustration --palette macaron
Or use presets: --preset edu-visual → type + style + palette in one flag. See Style Presets.
| Type | Best For |
|---|---|
infographic | Data, metrics, technical |
scene | Narratives, emotional |
flowchart | Processes, workflows |
comparison | Side-by-side, options |
framework | Models, architecture |
timeline | History, evolution |
See references/styles.md for Core Styles, full gallery, and Type × Style compatibility.
- [ ] Step 1: Pre-check (EXTEND.md, references, config)
- [ ] Step 2: Analyze content
- [ ] Step 3: Confirm settings (AskUserQuestion)
- [ ] Step 4: Generate outline
- [ ] Step 5: Generate images
- [ ] Step 6: Finalize
1.5 Load Preferences (EXTEND.md) ⛔ BLOCKING
Check EXTEND.md in priority order — the first one found wins:
| Priority | Path | Scope |
|---|---|---|
| 1 | .baoyu-skills/baoyu-article-illustrator/EXTEND.md | Project |
| 2 | ${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-article-illustrator/EXTEND.md | XDG |
| 3 | $HOME/.baoyu-skills/baoyu-article-illustrator/EXTEND.md | User home |
| Result | Action |
|---|---|
| Found | Read, parse, display summary |
| Not found | ⛔ Run first-time-setup |
Full procedures: references/workflow.md
| Analysis | Output |
|---|---|
| Content type | Technical / Tutorial / Methodology / Narrative |
| Purpose | information / visualization / imagination |
| Core arguments | 2-5 main points |
| Positions | Where illustrations add value |
CRITICAL: Metaphors → visualize underlying concept, NOT literal image.
Full procedures: references/workflow.md
Hard gate: this step is mandatory per the Confirmation Policy — Steps 4+ cannot start until the user confirms here (or explicitly opts out with "直接生成" / equivalent wording in the current request).
ONE AskUserQuestion, max 4 Qs. Q1-Q2 REQUIRED. Q3 required unless preset chosen.
| Q | Options |
|---|---|
| Q1: Preset or Type | [Recommended preset], [alt preset], or manual: infographic, scene, flowchart, comparison, framework, timeline, mixed |
| Q2: Density | minimal (1-2), balanced (3-5), per-section (Recommended), rich (6+) |
| Q3: Style | [Recommended], minimal-flat, sci-fi, hand-drawn, editorial, scene, poster, Other — skip if preset chosen |
| Q4: Palette | Default (style colors), macaron, warm, neon — skip if preset includes palette or preferred_palette set |
| Q5: Language | When article language ≠ EXTEND.md setting |
Full procedures: references/workflow.md
Save outline.md with frontmatter (type, density, style, palette, image_count) and entries:
## Illustration 1
**Position**: [section/paragraph]
**Purpose**: [why]
**Visual Content**: [what]
**Filename**: 01-infographic-concept-name.png
Full template: references/workflow.md
⛔ BLOCKING: Prompt files MUST be saved before ANY image generation. This is a hard requirement regardless of which backend is chosen — the prompt file is the reproducibility record.
prompts/NN-{type}-{slug}.md with YAML frontmatter--prompt without saving prompt files first## Image Generation Tools rule at the top: use whatever is available; if multiple, ask the user once. Do this once per session before any generation.
codex-imagegen invocation: when the rule resolves to codex-imagegen, see references/codex-imagegen.md for the invocation contract (preferred baoyu-image-gen --provider codex-cli path, runtime wrapper discovery, parameter notes, stdout schema, batch semantics).## Batch Generation Policy: backend native batch first, runtime parallel tool calls second, sequential only as fallback. Default batch size is 4 unless EXTEND.md or the current request overrides it.direct/style/palette) per prompt frontmatterFull procedures: references/workflow.md
Insert  after paragraphs. Path computed relative to article file based on output directory setting.
Article Illustration Complete!
Article: [path] | Type: [type] | Density: [level] | Style: [style] | Palette: [palette or default]
Images: X/N generated
Output directory is determined by default_output_dir in EXTEND.md (set during first-time setup):
default_output_dir | Output Path | Markdown Insert Path |
|---|---|---|
imgs-subdir (default) | {article-dir}/imgs/ | imgs/NN-{type}-{slug}.png |
same-dir | {article-dir}/ | NN-{type}-{slug}.png |
illustrations-subdir | {article-dir}/illustrations/ | illustrations/NN-{type}-{slug}.png |
independent | illustrations/{topic-slug}/ | illustrations/{topic-slug}/NN-{type}-{slug}.png (relative to cwd) |
All auxiliary files (outline, prompts) are saved inside the output directory:
{output-dir}/
├── outline.md
├── prompts/
│ └── NN-{type}-{slug}.md
└── NN-{type}-{slug}.png
When input is pasted content (no file path), always uses illustrations/{topic-slug}/ with source-{slug}.{ext} saved alongside.
Slug: 2-4 words, kebab-case. Conflict: append -YYYYMMDD-HHMMSS.
| Action | Steps |
|---|---|
| Edit | Update prompt → Regenerate → Update reference |
| Add | Position → Prompt → Generate → Update outline → Insert |
| Delete | Delete files → Remove reference → Update outline |
Text correction policy:
| File | Content |
|---|---|
| references/workflow.md | Detailed procedures |
| references/usage.md | Command syntax |
| references/styles.md | Style gallery + Palette gallery |
| references/style-presets.md | Preset shortcuts (type + style + palette) |
| references/prompt-construction.md | Prompt templates |
| references/config/first-time-setup.md | First-time setup |
EXTEND.md lives at the first matching path listed in Step 1.5. Three ways to change it:
references/config/preferences-schema.md.preferred_image_backend: auto — default; runtime-native tool wins, falls back to the only installed backend, asks only if multiple non-native are present.preferred_image_backend: codex-imagegen — pin to Codex's built-in.preferred_image_backend: baoyu-image-gen — pin to the baoyu-image-gen skill.preferred_image_backend: ask — confirm backend every run.generation_batch_size: 4 — default number of images to render concurrently when the runtime supports parallel generation calls.preferred_type: infographic, preferred_style: notion, preferred_palette: macaron, language: zh.default_output_dir: imgs-subdir — where to write generated images relative to the article.Alternatives
NousResearch/hermes-agent
Article illustrations: type × style × palette consistency.
coreyhaines31/marketingskills
When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," "how long should I run this test," "growth experiments," "experiment velocity," "experiment backlog," "ICE score," "experimentation program
coreyhaines31/marketingskills
When the user wants to reduce churn, build cancellation flows, set up save offers, recover failed payments, or implement retention strategies. Also use when the user mentions 'churn,' 'cancel flow,' 'offboarding,' 'save offer,' 'dunning,' 'failed payment recovery,' 'win-back,' 'retention,' 'exit survey,' 'pause subscription,' 'involuntary churn,' 'people keep canceling,' 'churn rate is too high,' 'how do I keep users,' or 'customers are leaving.' Use this whenever someone is losing subscribers o
JasonColapietro/suede-creator-skills
Suede-owned experimentation discipline for hypotheses, sample sizing, test duration, significance, and repeatable experiment programs. Use when comparing variants, deciding whether a result is reliable, or building an experiment backlog and cadence. NOT FOR: analytics instrumentation (use suede-analytics), post-click conversion diagnosis (use suede-site-alchemy), or writing the variant copy itself (use suede-copy).