# 长对话、压缩与任务交接

选择继续、分支或压缩，保存可核对的交接文件，并恢复遗漏的任务约束。

## 历史还在，为什么仍会遗漏

会话历史保存了讨论过程，模型每轮使用的上下文则受容量和运行引擎处理方式限制。历史页面中能找到一条旧消息，不代表它的全部内容仍参与当前判断。读取长文件和工具结果也会增加本轮需要处理的信息。

当 Agent 忽略早先约束时，先确认它实际使用的材料，不要立即断定文件丢失。把需要坚持的要求和来源重新说明，再检查产物。任务阶段已改变时，也要写明哪些旧计划不再适用。

## 继续、压缩还是另开会话

| 当前情况 | 处理方式 | 需要保留的内容 |
| --- | --- | --- |
| 同一文件还需小幅修订 | 继续原会话 | 本次修改范围 |
| 同一任务积累了大量过程 | 整理交接文件后压缩 | 目标、有效约束和已验证状态 |
| 准备比较另一种思路 | 从已完成回复分支 | 分支要使用的材料与独立输出名 |
| 开始无关主题 | 新建会话 | 新任务需要的材料 |
| 多次修正仍沿用过时结论 | 核对原文件，再交接到新会话 | 正确事实和已排除的错误依据 |

分支提供另一条讨论路径，不会自动隔离同名工作文件。两个分支分别输出时，应指定不同文件名；需要合并时再安排顺序。

## 先保存一份可接手的状态

以下以方案比较为教学练习。假设事实表已完成，复核仍有两项缺口，要求 Agent 整理交接文件。

```text
请把这次方案比较的当前状态保存为 handoff.md。
记录目标、有效材料及版本、已完成的文件、实际验证结果、未解决问题和下一步。
已执行和计划执行分开写，保留原文件，不重新推测缺失数据。
```

交接文件至少应让接手者回答下面这些问题。

| 项目 | 本例需要记录什么 |
| --- | --- |
| 目标 | 按相同口径比较两份方案，先不作采购决定 |
| 有效输入 | 两份方案的真实路径和版本 |
| 已有产物 | comparison.md，注明当前保存位置 |
| 验证结果 | 已核对哪些金额、范围与引用 |
| 未解决问题 | 哪项报价口径或依赖还缺少来源 |
| 下一步 | 核对缺口，再修改对应表格行 |

打开文件核对。若其中把“计划检查报价”写成“报价已核实”，应先修正再交接。不要只凭一份格式整齐的摘要判断任务状态。

## 在原会话中压缩

在输入框输入 `/compact`，使用当前可用的压缩命令。压缩为后续交流腾出空间，原材料和交付仍应保留在文件中。

压缩完成后，可以发出下面的继续要求。

```text
先读取 handoff.md，再确认其中列出的材料和 comparison.md 存在。
说明还有哪些问题未解决，然后只继续处理这些问题。
没有来源的信息仍标为待确认。
```

检查它是否沿用正确文件与版本。若摘要遗漏了关键范围，引用原始材料补回；不要让 Agent 根据摘要反向重建不存在的来源。

## 交给新会话或另一个成员

先确认接手者能访问交接文件和原始材料。同一文件名可能存在于不同工作区，交接应使用可访问的真实路径，不能只写“读刚才那个文件”。

```text
请接手 handoff.md 中记录的方案比较。
先读取交接文件和列出的原始方案，核对已有 comparison.md。
保留已验证的内容，只修正未解决项。遇到路径不可访问时先说明缺少哪份材料。
```

接手后第一步是核对状态，而非立即重做全部工作。旧文件已存在时，新任务可能覆盖它，开始修订前说明哪些结果需要保留。

## 材料过多时缩小读取范围

提供文件清单，注明哪些是正式版本、哪些仅供背景参考。日志可截取与问题对应的时间段，表格可指定相关工作表和字段。保持原文件可查，摘要里保留来源位置。

如果新一轮又读入同样的大段无关输出，压缩后仍可能很快积累大量上下文。此时应改变材料组织和读取范围，避免反复压缩却没有推进任务。

## 用结果检查交接是否成功

| 现象 | 先检查什么 | 修正方式 |
| --- | --- | --- |
| 又开始处理已完成事项 | 交接是否区分完成与计划 | 补上文件和实际验证结果 |
| 引用了旧方案 | 是否写明有效版本 | 指定新文件，标明旧版不再使用 |
| 缺失关键约束 | 交接是否保留任务范围 | 重新给出约束及依据 |
| 找不到产物 | Agent、执行机器和路径 | 提供可访问的位置或上传材料 |

跨会话稳定使用的格式与术语可以写入[长期记忆](/docs/memory)。本轮的临时进度留在交接文件，避免以后把旧状态当成当前事实。
