专家级C4代码级文档专家。分析代码目录以创建全面的C4代码级文档,包括函数签名、参数、依赖关系和代码结构。
技能概述
c4-code 技能是一个专门用于创建C4代码级文档的技能。它能够深入分析代码目录,生成全面的文档,包括函数签名、参数、依赖关系和代码结构。该技能支持面向对象、函数式和过程式编程范式,能够生成清晰的Mermaid图表来展示代码关系。
下载地址:agentic-awesome-skills/skills/c4-code at main · sickn33/agentic-awesome-skills · GitHub
主要功能
- 代码元素文档:记录函数/方法签名、参数和返回类型
- 类/模块分析:分析类和模块的结构、方法和依赖关系
- 依赖关系映射:识别和记录内部和外部依赖关系
- 图表生成:生成Mermaid图表展示代码结构和关系
- 多范式支持:支持面向对象、函数式和过程式代码
触发条件
在以下情况下应该调用此技能:
- 处理C4代码级任务或工作流时
- 需要C4代码级的指导、最佳实践或检查清单时
- 需要分析代码目录并创建详细文档时
- 需要记录函数签名、参数和依赖关系时
不适用场景
不适用情况
- 任务与C4代码级无关时
- 需要此范围之外的不同域或工具时
处理过程
1. 明确目标
明确目标、约束条件和所需的输入,确保理解文档需求。
2. 分析代码
深入分析代码目录,识别函数、类、模块和依赖关系。
3. 应用最佳实践
应用相关的最佳实践并验证结果,确保文档质量。
4. 生成文档
提供可操作的步骤和验证,生成结构化的C4代码级文档。
文档结构
代码元素:
- 函数/方法:签名、描述、位置、依赖关系
- 类/模块:描述、位置、方法、依赖关系
依赖关系:
- 内部依赖:项目内的代码依赖
- 外部依赖:外部库、框架、服务
图表类型
面向对象代码:使用classDiagram展示类、接口和继承关系
函数式/过程式代码:使用flowchart展示数据流和函数管道
模块结构:使用classDiagram with <<module>>展示模块结构
示例交互
面向对象代码库
- "分析src/api目录并创建C4代码级文档"
- "记录服务层代码,包括完整的类层次结构和依赖关系"
- "创建C4代码文档,展示存储库层中的接口实现"
函数式/过程式代码库
- "记录认证模块中的所有函数及其签名和数据流"
- "为src/pipeline中的ETL转换器创建数据管道图"
- "分析utils目录并记录所有纯函数及其组合模式"
关键区别
- vs C4-Component agent:专注于单个代码元素;Component agent将多个代码文件合成为组件
- vs C4-Container agent:记录代码结构;Container agent将组件映射到部署单元
- vs C4-Context agent:提供代码级细节;Context agent创建高级系统图
输入要求
使用此技能时,用户需要提供:
- 要分析的代码目录路径
- 文档的目标和范围
- 编程语言和范式信息
- 特定的文档需求
输出说明
技能将提供:
- 完整的函数/方法签名及所有参数和返回类型
- 每个代码元素的清晰描述
- 指向实际源代码位置的链接
- 完整的依赖列表(内部和外部)
- 遵循C4代码级模板的结构化文档
- 复杂代码关系的Mermaid图表(如需要)
最佳实践
- 明确范围:明确要文档化的代码目录和范围
- 选择合适的图表:根据编程范式选择合适的图表类型
- 保持一致性:在所有代码文档中保持一致的命名和格式
- 记录依赖:完整记录所有内部和外部依赖
- 提供链接:提供指向实际源代码位置的链接
局限性
- 仅当任务明确符合上述范围时使用此技能
- 不要将输出作为环境特定验证、测试或专家审查的替代品
- 如果缺少所需的输入、权限、安全边界或成功标准,请停止并寻求澄清