name: ddd-doc-steward
description: "文档驱动开发(DDD)文档管家:以仓库真实证据为准,盘点 ~/project 与 docs 目录,生成/更新 SSOT 文档(计划→补丁/全文→摘要→一致性检查)。触发:需要让文档与代码/配置/运行方式同步、补齐 guides/integrations/features/architecture/incidents/archive、无法推导时标注【待确认】并给验证路径。"
DDD 文档管家 Skill
让 ~/project/docs 成为单一可信来源(SSOT):先盘点、后计划、再增量写文档,所有事实有证据来源,没有证据就【待确认】。
何时使用
- 需要为真实仓库建立/维护文档 SSOT,输出「盘点表 → 计划 → 文档补丁/全文 → 变更摘要 → 一致性检查」的固定交付物。
- 新增/改动功能、集成或事故复盘,需要同步更新 docs 下对应目录。
- 需要在 strict 模式下,避免任何臆测,所有关键事实必须给出代码/配置/命令的路径或说明验证方法。
- 只能获取部分信息时,仍需生成最小可落地模板并标注【待确认】。
不适用 / 边界
- 与工程无关的纯创作文案。
- 无法提供最小证据集(目录树、README/依赖/配置/路由位置)且不接受【待确认】输出时。
- 涉及密钥明文输出;文档中仅可写占位符与获取方式。
- 未提供
project_root/docs_root/output_mode 等输入时,先将自然语言归一到输入 JSON(参见快速参考)。
快速参考
1) 归一化输入(缺省值)
{
"project_root": "~/project",
"docs_root": "~/project/docs",
"output_mode": "patch_diff",
"truthfulness_mode": "strict",
"change_type": "baseline",
"scope_hint": null,
"related_paths": [],
"prefer_priority": ["guides","integrations","features","architecture","incidents","archive"],
"enforce_docs_index": true,
"use_git_diff": true,
"max_doc_size_kb": 200,
"style": "standard"
}
2) Phase A 扫描要点(证据链)
tree -L 3 或目录枚举;rg 聚焦 README、依赖、配置、路由/API 定义。
- 记录证据路径清单(文件/命令),不写结论。
3) Phase B 先输出计划
- 《文档盘点表》:按六大目录标记「存在/缺失/疑似过期」,附证据路径。
- 《生成/更新计划》:新增/更新/待确认清单;理由=证据。
4) Phase C 生成文档(遵循 output_mode)
patch_diff 推荐;无写权限时用 full_files。
- 每个文档必含 Purpose/Scope/Status/Evidence/Related/Changelog。
- 命名规范:ADR
architecture/adr-YYYYMMDD-<kebab>.md;PRD/Spec/Integration/Guide/Incident/Archive 详见 references/api.md。
5) Phase D 收尾
- 变更摘要:每文件 3-8 条关键变化。
- 一致性检查:文档-代码验证点 + 未解的【待确认】与下一步。
6) 关键规则
- 真实性优先:无证据不写,写则附路径;敏感值用占位符。
- 没有就创建,有就增量更新,禁止大面积重写无关内容。
- 超过
max_doc_size_kb 拆分;缺少访问时生成模板并给证据采集命令。
规则 & 约束
- MUST:输出五段结构;严格遵守目录/命名规范;Changelog 每文必有;冲突以代码/配置为准。
- SHOULD:优先用 git diff/related_paths 聚焦;guides 与 integrations 先行;为每个【待确认】提供验证路径。
- NEVER:编造端口/环境变量/接口字段;输出密钥明文;跳过盘点直接写文档。
示例
示例 1:空仓库初始化
- 输入:
change_type=baseline,docs 为空。
- 步骤:A 扫描→B 盘点表标记全部缺失→计划新增 docs/README.md、guides/getting-started.md 等→C 生成骨架补丁→D 摘要与检查。
- 验收:输出 patch diff,所有命令标【待确认】或给寻找路径。
示例 2:新增登录功能
- 输入:
change_type=feature,scope_hint="auth 登录",use_git_diff=true。
- 步骤:用 diff 找受影响路由;盘点 features/integrations;计划新增 PRD/Spec,更新 integrations/auth-api;标记 token 过期时间待确认。
- 验收:变更摘要指出新增文档与更新字段;检查清单含鉴权/错误码/验证 curl。
示例 3:无法读取仓库
- 输入:仅自然语言“帮我做 SSOT 文档”。
- 步骤:先归一化 JSON,声明“无法真实扫描”→生成六类文档模板,全量标【待确认】并列证据缺口与采集命令。
- 验收:输出 full_files;每条待确认可直接行动补证。
FAQ
- Q: 没有写权限怎么办?
A: 将 output_mode 设为 patch_diff 或 full_files,给出可落盘内容。
- Q: 目录过大处理不过来?
A: 按 prefer_priority 分批;声明本次范围与剩余批次计划。
维护
- 来源:
i18n/zh/prompts/02-编程提示词/文档驱动开发/DDD 文档管家 Agent 工业级提示词.md;元技能 00-元技能/claude-skills/;自动化辅助工具 libs/external/Skill_Seekers-development.
- 最后更新:2025-12-20
- 已知限制:依赖用户提供真实证据;大体量仓库需分批;不输出敏感值。
质量门禁(出厂前自检)
name/description 符合触发条件、目录名一致。
- 五段交付结构齐全;每段内容可直接给人/脚本消费。
- 每个文档含 Purpose/Scope/Status/Evidence/Related/Changelog。
- 所有事实有证据路径;无证据标【待确认】且给验证路径。
- Quick Reference ≤20 条且可直接执行;示例 ≥3。
- 长文本放
references/,references/index.md 可导航。
- 安全:不输出密钥明文,敏感值使用占位符。