## 六段式上下文模板

<!-- slot: 目标 -->
一个可复用的上下文模板，只要回答 6 个问题：

- 你现在处理的是什么材料
- 这件事处在什么环节
- 本次目标是什么
- 已知事实是什么
- 输出要求是什么
- 边界与停止条件是什么

<!-- slot: 边界 -->
先讲模板骨架。

<!-- slot: 提示词 -->
```text
你现在处理的是：<需求 / 代码 / 方案 / 缺陷 / review>
这件事目前处在：<澄清 / research / 设计 / 实现 / review / 回归>
本次目标：<这一次必须完成什么>
已知事实：
- <事实 1>
- <事实 2>
输出要求：<希望它交付什么结构>
边界与停止条件：
- 不要做什么
- 遇到什么情况必须停下来确认
```

<!-- slot: 流程 -->
这 6 个问题决定了 Agent 如何理解任务。

![六段式上下文模板：对象、当前阶段、本次目标、已知事实、输出要求、边界与停止条件共同决定 Agent 如何理解任务。](../../media/chapters/fig-18-01-six-part-context-template.svg){#fig-18-six-part-context-template width=96%}

### 你现在处理的是什么材料
Agent 先要知道自己面对的是需求、代码、方案，还是 review。

### 这件事处在什么环节
同一个问题在澄清、设计、实现和 review 阶段，所需行为完全不同。

### 本次目标
一条任务只保留一个主目标。

### 已知事实
事实越清楚，补猜越少。

### 输出要求
你要的是结构化产物，不是泛泛而谈。

### 边界与停止条件
不写边界，Agent 会顺手做更多；不写停止条件，Agent 会在缺信息时继续往前编。

<!-- slot: 配置 -->
大多数模板改的只是第一段、第二段和“输出要求”，不是整套骨架。

<!-- slot: 异常 -->
模板写到第二屏还没讲清你在处理什么、处在什么环节和本次目标，通常就已经偏了。

<!-- slot: 审批 -->

<!-- slot: 外部系统 -->
需要文档、代码托管或搜索时，直接写进“已知事实”或“边界与停止条件”。

<!-- slot: 验收 -->

<!-- slot: 媒体槽位 -->
<!-- media: fig-18-01-six-part-context-template.svg -->
