用途
docs 是一个用于编写和维护项目文档的技能。它管理的文档统一存放在 docs/generated/ 目录下,并按分类子目录组织,路径格式为 docs/generated/<category>/<slug>.md。docs/generated/ 之外的文档被视为人工编写,绝不允许修改。
主要能力
该技能提供两个子命令:
- write <topic> [code-path]:针对指定主题创建或更新文档。第一个参数 topic 为必填,表示文档的标题或主题;第二个参数 code-path 为可选,表示相关代码的路径(文件或目录)。
- check:检查所有文档状态,包括内容是否过时(stale)、代码引用是否失效(broken refs)以及是否存在孤立文档(orphan docs)。
当不带子命令运行时,会打印使用说明并停止。
使用方式
调用时,$ARGUMENTS 的第一个词决定子命令:
- 第一个词为 write:读取并执行 references/write-procedure.md。
- 第一个词为 check:读取并执行 references/check-procedure.md。
- 无子命令或 help:打印用法说明并停止。
参数解析在移除子命令关键字后进行。write 的示例:
- /docs write "auth flow design" → 仅提供主题
- /docs write "auth flow" src/auth/ → 主题加代码路径
check 不接受参数。
文档搜索与管理应使用指定工具,而不是逐个打开文件:
- 查找文档文件:使用 Glob,模式为 docs/generated/**/*.md,获取完整文档列表。
- 搜索 frontmatter:使用 Grep,按 title:、category: 等模式过滤。
- 读取现有文档:使用 Read,读取 frontmatter 与正文(仅限必要文档)。
- 验证代码引用:使用 Glob,检查 code_refs 中的文件路径是否存在。
- 创建文档:使用 Write,创建新文档文件。
- 更新文档:使用 Edit,更新现有文档的特定部分。
- 扫描索引:使用 Read,读取 docs/generated/INDEX.md 以了解分类结构和文档列表。
文档编写原则
- 尽量减少代码块:不要在文档中直接包含代码片段,而是使用 symbol 形式的 markdown 链接作为引用。
- 聚焦设计意图:记录“为什么这样做”,而不是“做了什么”。
- 保护人工文档:绝不修改 docs/generated/ 之外的文档。
适用场景
适用于需要以结构化、可检索方式维护项目文档的工程场景,尤其是希望文档与代码引用保持关联、并定期检查文档时效性与引用有效性的项目。
限制
文档仅限存放在 docs/generated/ 目录内;docs/generated/ 之外的文档不可修改。文档编写应避免直接嵌入代码块,改用引用指针。关于收费、价格、平台支持等信息,资料中暂未提供。