mindforge-cc 11.5.1 → 11.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agent/mindforge/skill-tdd.md +53 -0
- package/.agent/mindforge/skills-index.md +118 -0
- package/.agent/mindforge/systematic-debug.md +60 -0
- package/.agent/mindforge/wf-catalog.md +37 -0
- package/.agent/mindforge/wf-code-audit.md +31 -0
- package/.agent/mindforge/wf-competitive-analysis.md +31 -0
- package/.agent/mindforge/wf-deep-research.md +32 -0
- package/.agent/mindforge/wf-feature-planner.md +31 -0
- package/.agent/mindforge/wf-incident-response.md +31 -0
- package/.agent/mindforge/wf-onboard-codebase.md +31 -0
- package/.agent/mindforge/wf-perf-optimize.md +31 -0
- package/.agent/mindforge/wf-pr-review.md +31 -0
- package/.agent/mindforge/wf-refactor-plan.md +31 -0
- package/.agent/mindforge/wf-release-prep.md +31 -0
- package/.agent/mindforge/wf-tdd-sprint.md +31 -0
- package/.agent/mindforge/wf-tech-evaluation.md +31 -0
- package/.agent/skills/1password-skill/SKILL.md +156 -0
- package/.agent/skills/1password-skill/references/cli-examples.md +31 -0
- package/.agent/skills/1password-skill/references/get-started.md +21 -0
- package/.agent/skills/article-illustrator/SKILL.md +199 -0
- package/.agent/skills/article-illustrator/references/prompt-construction.md +426 -0
- package/.agent/skills/article-illustrator/references/style-presets.md +80 -0
- package/.agent/skills/article-illustrator/references/styles.md +224 -0
- package/.agent/skills/article-illustrator/references/usage.md +50 -0
- package/.agent/skills/article-illustrator/references/workflow.md +332 -0
- package/.agent/skills/arxiv/SKILL.md +275 -0
- package/.agent/skills/blogwatcher/SKILL.md +130 -0
- package/.agent/skills/code-wiki/SKILL.md +438 -0
- package/.agent/skills/code-wiki/templates/README.md +31 -0
- package/.agent/skills/code-wiki/templates/architecture.md +30 -0
- package/.agent/skills/code-wiki/templates/getting-started.md +47 -0
- package/.agent/skills/code-wiki/templates/module.md +38 -0
- package/.agent/skills/codebase-inspection/SKILL.md +109 -0
- package/.agent/skills/comic-creator/SKILL.md +240 -0
- package/.agent/skills/comic-creator/references/analysis-framework.md +176 -0
- package/.agent/skills/comic-creator/references/auto-selection.md +71 -0
- package/.agent/skills/comic-creator/references/base-prompt.md +98 -0
- package/.agent/skills/comic-creator/references/character-template.md +180 -0
- package/.agent/skills/comic-creator/references/ohmsha-guide.md +85 -0
- package/.agent/skills/comic-creator/references/partial-workflows.md +106 -0
- package/.agent/skills/comic-creator/references/storyboard-template.md +143 -0
- package/.agent/skills/comic-creator/references/workflow.md +401 -0
- package/.agent/skills/concept-diagrams/SKILL.md +355 -0
- package/.agent/skills/concept-diagrams/references/dashboard-patterns.md +43 -0
- package/.agent/skills/concept-diagrams/references/infrastructure-patterns.md +144 -0
- package/.agent/skills/concept-diagrams/references/physical-shape-cookbook.md +42 -0
- package/.agent/skills/creative-ideation/SKILL.md +144 -0
- package/.agent/skills/creative-ideation/references/full-prompt-library.md +110 -0
- package/.agent/skills/devops-cli/SKILL.md +149 -0
- package/.agent/skills/devops-cli/references/app-discovery.md +112 -0
- package/.agent/skills/devops-cli/references/authentication.md +59 -0
- package/.agent/skills/devops-cli/references/cli-reference.md +104 -0
- package/.agent/skills/devops-cli/references/running-apps.md +171 -0
- package/.agent/skills/devops-watchers/SKILL.md +103 -0
- package/.agent/skills/docker-management/SKILL.md +273 -0
- package/.agent/skills/domain-intel/SKILL.md +96 -0
- package/.agent/skills/duckduckgo-search/SKILL.md +230 -0
- package/.agent/skills/github-auth/SKILL.md +240 -0
- package/.agent/skills/github-code-review/SKILL.md +474 -0
- package/.agent/skills/github-code-review/references/review-output-template.md +74 -0
- package/.agent/skills/github-issues/SKILL.md +363 -0
- package/.agent/skills/github-issues/templates/bug-report.md +35 -0
- package/.agent/skills/github-issues/templates/feature-request.md +31 -0
- package/.agent/skills/github-pr-workflow/SKILL.md +360 -0
- package/.agent/skills/github-pr-workflow/references/ci-troubleshooting.md +183 -0
- package/.agent/skills/github-pr-workflow/references/conventional-commits.md +71 -0
- package/.agent/skills/github-pr-workflow/templates/pr-body-bugfix.md +35 -0
- package/.agent/skills/github-pr-workflow/templates/pr-body-feature.md +33 -0
- package/.agent/skills/github-repo-management/SKILL.md +509 -0
- package/.agent/skills/github-repo-management/references/github-api-cheatsheet.md +161 -0
- package/.agent/skills/godmode/SKILL.md +396 -0
- package/.agent/skills/godmode/references/jailbreak-templates.md +128 -0
- package/.agent/skills/godmode/references/refusal-detection.md +142 -0
- package/.agent/skills/hyperframes/SKILL.md +182 -0
- package/.agent/skills/hyperframes/references/cli.md +185 -0
- package/.agent/skills/hyperframes/references/composition.md +129 -0
- package/.agent/skills/hyperframes/references/features.md +289 -0
- package/.agent/skills/hyperframes/references/gsap.md +136 -0
- package/.agent/skills/hyperframes/references/troubleshooting.md +137 -0
- package/.agent/skills/hyperframes/references/website-to-video.md +145 -0
- package/.agent/skills/jupyter-live-kernel/SKILL.md +160 -0
- package/.agent/skills/kanban-orchestrator/SKILL.md +209 -0
- package/.agent/skills/kanban-worker/SKILL.md +188 -0
- package/.agent/skills/llm-wiki/SKILL.md +499 -0
- package/.agent/skills/meme-generation/SKILL.md +122 -0
- package/.agent/skills/node-inspect-debugger/SKILL.md +312 -0
- package/.agent/skills/obsidian/SKILL.md +60 -0
- package/.agent/skills/osint-investigation/SKILL.md +269 -0
- package/.agent/skills/osint-investigation/templates/source-template.md +59 -0
- package/.agent/skills/oss-forensics/SKILL.md +422 -0
- package/.agent/skills/oss-forensics/references/evidence-types.md +89 -0
- package/.agent/skills/oss-forensics/references/github-archive-guide.md +184 -0
- package/.agent/skills/oss-forensics/references/investigation-templates.md +131 -0
- package/.agent/skills/oss-forensics/references/recovery-techniques.md +164 -0
- package/.agent/skills/oss-forensics/templates/forensic-report.md +151 -0
- package/.agent/skills/oss-forensics/templates/malicious-package-report.md +43 -0
- package/.agent/skills/parallel-cli/SKILL.md +384 -0
- package/.agent/skills/pinggy-tunnel/SKILL.md +302 -0
- package/.agent/skills/pixel-art/SKILL.md +209 -0
- package/.agent/skills/pixel-art/references/palettes.md +49 -0
- package/.agent/skills/plan/SKILL.md +331 -0
- package/.agent/skills/polymarket/SKILL.md +75 -0
- package/.agent/skills/polymarket/references/api-endpoints.md +220 -0
- package/.agent/skills/python-debugpy/SKILL.md +368 -0
- package/.agent/skills/requesting-code-review/SKILL.md +273 -0
- package/.agent/skills/research-paper-writing/SKILL.md +2367 -0
- package/.agent/skills/research-paper-writing/references/autoreason-methodology.md +394 -0
- package/.agent/skills/research-paper-writing/references/checklists.md +434 -0
- package/.agent/skills/research-paper-writing/references/citation-workflow.md +563 -0
- package/.agent/skills/research-paper-writing/references/experiment-patterns.md +728 -0
- package/.agent/skills/research-paper-writing/references/human-evaluation.md +476 -0
- package/.agent/skills/research-paper-writing/references/paper-types.md +481 -0
- package/.agent/skills/research-paper-writing/references/reviewer-guidelines.md +433 -0
- package/.agent/skills/research-paper-writing/references/sources.md +191 -0
- package/.agent/skills/research-paper-writing/references/writing-guide.md +474 -0
- package/.agent/skills/research-paper-writing/templates/README.md +251 -0
- package/.agent/skills/rest-graphql-debug/SKILL.md +507 -0
- package/.agent/skills/s6-container-supervision/SKILL.md +171 -0
- package/.agent/skills/scrapling/SKILL.md +328 -0
- package/.agent/skills/sherlock/SKILL.md +186 -0
- package/.agent/skills/simplify-code/SKILL.md +168 -0
- package/.agent/skills/skill-authoring/SKILL.md +158 -0
- package/.agent/skills/spike/SKILL.md +190 -0
- package/.agent/skills/subagent-driven-development/SKILL.md +345 -0
- package/.agent/skills/subagent-driven-development/references/context-budget-discipline.md +53 -0
- package/.agent/skills/subagent-driven-development/references/gates-taxonomy.md +93 -0
- package/.agent/skills/systematic-debugging/SKILL.md +360 -0
- package/.agent/skills/test-driven-development/SKILL.md +336 -0
- package/.agent/skills/video-orchestrator/SKILL.md +194 -0
- package/.agent/skills/video-orchestrator/references/examples.md +227 -0
- package/.agent/skills/video-orchestrator/references/intake.md +166 -0
- package/.agent/skills/video-orchestrator/references/kanban-setup.md +278 -0
- package/.agent/skills/video-orchestrator/references/monitoring.md +180 -0
- package/.agent/skills/video-orchestrator/references/role-archetypes.md +298 -0
- package/.agent/skills/video-orchestrator/references/tool-matrix.md +317 -0
- package/.agent/skills/web-pentest/SKILL.md +332 -0
- package/.agent/skills/web-pentest/references/bypass-techniques.md +133 -0
- package/.agent/skills/web-pentest/references/exploitation-techniques.md +204 -0
- package/.agent/skills/web-pentest/references/scope-enforcement.md +110 -0
- package/.agent/skills/web-pentest/references/vuln-taxonomy.md +81 -0
- package/.agent/skills/web-pentest/templates/authorization.md +69 -0
- package/.agent/skills/web-pentest/templates/pentest-report.md +178 -0
- package/.claude/commands/mindforge/skill-tdd.md +53 -0
- package/.claude/commands/mindforge/skills-index.md +118 -0
- package/.claude/commands/mindforge/systematic-debug.md +60 -0
- package/.claude/commands/mindforge/wf-catalog.md +37 -0
- package/.claude/commands/mindforge/wf-code-audit.md +31 -0
- package/.claude/commands/mindforge/wf-competitive-analysis.md +31 -0
- package/.claude/commands/mindforge/wf-deep-research.md +32 -0
- package/.claude/commands/mindforge/wf-feature-planner.md +31 -0
- package/.claude/commands/mindforge/wf-incident-response.md +31 -0
- package/.claude/commands/mindforge/wf-onboard-codebase.md +31 -0
- package/.claude/commands/mindforge/wf-perf-optimize.md +31 -0
- package/.claude/commands/mindforge/wf-pr-review.md +31 -0
- package/.claude/commands/mindforge/wf-refactor-plan.md +31 -0
- package/.claude/commands/mindforge/wf-release-prep.md +31 -0
- package/.claude/commands/mindforge/wf-tdd-sprint.md +31 -0
- package/.claude/commands/mindforge/wf-tech-evaluation.md +31 -0
- package/.mindforge/config.json +2 -2
- package/.mindforge/dynamic-workflows/REGISTRY.md +65 -0
- package/.mindforge/dynamic-workflows/index.json +171 -0
- package/.mindforge/dynamic-workflows/scripts/code-audit.js +103 -0
- package/.mindforge/dynamic-workflows/scripts/competitive-analysis.js +85 -0
- package/.mindforge/dynamic-workflows/scripts/deep-research.js +151 -0
- package/.mindforge/dynamic-workflows/scripts/feature-planner.js +104 -0
- package/.mindforge/dynamic-workflows/scripts/incident-response.js +106 -0
- package/.mindforge/dynamic-workflows/scripts/onboard-codebase.js +102 -0
- package/.mindforge/dynamic-workflows/scripts/perf-optimize.js +128 -0
- package/.mindforge/dynamic-workflows/scripts/pr-review.js +87 -0
- package/.mindforge/dynamic-workflows/scripts/refactor-plan.js +121 -0
- package/.mindforge/dynamic-workflows/scripts/release-prep.js +102 -0
- package/.mindforge/dynamic-workflows/scripts/tdd-sprint.js +103 -0
- package/.mindforge/dynamic-workflows/scripts/tech-evaluation.js +72 -0
- package/.mindforge/memory/sync-manifest.json +1 -1
- package/.mindforge/skills/arxiv/SKILL.md +294 -0
- package/.mindforge/skills/blogwatcher/SKILL.md +147 -0
- package/.mindforge/skills/code-wiki/SKILL.md +457 -0
- package/.mindforge/skills/codebase-inspection/SKILL.md +126 -0
- package/.mindforge/skills/concept-diagrams/SKILL.md +373 -0
- package/.mindforge/skills/creative-ideation/SKILL.md +162 -0
- package/.mindforge/skills/domain-intel/SKILL.md +116 -0
- package/.mindforge/skills/duckduckgo-search/SKILL.md +249 -0
- package/.mindforge/skills/github-code-review/SKILL.md +493 -0
- package/.mindforge/skills/github-issues/SKILL.md +382 -0
- package/.mindforge/skills/github-pr-workflow/SKILL.md +379 -0
- package/.mindforge/skills/jupyter-live-kernel/SKILL.md +179 -0
- package/.mindforge/skills/kanban-orchestrator/SKILL.md +227 -0
- package/.mindforge/skills/kanban-worker/SKILL.md +206 -0
- package/.mindforge/skills/meme-generation/SKILL.md +141 -0
- package/.mindforge/skills/obsidian/SKILL.md +80 -0
- package/.mindforge/skills/osint-investigation/SKILL.md +288 -0
- package/.mindforge/skills/oss-forensics/SKILL.md +421 -0
- package/.mindforge/skills/pixel-art/SKILL.md +228 -0
- package/.mindforge/skills/plan/SKILL.md +350 -0
- package/.mindforge/skills/requesting-code-review/SKILL.md +292 -0
- package/.mindforge/skills/research-paper-writing/SKILL.md +2384 -0
- package/.mindforge/skills/scrapling/SKILL.md +345 -0
- package/.mindforge/skills/sherlock/SKILL.md +203 -0
- package/.mindforge/skills/simplify-code/SKILL.md +187 -0
- package/.mindforge/skills/spike/SKILL.md +209 -0
- package/.mindforge/skills/subagent-driven-development/SKILL.md +364 -0
- package/.mindforge/skills/systematic-debugging/SKILL.md +379 -0
- package/.mindforge/skills/test-driven-development/SKILL.md +355 -0
- package/.mindforge/skills/web-pentest/SKILL.md +327 -0
- package/CHANGELOG.md +71 -0
- package/MINDFORGE.md +2 -2
- package/README.md +72 -3
- package/RELEASENOTES.md +109 -0
- package/bin/installer-core.js +6 -2
- package/bin/mindforge-cli.js +7 -0
- package/bin/workflows/workflow-runner.js +110 -0
- package/docs/commands-reference.md +25 -0
- package/docs/getting-started.md +42 -5
- package/package.json +2 -1
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
# Style Reference
|
|
2
|
+
|
|
3
|
+
## Core Styles
|
|
4
|
+
|
|
5
|
+
Simplified style tier for quick selection:
|
|
6
|
+
|
|
7
|
+
| Core Style | Maps To | Best For |
|
|
8
|
+
|------------|---------|----------|
|
|
9
|
+
| `vector` | vector-illustration | Knowledge articles, tutorials, tech content |
|
|
10
|
+
| `minimal-flat` | notion | General, knowledge sharing, SaaS |
|
|
11
|
+
| `sci-fi` | blueprint | AI, frontier tech, system design |
|
|
12
|
+
| `hand-drawn` | sketch/warm | Relaxed, reflective, casual content |
|
|
13
|
+
| `editorial` | editorial | Processes, data, journalism |
|
|
14
|
+
| `scene` | warm/watercolor | Narratives, emotional, lifestyle |
|
|
15
|
+
| `poster` | screen-print | Opinion, editorial, cultural, cinematic |
|
|
16
|
+
|
|
17
|
+
Use Core Styles for most cases. See full Style Gallery below for granular control.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Style Gallery
|
|
22
|
+
|
|
23
|
+
| Style | Description | Best For |
|
|
24
|
+
|-------|-------------|----------|
|
|
25
|
+
| `vector-illustration` | Clean flat vector art with bold shapes | Knowledge articles, tutorials, tech content |
|
|
26
|
+
| `notion` | Minimalist hand-drawn line art | Knowledge sharing, SaaS, productivity |
|
|
27
|
+
| `elegant` | Refined, sophisticated | Business, thought leadership |
|
|
28
|
+
| `warm` | Friendly, approachable | Personal growth, lifestyle, education |
|
|
29
|
+
| `minimal` | Ultra-clean, zen-like | Philosophy, minimalism, core concepts |
|
|
30
|
+
| `blueprint` | Technical schematics | Architecture, system design, engineering |
|
|
31
|
+
| `watercolor` | Soft artistic with natural warmth | Lifestyle, travel, creative |
|
|
32
|
+
| `editorial` | Magazine-style infographic | Tech explainers, journalism |
|
|
33
|
+
| `scientific` | Academic precise diagrams | Biology, chemistry, technical research |
|
|
34
|
+
| `chalkboard` | Classroom chalk drawing style | Education, teaching, explanations |
|
|
35
|
+
| `fantasy-animation` | Ghibli/Disney-inspired hand-drawn | Storybook, magical, emotional |
|
|
36
|
+
| `flat` | Modern bold geometric shapes | Modern digital, contemporary |
|
|
37
|
+
| `flat-doodle` | Cute flat with bold outlines | Cute, friendly, approachable |
|
|
38
|
+
| `intuition-machine` | Technical briefing with aged paper | Technical briefings, academic |
|
|
39
|
+
| `nature` | Organic earthy illustration | Environmental, wellness |
|
|
40
|
+
| `pixel-art` | Retro 8-bit gaming aesthetic | Gaming, retro tech |
|
|
41
|
+
| `playful` | Whimsical pastel doodles | Fun, casual, educational |
|
|
42
|
+
| `retro` | 80s/90s neon geometric | 80s/90s nostalgic, bold |
|
|
43
|
+
| `sketch` | Raw pencil notebook style | Brainstorming, creative exploration |
|
|
44
|
+
| `screen-print` | Bold poster art, halftone textures, limited colors | Opinion, editorial, cultural, cinematic |
|
|
45
|
+
| `sketch-notes` | Soft hand-drawn warm notes | Educational, warm notes |
|
|
46
|
+
| `ink-notes` | Black ink on pure white, sparse semantic accents, hand-lettered (à la Mike Rohde's sketchnoting) | Before/After essays, tech manifestos, framework analogies |
|
|
47
|
+
| `vintage` | Aged parchment historical | Historical, heritage |
|
|
48
|
+
|
|
49
|
+
Full specifications: `references/styles/<style>.md`
|
|
50
|
+
|
|
51
|
+
## Type × Style Compatibility Matrix
|
|
52
|
+
|
|
53
|
+
| | vector-illustration | notion | warm | minimal | blueprint | watercolor | elegant | editorial | scientific | screen-print |
|
|
54
|
+
|---|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|:---:|
|
|
55
|
+
| infographic | ✓✓ | ✓✓ | ✓ | ✓✓ | ✓✓ | ✓ | ✓✓ | ✓✓ | ✓✓ | ✓ |
|
|
56
|
+
| scene | ✓ | ✓ | ✓✓ | ✓ | ✗ | ✓✓ | ✓ | ✓ | ✗ | ✓✓ |
|
|
57
|
+
| flowchart | ✓✓ | ✓✓ | ✓ | ✓ | ✓✓ | ✗ | ✓ | ✓✓ | ✓ | ✗ |
|
|
58
|
+
| comparison | ✓✓ | ✓✓ | ✓ | ✓✓ | ✓ | ✓ | ✓✓ | ✓✓ | ✓ | ✓ |
|
|
59
|
+
| framework | ✓✓ | ✓✓ | ✓ | ✓✓ | ✓✓ | ✗ | ✓✓ | ✓ | ✓✓ | ✓ |
|
|
60
|
+
| timeline | ✓ | ✓✓ | ✓ | ✓ | ✓ | ✓✓ | ✓✓ | ✓✓ | ✓ | ✓ |
|
|
61
|
+
|
|
62
|
+
✓✓ = highly recommended | ✓ = compatible | ✗ = not recommended
|
|
63
|
+
|
|
64
|
+
## Auto Selection by Type
|
|
65
|
+
|
|
66
|
+
| Type | Primary Style | Secondary Styles |
|
|
67
|
+
|------|---------------|------------------|
|
|
68
|
+
| infographic | vector-illustration | notion, blueprint, editorial |
|
|
69
|
+
| scene | warm | watercolor, elegant |
|
|
70
|
+
| flowchart | vector-illustration | notion, blueprint |
|
|
71
|
+
| comparison | vector-illustration | notion, elegant |
|
|
72
|
+
| framework | blueprint | vector-illustration, notion |
|
|
73
|
+
| timeline | elegant | warm, editorial |
|
|
74
|
+
|
|
75
|
+
## Auto Selection by Content Signals
|
|
76
|
+
|
|
77
|
+
| Content Signals | Recommended Type | Recommended Style |
|
|
78
|
+
|-----------------|------------------|-------------------|
|
|
79
|
+
| API, metrics, data, comparison, numbers | infographic | blueprint, vector-illustration |
|
|
80
|
+
| Knowledge, concept, tutorial, learning, guide | infographic | vector-illustration, notion |
|
|
81
|
+
| Tech, AI, programming, development, code | infographic | vector-illustration, blueprint |
|
|
82
|
+
| How-to, steps, workflow, process, tutorial | flowchart | vector-illustration, notion |
|
|
83
|
+
| Framework, model, architecture, principles | framework | blueprint, vector-illustration |
|
|
84
|
+
| vs, pros/cons, before/after, alternatives | comparison | vector-illustration, notion |
|
|
85
|
+
| Manifesto, mindset shift, workforce, OS, whiteboard, professional visual note | comparison / framework | ink-notes |
|
|
86
|
+
| Story, emotion, journey, experience, personal | scene | warm, watercolor |
|
|
87
|
+
| History, timeline, progress, evolution | timeline | elegant, warm |
|
|
88
|
+
| Productivity, SaaS, tool, app, software | infographic | notion, vector-illustration |
|
|
89
|
+
| Business, professional, strategy, corporate | framework | elegant |
|
|
90
|
+
| Opinion, editorial, culture, philosophy, cinematic, dramatic, poster | scene | screen-print |
|
|
91
|
+
| Biology, chemistry, medical, scientific | infographic | scientific |
|
|
92
|
+
| Explainer, journalism, magazine, investigation | infographic | editorial |
|
|
93
|
+
|
|
94
|
+
## Style Characteristics by Type
|
|
95
|
+
|
|
96
|
+
### infographic + vector-illustration
|
|
97
|
+
- Clean flat vector shapes, bold geometric forms
|
|
98
|
+
- Vibrant but harmonious color palette
|
|
99
|
+
- Clear visual hierarchy with icons and labels
|
|
100
|
+
- Modern, professional, highly readable
|
|
101
|
+
- Perfect for knowledge articles and tutorials
|
|
102
|
+
|
|
103
|
+
### flowchart + vector-illustration
|
|
104
|
+
- Bold arrows and connectors
|
|
105
|
+
- Distinct step containers with icons
|
|
106
|
+
- Clean progression flow
|
|
107
|
+
- High contrast for readability
|
|
108
|
+
|
|
109
|
+
### comparison + vector-illustration
|
|
110
|
+
- Split layout with clear visual separation
|
|
111
|
+
- Bold iconography for each side
|
|
112
|
+
- Color-coded distinctions
|
|
113
|
+
- Easy at-a-glance comparison
|
|
114
|
+
|
|
115
|
+
### framework + vector-illustration
|
|
116
|
+
- Geometric node representations
|
|
117
|
+
- Clear hierarchical structure
|
|
118
|
+
- Bold connecting lines
|
|
119
|
+
- Modern system diagram aesthetic
|
|
120
|
+
|
|
121
|
+
### infographic + blueprint
|
|
122
|
+
- Technical precision, schematic lines
|
|
123
|
+
- Grid-based layout, clear zones
|
|
124
|
+
- Monospace labels, data-focused
|
|
125
|
+
- Blue/white color scheme
|
|
126
|
+
|
|
127
|
+
### infographic + notion
|
|
128
|
+
- Hand-drawn feel, approachable
|
|
129
|
+
- Soft icons, rounded elements
|
|
130
|
+
- Neutral palette, clean backgrounds
|
|
131
|
+
- Perfect for SaaS/productivity
|
|
132
|
+
|
|
133
|
+
### scene + warm
|
|
134
|
+
- Golden hour lighting, cozy atmosphere
|
|
135
|
+
- Soft gradients, natural textures
|
|
136
|
+
- Inviting, personal feeling
|
|
137
|
+
- Great for storytelling
|
|
138
|
+
|
|
139
|
+
### scene + watercolor
|
|
140
|
+
- Artistic, painterly effect
|
|
141
|
+
- Soft edges, color bleeding
|
|
142
|
+
- Dreamy, creative mood
|
|
143
|
+
- Best for lifestyle/travel
|
|
144
|
+
|
|
145
|
+
### flowchart + notion
|
|
146
|
+
- Clear step indicators
|
|
147
|
+
- Simple arrow connections
|
|
148
|
+
- Minimal decoration
|
|
149
|
+
- Focus on process clarity
|
|
150
|
+
|
|
151
|
+
### flowchart + blueprint
|
|
152
|
+
- Technical precision
|
|
153
|
+
- Detailed connection points
|
|
154
|
+
- Engineering aesthetic
|
|
155
|
+
- For complex systems
|
|
156
|
+
|
|
157
|
+
### comparison + elegant
|
|
158
|
+
- Refined dividers
|
|
159
|
+
- Balanced typography
|
|
160
|
+
- Professional appearance
|
|
161
|
+
- Business comparisons
|
|
162
|
+
|
|
163
|
+
### framework + blueprint
|
|
164
|
+
- Precise node connections
|
|
165
|
+
- Hierarchical clarity
|
|
166
|
+
- System architecture feel
|
|
167
|
+
- Technical frameworks
|
|
168
|
+
|
|
169
|
+
### timeline + elegant
|
|
170
|
+
- Sophisticated markers
|
|
171
|
+
- Refined typography
|
|
172
|
+
- Historical gravitas
|
|
173
|
+
- Professional presentations
|
|
174
|
+
|
|
175
|
+
### timeline + warm
|
|
176
|
+
- Friendly progression
|
|
177
|
+
- Organic flow
|
|
178
|
+
- Personal journey feel
|
|
179
|
+
- Growth narratives
|
|
180
|
+
|
|
181
|
+
### scene + screen-print
|
|
182
|
+
- Bold silhouettes, symbolic compositions
|
|
183
|
+
- 2-5 flat colors with halftone textures
|
|
184
|
+
- Figure-ground inversion (negative space tells secondary story)
|
|
185
|
+
- Vintage poster aesthetic, conceptual not literal
|
|
186
|
+
- Great for opinion pieces and cultural commentary
|
|
187
|
+
|
|
188
|
+
### comparison + screen-print
|
|
189
|
+
- Split duotone composition (one color per side)
|
|
190
|
+
- Bold geometric dividers
|
|
191
|
+
- Symbolic icons over detailed rendering
|
|
192
|
+
- High contrast, immediate visual impact
|
|
193
|
+
|
|
194
|
+
### framework + screen-print
|
|
195
|
+
- Geometric node representations with stencil-cut edges
|
|
196
|
+
- Limited color coding (one color per concept level)
|
|
197
|
+
- Clean silhouette-based iconography
|
|
198
|
+
- Poster-style hierarchy with bold typography
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## Palette Gallery
|
|
203
|
+
|
|
204
|
+
Palettes override a style's default colors. Combine any style with any palette (e.g. `style=vector-illustration, palette=macaron`).
|
|
205
|
+
|
|
206
|
+
| Palette | Description | Best For |
|
|
207
|
+
|---------|-------------|----------|
|
|
208
|
+
| `macaron` | Soft pastel blocks (blue, mint, lavender, peach) on warm cream | Educational, knowledge, tutorials |
|
|
209
|
+
| `warm` | Warm earth tones (orange, terracotta, gold) on soft peach, no cool colors | Brand, product, lifestyle |
|
|
210
|
+
| `neon` | Vibrant neon (pink, cyan, yellow) on dark purple | Gaming, retro, pop culture |
|
|
211
|
+
| `mono-ink` | Black ink on pure white with sparse semantic accents (coral red, muted teal, dusty lavender) | Professional visual notes, Before/After, manifestos |
|
|
212
|
+
|
|
213
|
+
Full specifications: `references/palettes/<palette>.md`
|
|
214
|
+
|
|
215
|
+
When no palette is specified, the style's built-in Color Palette is used.
|
|
216
|
+
|
|
217
|
+
## Palette Override Rules
|
|
218
|
+
|
|
219
|
+
1. Read style file → rendering rules (Visual Elements, Style Rules)
|
|
220
|
+
2. Read palette file → Colors + Background
|
|
221
|
+
3. Palette colors **replace** style's default Color Palette
|
|
222
|
+
4. Palette Background **replaces** style's default Background color
|
|
223
|
+
5. Style's texture description is preserved
|
|
224
|
+
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# Usage
|
|
2
|
+
|
|
3
|
+
This skill is triggered by natural language in this agent — no slash command or CLI flags.
|
|
4
|
+
|
|
5
|
+
## Trigger Phrases
|
|
6
|
+
|
|
7
|
+
- "Illustrate this article" / "为文章配图"
|
|
8
|
+
- "Add images to this post"
|
|
9
|
+
- "Generate illustrations for [path/to/article.md]"
|
|
10
|
+
|
|
11
|
+
## Input Modes
|
|
12
|
+
|
|
13
|
+
| Mode | How to trigger | Output Directory |
|
|
14
|
+
|------|----------------|------------------|
|
|
15
|
+
| File path | Mention an article path (`path/to/article.md`) | `{article-dir}/imgs/` (default) |
|
|
16
|
+
| Pasted content | Paste the article text in the conversation | `illustrations/{topic-slug}/` (cwd) |
|
|
17
|
+
|
|
18
|
+
## Specifying Options in Natural Language
|
|
19
|
+
|
|
20
|
+
The user can specify any of the following directly in their request. If not specified, the skill asks via the `clarify` tool.
|
|
21
|
+
|
|
22
|
+
| Option | Example phrasing |
|
|
23
|
+
|--------|------------------|
|
|
24
|
+
| Type | "as an infographic", "as a flowchart", "as scenes" |
|
|
25
|
+
| Style | "in blueprint style", "use notion style", "用 watercolor 风格" |
|
|
26
|
+
| Preset | "use the tech-explainer preset", "storytelling preset" |
|
|
27
|
+
| Palette | "with macaron palette", "warm colors only" |
|
|
28
|
+
| Density | "minimal images", "one per section", "rich illustrations" |
|
|
29
|
+
| Language | "images in English" / "图片文字用中文" |
|
|
30
|
+
| Output | "save images alongside the article" / "put them in `illustrations/`" |
|
|
31
|
+
|
|
32
|
+
## Examples
|
|
33
|
+
|
|
34
|
+
**Technical article with data**:
|
|
35
|
+
> 帮我为 api-design.md 配图,用 infographic + blueprint 风格
|
|
36
|
+
|
|
37
|
+
**Preset shortcut**:
|
|
38
|
+
> Illustrate api-design.md with the tech-explainer preset
|
|
39
|
+
|
|
40
|
+
**Personal story**:
|
|
41
|
+
> Illustrate journey.md using the storytelling preset
|
|
42
|
+
|
|
43
|
+
**Tutorial with rich images**:
|
|
44
|
+
> Generate illustrations for how-to-deploy.md — tutorial preset, rich density
|
|
45
|
+
|
|
46
|
+
**Opinion article**:
|
|
47
|
+
> Illustrate opinion.md with the opinion-piece preset
|
|
48
|
+
|
|
49
|
+
**Preset with style override**:
|
|
50
|
+
> Use the tech-explainer preset for article.md but swap the style for notion
|
|
@@ -0,0 +1,332 @@
|
|
|
1
|
+
# Detailed Workflow Procedures
|
|
2
|
+
|
|
3
|
+
## Step 1: Detect Reference Images
|
|
4
|
+
|
|
5
|
+
If the user provides reference images (local path or URL), the goal is to produce **textual descriptions** that can be embedded in prompts — `image_generate` doesn't accept reference-image inputs, and the agent' text file tools can't read or write binaries.
|
|
6
|
+
|
|
7
|
+
**Tool rules**:
|
|
8
|
+
|
|
9
|
+
| Task | Tool | Notes |
|
|
10
|
+
|------|------|-------|
|
|
11
|
+
| Analyze a reference image | `vision_analyze` | Accepts URL or local path. Ask for style, palette, composition, subject. |
|
|
12
|
+
| Write the text description | `write_file` | Sidecar `.md` files only — never try to `write_file` a PNG/JPG. |
|
|
13
|
+
| (Optional) Keep a local copy of the binary | `terminal` | `cp "$src" "{output-dir}/references/NN-ref-{slug}.{ext}"` — purely for the record; the skill itself doesn't read the binary. |
|
|
14
|
+
|
|
15
|
+
| Input Type | Action |
|
|
16
|
+
|------------|--------|
|
|
17
|
+
| Image file path provided | `vision_analyze` → write sidecar `.md`. Optional `terminal cp` for a local record. |
|
|
18
|
+
| Image URL provided | `vision_analyze` with the URL → write sidecar `.md`. |
|
|
19
|
+
| Image in conversation (no path, no URL) | Ask via `clarify` for a path or URL, or for a verbal description. |
|
|
20
|
+
| User can't provide either | Extract style/palette verbally from the user → write `references/extracted-style.md`. Do NOT add `references:` to prompt frontmatter. |
|
|
21
|
+
|
|
22
|
+
**Procedure** (when a path/URL is available):
|
|
23
|
+
|
|
24
|
+
1. Call `vision_analyze(image_url=..., question="Describe the style, color palette (with hex approximations), composition, and subject so this can be used as a style/palette reference for another illustration.")`.
|
|
25
|
+
2. Write `{output-dir}/references/NN-ref-{slug}.md` via `write_file` with the description.
|
|
26
|
+
3. (Optional) Run `terminal` with `cp` (or `curl -sSL -o ...` for URLs) to keep a local binary copy. Not required by the skill.
|
|
27
|
+
4. Mark the reference in the outline with usage `direct` / `style` / `palette`. In Step 5.1 the description gets appended to the prompt body.
|
|
28
|
+
|
|
29
|
+
**Sidecar File Format**:
|
|
30
|
+
```yaml
|
|
31
|
+
---
|
|
32
|
+
ref_id: NN
|
|
33
|
+
source: "<original path or URL>"
|
|
34
|
+
local_copy: "NN-ref-{slug}.png" # omit if no copy made
|
|
35
|
+
usage_hint: style # direct | style | palette
|
|
36
|
+
---
|
|
37
|
+
[vision_analyze description — colors, style, composition, subject]
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## Step 2: Analyze
|
|
43
|
+
|
|
44
|
+
### 2.1 Determine Output Directory
|
|
45
|
+
|
|
46
|
+
| Input | Output Directory | Source-save path |
|
|
47
|
+
|-------|------------------|------------------|
|
|
48
|
+
| Article file path | `{article-dir}/imgs/` (default) | — (read article via `read_file`) |
|
|
49
|
+
| Pasted content | `illustrations/{topic-slug}/` (cwd) | `source-{slug}.{ext}` (save via `write_file`) |
|
|
50
|
+
|
|
51
|
+
If the user explicitly asked for a different layout (e.g., images in the article's folder, or an `illustrations/` subdirectory), honor that.
|
|
52
|
+
|
|
53
|
+
### 2.2 Analyze Content
|
|
54
|
+
|
|
55
|
+
| Analysis | Description |
|
|
56
|
+
|----------|-------------|
|
|
57
|
+
| Content type | Technical / Tutorial / Methodology / Narrative |
|
|
58
|
+
| Illustration purpose | information / visualization / imagination |
|
|
59
|
+
| Core arguments | 2-5 main points to visualize |
|
|
60
|
+
| Visual opportunities | Positions where illustrations add value |
|
|
61
|
+
| Recommended type | Based on content signals and purpose |
|
|
62
|
+
| Recommended density | Based on length and complexity |
|
|
63
|
+
|
|
64
|
+
Save analysis to `{output-dir}/analysis.md` using `write_file`.
|
|
65
|
+
|
|
66
|
+
### 2.3 Extract Core Arguments
|
|
67
|
+
|
|
68
|
+
- Main thesis
|
|
69
|
+
- Key concepts reader needs
|
|
70
|
+
- Comparisons/contrasts
|
|
71
|
+
- Framework/model proposed
|
|
72
|
+
|
|
73
|
+
**CRITICAL**: If the article uses metaphors (e.g., "电锯切西瓜"), do NOT illustrate literally. Visualize the **underlying concept**.
|
|
74
|
+
|
|
75
|
+
### 2.4 Identify Positions
|
|
76
|
+
|
|
77
|
+
**Illustrate**:
|
|
78
|
+
- Core arguments (REQUIRED)
|
|
79
|
+
- Abstract concepts
|
|
80
|
+
- Data comparisons
|
|
81
|
+
- Processes, workflows
|
|
82
|
+
|
|
83
|
+
**Do NOT Illustrate**:
|
|
84
|
+
- Metaphors literally
|
|
85
|
+
- Decorative scenes
|
|
86
|
+
- Generic illustrations
|
|
87
|
+
|
|
88
|
+
### 2.5 Plan Reference Image Usage (if analyzed in Step 1)
|
|
89
|
+
|
|
90
|
+
For each reference image (use the `vision_analyze` description from Step 1):
|
|
91
|
+
|
|
92
|
+
| Analysis | Description |
|
|
93
|
+
|----------|-------------|
|
|
94
|
+
| Visual characteristics | Style, colors, composition |
|
|
95
|
+
| Content/subject | What the reference depicts |
|
|
96
|
+
| Suitable positions | Which sections match this reference |
|
|
97
|
+
| Style match | Which illustration types/styles align |
|
|
98
|
+
| Usage recommendation | `direct` / `style` / `palette` |
|
|
99
|
+
|
|
100
|
+
| Usage | When to Use | How it's applied in Step 5.1 |
|
|
101
|
+
|-------|-------------|------------------------------|
|
|
102
|
+
| `direct` | Reference matches desired output closely | Paste the description (composition + subject + style + palette) into the prompt body |
|
|
103
|
+
| `style` | Extract visual style characteristics only | Append style traits to prompt body |
|
|
104
|
+
| `palette` | Extract color scheme only | Append extracted hex colors to prompt body |
|
|
105
|
+
|
|
106
|
+
Note: `image_generate` does not accept reference-image inputs under any usage type. Everything is mediated through the `vision_analyze` description.
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
## Step 3: Confirm Settings
|
|
111
|
+
|
|
112
|
+
Use the `clarify` tool. Since `clarify` handles one question at a time, ask the most important question first. Skip any question the user already answered in their request.
|
|
113
|
+
|
|
114
|
+
### Q1: Preset or Type (highest priority)
|
|
115
|
+
|
|
116
|
+
Based on Step 2 content analysis, recommend a preset first (sets both type & style). Look up [style-presets.md](style-presets.md) "Content Type → Preset Recommendations" table.
|
|
117
|
+
|
|
118
|
+
- [Recommended preset] — [brief: type + style + why]
|
|
119
|
+
- [Alternative preset] — [brief]
|
|
120
|
+
- Or choose type manually: infographic / scene / flowchart / comparison / framework / timeline / mixed
|
|
121
|
+
|
|
122
|
+
**If user picks a preset → skip Q3** (type & style both resolved).
|
|
123
|
+
**If user picks a type → Q3 is required.**
|
|
124
|
+
|
|
125
|
+
### Q2: Density
|
|
126
|
+
|
|
127
|
+
- minimal (1-2) — Core concepts only
|
|
128
|
+
- balanced (3-5) — Major sections
|
|
129
|
+
- per-section — At least 1 per section/chapter (Recommended)
|
|
130
|
+
- rich (6+) — Comprehensive coverage
|
|
131
|
+
|
|
132
|
+
### Q3: Style (skip if preset chosen in Q1)
|
|
133
|
+
|
|
134
|
+
Present Core Styles first:
|
|
135
|
+
|
|
136
|
+
- [Best compatible core style] (Recommended)
|
|
137
|
+
- [Other compatible core style 1]
|
|
138
|
+
- [Other compatible core style 2]
|
|
139
|
+
- Other (see full Style Gallery)
|
|
140
|
+
|
|
141
|
+
**Core Styles** (simplified selection):
|
|
142
|
+
|
|
143
|
+
| Core Style | Maps To | Best For |
|
|
144
|
+
|------------|---------|----------|
|
|
145
|
+
| `minimal-flat` | notion | General, knowledge sharing, SaaS |
|
|
146
|
+
| `sci-fi` | blueprint | AI, frontier tech, system design |
|
|
147
|
+
| `hand-drawn` | sketch/warm | Relaxed, reflective, casual |
|
|
148
|
+
| `editorial` | editorial | Processes, data, journalism |
|
|
149
|
+
| `scene` | warm/watercolor | Narratives, emotional, lifestyle |
|
|
150
|
+
| `poster` | screen-print | Opinion, editorial, cultural, cinematic |
|
|
151
|
+
|
|
152
|
+
Style selection based on Type × Style compatibility matrix ([styles.md](styles.md)).
|
|
153
|
+
**In Step 5**, read `styles/<style>.md` for visual elements and rendering rules.
|
|
154
|
+
|
|
155
|
+
### Q4: Palette (optional)
|
|
156
|
+
|
|
157
|
+
If the preset did not specify a palette, offer:
|
|
158
|
+
|
|
159
|
+
- Default (use style's built-in colors) (Recommended)
|
|
160
|
+
- `macaron` — soft pastel blocks on warm cream
|
|
161
|
+
- `warm` — warm earth tones, no cool colors
|
|
162
|
+
- `neon` — vibrant neon on dark backgrounds
|
|
163
|
+
|
|
164
|
+
**Skip if**: preset already resolved palette, or user specified a palette in the request.
|
|
165
|
+
|
|
166
|
+
See Palette Gallery in [styles.md](styles.md#palette-gallery) and full specs in `palettes/<palette>.md`.
|
|
167
|
+
|
|
168
|
+
### Q5: Image Text Language (only when ambiguous)
|
|
169
|
+
|
|
170
|
+
If the article language is different from the user's conversational language, ask which to use:
|
|
171
|
+
- Article language (match article content) (Recommended)
|
|
172
|
+
- User's conversational language
|
|
173
|
+
|
|
174
|
+
**Skip if**: languages match, or the user already specified in the request.
|
|
175
|
+
|
|
176
|
+
### Display Reference Usage (if references saved in Step 1)
|
|
177
|
+
|
|
178
|
+
When presenting the outline preview to the user, show reference assignments:
|
|
179
|
+
|
|
180
|
+
```
|
|
181
|
+
Reference Images:
|
|
182
|
+
| Ref | Filename | Recommended Usage |
|
|
183
|
+
|-----|----------|-------------------|
|
|
184
|
+
| 01 | 01-ref-diagram.png | direct → Illustration 1, 3 |
|
|
185
|
+
| 02 | 02-ref-chart.png | palette → Illustration 2 |
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
---
|
|
189
|
+
|
|
190
|
+
## Step 4: Generate Outline
|
|
191
|
+
|
|
192
|
+
Save as `{output-dir}/outline.md` using `write_file`:
|
|
193
|
+
|
|
194
|
+
```yaml
|
|
195
|
+
---
|
|
196
|
+
type: infographic
|
|
197
|
+
density: balanced
|
|
198
|
+
style: blueprint
|
|
199
|
+
image_count: 4
|
|
200
|
+
references: # Only if references provided
|
|
201
|
+
- ref_id: 01
|
|
202
|
+
filename: 01-ref-diagram.png
|
|
203
|
+
description: "Technical diagram showing system architecture"
|
|
204
|
+
- ref_id: 02
|
|
205
|
+
filename: 02-ref-chart.png
|
|
206
|
+
description: "Color chart with brand palette"
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
## Illustration 1
|
|
210
|
+
|
|
211
|
+
**Position**: [section] / [paragraph]
|
|
212
|
+
**Purpose**: [why this helps]
|
|
213
|
+
**Visual Content**: [what to show]
|
|
214
|
+
**Type Application**: [how type applies]
|
|
215
|
+
**References**: [01] # Optional: list ref_ids used
|
|
216
|
+
**Reference Usage**: direct # direct | style | palette
|
|
217
|
+
**Filename**: 01-infographic-concept-name.png
|
|
218
|
+
|
|
219
|
+
## Illustration 2
|
|
220
|
+
...
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
**Backup rule**: If `outline.md` exists, rename to `outline-backup-YYYYMMDD-HHMMSS.md` before writing.
|
|
224
|
+
|
|
225
|
+
**Requirements**:
|
|
226
|
+
- Each position justified by content needs
|
|
227
|
+
- Type applied consistently
|
|
228
|
+
- Style reflected in descriptions
|
|
229
|
+
- Count matches density
|
|
230
|
+
- References assigned based on Step 2.5 analysis
|
|
231
|
+
|
|
232
|
+
---
|
|
233
|
+
|
|
234
|
+
## Step 5: Generate Prompts
|
|
235
|
+
|
|
236
|
+
**BLOCKING**: Every illustration must have a saved prompt file before any image is generated.
|
|
237
|
+
|
|
238
|
+
For each illustration in the outline:
|
|
239
|
+
|
|
240
|
+
1. **Create prompt file**: `{output-dir}/prompts/NN-{type}-{slug}.md` via `write_file`
|
|
241
|
+
2. **Include YAML frontmatter**:
|
|
242
|
+
```yaml
|
|
243
|
+
---
|
|
244
|
+
illustration_id: 01
|
|
245
|
+
type: infographic
|
|
246
|
+
style: custom-flat-vector
|
|
247
|
+
---
|
|
248
|
+
```
|
|
249
|
+
3. **Load style specs**: Read `styles/<style>.md` (via `read_file`) for visual elements, style rules, and rendering instructions
|
|
250
|
+
4. **Load palette specs** (if palette specified): Read `palettes/<palette>.md` for colors and background. Palette colors **replace** the style's default Color Palette. If no palette specified, use the style's built-in colors.
|
|
251
|
+
5. **Follow type-specific template** from [prompt-construction.md](prompt-construction.md), using rendering from style + colors from palette (or style default)
|
|
252
|
+
6. **Prompt quality requirements** (all REQUIRED):
|
|
253
|
+
- `Layout`: Describe overall composition (grid / radial / hierarchical / left-right / top-down)
|
|
254
|
+
- `ZONES`: Describe each visual area with specific content, not vague descriptions
|
|
255
|
+
- `LABELS`: Use **actual numbers, terms, metrics, quotes from the article** — NOT generic placeholders
|
|
256
|
+
- `COLORS`: Specify hex codes from palette (or style default) with semantic meaning
|
|
257
|
+
- `STYLE`: Describe line treatment, texture, mood, character rendering per style rules
|
|
258
|
+
- `ASPECT`: Specify ratio (e.g., `16:9`)
|
|
259
|
+
7. **Apply defaults**: composition requirements, character rendering, text guidelines
|
|
260
|
+
8. **Backup rule**: If a prompt file exists, rename to `prompts/NN-{type}-{slug}-backup-YYYYMMDD-HHMMSS.md`
|
|
261
|
+
|
|
262
|
+
**CRITICAL - References in Frontmatter**:
|
|
263
|
+
- Only add `references` field if a sidecar `.md` description exists in `{output-dir}/references/`
|
|
264
|
+
- If style/palette was extracted verbally (no description file), append info to prompt BODY only
|
|
265
|
+
- Before writing frontmatter, confirm the sidecar exists (try `read_file` on the `.md`)
|
|
266
|
+
|
|
267
|
+
### 5.1 Process References (if analyzed in Step 1)
|
|
268
|
+
|
|
269
|
+
Read the `vision_analyze` description from the sidecar `references/NN-ref-{slug}.md` (via `read_file`) and embed it in the prompt body. `image_generate` never receives the binary.
|
|
270
|
+
|
|
271
|
+
| Usage | Action |
|
|
272
|
+
|-------|--------|
|
|
273
|
+
| `direct` | Paste the full reference description (composition, subject, style, palette) into the prompt body |
|
|
274
|
+
| `style` | Append only the style traits: "Style: clean lines, gradient backgrounds..." |
|
|
275
|
+
| `palette` | Append only the hex colors: "Colors: #E8756D coral, #7ECFC0 mint..." |
|
|
276
|
+
|
|
277
|
+
---
|
|
278
|
+
|
|
279
|
+
## Step 6: Generate Images
|
|
280
|
+
|
|
281
|
+
`image_generate` returns a JSON blob with a URL (`{"success": true, "image": "<url>"}`). It does NOT save a local file, does NOT accept an output path, and does NOT let the agent pick a backend/model. Treat the URL as a temporary artifact and download it explicitly.
|
|
282
|
+
|
|
283
|
+
For each prompt file:
|
|
284
|
+
|
|
285
|
+
1. Read the prompt file (via `read_file`) and extract the assembled prompt
|
|
286
|
+
2. Map the prompt's `ASPECT` to `image_generate`'s enum: `16:9` → `landscape`, `9:16` → `portrait`, `1:1` → `square`. Custom ratios → nearest named aspect.
|
|
287
|
+
3. Call `image_generate(prompt=<assembled>, aspect_ratio=<enum>)` and extract the `image` URL from the returned JSON.
|
|
288
|
+
4. **Backup rule**: If `{output-dir}/NN-{type}-{slug}.png` already exists, rename it via `terminal` (`mv "{output-dir}/NN-{type}-{slug}.png" "{output-dir}/NN-{type}-{slug}-backup-YYYYMMDD-HHMMSS.png"`) before writing.
|
|
289
|
+
5. Download the URL via `terminal`:
|
|
290
|
+
```bash
|
|
291
|
+
curl -sSL -o "{output-dir}/NN-{type}-{slug}.png" "{image_url}"
|
|
292
|
+
```
|
|
293
|
+
If `curl` is unavailable, fall back to `wget -qO "{output-dir}/NN-{type}-{slug}.png" "{image_url}"`.
|
|
294
|
+
6. Verify the file exists and has non-zero size (`terminal`: `test -s "{path}" && echo ok`).
|
|
295
|
+
7. On generation failure, retry `image_generate` once. On download failure, retry `curl` once with a longer timeout. Then log and continue.
|
|
296
|
+
8. After each generation, report "Generated X/N".
|
|
297
|
+
|
|
298
|
+
---
|
|
299
|
+
|
|
300
|
+
## Step 7: Finalize
|
|
301
|
+
|
|
302
|
+
### 7.1 Update Article
|
|
303
|
+
|
|
304
|
+
Insert after the corresponding paragraph, using the path relative to the article file:
|
|
305
|
+
|
|
306
|
+
| Input | Insert Path |
|
|
307
|
+
|-------|-------------|
|
|
308
|
+
| Article file path (default `imgs-subdir`) | `` |
|
|
309
|
+
| Article file path (images alongside) | `` |
|
|
310
|
+
| Article file path (`illustrations/` subdirectory) | `` |
|
|
311
|
+
| Pasted content | `` (relative to cwd) |
|
|
312
|
+
|
|
313
|
+
Alt text: concise description in the article's language.
|
|
314
|
+
|
|
315
|
+
### 7.2 Output Summary
|
|
316
|
+
|
|
317
|
+
```
|
|
318
|
+
Article Illustration Complete!
|
|
319
|
+
|
|
320
|
+
Article: [path]
|
|
321
|
+
Type: [type] | Density: [level] | Style: [style]
|
|
322
|
+
Location: [directory]
|
|
323
|
+
Images: X/N generated
|
|
324
|
+
|
|
325
|
+
Positions:
|
|
326
|
+
- 01-xxx.png → After "[Section]"
|
|
327
|
+
- 02-yyy.png → After "[Section]"
|
|
328
|
+
|
|
329
|
+
[If failures]
|
|
330
|
+
Failed:
|
|
331
|
+
- NN-zzz.png: [reason]
|
|
332
|
+
```
|