docs: 统一使用中文结构化子列表

This commit is contained in:
Codex
2026-07-10 12:21:13 +02:00
parent 7276278fe5
commit 44187be70d
6 changed files with 534 additions and 135 deletions
+88 -25
View File
@@ -1,16 +1,37 @@
# Agent 指令治理
本文是长期参考,用于保持自动加载的 Agent 指令文件精简、可导航且稳定。适用于本地和远端 `AGENTS.md``CLAUDE.md` 类别名,以及所有自动注入 Agent 上下文的仓库级指令文件。
- 本文范围:
- 目标:保持自动加载的 Agent 指令文件精简、可导航且稳定;
- 适用对象:本地和远端 `AGENTS.md``CLAUDE.md` 类别名;
- 扩展范围:所有自动注入 Agent 上下文的仓库级指令文件。
## 体积预算
`AGENTS.md` 是索引,不是知识库。任何本地或远端 `AGENTS.md` 的硬上限均为 10 KiB,使用 `wc -c AGENTS.md` 按字节计量。
- 体积定义:
`AGENTS.md` 已超过 10 KiB 时,不得继续追加详细规则。必须先拆分,再只向 `AGENTS.md` 回填一行索引。
- `AGENTS.md` 是索引,不是知识库;
- 本地或远端 `AGENTS.md` 的硬上限均为 10 KiB
- 使用 `wc -c AGENTS.md` 按字节计量。
修改 `AGENTS.md` 会导致其超过 10 KiB 时,把新内容分流到 skill 或 `docs/reference/*.md`,并保持 `AGENTS.md` 为短索引。
`AGENTS.md` 超过 10 KiB 时
加载或输出 `AGENTS.md` 触发 CLI 输出转储或上下文膨胀时,将其视为可见性缺陷和指令治理缺陷。正确修复是拆分文件,不是提高输出上限或要求 Agent 绕过转储读取。
- 不得继续追加详细规则;
- 必须先拆分;
- 只向 `AGENTS.md` 回填一行索引。
- 修改会导致 `AGENTS.md` 超过 10 KiB 时:
- 把新内容分流到 skill 或 `docs/reference/*.md`
- 保持 `AGENTS.md` 为短索引。
- 加载或输出 `AGENTS.md` 触发 CLI 输出转储或上下文膨胀时:
- 将其视为可见性缺陷;
- 将其视为指令治理缺陷;
- 通过拆分文件修复;
- 不得提高输出上限;
- 不得要求 Agent 绕过转储读取。
## AGENTS.md 应包含的内容
@@ -22,47 +43,89 @@
- 常用工作流必须加载的 skill 名称;
- Secret、破坏性命令、目标工作区和构建禁令的短警告。
不得放入长示例、命令记录、JSON 输出、issue 时间线、架构长文、provider 特定调试日志或一次性事故分析。
- 禁止内容:
- 长示例、命令记录或 JSON 输出;
- issue 时间线或架构长文;
- provider 特定调试日志;
- 一次性事故分析。
## 超出内容的分流位置
拆分 `AGENTS.md` 时按以下顺序分流
- 分流顺序
- 可复用工作流进入 skill `SKILL.md`,例如 `$dad-dev``$unidesk-cicd``$unidesk-gh``$unidesk-trans``$unidesk-otel``$unidesk-webdev``$unidesk-ymalops`
- 稳定项目约束、工作区规则、架构边界和验收标准进入 `docs/reference/*.md`
- CLI 形态、输出样式、路由语法和操作体验进入 `docs/reference/cli.md`,已有更具体参考文档时进入具体文档。
- 部署治理、固定仓库边界和真相源规则进入 `docs/reference/devops-hygiene.md`
- HWLAB 节点/通道规则进入 `docs/reference/hwlab.md` 和目标仓库自身参考文档
- AgentRun 真相源和部署通道规则进入 `docs/reference/agentrun.md`
- 平台基础设施和 YAML-first 运维进入 `docs/reference/platform-infra.md``docs/reference/yaml-first-ops.md`
- 过程记录、临时发现和带日期调查日志进入 GitHub issue、PR 评论或过程记录;进入长期参考前必须蒸馏
- 可复用工作流进入 skill `SKILL.md`,例如
- `$dad-dev``$unidesk-cicd``$unidesk-gh`
- `$unidesk-trans``$unidesk-otel``$unidesk-webdev`
- `$unidesk-ymalops`
- 稳定项目约束、工作区规则、架构边界和验收标准进入 `docs/reference/*.md`
- CLI 相关内容:
- 形态、输出样式、路由语法和操作体验进入 `docs/reference/cli.md`
- 已有更具体参考文档时进入具体文档
- 部署治理、固定仓库边界和真相源规则进入 `docs/reference/devops-hygiene.md`
- HWLAB 节点/通道规则进入 `docs/reference/hwlab.md` 和目标仓库自身参考文档。
- AgentRun 真相源和部署通道规则进入 `docs/reference/agentrun.md`
- 平台基础设施和 YAML-first 运维:
- 进入 `docs/reference/platform-infra.md`
- 同时由 `docs/reference/yaml-first-ops.md` 约束。
- 过程材料:
- 过程记录、临时发现和带日期调查日志进入 GitHub issue、PR 评论或过程记录;
- 进入长期参考前必须蒸馏。
规则既能跨项目复用、又依赖 UniDesk 当前目录或服务时,把可复用流程放入 skill,把 UniDesk 特定路径、通道名和验收边界放入 `docs/reference/*.md`,并双向交叉引用。
- 规则既能跨项目复用、又依赖 UniDesk 当前目录或服务时
- 把可复用流程放入 skill
- 把 UniDesk 特定路径、通道名和验收边界放入 `docs/reference/*.md`
- 双向交叉引用。
## 拆分步骤
Agent 发现本地或远端 `AGENTS.md` 超过 10 KiB 时:
1. 识别正在修改或扩展的详细领域。
2. 把详细内容移到权威 skill 或 `docs/reference/*.md`
3. 用一条简短索引和权威链接替换原详细章节。
4.`AGENTS.md` 保留 P0 损害预防警告,但压缩为一行路由规则。
5. 不得把所有内容移入单个巨大溢出文档。临时迁移记录仅在立即指向各领域承接文档时可用。
6. 用户未明确要求时,不为体积预算新增测试、保护代码或预检。默认控制方式是文档治理和简洁评审。
5. 禁止创建巨大溢出文档:
- 不得把所有内容移入单个文件;
- 临时迁移记录仅在立即指向各领域承接文档时可用。
6. 用户未明确要求时:
- 不为体积预算新增测试、保护代码或预检;
- 默认控制方式是文档治理和简洁评审。
大型旧文件按领域逐步拆分。每次编辑都应让涉及领域更精简、引用更清晰。
- 大型旧文件治理:
- 按领域逐步拆分;
- 每次编辑都应让涉及领域更精简;
- 每次编辑都应让引用更清晰。
## 交叉引用要求
`AGENTS.md` 中指向外部的每条索引必须注明权威目标。优先使用 `docs/reference/hwlab.md` 等直接路径或 `$unidesk-cicd` 等 skill 名称。
- 外部索引规则:
不得在 `AGENTS.md`、skill 和长期参考之间重复完整规则。`AGENTS.md` 可以摘要,参考文档拥有细节。两个参考文档冲突时,更新职责更具体的文档,并只保留一个权威版本。
- 每条索引必须注明权威目标;
- 优先使用 `docs/reference/hwlab.md` 等直接路径;
- 也可使用 `$unidesk-cicd` 等 skill 名称。
- 规则归属:
- 不得在 `AGENTS.md`、skill 和长期参考之间重复完整规则;
- `AGENTS.md` 可以保留摘要;
- 参考文档拥有细节;
- 两个参考文档冲突时,更新职责更具体的文档;
- 冲突处理后只保留一个权威版本。
## Secret 与输出治理
指令文件不得包含 Secret、完整 API key、完整 DSN、base64 载荷、bearer token、SSH 私钥或可直接复用的凭据。
- 指令文件不得包含
不得把大段 CLI 输出、OTel trace 转储、JSON 数组或浏览器记录粘贴进 `AGENTS.md`。大输出证明可复用规则时,只保留规则摘要,并链接到拥有完整结论的 issue 或参考文档。
- Secret、完整 API key 或完整 DSN
- base64 载荷或 bearer token
- SSH 私钥或可直接复用的凭据。
- 大输出治理:
- 不得把大段 CLI 输出粘贴进 `AGENTS.md`
- 不得粘贴 OTel trace 转储、JSON 数组或浏览器记录;
- 大输出证明可复用规则时,只保留规则摘要;
- 摘要必须链接到拥有完整结论的 issue 或参考文档。
## 当前 UniDesk 路由图
+142 -20
View File
@@ -1,53 +1,175 @@
# 文档治理与过程蒸馏
本文是 UniDesk 本机文档治理的长期参考,适用于 `AGENTS.md``CLAUDE.md` 类入口文档、`docs/reference/*.md`、skill 文档和过程文档蒸馏。具体任务仍先加载 `$docs-spec`;本文沉淀长期稳定规则和本仓判定标准。
- 本文适用于:
- `AGENTS.md``CLAUDE.md` 类入口文档;
- `docs/reference/*.md`
- skill 文档;
- 过程文档蒸馏。
- 使用要求:
- 具体任务先加载 `$docs-spec`
- 本文只沉淀长期稳定规则和本仓判定标准。
## 中文与单行治理
- 自然语言标题和正文统一使用中文;发现非中文内容时先翻译再继续。
- 新写内容必须使用中文。
- 一个自然语言单行不得堆叠多个独立约束、步骤、条件或并列事实。
- 发现过长单行时立即处理,不等待集中清理。
- 过长内容一律按语义拆成主项与下级列表;禁止只做自然换行或物理折行来伪装拆分。
- 命令、路径、URL、代码、协议名、字段名和机器可读单值可以保留原文或长行。
## 顶级入口
`AGENTS.md` 只作为项目级顶级索引,用于快速定位命令、入口、技能和长期参考文档。它不能承载实现细节、参数说明、长流程、历史排障、日志、JSON、trace dump 或一次性过程记录。
- `AGENTS.md` 职责:
`AGENTS.md` 具有同等作用的入口文档只保留一行 `@AGENTS.md`,避免 `CLAUDE.md``AGENTS.md` 或其他入口出现多套口径。
- 只作为项目级顶级索引;
- 用于快速定位命令、入口、技能和长期参考文档;
- 不承载实现细节、参数说明或长流程;
- 不承载历史排障、日志、JSON、trace dump 或一次性过程记录。
每个命令或工作流在 `AGENTS.md` 中最多保留一条主索引;需要多个功能点时,用短子列表分别指向对应的 `docs/reference/*.md` 或 skill。子列表只写一句话摘要,不展开背景和用法。
- 同级入口文档规则:
-`AGENTS.md` 具有同等作用的入口文档只保留一行 `@AGENTS.md`
- 避免 `CLAUDE.md``AGENTS.md` 或其他入口出现多套口径。
- 命令与工作流索引:
- 每个命令或工作流最多保留一条主索引;
- 多个功能点使用短子列表;
- 子列表分别指向对应的 `docs/reference/*.md` 或 skill
- 子列表只写一句话摘要;
- 不展开背景和用法。
`AGENTS.md` 的体积、拆分和输出 dump 治理细则见 `docs/reference/agent-instruction-hygiene.md`
## 长期参考
`docs/reference/` 只记录长期稳定、可重复复用的入口、前置条件、约束、职责边界和判定标准。不要写日期、一次性执行记录、实测流水账、changelog 式内容或容易过时的临时结论。
- `docs/reference/` 内容边界:
详细说明优先进入职责明确的独立参考文档,再回到 `AGENTS.md` 维护一句话索引。跨文档重复时,选择或新建唯一权威出处,其他位置只交叉引用。
- 只记录长期稳定、可重复复用的入口、前置条件和约束;
- 记录职责边界和判定标准;
- 不写日期、一次性执行记录或实测流水账;
- 不写 changelog 式内容或容易过时的临时结论。
知识更新按四类处理:增加新知识、删除过时知识、修正错误知识、合并重复知识。新旧材料冲突时,以新的稳定结论替换旧结论,并删除或压缩旧说法。
- 详细说明归属:
`docs/reference/` 不维护 YAML/config 已能表达的业务策略数值、阈值、冷却时间、退避窗口、容量或价格作为第二真相。长期参考只写“数值以 YAML/config 为准”以及同步、渲染、验证入口。
- 优先进入职责明确的独立参考文档;
- 再回到 `AGENTS.md` 维护一句话索引;
- 跨文档重复时,选择或新建唯一权威出处;
- 其他位置只交叉引用。
长期参考不得要求为业务策略数值新增合同测试、代码硬范围或 schema 内容校验;配置校验只检查格式、类型、必填项和可渲染性。
- 知识更新分为:
涉及 skill 的长期参考必须写清该 skill 与当前项目代码、硬件、目录、运行面和判定标准的具体关系。通用安装、CLI 参数、子命令和完整用法直接引用对应 `SKILL.md`,不要在 reference 中复制一份。
- 增加新知识;
- 删除过时知识;
- 修正错误知识;
- 合并重复知识。
- 新旧材料冲突时:
- 以新的稳定结论替换旧结论;
- 删除或压缩旧说法。
`docs/reference/` 不维护 YAML/config 已能表达的以下内容作为第二真相:
- 业务策略数值和阈值;
- 冷却时间和退避窗口;
- 容量或价格。
- 长期参考只保留:
- “数值以 YAML/config 为准”;
- 同步入口;
- 渲染入口;
- 验证入口。
- 业务策略数值规则:
- 不得要求新增合同测试;
- 不得增加代码硬范围;
- 不得增加 schema 内容校验;
- 配置校验只检查格式、类型、必填项和可渲染性。
- 涉及 skill 的长期参考必须写清该 skill 与以下内容的具体关系:
- 当前项目代码和硬件;
- 当前目录和运行面;
- 当前判定标准。
- 通用用法归属:
- 通用安装直接引用对应 `SKILL.md`
- CLI 参数和子命令直接引用对应 `SKILL.md`
- 完整用法直接引用对应 `SKILL.md`
- 不得在 reference 中复制一份。
## Skill 文档
`SKILL.md` 是短入口和路由表,不承载完整 runbook、历史排障、长命令矩阵或大段背景。内容变长时,拆到同 skill 的 `references/`
- `SKILL.md` 是短入口和路由表,不承载
拆分后的 reference 必须按职责、生命周期和读取场景组织,例如部署、账号管理、公开暴露、验收、排障、禁止事项分别成文件。禁止把内容重新堆成 `references/full.md``all.md``guide.md` 或其他变相超级 Markdown。
- 完整 runbook
- 历史排障;
- 长命令矩阵;
- 大段背景;
- 内容变长时,拆到同 skill 的 `references/`
`SKILL.md` 必须明确何时读取哪个 reference,让 agent 按任务加载最小必要文件。单个 reference 继续变长时,继续按职责拆分,并在旧文件保留短索引或迁移说明。
- reference 拆分规则:
- 按职责、生命周期和读取场景组织;
- 部署、账号管理、公开暴露、验收、排障和禁止事项分别成文件;
- 禁止重新堆成 `references/full.md``all.md``guide.md`
- 禁止创建其他变相超级 Markdown。
- reference 路由规则:
- `SKILL.md` 必须明确何时读取哪个 reference;
- Agent 按任务加载最小必要文件;
- 单个 reference 继续变长时,继续按职责拆分;
- 在旧文件保留短索引或迁移说明。
## 过程文档蒸馏
过程文档是开发过程中的一手历史资料,通常带有时间戳、阶段性判断和临时结论。蒸馏时不得篡改过程文档本身。
- 过程文档定义:
- 属于开发过程中的一手历史资料;
- 通常带有时间戳、阶段性判断和临时结论;
- 蒸馏时不得篡改过程文档本身。
- 蒸馏顺序:
- 从旧到新;
- 大文件采用滑动窗口;
- 读一段就更新一次长期参考;
- 不等全部读完再统一整理。
蒸馏顺序从旧到新。大文件采用滑动窗口处理,读一段就更新一次长期参考,不等全部读完再统一整理。
- 过程结论规则:
新的稳定结论覆盖旧结论。长期参考只简述总体发展过程和关键节点,避免把发展过程写成流水账;越早期的过程越应压缩。
- 新的稳定结论覆盖旧结论
- 长期参考只简述总体发展过程和关键节点;
- 避免把发展过程写成流水账;
- 越早期的过程越应压缩。
重要过程节点可以交叉引用原始过程文档、issue 或 PR,但长期参考必须保留可直接复用的当前规则、边界和验证入口。
- 重要过程节点
- 可以交叉引用原始过程文档、issue 或 PR;
- 长期参考必须保留可直接复用的当前规则、边界和验证入口。
## 本机工作流
单纯文档、`AGENTS.md``docs/reference/*.md`、skill 规则、runbook 和过程文档蒸馏可在当前主 worktree 处理,不需要新建 `.worktree` 或 PR。开始前必须按本仓 P0 规则快进到最新 `origin/master`,并保留并行脏改。
- 以下工作可在当前主 worktree 处理,不需要新建 `.worktree` 或 PR
该例外只覆盖文档和规则本身。不得夹带源码、配置、部署、Secret、运行面变更或 issue lifecycle 写操作。
- 单纯文档;
- `AGENTS.md``docs/reference/*.md`
- skill 规则和 runbook
- 过程文档蒸馏。
收尾检查以最小语法、链接、grep 和 diff 审核为主。完成后只提交本次文档治理相关文件;若工作区存在并行修改,不得把无关文件加入提交
开始前必须按本仓 P0 规则快进到最新 `origin/master`,并保留并行脏改
- 本机工作流例外边界:
- 只覆盖文档和规则本身;
- 不得夹带源码、配置、部署或 Secret;
- 不得夹带运行面变更或 issue lifecycle 写操作。
- 收尾要求:
- 以最小语法、链接、grep 和 diff 审核为主;
- 只提交本次文档治理相关文件;
- 工作区存在并行修改时,不得把无关文件加入提交。