用途
excalidraw-mermaid 是一个专注于 Excalidraw 图表输入的 AI 技能。当用户希望获得一张可以粘贴进 Excalidraw 的“Mermaid to Excalidraw”功能的图表时,该技能负责产出一份能在该转换器中稳定渲染、不出现意外的 Mermaid 源码。它的定位不是最终美术成品,而是让后续在 Excalidraw 中的手工润色从十分钟缩短到一分钟的干净起点。
主要能力
该技能会针对意图选择图表类型。Excalidraw 的 Mermaid 集成对 flowchart、sequenceDiagram、classDiagram 支持较好;flowchart 是默认选择,适用于流程、数据流、架构与决策树;sequenceDiagram 适用于按时间顺序的参与者交互;classDiagram 适用于类型层次、模式关系与领域模型。对于 stateDiagram-v2、erDiagram、journey、gantt、pie、mindmap、gitGraph、requirementDiagram、C4Context 等,技能会主动避免,因为它们在 Excalidraw 中渲染效果差或无法转换;若用户明确要求,会改写成 flowchart 并用菱形决策节点表达。
该技能还提供一组具体的编写规则:标签每行不超过 20 字符、最多两行;不使用 <br/> 换行;避免 HTML 实体;标签中不使用 Unicode 箭头;节点 ID 保持简短 ASCII;标签不用 Markdown 格式;不使用 classDef、style、linkStyle、click;子图需有显式 ID、引号标签与显式方向,且嵌套不超过一层;节点总数叙事型不超过 12 个、参考型不超过 25 个。
使用方式
当用户提出“把它画成 mermaid”“给我一张能粘进 excalidraw 的图”“X 的流程图”“Y 的序列图”“架构图”等请求,或用户刚用文字描述完一个系统或流程而可视化明显有帮助时,技能会被触发。若渲染目标不明确(Excalidraw、mermaid.live 还是 GitHub Markdown),技能会先确认目标再产出内容,因为约束不同。输出后如用户询问“怎么让它更好看”,属于预期工作流,会引导其在 Excalidraw 内完成润色步骤。
适用场景
适合需要快速把流程、架构、时序交互、类关系整理成可编辑 Excalidraw 图的场景。尤其适合流程图与架构草图,因为 Excalidraw 支持良好。对于状态机、ER 图、甘特图、饼图等,技能会改用其他方式表达或说明替代方案。
限制
该技能生成的是 Mermaid 起始稿,不是最终 Excalidraw 图。Excalidraw 中常见的彩色填充、按角色着色、红色边注、边界旁的浮动标注等效果,无法通过 Mermaid 编码获得,需要在 Excalidraw 内手工润色。部分形状(如 subroutine、flag)渲染不可靠,圆柱体在旧版本中可能退化为矩形。激活标记(+ / -)在 Excalidraw 中有时不渲染。所有颜色与样式指令会被剥离。输出前需要经过校验清单逐项检查。若需要多行标签,应拆成多个节点而非依赖 <br/>。文档中的具体示例与规则以原始资料为准,其他功能与细节暂未提供。