用途:按 C4 模型对软件架构做结构化可视化,产出四个缩放层级的图,并映射到文档金字塔:Level 1 系统上下文对应 L1 摘要(01-summary/system-context.md),Level 2 容器与 Level 3 组件对应 L2 分析(02-analysis/structural-views/container.md、components.md),Level 4 代码对应 L3 档案(03-dossiers/code-level-detail.md)。
主要能力:先声明受众与读者要完成的任务,再选定单一 C4 层级,避免混用上下文、容器、组件、代码层级;保持抽象层级、元素词汇、边界处理与关系含义一致。提供评审记录,检查叙事/阅读顺序、视觉层级、标签与图例、信噪比、不依赖颜色的含义、可访问性交接、不确定性与评审证据。
使用方式:快速单图用 Mermaid 嵌入 markdown;长期项目推荐 Structurizr DSL,用单一 DSL 文件定义整个模型并生成全部 4 个层级,支持 !adrs 导入 ADR、!docs 导入 arc42 文档,可用 Structurizr Lite(Docker)在 http://localhost:8081 本地预览,CI 命令包括 validate、inspect、export(PlantUML、Mermaid、静态站点)。
限制:GitHub 内置 Mermaid 渲染器不包含 C4 插件,C4Context、C4Container、C4Component 语法在 GitHub 上会显示为原始代码;需转换为标准 flowchart 语法(Person→矩形节点、System/System_Ext→子图内外矩形、Container→带技术栈标签矩形、Db→圆柱、System_Boundary/Container_Boundary→subgraph、Rel→带标签箭头,去掉 UpdateLayoutConfig 改用 flowchart LR/TB)。DIAGRAMS/ 目录下的 .mmd 文件若用 C4 语法,在 GitHub 文件预览中也只显示原始文本,需转换或先渲染为 PNG。语法/模型校验器只能证明结构有效,不能证明图传达了预期主张。完整 WCAG/ARIA 合规由 web-accessibility 负责,架构决策由 software-architecture 负责;纯 Mermaid 语法、渲染兼容与导出问题应使用 mermaid-diagrams。该技能与宿主无关,不假设特定 profile、任务编排、记忆服务或响应交接格式。