AGENTS.md@project-template · git:20260919.e5c1d56 · 2026-09-19 · sha256 b7c6b58f5e57663b
AGENTS.md@project-template git:20260919.e5c1d56A
Immutable. This exact content never changes and is served at /api/v1/blob/b7c6b58f5e57663b.
# 项目协作规范(项目级模板) > 项目级规范 + 项目组级规范引用。**开始任何任务前:先读本文件,再读项目组级规范。** > 本文件是**唯一根级文档**,同时担任工作区索引:三大类目录索引见 §3。 > 版本: v1.2 | 最近修订: 2026-09-19 | 变更记录见文末。 > **本文件是本项目的规范性规则,不是参考资料**——偏离按偏差处理,不按偏好权衡。 ## 0. 项目组级规范(依赖声明) - 位置:`../shared-standards/AGENTS.md`(与本工作区同级、在工作区之外,**只读引用**)。 - **路径基准(全项目统一)**:本文件与配套文档里出现的一切路径,**一律相对项目根** (即本工作区根目录)。这样文档无论被移到哪一层都不会失效。 - 该文件**不在本工作区内**,因此 DSH 的会话指令注入不会包含它——本文件只是指向它, 由代理按需读取;引用一律相对路径,不复制正文(见 §6 指针化条款)。 - 本文件夹由 `project-template` 复制而来:新项目 = 复制本文件夹到 project-group 下 并改名,以**独立工作区**在 DSH 打开;`../shared-standards/` 相对路径自动成立。 - 优先级(两档制):项目组级 TOP 规则为最高优先级、**不可覆盖**;其余组级条款为 默认值,本项目覆盖时须在本文件 §2 显式写明理由;冲突时以项目组级规范为准。 - 更新项目组级规范:本工作区无写入权限(workspace-write 只覆盖本工作区); 需要更新时走**提权通道**——对越界写操作申请一次性权限并说明理由, 经用户批准后执行;日常使用一律只读,不合并目录、不复制双份。 ## TOP 规则(抄自项目组级规范,压缩后仍存活;细节以项目组级规范为准) 1. 未签目标书不立项;未批计划书不执行。 2. 一个单元=一个分支=一个会话;收单元七步打勾缺一不可。 3. 请示用户一律用提问卡片。 4. 闸没过完禁止进入下一单元。 5. 里程碑完成第一时间总结+推送到远端仓库。 ## 1. 项目定位(占位) - 项目:`<一句话项目定位>` - 当前阶段:`<当前阶段>` ## 2. 本项目特有规则(项目级补充,冲突以项目组级规范为准) - `<占位:本项目特色规范,遇新规则沉淀于此>` ## 3. 目录分类索引(三大类) > 根级文档只有本文件(AGENTS.md),其余全部归入三大类; > **每个类别文件夹内自行维护内部索引(各自 README.md)**。 | 类别 | 目录 | 语义 | 子结构 | |---|---|---|---| | 一、输入素材 | `inputs/` | 项目获得的外部材料 | `user/`(用户提供:`materials/` 资源、`tools/` 工具);`ai/`(AI 调研:`reports/` 报告、`data/` 数据)——均按文件类型/内容分组 | | 二、过程工程 | `process/` | 项目进行中的工程与文档 | `tmp/`(临时垃圾文件);`project/`(正式工程:`scripts/`、`configs/`);`docs/`(文档**实例区**,含 `docs/plans/` 目标书与计划书、`docs/spec-proposals/` 规约提案);`templates/`(文档**模板区**,含 `templates/plans/`) | | 三、输出产物 | `outputs/` | 交付与沉淀成果 | 产物类型由本项目自定:**先在本区 README 登记一行,再建同名子目录**;不预置类型 | - `process/tmp/`:可随时清空;归档/打包时整体剔除。 - `process/templates/` 为文档**模板区**(`<名>.template.md` 永为模板);`process/docs/` 为 **实例区**(实例骨架已预置,填内容参考 templates/ 对应模板,可随时复制覆盖重置)。 - 合规与工程规范(standards.md)在项目组级:`../shared-standards/standards.md`。 ## 4. 状态 - [ ] 目标定义书(process/docs/plans/goal-spec.md)已填写并签名 - [ ] 计划书(process/docs/plans/plan.md)已批准 - [ ] `<项目阶段清单>` ## 5. 快速导航 | 目的 | 位置 | |---|---| | **新会话接续** | `process/docs/HANDOFF.md` | | **项目组级规范(只读)** | `../shared-standards/AGENTS.md` | | 工作日志 | `process/docs/work-log.md` | | **★施工文档(交付版)** | `process/docs/construction.md` | | 决策记录 | `process/docs/decisions.md` | | **目标定义书** | `process/docs/plans/goal-spec.md` | | **计划书与门禁表** | `process/docs/plans/plan.md` | | 进度看板(多角色模式) | `process/docs/progress.md` | | 单元文件夹与角色交接 | `process/docs/units/`、`process/docs/handoff/` | | **多角色流水线规约(组级,只读)** | `../shared-standards/pipeline-and-roles.md` | | 假设登记 | `process/docs/assumptions.md` | | 实测记录 | `process/docs/measurements.md` | | 文档模板区(格式参考) | `process/templates/` | | 规约修订提案 | `process/docs/spec-proposals/` | | 项目配置(用户填) | `process/project/configs/project-config.toml` | ## 6. 规约反作用与文档初始化 - **反作用(修改规约)**:要分析/完善项目规约时,开一个**专用会话**(先读规约 → 分析完整性 → 讨论确认 → 按组级 AGENTS.md §9 流程落地);日常干活会话不混入规约修改。 - **文档初始化**:`process/templates/` 为模板区(含格式示例);`process/docs/` 实例骨架已预置, 填内容时参考对应模板;需要重置可复制模板(去掉 `.template` 后缀)覆盖实例。 - **本文件体量与指针化**:本文件会被 DSH 每个会话开局注入(连同项目根到工作目录沿途的 全部 `AGENTS.md`,合计上限 65536 字节);超出时先整体丢弃较宽的文件、最后才截断最具体的 文件。因此本文件只做**索引与指针**:项目特有规则需要展开时,正文写进 `process/docs/` 下的独立文档,此处只留一行指向它;**禁止把组级规范正文复制进来**(第二份副本即分叉 起点,且会占满注入额度)。参考上限:20 KB 以内。 - **先确定你的角色**(任何预设都适用):本项目按角色分工。若你是用**角色预设**启动的, 角色已由 persona 给定,直接采用;否则**先用提问卡片请用户指定角色**,再往下走。 三个角色(制作人 / 实现者 / 验收员)的**写权范围与各闸读档顺序**在组级 `../shared-standards/pipeline-and-roles.md` 里——那是唯一真源,本文件不复制它。 **多角色是可选能力**:不用角色时按单会话流程走组级 `AGENTS.md` §7,本文件同样适用。 - **项目内技能**:`.agents/skills/project-flow/SKILL.md` 是本项目的操作技能(开局触发、 给出读档顺序)。技能只做触发与指针,正文仍在上述组级文件里。 项目级技能根有两个(`.dsh/skills` 与 `.agents/skills`,DSH 均自动发现),本项目选后者: `.dsh` 是用户级 harness home(`~/.dsh`)的目录名,项目级再用它会让项目资产与工具状态同名。 - **并行前提**:同一工作目录同一时刻只有一个活跃写入会话(`git checkout` 按目录生效、 协作文档为追加或覆盖写);需要并行时,先在计划书的单元定义里写明该单元预期触碰的 文件与目录集合,文件集不相交才可并行(见组级 AGENTS.md §6)。 ## 变更记录 | 日期 | 版本 | 变更 | 批准 | |---|---|---|---| | 2026-09-16 | v1.0 | 首次版本化:补版本头与变更记录;§0 修正相对路径描述并注明组级规范不参与会话注入;§3 补 `docs/plans/`、`docs/spec-proposals/`、`templates/plans/` 并改为产物类型不预置;§5 补目标书、计划书、假设、实测四行;§6 新增本文件体量与指针化、并行前提 | 用户 | | 2026-09-16 | v1.1 | 顶部补「本文件是本项目的规范性规则,不是参考资料」(不依赖任何预设的效力声明);§5 导航补进度看板、单元文件夹与角色交接、组级多角色规约三行;§6 新增「先确定你的角色」(任何预设都适用:由 persona 给定或提问卡片确认)、指向组级唯一真源、声明多角色为可选能力,并补项目内技能 `project-flow` 的位置与"只做触发与指针" | 用户 | | 2026-09-19 | v1.2 | §6 项目内技能路径 `.dsh/skills/` → `.agents/skills/`,并写明选择理由(项目级技能根有两个,`.dsh` 是用户级 harness home 的目录名)。**为何通用**:本条只管"项目内智能体资产用哪个目录名",与项目领域、技术栈无关;`.dsh` 撞名是 DSH 自身的命名事实,任何用该模板的项目都受同一影响。防的事故(频率×损失):项目级 `.dsh/` 与用户级 `~/.dsh` 同名,容易被读成"工具状态目录";为防该误读而设的 `.gitignore` 规则(`.dsh/*` + `!.dsh/skills/`)会把该目录下除技能外的文件**静默**排除出 git(每建一个新项目都在,损失为文件静默不入库)。改用 `.agents/` 后该规则整条删除,项目资产默认入库 | 用户 |