Smart Illustrator logo

Smart Illustrator

Community
axtonliu
smart-illustrator

智能配图与 PPT 信息图生成器。支持三种模式:(1) 文章配图模式 - 分析文章内容,生成插图;(2) PPT/Slides 模式 - 生成批量信息图;(3) Cover 模式 - 生成封面图。所有模式默认生成图片,`--prompt-only` 只输出 prompt。支持 Bento Grid 功能展示图风格(--style bento)。触发词:配图、插图、PPT、slides、封面图、thumbnail、cover、bento grid、功能展示图、feature showcase。

Overview

Publisheraxtonliu
Repositorysmart-illustrator
Skill namesmart-illustrator
Stars
565
Forks
83
Bundled files
24
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 24 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by axtonliu on GitHub. Read the source before you install it.

Installation

Install the Smart Illustrator AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/axtonliu/smart-illustrator/tree/main
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/axtonliu/smart-illustrator.git \
  .claude/skills/smart-illustrator
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Smart Illustrator in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Smart Illustrator on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Smart Illustrator is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Smart Illustrator - 智能配图与 PPT 生成器

⛔ 强制规则(违反即失败)

规则 1:用户提供的文件 = 要处理的文章

/smart-illustrator SKILL_05.md      → SKILL_05.md 是文章,为它配图
/smart-illustrator README.md        → README.md 是文章,为它配图
/smart-illustrator whatever.md      → whatever.md 是文章,为它配图

无论文件名叫什么,都是要配图的文章,不是 Skill 配置。

规则 2:必须读取 style 文件

生成任何图片 prompt 前,必须读取对应的 style 文件:

模式必须读取的文件
文章配图(默认)styles/style-light.md
Cover 封面图styles/style-cover.md
--style darkstyles/style-dark.md
--style bentostyles/style-bento.md

禁止自己编写 System Prompt。

❌ 错误:"你是一个专业的信息图设计师..."(自己编的) ✅ 正确:从 style 文件的代码块中提取 System Prompt


使用方式

文章配图模式(默认)

bash
/smart-illustrator path/to/article.md
/smart-illustrator path/to/article.md --prompt-only    # 只输出 prompt
/smart-illustrator path/to/article.md --style dark     # 深色风格
/smart-illustrator path/to/article.md --no-cover       # 不生成封面图

PPT/Slides 模式

bash
# 默认:直接生成图片
/smart-illustrator path/to/script.md --mode slides

# 只输出 JSON prompt(不调用 API)
/smart-illustrator path/to/script.md --mode slides --prompt-only

默认行为:调用 Gemini API 生成批量信息图。 --prompt-only:输出 JSON prompt 并自动复制到剪贴板,可直接粘贴到 Gemini Web 手动生成。

PPT JSON 格式(--prompt-only 时输出):

json
{
  "instruction": "请逐条生成以下 N 张独立信息图。",
  "batch_rules": { "total": "N", "one_item_one_image": true, "aspect_ratio": "16:9" },
  "style": "[从 styles/style-light.md 读取完整内容]",
  "pictures": [
    { "id": 1, "topic": "封面", "content": "系列名称\n\n第N节:标题" },
    { "id": 2, "topic": "主题", "content": "原始内容" }
  ]
}

Cover 模式

bash
/smart-illustrator path/to/article.md --mode cover --platform youtube
/smart-illustrator --mode cover --platform youtube --topic "Claude 4 深度评测"

平台尺寸(输出均为 2K 分辨率):

平台代码宽高比
YouTubeyoutube16:9
公众号wechat2.35:1
Twittertwitter1.91:1
小红书xiaohongshu3:4

参数说明

参数默认值说明
--modearticlearticle / slides / cover
--platformyoutube封面图平台(仅 cover 模式)
--topic-封面图主题(仅 cover 模式)
--prompt-onlyfalse输出 prompt 到剪贴板,不调用 API(适用于所有模式)
--stylelight风格:light / dark / minimal / bento
--no-coverfalse不生成封面图
--ref-参考图路径(可多次使用)
-c, --candidates1候选图数量(最多 4)
-a, --aspect-ratio-宽高比:16:9(正文配图/封面图默认)、3:2(备选横版)、3:4(仅竖屏平台)
--engineauto引擎选择:auto(自动)/ mermaid / gemini / excalidraw
--mermaid-embedfalseMermaid 输出为代码块而非 PNG(旧行为)
--save-config-保存到项目配置
--no-configfalse禁用 config.json

--no-config 范围:只禁用 config.json,不影响 styles/style-*.md。


配置文件

优先级:CLI 参数 > 项目级 > 用户级

位置路径
项目级.smart-illustrator/config.json
用户级~/.smart-illustrator/config.json
json
{ "references": ["./refs/style-ref-01.png"] }

三级配图引擎

优先级引擎适用场景输出
1Gemini隐喻图、创意图、封面图、无法用图表表达的概念PNG
2Excalidraw概念图、对比图、简单流程(≤ 8 节点)、关系图、手绘风格示意图PNG
3Mermaid仅限:复杂流程(> 8 节点)、多层架构图、多角色时序图、多分支决策树PNG

选择逻辑:

  • 需要隐喻、情感、创意表达 → Gemini
  • 概念关系、对比、简单流程 → Excalidraw(大多数图表场景的首选)
  • 只有节点 > 8、多层/多角色的复杂结构化图形 → Mermaid
  • Mermaid 视觉表现力有限,能用 Excalidraw 就不用 Mermaid
  • 唯一目标:提高文章吸引力

生成 Excalidraw 前必须读取 references/excalidraw-guide.md。

Mermaid 语义色板

每种颜色有固定含义,必须使用 classDef + class 应用:

语义填充色边框色用于
input#d3f9d8#2f9e44输入、起点、数据源
process#e5dbff#5f3dc4处理、推理、核心逻辑
decision#ffe3e3#c92a2a决策点、分支判断
action#ffe8cc#d9480f执行动作、工具调用
output#c5f6fa#0c8599输出、结果、终点
storage#fff4e6#e67700存储、记忆、数据库
meta#e7f5ff#1971c2标题、分组、元信息

classDef 写法(放在图表末尾):

classDef input fill:#d3f9d8,stroke:#2f9e44,color:#1a1a1a
classDef process fill:#e5dbff,stroke:#5f3dc4,color:#1a1a1a
classDef decision fill:#ffe3e3,stroke:#c92a2a,color:#1a1a1a
classDef action fill:#ffe8cc,stroke:#d9480f,color:#1a1a1a
classDef output fill:#c5f6fa,stroke:#0c8599,color:#1a1a1a
class A input
class B,C process
class D output

Mermaid 布局规则

  • 布局方向:默认 TB(上到下),横向流程用 LR
  • 箭头分级:--> 主流程 / -.-> 可选/辅助路径 / ==> 重点强调
  • 分组:用 subgraph 对相关节点分组,标题简洁
  • 节点文字:≤ 8 字,无 emoji,禁止 1. 格式(用 ① 或 Step 1:)
  • 节点数量:单图 ≤ 15 个节点,复杂内容拆成多图

--engine 参数:

  • auto(默认):根据内容类型自动选择(优先级 Gemini > Excalidraw > Mermaid)
  • gemini:强制只使用 Gemini(适合创意内容)
  • excalidraw:强制只使用 Excalidraw(适合手绘概念图)
  • mermaid:强制只使用 Mermaid(适合技术文档)

执行流程

Step 1: 分析文章

  1. 读取文章内容
  2. 识别配图位置(通常 3-5 个)
  3. 为每个位置确定引擎(Gemini / Excalidraw / Mermaid)

Step 2: 生成图片

Mermaid(结构化图形)→ PNG
  1. 生成 Mermaid 代码,保存为临时 .mmd 文件
  2. 调用 mermaid-export.ts 导出高分辨率 PNG:
bash
npx -y bun ~/.claude/skills/smart-illustrator/scripts/mermaid-export.ts \
  -i {图表名}.mmd -o {图表名}.png -w 2400
  1. 在文章中插入 PNG 图片引用
  2. 保留 .mmd 源文件用于后续编辑

使用 --mermaid-embed 参数时,改为直接嵌入 Mermaid 代码块(旧行为)。

Excalidraw(手绘/概念图)→ PNG
  1. 读取 references/excalidraw-guide.md 获取 JSON 规范
  2. 生成 Excalidraw JSON,保存为 .excalidraw 文件
  3. 调用 excalidraw-export.ts 导出 PNG:
bash
npx -y bun ~/.claude/skills/smart-illustrator/scripts/excalidraw-export.ts \
  -i {图表名}.excalidraw -o {图表名}.png -s 2
  1. 在文章中插入 PNG 图片引用
  2. 保留 .excalidraw 源文件用于后续编辑

依赖未安装时的降级:提示手动打开 excalidraw.com 导出。

Gemini(创意/视觉图形)

命令模板(必须使用 HEREDOC + prompt-file):

bash
# Step 1: 写入 prompt
cat > /tmp/image-prompt.txt <<'EOF'
{从 style 文件提取的 System Prompt}

**内容**:{配图内容}
EOF

# Step 2: 调用脚本
GEMINI_API_KEY=$GEMINI_API_KEY npx -y bun ~/.claude/skills/smart-illustrator/scripts/generate-image.ts \
  --prompt-file /tmp/image-prompt.txt \
  --output {输出路径}.png \
  --aspect-ratio 16:9

封面图(16:9):

bash
cat > /tmp/cover-prompt.txt <<'EOF'
{从 style-cover.md 提取的 System Prompt}

**内容**:
- 核心概念:{主题}
- 视觉隐喻:{设计}
EOF

GEMINI_API_KEY=$GEMINI_API_KEY npx -y bun ~/.claude/skills/smart-illustrator/scripts/generate-image.ts \
  --prompt-file /tmp/cover-prompt.txt \
  --output {文章名}-cover.png \
  --aspect-ratio 16:9

参数传递:用户指定的 --no-config、--ref、-c 必须传递给脚本。

Step 3: 创建带配图的文章

保存为 {文章名}-image.md,包含:

  • YAML frontmatter 声明封面图
  • 正文配图插入

Step 4: 输出确认

报告:生成了几张图片、输出文件列表。


--prompt-only 模式

当使用 --prompt-only 时,不调用 API,而是:

  1. 生成 JSON prompt
  2. 自动复制到剪贴板(使用 pbcopy)
  3. 同时保存到文件备份
bash
# 执行方式
echo '{生成的 JSON}' | pbcopy
echo "✓ JSON prompt 已复制到剪贴板"

# 同时保存备份
echo '{生成的 JSON}' > /tmp/smart-illustrator-prompt.json
echo "✓ 备份已保存到 /tmp/smart-illustrator-prompt.json"

用户可直接粘贴到 Gemini Web 手动生成图片。


输出文件

article.md              # 原文(不修改)
article-image.md        # 带配图的文章
article-cover.png       # 封面图(16:9)
article-image-01.png    # Gemini 配图

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Smart Illustrator AI skill do?

智能配图与 PPT 信息图生成器。支持三种模式:(1) 文章配图模式 - 分析文章内容,生成插图;(2) PPT/Slides 模式 - 生成批量信息图;(3) Cover 模式 - 生成封面图。所有模式默认生成图片,`--prompt-only` 只输出 prompt。支持 Bento Grid 功能展示图风格(--style bento)。触发词:配图、插图、PPT、slides、封面图、thumbnail、cover、bento grid、功能展示图、feature showcase。

Why use Smart Illustrator on TypingMind?

Because you install it once and use it with any model. Smart Illustrator is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Smart Illustrator in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/axtonliu/smart-illustrator/tree/main. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Smart Illustrator?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Smart Illustrator?

As many as you like. As long as a model supports skills, you can use Smart Illustrator with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Smart Illustrator AI skill free?

Yes. It is published on GitHub by axtonliu under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇