用途
Grill With Docs 用于以“拷问会话”(grilling session)的形式审视一个计划,并在此过程中应用领域建模(domain-modeling)纪律。它适合在规划阶段使用,帮助团队挑战模糊表述、澄清领域术语,并把稳定的决策沉淀到文档中。
主要能力
- 一次只提出一个关键问题,并为每个问题附带推荐答案。
- 当用户拒绝推荐答案时,立即进行修正。
- 对照现有代码和文档交叉验证主张,挑战模糊语言。
- 在术语明确时即时更新 CONTEXT.md。
- 仅在决策难以逆转、脱离上下文会令人意外、且是真实权衡结果时,才谨慎地提议 ADR。
- 如果会话明确要创建 Dex 待办清单,则在规划决策稳定后更新 Dex 任务。
使用方式
流程如下:
- 提问前先阅读现有领域文档:CONTEXT.md、CONTEXT-MAP.md、docs/adr/,以及附近可能存在的上下文特定文档。
- 一次问一个问题,并附上推荐答案。
- 如果某个问题可以通过探索文件、文档或代码来回答,就去探索,而不是提问。
- 当领域语言确定后,立即更新 CONTEXT.md。
- 谨慎地提议 ADR,仅在决策难以逆转、脱离上下文会令人意外、且是真实权衡结果时。
- 如果会话明确在创建 Dex 待办清单,则在规划决策稳定后更新 Dex 任务。
Dex 待办清单输出
对于由 Dex 支持的规划会话,参见 Dex planning session pattern。仅当用户要求待办清单、任务列表、执行计划,或明确提到 Dex 时才使用 Dex。
当拷问会话旨在产出 Dex epic/任务列表时:
- 加载 dex 技能,并在创建任何内容之前确认 Dex 将把任务存储在哪里。
- 如果 dex dir 指向项目会话的全局存储,则先将项目设为 git 仓库,或以其他方式配置仓库本地存储,然后再创建待办清单。
- 一旦范围边界稳定,就创建顶层 epic。
- 决策稳定后,立即添加或修补子任务。
- 领域语言保留在 CONTEXT.md;执行细节、验收标准、依赖关系和实现顺序保留在 Dex。
- 不要等到最后才批量处理待办清单。待办清单是对话产物的一部分。
- 每次写入后继续一次只问一个问题。
领域感知
大多数仓库只有一个上下文:
/
|-- CONTEXT.md
|-- docs/
| `-- adr/
| |-- 0001-event-sourced-orders.md
| `-- 0002-postgres-for-write-model.md
`-- src/
如果根目录存在 CONTEXT-MAP.md,则仓库有多个上下文。该映射指向每个上下文所在位置:
/
|-- CONTEXT-MAP.md
|-- docs/
| `-- adr/ # system-wide decisions
`-- src/
|-- ordering/
| |-- CONTEXT.md
| `-- docs/adr/ # context-specific decisions
`-- billing/
|-- CONTEXT.md
`-- docs/adr/
惰性创建文件,仅在有内容可写时才创建。如果不存在 CONTEXT.md,则在第一个术语确定时创建。如果不存在 docs/adr/,则在需要第一个 ADR 时创建。
文档规则
- 更新领域语言时,使用 CONTEXT-FORMAT.md 中的格式。
- CONTEXT.md 应完全不包含实现细节。不要将 CONTEXT.md 视为规范、草稿本或实现决策的存放处。它只是术语表,仅此而已。
- 当用户纠正某个术语的框架时,立即修补术语表,并将纠正传播到已创建的任何规划产物中。例如:如果你把占位符替换称为“migration”,而用户说旧内容只是占位脚手架,则用类似 Initial Content Build 的领域术语替换,并更新使用了旧术语的 Dex/任务描述。实时决策优先于过时的回忆上下文或更早的任务措辞。
将占位代码视为占位代码
如果用户说脚手架或种子演示数据是占位符,不要过度将其拔高为“migration”。立即更新领域语言:优先使用 Initial Content Build、First Real Authoring Pass 或 Replace Placeholder Content 等术语,而不是 migration/compatibility 语言。在围绕现有代码创建迁移仪式、适配器或一致性门禁之前,先询问现有代码是否为规范。
适用场景
- 需要在规划阶段挑战一个计划,并对照现有领域模型进行验证。
- 需要澄清和统一领域术语,并即时更新 CONTEXT.md。
- 需要判断某个决策是否值得记录为 ADR。
- 需要产出 Dex epic/任务列表,并希望待办清单随对话实时演进。
限制
- 资料未提供具体的安装命令、收费方式、价格、平台支持或效果数据。
- 仅当用户要求待办清单、任务列表、执行计划,或明确提到 Dex 时才使用 Dex。
- ADR 应谨慎提议,仅在决策难以逆转、脱离上下文会令人意外、且是真实权衡结果时。
- CONTEXT.md 仅作为术语表,不应包含实现细节。