sync-docs
.agents/docs/ 下所有已有文件都在范围内。用户点名新增时可以新建 .agents/docs/ 文件,并在根 AGENTS.md 文档表追加一行。细则见 persistent-docs.md。禁止啰嗦和故作高深。
不由 review 自动触发。走 implement / rush 时文档对齐在实现当轮完成,review 只检查有没有漏。
前置检查
本对话之前已运行过且 PASS,或任务书写明「前置检查已通过,项目类别:X」:跳过本节,沿用该类别。否则运行 node .agents/scripts/precheck.mjs:FAIL 则停止,提示用户执行 setup(只缺脚本时走 setup 更新模式),不要代跑;PASS 输出带项目类别。之后按根 AGENTS.md 按需读 docs。CODE-MAP 何时改见 code-map-update.md。
统一工具定义
交互式提问:Agent 内置的向用户提问并给出选项的工具,各 Agent 命名不同(如AskUserQuestion、AskQuestion)。本技能所有向用户的提问都用它。
选路径
参数或用户原话要求新增文档(含「新增一个…文档」):走新增路径。其余走对齐路径。两者同时命中则都做。
新增路径
只在 .agents/docs/ 下新建用户自定义文档。能从用户原话确定的不要再问;缺文件名、何时读、或正文要写什么时,用 交互式提问 问。
- 路径:
.agents/docs/<NAME>.md。<NAME>用大写短横线(如TEAM-RULES.md)。已存在则改为更新正文,仍确保索引行在。 - 不要新建 setup 必有项(
PROJECT.md;代码类还有ARCHITECTURE.md、DEV-STANDARDS.md、CODE-MAP.md、SMELLS.md)和ACCEPTANCE.md。缺这些让用户跑setup或acceptance。 - 写入正文:只写该仓库要执行的内容,不写教程。
- 在根
AGENTS.md文档表追加一行:|.agents/docs/.md| <何时读> | <何时更新> |。何时更新默认sync-docs。不可删改模板规定的必有行,不可在AGENTS.md写正文。 - 非代码也可以新增自定义文档;不要因此去写代码类必有 docs。
输入
对齐路径用。已走新增路径且用户没给对照路径、工作区和暂存区也没有变更:跳过本节和对齐,不要问对照哪次提交。
- 用户点名改
.agents/docs/某份文档,或给出类别 / 架构 / 规范 / 地图等变更:以用户原意为准。 - 用户给了路径:只根据这些路径判断哪些已有文档被说错。
- 否则用 git 取工作区和暂存区变更(
git status --porcelain、git diff --name-only、git diff --cached --name-only并集,去重)。 - 忽略
.agents/cooking/。 - 没有点名变更、没有路径、工作区和暂存区都没有变更:使用
交互式提问工具来问用户要对照哪次提交或哪些文件,不要自动取最近一次提交。
.agents/docs
只改被推翻或被点名的句子/节,不重写全文。非代码不要打开代码类 docs(盘上有残留也一样),除非用户点名那一份。
PROJECT.md:类别、组织结构、全栈形态被推翻或被点名才改。改成代码 ↔ 非代码:停止,让用户setup(要换 AGENTS 模板 / 补代码类 docs)。ARCHITECTURE.md:换栈、改分层、加/删应用边界、业务/技术架构说错或被点名才改。改了架构则按 code-map-update.md 同步CODE-MAP.md。DEV-STANDARDS.md:仅用户点名改规范/偏好。禁止从代码推断新规范。SMELLS.md:与 smells.md 不一致则原样覆写。禁止按项目改写、追加或删条。CODE-MAP.md:触及 code-map-update.md 的要改项时只改相关行。ACCEPTANCE.md:有且被说错或被点名才改。- 根
AGENTS.md文档表里其它.agents/docs/文件:说错或被点名才改。
其它已有文档
技能、包/模块 AGENTS.md、模块已有约定文档:说错才改。
拿不准某份已有文档是否被推翻:使用 交互式提问 工具来问用户,不要猜。没有被说错、也没有被点名的文档:不要写。
禁止
不写业务代码,不改 cooking。根 AGENTS.md 只动文档表:可追加或修正自定义行,不可删改模板必有行,不可写入正文。除新增路径外,不新建文件。
结束
汇报:对照了哪些路径、新建/改了 .agents/docs 里哪几份、根 AGENTS.md 是否追加索引行、其它已有文档改了哪几份、是否需要 setup。没有改动就说没有。