diff --git a/skills/creative/baoyu-article-illustrator/SKILL.md b/skills/creative/baoyu-article-illustrator/SKILL.md new file mode 100644 index 00000000000..977015f87c3 --- /dev/null +++ b/skills/creative/baoyu-article-illustrator/SKILL.md @@ -0,0 +1,209 @@ +--- +name: baoyu-article-illustrator +description: Analyzes article structure, identifies positions requiring visual aids, generates illustrations with Type × Style × Palette three-dimension approach. Use when user asks to "illustrate article", "add images", "generate images for article", or "为文章配图". +version: 1.57.0 +metadata: + openclaw: + homepage: https://github.com/JimLiu/baoyu-skills#baoyu-article-illustrator +--- + +# Article Illustrator + +Analyze articles, identify illustration positions, generate images with Type × Style × Palette consistency. + +## User Input Tools + +When this skill prompts the user, follow this tool-selection rule (priority order): + +1. **Prefer built-in user-input tools** exposed by the current agent runtime — e.g., `AskUserQuestion`, `request_user_input`, `clarify`, `ask_user`, or any equivalent. +2. **Fallback**: if no such tool exists, emit a numbered plain-text message and ask the user to reply with the chosen number/answer for each question. +3. **Batching**: if the tool supports multiple questions per call, combine all applicable questions into a single call; if only single-question, ask them one at a time in priority order. + +Concrete `AskUserQuestion` references below are examples — substitute the local equivalent in other runtimes. + +## Image Generation Tools + +When this skill needs to render an image: + +- **Use whatever image-generation tool or skill is available** in the current runtime — e.g., Codex `imagegen`, Hermes `image_generate`, `baoyu-imagine`, or any equivalent the user has installed. +- **If multiple are available**, ask the user **once** at the start which to use (batch with any other initial questions). +- **If none are available**, tell the user and ask how to proceed. + +**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`, `image_generate`, `baoyu-imagine`) above are examples — substitute the local equivalents under the same rule. + +## Reference Images + +Users may supply reference images via `--ref ` 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](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-imagine` accepts `ref` per task). + +## Three Dimensions + +| 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](references/style-presets.md). + +## Types + +| Type | Best For | +|------|----------| +| `infographic` | Data, metrics, technical | +| `scene` | Narratives, emotional | +| `flowchart` | Processes, workflows | +| `comparison` | Side-by-side, options | +| `framework` | Models, architecture | +| `timeline` | History, evolution | + +## Styles + +See [references/styles.md](references/styles.md) for Core Styles, full gallery, and Type × Style compatibility. + +## Workflow + +``` +- [ ] 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 +``` + +### Step 1: Pre-check + +**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](references/config/first-time-setup.md) | + +Full procedures: [references/workflow.md](references/workflow.md#step-1-pre-check) + +### Step 2: Analyze + +| 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](references/workflow.md#step-2-setup--analyze) + +### Step 3: Confirm Settings ⚠️ + +**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](references/workflow.md#step-3-confirm-settings-) + +### Step 4: Generate Outline + +Save `outline.md` with frontmatter (type, density, style, palette, image_count) and entries: + +```yaml +## Illustration 1 +**Position**: [section/paragraph] +**Purpose**: [why] +**Visual Content**: [what] +**Filename**: 01-infographic-concept-name.png +``` + +Full template: [references/workflow.md](references/workflow.md#step-4-generate-outline) + +### Step 5: Generate Images + +⛔ **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. + +1. For each illustration, create a prompt file per [references/prompt-construction.md](references/prompt-construction.md) +2. Save to `prompts/NN-{type}-{slug}.md` with YAML frontmatter +3. Prompts **MUST** use type-specific templates with structured sections (ZONES / LABELS / COLORS / STYLE / ASPECT) +4. LABELS **MUST** include article-specific data: actual numbers, terms, metrics, quotes +5. **DO NOT** pass ad-hoc inline prompts to `--prompt` without saving prompt files first +6. Select the backend via the `## 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. +7. **Execution strategy**: When multiple illustrations have saved prompt files and the task is now plain generation, prefer the chosen backend's batch interface (if it offers one) over spawning subagents. Use subagents only when each image still needs separate prompt iteration or creative exploration. If the backend has no batch interface, generate sequentially. +8. Process references (`direct`/`style`/`palette`) per prompt frontmatter +9. Apply watermark if EXTEND.md enabled +10. Generate from saved prompt files; retry once on failure + +Full procedures: [references/workflow.md](references/workflow.md#step-5-generate-images) + +### Step 6: Finalize + +Insert `![description]({relative-path}/NN-{type}-{slug}.png)` 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 + +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`. + +## Modification + +| Action | Steps | +|--------|-------| +| Edit | Update prompt → Regenerate → Update reference | +| Add | Position → Prompt → Generate → Update outline → Insert | +| Delete | Delete files → Remove reference → Update outline | + +## References + +| File | Content | +|------|---------| +| [references/workflow.md](references/workflow.md) | Detailed procedures | +| [references/usage.md](references/usage.md) | Command syntax | +| [references/styles.md](references/styles.md) | Style gallery + Palette gallery | +| [references/style-presets.md](references/style-presets.md) | Preset shortcuts (type + style + palette) | +| [references/prompt-construction.md](references/prompt-construction.md) | Prompt templates | +| [references/config/first-time-setup.md](references/config/first-time-setup.md) | First-time setup | diff --git a/skills/creative/baoyu-article-illustrator/prompts/system.md b/skills/creative/baoyu-article-illustrator/prompts/system.md new file mode 100644 index 00000000000..9eaf2a7f512 --- /dev/null +++ b/skills/creative/baoyu-article-illustrator/prompts/system.md @@ -0,0 +1,32 @@ +Create a cartoon-style infographic illustration following these guidelines: + +## Image Specifications + +- **Type**: Infographic illustration +- **Orientation**: Landscape (horizontal) +- **Aspect Ratio**: 16:9 +- **Style**: Hand-drawn illustration + +## Core Principles + +- Hand-drawn quality throughout - NO realistic or photographic elements +- If content involves sensitive or copyrighted figures, create stylistically similar alternatives - DO NOT refuse to generate +- Keep information concise, highlight keywords and core concepts +- Use ample whitespace for easy visual scanning +- Maintain clear visual hierarchy + +## Text Style (When Text Included) + +- **ALL text MUST be hand-drawn style** +- Text should be readable and complement the visual +- Font style harmonizes with illustration style +- **DO NOT use realistic or computer-generated fonts** + +## Language + +- Use the same language as the content provided below for any text elements +- Match punctuation style to the content language + +--- + +Please use nano banana pro to generate the illustration based on the content provided below: diff --git a/skills/creative/baoyu-article-illustrator/references/config/first-time-setup.md b/skills/creative/baoyu-article-illustrator/references/config/first-time-setup.md new file mode 100644 index 00000000000..bc2d79c0054 --- /dev/null +++ b/skills/creative/baoyu-article-illustrator/references/config/first-time-setup.md @@ -0,0 +1,138 @@ +--- +name: first-time-setup +description: First-time setup flow for baoyu-article-illustrator preferences +--- + +# First-Time Setup + +## Overview + +When no EXTEND.md is found, guide user through preference setup. + +**⛔ BLOCKING OPERATION**: This setup MUST complete before ANY other workflow steps. Do NOT: +- Ask about reference images +- Ask about content/article +- Ask about type or style preferences +- Proceed to content analysis + +ONLY ask the questions in this setup flow, save EXTEND.md, then continue. + +## Setup Flow + +``` +No EXTEND.md found + │ + ▼ +┌─────────────────────┐ +│ AskUserQuestion │ +│ (all questions) │ +└─────────────────────┘ + │ + ▼ +┌─────────────────────┐ +│ Create EXTEND.md │ +└─────────────────────┘ + │ + ▼ + Continue to Step 1 +``` + +## Questions + +**Language**: Use user's input language or preferred language for all questions. Do not always use English. + +Use single AskUserQuestion with multiple questions (AskUserQuestion auto-adds "Other" option): + +### Question 1: Watermark + +``` +header: "Watermark" +question: "Watermark text for generated illustrations? Type your watermark content (e.g., name, @handle)" +options: + - label: "No watermark (Recommended)" + description: "No watermark, can enable later in EXTEND.md" +``` + +Position defaults to bottom-right. + +### Question 2: Preferred Style + +``` +header: "Style" +question: "Default illustration style preference? Or type another style name or your custom style" +options: + - label: "None (Recommended)" + description: "Auto-select based on content analysis" + - label: "notion" + description: "Minimalist hand-drawn line art" + - label: "warm" + description: "Friendly, approachable, personal" +``` + +### Question 3: Output Directory + +``` +header: "Output Directory" +question: "Where to save generated illustrations when illustrating a file?" +options: + - label: "imgs-subdir (Recommended)" + description: "{article-dir}/imgs/ — images in a subdirectory next to the article" + - label: "same-dir" + description: "{article-dir}/ — images alongside the article file" + - label: "illustrations-subdir" + description: "{article-dir}/illustrations/ — separate illustrations subdirectory" + - label: "independent" + description: "illustrations/{topic-slug}/ — standalone directory in cwd" +``` + +### Question 4: Save Location + +``` +header: "Save" +question: "Where to save preferences?" +options: + - label: "Project" + description: ".baoyu-skills/ (this project only)" + - label: "User" + description: "~/.baoyu-skills/ (all projects)" +``` + +## Save Locations + +| Choice | Path | Scope | +|--------|------|-------| +| Project | `.baoyu-skills/baoyu-article-illustrator/EXTEND.md` | Current project | +| User | `~/.baoyu-skills/baoyu-article-illustrator/EXTEND.md` | All projects | + +## After Setup + +1. Create directory if needed +2. Write EXTEND.md with frontmatter +3. Confirm: "Preferences saved to [path]" +4. Continue to Step 1 + +## EXTEND.md Template + +```yaml +--- +version: 1 +watermark: + enabled: [true/false] + content: "[user input or empty]" + position: bottom-right + opacity: 0.7 +preferred_style: + name: [selected style or null] + description: "" +default_output_dir: imgs-subdir # same-dir | imgs-subdir | illustrations-subdir | independent +language: null +custom_styles: [] +--- +``` + +## Modifying Preferences Later + +Users can edit EXTEND.md directly or run setup again: +- Delete EXTEND.md to trigger setup +- Edit YAML frontmatter for quick changes +- Full schema: `config/preferences-schema.md` diff --git a/skills/creative/baoyu-article-illustrator/references/config/preferences-schema.md b/skills/creative/baoyu-article-illustrator/references/config/preferences-schema.md new file mode 100644 index 00000000000..6b37faa0607 --- /dev/null +++ b/skills/creative/baoyu-article-illustrator/references/config/preferences-schema.md @@ -0,0 +1,127 @@ +--- +name: preferences-schema +description: EXTEND.md YAML schema for baoyu-article-illustrator user preferences +--- + +# Preferences Schema + +## Full Schema + +```yaml +--- +version: 1 + +watermark: + enabled: false + content: "" + position: bottom-right # bottom-right|bottom-left|bottom-center|top-right + +preferred_style: + name: null # Built-in or custom style name + description: "" # Override/notes + +preferred_palette: null # Built-in palette name (macaron|warm|neon) or null + +language: null # zh|en|ja|ko|auto + +default_output_dir: null # same-dir|illustrations-subdir|independent + +custom_styles: + - name: my-style + description: "Style description" + color_palette: + primary: ["#1E3A5F", "#4A90D9"] + background: "#F5F7FA" + accents: ["#00B4D8", "#48CAE4"] + visual_elements: "Clean lines, geometric shapes" + typography: "Modern sans-serif" + best_for: "Business, education" +--- +``` + +## Field Reference + +| Field | Type | Default | Description | +|-------|------|---------|-------------| +| `version` | int | 1 | Schema version | +| `watermark.enabled` | bool | false | Enable watermark | +| `watermark.content` | string | "" | Watermark text (@username or custom) | +| `watermark.position` | enum | bottom-right | Position on image | +| `preferred_style.name` | string | null | Style name or null | +| `preferred_style.description` | string | "" | Custom notes/override | +| `preferred_palette` | string | null | Palette override (macaron, warm, neon, or null) | +| `language` | string | null | Output language (null = auto-detect) | +| `default_output_dir` | enum | null | Output directory preference (null = ask each time) | +| `custom_styles` | array | [] | User-defined styles | + +## Position Options + +| Value | Description | +|-------|-------------| +| `bottom-right` | Lower right corner (default, most common) | +| `bottom-left` | Lower left corner | +| `bottom-center` | Bottom center | +| `top-right` | Upper right corner | + +## Output Directory Options + +| Value | Description | +|-------|-------------| +| `same-dir` | Same directory as article | +| `illustrations-subdir` | `{article-dir}/illustrations/` subdirectory | +| `independent` | `illustrations/{topic-slug}/` in working directory | + +## Custom Style Fields + +| Field | Required | Description | +|-------|----------|-------------| +| `name` | Yes | Unique style identifier (kebab-case) | +| `description` | Yes | What the style conveys | +| `color_palette.primary` | No | Main colors (array) | +| `color_palette.background` | No | Background color | +| `color_palette.accents` | No | Accent colors (array) | +| `visual_elements` | No | Decorative elements | +| `typography` | No | Font/lettering style | +| `best_for` | No | Recommended content types | + +## Example: Minimal Preferences + +```yaml +--- +version: 1 +watermark: + enabled: true + content: "@myusername" +preferred_style: + name: notion +--- +``` + +## Example: Full Preferences + +```yaml +--- +version: 1 +watermark: + enabled: true + content: "@myaccount" + position: bottom-right + +preferred_style: + name: notion + description: "Clean illustrations for tech articles" + +language: zh + +custom_styles: + - name: corporate + description: "Professional B2B style" + color_palette: + primary: ["#1E3A5F", "#4A90D9"] + background: "#F5F7FA" + accents: ["#00B4D8", "#48CAE4"] + visual_elements: "Clean lines, subtle gradients, geometric shapes" + typography: "Modern sans-serif, professional" + best_for: "Business, SaaS, enterprise" +--- +``` diff --git a/skills/creative/baoyu-article-illustrator/references/palettes/macaron.md b/skills/creative/baoyu-article-illustrator/references/palettes/macaron.md new file mode 100644 index 00000000000..e7d7a6bac95 --- /dev/null +++ b/skills/creative/baoyu-article-illustrator/references/palettes/macaron.md @@ -0,0 +1,33 @@ +# macaron + +Soft macaron pastel color blocks on warm cream + +## Background + +- Color: Warm Cream (#F5F0E8) +- Texture: Subtle warm paper grain + +## Colors + +| Role | Color | Hex | Usage | +|------|-------|-----|-------| +| Background | Warm Cream | #F5F0E8 | Primary background | +| Primary Text | Deep Charcoal | #2D2D2D | Headlines, main text, outlines | +| Macaron Blue | Sky Blue | #A8D8EA | Info block fill, cool-toned zones | +| Macaron Mint | Mint Green | #B5E5CF | Info block fill, growth/positive zones | +| Macaron Lavender | Lavender | #D5C6E0 | Info block fill, abstract/concept zones | +| Macaron Peach | Peach | #FFD5C2 | Info block fill, warm-toned zones | +| Accent | Coral Red | #E8655A | Key data, warnings, emphasis | +| Muted Text | Warm Gray | #6B6B6B | Secondary annotations, small labels | + +## Accent + +Coral Red (#E8655A) for key data, warnings, and emphasis highlights. Use sparingly — one or two elements per illustration. + +## Semantic Constraint + +Soft pastel macaron color palette. Use block colors as rounded card backgrounds for distinct information sections. Accent coral red sparingly for emphasis on key terms only. Do NOT render color names, hex codes, or role labels as visible text in the image. + +## Best For + +Educational content, knowledge sharing, concept explainers, tutorials, tech summaries, onboarding materials diff --git a/skills/creative/baoyu-article-illustrator/references/palettes/mono-ink.md b/skills/creative/baoyu-article-illustrator/references/palettes/mono-ink.md new file mode 100644 index 00000000000..88132f960a7 --- /dev/null +++ b/skills/creative/baoyu-article-illustrator/references/palettes/mono-ink.md @@ -0,0 +1,42 @@ +# mono-ink + +Black ink on pure white with sparse semantic accent colors + +## Background + +- Color: Pure White (#FFFFFF) +- Texture: Clean, no grain, no tint + +## Colors + +| Role | Color | Hex | Usage | +|------|-------|-----|-------| +| Background | Pure White | #FFFFFF | Canvas | +| Primary | Near Black | #1A1A1A | All lines, text, figures, arrows | +| Accent (risk/emphasis) | Coral Red | #E8655A | Risk, problem, gap, key emphasis | +| Accent (positive) | Muted Teal | #5FA8A8 | Positive, solution, "after" state | +| Accent (neutral tag) | Dusty Lavender | #9B8AB5 | Neutral tags, category labels | +| Soft Fill | Pale Gray | #F0F0F0 | Subtle zone backgrounds (optional) | + +## Accent + +Use black ink for all structural elements — lines, text, figures. Accent colors appear only for semantic highlighting: coral red for risks/gaps/problems, muted teal for positive/solution/after-states, dusty lavender for neutral category tags. Total colored pixels must remain under 10% of canvas. Pale gray may back a subtle zone but must never dominate. + +## Semantic Constraint + +Black ink on white canvas. Accent colors for semantic highlighting only — total colored pixels under 10% of canvas. Do NOT render color names, hex codes, or role labels as visible text in the image. + +## Compatible With + +- `ink-notes` (primary, default pairing) +- `minimal` (strict monochrome variation, drops the style's built-in accent) +- `sketch` (pencil + ink hybrid look) + +## Not Recommended With + +- `sketch-notes` — its "no pure white backgrounds" rule conflicts +- `warm`, `elegant`, `watercolor`, `fantasy-animation` — color-heavy by design, mono-ink strips their identity + +## Best For + +Professional visual notes, Before/After essays, tech manifestos, framework analogies, whiteboard-presentation explainers diff --git a/skills/creative/baoyu-article-illustrator/references/palettes/neon.md b/skills/creative/baoyu-article-illustrator/references/palettes/neon.md new file mode 100644 index 00000000000..d863d676da2 --- /dev/null +++ b/skills/creative/baoyu-article-illustrator/references/palettes/neon.md @@ -0,0 +1,33 @@ +# neon + +Vibrant neon colors on dark backgrounds + +## Background + +- Color: Deep Purple (#2D1B4E) +- Texture: Subtle grid pattern or solid dark + +## Colors + +| Role | Color | Hex | Usage | +|------|-------|-----|-------| +| Background | Deep Purple | #2D1B4E | Primary background | +| Alt Background | Dark Teal | #0F4C5C | Alternative sections | +| Primary | Hot Pink | #FF1493 | Main accent | +| Secondary | Electric Cyan | #00FFFF | Supporting elements | +| Tertiary | Neon Yellow | #FFFF00 | Highlights | +| Accent 1 | Lime Green | #32CD32 | Energy, success | +| Accent 2 | Orange | #FF6B35 | Warmth | +| Text | White | #FFFFFF | Text elements | + +## Accent + +Hot Pink (#FF1493) for primary emphasis. High contrast neon-on-dark creates immediate visual impact. + +## Semantic Constraint + +Vibrant neon-on-dark palette. High contrast, immediate visual impact. Do NOT render color names, hex codes, or role labels as visible text in the image. + +## Best For + +Gaming, retro tech, 80s/90s nostalgic content, bold editorial, trend and pop culture diff --git a/skills/creative/baoyu-article-illustrator/references/palettes/warm.md b/skills/creative/baoyu-article-illustrator/references/palettes/warm.md new file mode 100644 index 00000000000..c2e7afa026e --- /dev/null +++ b/skills/creative/baoyu-article-illustrator/references/palettes/warm.md @@ -0,0 +1,32 @@ +# warm + +Warm earth tones on soft peach, no cool colors + +## Background + +- Color: Soft Peach (#FFECD2) +- Texture: Warm paper texture + +## Colors + +| Role | Color | Hex | Usage | +|------|-------|-----|-------| +| Background | Soft Peach | #FFECD2 | Primary background | +| Outlines | Deep Charcoal | #2D2D2D | All element outlines | +| Primary | Warm Orange | #ED8936 | Main accent color | +| Secondary | Terracotta | #C05621 | Warm depth | +| Tertiary | Golden Yellow | #F6AD55 | Highlights, energy | +| Accent | Deep Brown | #744210 | Grounding, anchoring | +| Text | Warm Charcoal | #4A4A4A | Text elements | + +## Accent + +Warm Orange (#ED8936) for primary emphasis. Warm-only palette — no cool colors (no green, blue, purple). Modern-retro feel. + +## Semantic Constraint + +Warm earth tone palette. Warm-only — no cool colors (no green, blue, purple). Do NOT render color names, hex codes, or role labels as visible text in the image. + +## Best For + +Product showcases, team introductions, feature grids, brand content, personal growth, lifestyle diff --git a/skills/creative/baoyu-article-illustrator/references/prompt-construction.md b/skills/creative/baoyu-article-illustrator/references/prompt-construction.md new file mode 100644 index 00000000000..ee855016484 --- /dev/null +++ b/skills/creative/baoyu-article-illustrator/references/prompt-construction.md @@ -0,0 +1,426 @@ +# Prompt Construction + +## Prompt File Format + +Each prompt file uses YAML frontmatter + content: + +```yaml +--- +illustration_id: 01 +type: infographic +style: blueprint +references: # ⚠️ ONLY if files EXIST in references/ directory + - ref_id: 01 + filename: 01-ref-diagram.png + usage: direct # direct | style | palette +--- + +[Type-specific template content below...] +``` + +**⚠️ CRITICAL - When to include `references` field**: + +| Situation | Action | +|-----------|--------| +| Reference file saved to `references/` | Include in frontmatter ✓ | +| Style extracted verbally (no file) | DO NOT include in frontmatter, append to prompt body instead | +| File path in frontmatter but file doesn't exist | ERROR - remove references field | + +**Reference Usage Types** (only when file exists): + +| Usage | Description | Generation Action | +|-------|-------------|-------------------| +| `direct` | Primary visual reference | Pass to `--ref` parameter | +| `style` | Style characteristics only | Describe style in prompt text | +| `palette` | Color palette extraction | Include colors in prompt | + +**If no reference file but style/palette extracted verbally**, append directly to prompt body: +``` +COLORS (from reference): +- Primary: #E8756D coral +- Secondary: #7ECFC0 mint +... + +STYLE (from reference): +- Clean lines, minimal shadows +- Gradient backgrounds +... +``` + +--- + +## Default Composition Requirements + +**Apply to ALL prompts by default**: + +| Requirement | Description | +|-------------|-------------| +| **Clean composition** | Simple layouts, no visual clutter | +| **White space** | Generous margins, breathing room around elements | +| **No complex backgrounds** | Solid colors or subtle gradients only, avoid busy textures | +| **Centered or content-appropriate** | Main visual elements centered or positioned by content needs | +| **Matching graphics** | Use graphic elements that align with content theme | +| **Highlight core info** | White space draws attention to key information | + +**Add to ALL prompts**: +> Clean composition with generous white space. Simple or no background. Main elements centered or positioned by content needs. + +--- + +## Color Specification Rules + +Colors in prompts use hex codes for **rendering guidance only** — they tell the model which colors to use, NOT what text to display. + +**⚠️ CRITICAL**: Image generation models sometimes render color names and hex values as visible text labels in the image (e.g., painting "Macaron Blue #A8D8EA" as a label). This must be prevented. + +**Add to ALL prompts that contain a COLORS section**: +> Color values (#hex) and color names are rendering guidance only — do NOT display color names, hex codes, or palette labels as visible text in the image. + +--- + +## Character Rendering + +When depicting people: + +| Guideline | Description | +|-----------|-------------| +| **Style** | Simplified cartoon silhouettes or symbolic expressions | +| **Avoid** | Realistic human portrayals, detailed faces | +| **Diversity** | Varied body types when showing multiple people | +| **Emotion** | Express through posture and simple gestures | + +**Add to ALL prompts with human figures**: +> Human figures: simplified stylized silhouettes or symbolic representations, not photorealistic. + +--- + +## Text in Illustrations + +| Element | Guideline | +|---------|-----------| +| **Size** | Large, prominent, immediately readable | +| **Style** | Handwritten fonts preferred for warmth | +| **Content** | Concise keywords and core concepts only | +| **Language** | Match article language | + +**Add to prompts with text**: +> Text should be large and prominent with handwritten-style fonts. Keep minimal, focus on keywords. + +--- + +## Principles + +Good prompts must include: + +1. **Layout Structure First**: Describe composition, zones, flow direction +2. **Specific Data/Labels**: Use actual numbers, terms from article +3. **Visual Relationships**: How elements connect +4. **Semantic Colors**: Meaning-based color choices (red=warning, green=efficient) +5. **Style Characteristics**: Line treatment, texture, mood +6. **Aspect Ratio**: End with ratio and complexity level + +## Type-Specific Templates + +### Infographic + +``` +[Title] - Data Visualization + +Layout: [grid/radial/hierarchical] + +ZONES: +- Zone 1: [data point with specific values] +- Zone 2: [comparison with metrics] +- Zone 3: [summary/conclusion] + +LABELS: [specific numbers, percentages, terms from article] +COLORS: [semantic color mapping] +STYLE: [style characteristics] +ASPECT: 16:9 +``` + +**Infographic + vector-illustration**: +``` +Flat vector illustration infographic. Clean black outlines on all elements. +COLORS: Cream background (#F5F0E6), Coral Red (#E07A5F), Mint Green (#81B29A), Mustard Yellow (#F2CC8F) +ELEMENTS: Geometric simplified icons, no gradients, playful decorative elements (dots, stars) +``` + +**Infographic + vector-illustration + warm palette**: +``` +Flat vector illustration infographic. Clean black outlines on all elements. +PALETTE OVERRIDE (warm): Warm-only color palette, no cool colors. +COLORS: Soft Peach background (#FFECD2), Warm Orange (#ED8936), + Terracotta (#C05621), Golden Yellow (#F6AD55), Deep Brown (#744210) +ELEMENTS: Geometric simplified icons, no gradients, rounded corners, + modular card layout, consistent icon style +``` + +### Scene + +``` +[Title] - Atmospheric Scene + +FOCAL POINT: [main subject] +ATMOSPHERE: [lighting, mood, environment] +MOOD: [emotion to convey] +COLOR TEMPERATURE: [warm/cool/neutral] +STYLE: [style characteristics] +ASPECT: 16:9 +``` + +### Flowchart + +``` +[Title] - Process Flow + +Layout: [left-right/top-down/circular] + +STEPS: +1. [Step name] - [brief description] +2. [Step name] - [brief description] +... + +CONNECTIONS: [arrow types, decision points] +STYLE: [style characteristics] +ASPECT: 16:9 +``` + +**Flowchart + vector-illustration**: +``` +Flat vector flowchart with bold arrows and geometric step containers. +COLORS: Cream background (#F5F0E6), steps in Coral/Mint/Mustard, black outlines +ELEMENTS: Rounded rectangles, thick arrows, simple icons per step +``` + +**Flowchart + sketch-notes + macaron palette**: +``` +Hand-drawn educational flowchart on warm cream paper. Slight wobble on all lines. +PALETTE: macaron — soft pastel color blocks +COLORS: Warm Cream background (#F5F0E8), zone fills in Macaron Blue (#A8D8EA), + Lavender (#D5C6E0), Mint (#B5E5CF), Coral Red (#E8655A) for emphasis +ELEMENTS: Rounded cards with dashed/solid borders, wavy hand-drawn arrows with labels, + simple stick-figure characters, doodle decorations (stars, underlines) +STYLE: Color fills don't completely fill outlines, hand-drawn lettering, generous white space +``` + +**Flowchart + ink-notes + mono-ink palette**: +``` +Professional hand-drawn visual-note flowchart on pure white. Black ink line work +with slight wobble, à la Mike Rohde sketchnoting. +PALETTE: mono-ink — black ink dominant, sparse semantic accents +COLORS: Pure White background (#FFFFFF), Near Black (#1A1A1A) for all lines, + text, and figures; Coral Red (#E8655A) only for risk/emphasis, + Muted Teal (#5FA8A8) only for positive/solution states +ELEMENTS: Left-to-right stage boxes with rounded-rect frames, wavy hand-drawn + arrows between stages, simple stick-figure characters with role + labels above (e.g., "ML Engineer", "Team Lead"), dashed-border box + for future/empty stage, small doodle icons per stage +STYLE: Hand-lettered titles (bold, oversized), handwritten stage labels and + annotations, generous white space, bottom tagline summarizing takeaway +``` + +### Comparison + +``` +[Title] - Comparison View + +LEFT SIDE - [Option A]: +- [Point 1] +- [Point 2] + +RIGHT SIDE - [Option B]: +- [Point 1] +- [Point 2] + +DIVIDER: [visual separator] +STYLE: [style characteristics] +ASPECT: 16:9 +``` + +**Comparison + vector-illustration**: +``` +Flat vector comparison with split layout. Clear visual separation. +COLORS: Left side Coral (#E07A5F), Right side Mint (#81B29A), cream background +ELEMENTS: Bold icons, black outlines, centered divider line +``` + +**Comparison + vector-illustration + warm palette**: +``` +Flat vector comparison with split layout. Clear visual separation. +PALETTE OVERRIDE (warm): Warm-only color palette, no cool colors. +COLORS: Left side Warm Orange (#ED8936), Right side Terracotta (#C05621), + Soft Peach background (#FFECD2), Deep Brown (#744210) accents +ELEMENTS: Bold icons, black outlines, centered divider line +``` + +**Comparison + ink-notes + mono-ink palette** (Before/After, Traditional vs New): +``` +Professional hand-drawn sketchnote comparison on pure white. Black ink line work +with slight wobble, à la Mike Rohde sketchnoting. +PALETTE: mono-ink — black ink dominant, sparse semantic accents +COLORS: Pure White background (#FFFFFF), Near Black (#1A1A1A) for all outlines, + text, figures, arrows; Coral Red (#E8655A) reserved for risks/gaps + (left/Before side); Muted Teal (#5FA8A8) reserved for positives + (right/After side). Color accents under 10% of canvas. +LAYOUT: Left | Right split with vertical hand-drawn divider. Hand-lettered + "Before" label (top-left) and "After" label (top-right). +LEFT SIDE: Stick figure(s) with role label above, speech bubble showing the + pain point, bulleted pain-point list in handwritten text. +RIGHT SIDE: Stick figure(s) showing the new state, bulleted improvement list, + small positive-action icons. +BRIDGE: Curved hand-drawn "mindset shift" arrow bridging left → right with + small inline label describing the shift. +BOTTOM: Single-line hand-lettered tagline summarizing the takeaway. +STYLE: Hand-lettered headings (bold, oversized), handwritten body annotations, + generous white space, no computer fonts, no gradients, no shadows. +``` + +### Framework + +``` +[Title] - Conceptual Framework + +STRUCTURE: [hierarchical/network/matrix] + +NODES: +- [Concept 1] - [role] +- [Concept 2] - [role] + +RELATIONSHIPS: [how nodes connect] +STYLE: [style characteristics] +ASPECT: 16:9 +``` + +**Framework + vector-illustration**: +``` +Flat vector framework diagram with geometric nodes and bold connectors. +COLORS: Cream background (#F5F0E6), nodes in Coral/Mint/Mustard/Blue, black outlines +ELEMENTS: Rounded rectangles or circles for nodes, thick connecting lines +``` + +**Framework + vector-illustration + warm palette**: +``` +Flat vector framework diagram with geometric nodes and bold connectors. +PALETTE OVERRIDE (warm): Warm-only color palette, no cool colors. +COLORS: Soft Peach background (#FFECD2), nodes in Warm Orange (#ED8936), + Terracotta (#C05621), Golden Yellow (#F6AD55), black outlines +ELEMENTS: Rounded rectangles or circles for nodes, thick connecting lines +``` + +**Framework + ink-notes + mono-ink palette** (command center, OS analogy): +``` +Professional hand-drawn sketchnote framework on pure white. Black ink line work +with slight wobble, à la Mike Rohde sketchnoting. +PALETTE: mono-ink — black ink dominant, sparse semantic accents +COLORS: Pure White background (#FFFFFF), Near Black (#1A1A1A) for all lines, + text, figures; Dusty Lavender (#9B8AB5) for neutral category tags only; + Coral Red (#E8655A) for emphasis sparingly. Color accents under 10%. +STRUCTURE: Central rounded-rectangle frame as "the system" with hand-lettered + title inside. Inner layer of labeled sub-components (node labels + above each). Outer layer of feeder arrows from stick-figure + operators/users with role labels. +ELEMENTS: Stick figures at the edges with role tags ("Team Lead", "Operator"), + wavy hand-drawn connector arrows with small inline labels, small + doodle icons per component, dashed-border placeholder(s) for + future/empty capabilities. +BOTTOM: Single-line hand-lettered tagline. +STYLE: Hand-lettered headings, handwritten annotations, generous white space, + no computer fonts, no gradients. +``` + +### Timeline + +``` +[Title] - Chronological View + +DIRECTION: [horizontal/vertical] + +EVENTS: +- [Date/Period 1]: [milestone] +- [Date/Period 2]: [milestone] + +MARKERS: [visual indicators] +STYLE: [style characteristics] +ASPECT: 16:9 +``` + +### Screen-Print Style Override + +When `style: screen-print`, replace standard style instructions with: + +``` +Screen print / silkscreen poster art. Flat color blocks, NO gradients. +COLORS: 2-5 colors maximum. [Choose from style palette or duotone pair] +TEXTURE: Halftone dot patterns, slight color layer misregistration, paper grain +COMPOSITION: Bold silhouettes, geometric framing, negative space as storytelling element +FIGURES: Silhouettes only, no detailed faces, stencil-cut edges +TYPOGRAPHY: Bold condensed sans-serif integrated into composition (not overlaid) +``` + +**Scene + screen-print**: +``` +Conceptual poster scene. Single symbolic focal point, NOT literal illustration. +COLORS: Duotone pair (e.g., Burnt Orange #E8751A + Deep Teal #0A6E6E) on Off-Black #121212 +COMPOSITION: Centered silhouette or geometric frame, 60%+ negative space +TEXTURE: Halftone dots, paper grain, slight print misregistration +``` + +**Comparison + screen-print**: +``` +Split poster composition. Each side dominated by one color from duotone pair. +LEFT: [Color A] side with silhouette/icon for [Option A] +RIGHT: [Color B] side with silhouette/icon for [Option B] +DIVIDER: Geometric shape or negative space boundary +TEXTURE: Halftone transitions between sides +``` + +--- + +## Palette Override + +When a palette is specified (via `--palette` or preset), it overrides the style's default colors: + +1. Read style file → get rendering rules (Visual Elements, Style Rules, line treatment) +2. Read palette file (`palettes/.md`) → get Colors + Background +3. Palette Colors **replace** style's default Color Palette in prompt +4. Palette Background **replaces** style's Background color (keep style's texture description) +5. Build prompt: style rendering instructions + palette colors + +**Prompt frontmatter** includes palette when specified: +```yaml +--- +illustration_id: 01 +type: infographic +style: vector-illustration +palette: macaron +--- +``` + +**Example**: `vector-illustration` + `macaron` palette: +``` +Flat vector illustration infographic. Clean black outlines on all elements. +PALETTE: macaron — soft pastel color blocks +COLORS: Warm Cream background (#F5F0E8), Macaron Blue (#A8D8EA), Mint (#B5E5CF), + Lavender (#D5C6E0), Peach (#FFD5C2), Coral Red (#E8655A) for emphasis +ELEMENTS: Geometric simplified icons, no gradients, playful decorative elements +``` + +When no palette is specified, use the style's built-in Color Palette as before. + +--- + +## What to Avoid + +- Vague descriptions ("a nice image") +- Literal metaphor illustrations +- Missing concrete labels/annotations +- Generic decorative elements + +## Watermark Integration + +If watermark enabled in preferences, append: + +``` +Include a subtle watermark "[content]" positioned at [position]. +``` diff --git a/skills/creative/baoyu-article-illustrator/references/style-presets.md b/skills/creative/baoyu-article-illustrator/references/style-presets.md new file mode 100644 index 00000000000..56544005526 --- /dev/null +++ b/skills/creative/baoyu-article-illustrator/references/style-presets.md @@ -0,0 +1,80 @@ +# Style Presets + +`--preset X` expands to a type + style + optional palette combination. Users can override any dimension. + +## By Category + +### Technical & Engineering + +| --preset | Type | Style | Palette | Best For | +|----------|------|-------|---------|----------| +| `tech-explainer` | `infographic` | `blueprint` | — | API docs, system metrics, technical deep-dives | +| `system-design` | `framework` | `blueprint` | — | Architecture diagrams, system design | +| `architecture` | `framework` | `vector-illustration` | — | Component relationships, module structure | +| `science-paper` | `infographic` | `scientific` | — | Research findings, lab results, academic | + +### Knowledge & Education + +| --preset | Type | Style | Palette | Best For | +|----------|------|-------|---------|----------| +| `knowledge-base` | `infographic` | `vector-illustration` | — | Concept explainers, tutorials, how-to | +| `saas-guide` | `infographic` | `notion` | — | Product guides, SaaS docs, tool walkthroughs | +| `tutorial` | `flowchart` | `vector-illustration` | — | Step-by-step tutorials, setup guides | +| `process-flow` | `flowchart` | `notion` | — | Workflow documentation, onboarding flows | +| `warm-knowledge` | `infographic` | `vector-illustration` | `warm` | Product showcases, team intros, feature cards, brand content | +| `edu-visual` | `infographic` | `vector-illustration` | `macaron` | Knowledge summaries, concept explainers, educational articles | +| `hand-drawn-edu` | `flowchart` | `sketch-notes` | `macaron` | Hand-drawn educational diagrams, process explainers, onboarding visuals | +| `ink-notes-compare` | `comparison` | `ink-notes` | `mono-ink` | Before/After essays, Traditional vs New, OS-style comparisons, mindset-shift narratives | +| `ink-notes-flow` | `flowchart` | `ink-notes` | `mono-ink` | Professional process explainers, workforce pipelines, hand-drawn technical walkthroughs | +| `ink-notes-framework` | `framework` | `ink-notes` | `mono-ink` | System analogies, command-center diagrams, architecture-as-metaphor, tech manifestos | + +### Data & Analysis + +| --preset | Type | Style | Palette | Best For | +|----------|------|-------|---------|----------| +| `data-report` | `infographic` | `editorial` | — | Data journalism, metrics reports, dashboards | +| `versus` | `comparison` | `vector-illustration` | — | Tech comparisons, framework shootouts | +| `business-compare` | `comparison` | `elegant` | — | Product evaluations, strategy options | + +### Narrative & Creative + +| --preset | Type | Style | Palette | Best For | +|----------|------|-------|---------|----------| +| `storytelling` | `scene` | `warm` | — | Personal essays, reflections, growth stories | +| `lifestyle` | `scene` | `watercolor` | — | Travel, wellness, lifestyle, creative | +| `history` | `timeline` | `elegant` | — | Historical overviews, milestones | +| `evolution` | `timeline` | `warm` | — | Progress narratives, growth journeys | + +### Editorial & Opinion + +| --preset | Type | Style | Palette | Best For | +|----------|------|-------|---------|----------| +| `opinion-piece` | `scene` | `screen-print` | — | Op-eds, commentary, critical essays | +| `editorial-poster` | `comparison` | `screen-print` | — | Debate, contrasting viewpoints | +| `cinematic` | `scene` | `screen-print` | — | Dramatic narratives, cultural essays | + +## Content Type → Preset Recommendations + +Use this table during Step 3 to recommend presets based on Step 2 content analysis: + +| Content Type (Step 2) | Primary Preset | Alternatives | +|------------------------|----------------|--------------| +| Technical | `tech-explainer` | `system-design`, `architecture` | +| Tutorial | `tutorial` | `process-flow`, `knowledge-base`, `edu-visual` | +| Methodology / Framework | `system-design` | `architecture`, `process-flow` | +| Data / Metrics | `data-report` | `versus`, `tech-explainer` | +| Comparison / Review | `versus` | `business-compare`, `editorial-poster`, `ink-notes-compare` | +| Manifesto / Mindset shift / Professional visual note | `ink-notes-compare` | `ink-notes-framework`, `ink-notes-flow` | +| Narrative / Personal | `storytelling` | `lifestyle`, `evolution` | +| Opinion / Editorial | `opinion-piece` | `cinematic`, `editorial-poster` | +| Historical / Timeline | `history` | `evolution` | +| Academic / Research | `science-paper` | `tech-explainer`, `data-report` | +| SaaS / Product | `saas-guide` | `knowledge-base`, `process-flow`, `warm-knowledge` | +| Education / Knowledge | `edu-visual` | `knowledge-base`, `tutorial`, `hand-drawn-edu` | + +## Override Examples + +- `--preset tech-explainer --style notion` = infographic type with notion style +- `--preset storytelling --type timeline` = timeline type with warm style + +Explicit `--type`/`--style` flags always override preset values. diff --git a/skills/creative/baoyu-article-illustrator/references/styles.md b/skills/creative/baoyu-article-illustrator/references/styles.md new file mode 100644 index 00000000000..5d90d3b7289 --- /dev/null +++ b/skills/creative/baoyu-article-illustrator/references/styles.md @@ -0,0 +1,224 @@ +# Style Reference + +## Core Styles + +Simplified style tier for quick selection: + +| Core Style | Maps To | Best For | +|------------|---------|----------| +| `vector` | vector-illustration | Knowledge articles, tutorials, tech content | +| `minimal-flat` | notion | General, knowledge sharing, SaaS | +| `sci-fi` | blueprint | AI, frontier tech, system design | +| `hand-drawn` | sketch/warm | Relaxed, reflective, casual content | +| `editorial` | editorial | Processes, data, journalism | +| `scene` | warm/watercolor | Narratives, emotional, lifestyle | +| `poster` | screen-print | Opinion, editorial, cultural, cinematic | + +Use Core Styles for most cases. See full Style Gallery below for granular control. + +--- + +## Style Gallery + +| Style | Description | Best For | +|-------|-------------|----------| +| `vector-illustration` | Clean flat vector art with bold shapes | Knowledge articles, tutorials, tech content | +| `notion` | Minimalist hand-drawn line art | Knowledge sharing, SaaS, productivity | +| `elegant` | Refined, sophisticated | Business, thought leadership | +| `warm` | Friendly, approachable | Personal growth, lifestyle, education | +| `minimal` | Ultra-clean, zen-like | Philosophy, minimalism, core concepts | +| `blueprint` | Technical schematics | Architecture, system design, engineering | +| `watercolor` | Soft artistic with natural warmth | Lifestyle, travel, creative | +| `editorial` | Magazine-style infographic | Tech explainers, journalism | +| `scientific` | Academic precise diagrams | Biology, chemistry, technical research | +| `chalkboard` | Classroom chalk drawing style | Education, teaching, explanations | +| `fantasy-animation` | Ghibli/Disney-inspired hand-drawn | Storybook, magical, emotional | +| `flat` | Modern bold geometric shapes | Modern digital, contemporary | +| `flat-doodle` | Cute flat with bold outlines | Cute, friendly, approachable | +| `intuition-machine` | Technical briefing with aged paper | Technical briefings, academic | +| `nature` | Organic earthy illustration | Environmental, wellness | +| `pixel-art` | Retro 8-bit gaming aesthetic | Gaming, retro tech | +| `playful` | Whimsical pastel doodles | Fun, casual, educational | +| `retro` | 80s/90s neon geometric | 80s/90s nostalgic, bold | +| `sketch` | Raw pencil notebook style | Brainstorming, creative exploration | +| `screen-print` | Bold poster art, halftone textures, limited colors | Opinion, editorial, cultural, cinematic | +| `sketch-notes` | Soft hand-drawn warm notes | Educational, warm notes | +| `ink-notes` | Black ink on pure white, sparse semantic accents, hand-lettered (à la Mike Rohde's sketchnoting) | Before/After essays, tech manifestos, framework analogies | +| `vintage` | Aged parchment historical | Historical, heritage | + +Full specifications: `references/styles/