用途:把文本分析、代码、模式或已有图表素材整理成清晰、可编辑的图表,优先输出图表源码,便于审阅、版本管理与迭代;仅在用户需要图片/PDF 时才渲染成文件。
主要能力:根据需求选择图表语言。流程、决策树、简单泳道用 Mermaid flowchart;系统交互时序用 Mermaid sequenceDiagram 或 PlantUML sequence;状态迁移用 Mermaid stateDiagram-v2 或 PlantUML state;数据库模式用 Mermaid erDiagram;类/接口模型用 Mermaid classDiagram 或 PlantUML class;项目排期用 Mermaid gantt;层级与想法用 Mermaid mindmap;客户/产品旅程用 Mermaid journey;Git 历史用 Mermaid gitGraph;依赖或包关系及大型密集图用 Graphviz DOT;带边界层的架构可用 Mermaid 子图或 Graphviz cluster;文本语言难以表达时用 SVG。
必要用法:默认提供可编辑源码;生成前先规范化实体、关系、标签、状态、分支与顺序信息;图节点 ID 用 ASCII,标签简洁可读;不确定输入时在代码后附假设说明。渲染时使用:python "<SKILL_ROOT>/diagram-generator/scripts/render_diagram.py" input.mmd --format svg --out output.svg;输入也可以是 .dot 配 --format png 或 .puml 配 --format svg。脚本会尝试本地常见工具,缺少渲染器时输出安装提示而非报错,因此不得在脚本未成功且输出文件不存在时声称已渲染。
可选依赖:Mermaid CLI 可用 npm install -g @mermaid-js/mermaid-cli 自动安装;Graphviz 需手动安装;PlantUML 需 Java 与 plantuml.jar。
适用场景:技术文档、架构与攻击路径报告、流程图、时序图、ER 图等;可与文档生成或渗透报告配合嵌入图表。
限制:复杂自动布局可能需要在目标工具中手工调整;渲染效果取决于可用的图表 CLI 或渲染器;渲染脚本会调用本地渲染器并写入指定输出路径,可能覆盖已有文件,应先查看源码并选择新的输出路径。官方是否收费、具体支持平台等信息暂未提供。