一键导入
z-diagram
Use when generating system diagrams, architecture charts, or flowcharts — selects the right tool and approach based on diagram topology
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use when generating system diagrams, architecture charts, or flowcharts — selects the right tool and approach based on diagram topology
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Use when ready to implement - writing code with TDD discipline, progressive building from simple to complex, immediate feedback loops
Use when you have enough context to plan implementation - brainstorming approaches, writing plans, making architecture decisions
Use when completing work, reviewing code quality, extracting reusable patterns, or writing skills - refinement and knowledge crystallization
Use when entering unfamiliar codebase, starting new task, or needing to build context before acting - exploration and discovery phase
Use when work appears complete, when debugging issues, or before claiming any success - diagnostic verification using evidence not confidence
Use when starting any conversation or task - establishes the Five Elements skill framework for systematic development with progressive mastery from zero to zenith
| name | z-diagram |
| description | Use when generating system diagrams, architecture charts, or flowcharts — selects the right tool and approach based on diagram topology |
「圣人立象以尽意」——《周易·系辞上》。图为意之象,选对图法,方能尽意。
图的拓扑决定工具选择,而非工具决定图的形态。
先判断要画什么类型的图,再选工具。错误的工具选择会导致布局灾难——自动布局引擎无法理解你的语义意图。
digraph diagram_decision {
rankdir=TB;
node [shape=diamond, style=filled, fillcolor="#FFF8E1"];
edge [fontsize=11];
START [label="需要画图", shape=doublecircle, fillcolor="#E3F2FD"];
Q1 [label="有环形/循环\n关系?"];
Q2 [label="节点间有\n交叉连线?"];
Q3 [label="需要云服务\n图标?"];
Q4 [label="是UML\n规范图?"];
MERMAID [label="Mermaid", shape=box, fillcolor="#C8E6C9"];
D2 [label="D2", shape=box, fillcolor="#C8E6C9"];
SVG [label="手动 SVG\n(Excalidraw风格)", shape=box, fillcolor="#FFCDD2"];
PYTHON [label="Diagrams\n(Python)", shape=box, fillcolor="#C8E6C9"];
PLANTUML [label="PlantUML", shape=box, fillcolor="#C8E6C9"];
START -> Q1;
Q1 -> Q2 [label="是"];
Q1 -> Q3 [label="否"];
Q2 -> SVG [label="是"];
Q2 -> D2 [label="否,但需要\n精美布局"];
Q3 -> PYTHON [label="是"];
Q3 -> Q4 [label="否"];
Q4 -> PLANTUML [label="是"];
Q4 -> MERMAID [label="否"];
}
适用: 线性流程、树形结构、简单时序图、README 内嵌图
优势: LLM 生成质量最高、GitHub 原生渲染、零配置
局限: 自动布局仅支持 DAG,环形拓扑会被展开为链条
工具链:
# 渲染(mmdc 随 claude-mermaid 安装)
mmdc -i diagram.mmd -o output.svg -t default
# 或指定完整路径
/path/to/node_modules/.bin/mmdc -i diagram.mmd -o output.png --scale 2
生成要点:
classDef 自定义节点颜色subgraph 做分组,但不要超过 3 层嵌套适用: 层次架构图、数据流图、需要手绘风格(sketch mode)
优势: 视觉质量最佳、Markdown 节点、多主题
局限: 免费布局引擎(dagre/elk)不支持环形;TALA 引擎需付费
工具链:
# 基本渲染
d2 input.d2 output.svg
# 手绘风格 + ELK 布局
d2 --sketch --layout elk --pad 40 input.d2 output.png
# 暗色主题
d2 --theme 200 input.d2 output.svg
生成要点:
|md ... | 做 Markdown 富文本节点style.fill / style.stroke 自定义颜色style.stroke-dash: 5 做虚线direction: right / down 控制主方向适用: 环形拓扑、全连通网络、非标准布局、需要精确控制的概念图
优势: 完全自由的坐标控制、手绘滤镜、最佳视觉效果
局限: 需要手动计算坐标、可维护性较低
工具链:
# 生成 HTML+SVG → Playwright 截图
python3 -c "
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
browser = p.chromium.launch()
page = browser.new_page(viewport={'width': 1200, 'height': 1000})
page.goto('file:///path/to/diagram.html')
page.wait_for_timeout(1000)
page.locator('#canvas').screenshot(path='output.png')
browser.close()
"
生成要点:
SVG 模板结构:
<svg viewBox="0 0 1200 1000">
<defs>
<!-- 手绘滤镜 -->
<filter id="rough">
<feTurbulence baseFrequency="0.03" numOctaves="4" result="noise"/>
<feDisplacementMap in="SourceGraphic" in2="noise" scale="1.5"/>
</filter>
<!-- 箭头 -->
<marker id="arrow" viewBox="0 0 10 7" refX="10" refY="3.5"
markerWidth="10" markerHeight="7" orient="auto-start-reverse">
<polygon points="0 0, 10 3.5, 0 7" fill="#555"/>
</marker>
</defs>
<!-- 节点用 <g> + <rect> + <text> -->
<!-- 连线用 <path d="M... C..."> 贝塞尔曲线 -->
</svg>
布局策略:
360° / N × istroke-width: 3),颜色跟随源节点stroke-dasharray: 6,4,opacity: 0.5)适用: 云架构图(AWS/GCP/Azure/K8s)、系统部署图
优势: 官方服务图标、Python 代码即图
工具链:
pip install diagrams # 需要 graphviz 已安装
python3 architecture.py # 直接生成 PNG
适用: UML 类图、时序图、状态机、ER 图
优势: 最完整的 UML 支持、精细布局控制
工具链:
# 需要 Java + Graphviz
plantuml input.puml
问自己:这张图的核心拓扑是什么?
根据判型选择工具,让 Claude 生成源文件:
.mmd / .d2 / .html / .py / .puml执行工具链渲染为 SVG/PNG:
Read 工具查看 PNG 截图验证效果如需国际化:
-en.png 英文版| 陷阱 | 纠偏 |
|---|---|
| 用 Mermaid 画环形图 → 变成面条 | 判型错误,改用手动 SVG |
| D2 图太宽太扁 | 尝试 direction: down,或改用手动 SVG |
| SVG 手动坐标太多难以维护 | 只在必要时用手动 SVG,简单图仍用 Mermaid |
| 图中信息过多 | 一张图只表达一个核心概念,复杂系统拆成多张图 |
| 为了美观选错工具 | 先保证拓扑正确,再追求美观 |
使用前确认工具可用性:
# Mermaid
mmdc --version 2>/dev/null || echo "需安装: npm install -g claude-mermaid"
# D2
d2 --version 2>/dev/null || echo "需安装: 从 GitHub releases 下载二进制到 ~/.local/bin/"
# Playwright(截图用)
python3 -c "from playwright.sync_api import sync_playwright; print('ok')" 2>/dev/null || echo "需安装 playwright"
# Graphviz(PlantUML/Diagrams 依赖)
dot -V 2>/dev/null || echo "需安装: brew install graphviz"
立象以尽意,选器以达道。