| name | rewind |
| description | 在长程、多轮和多分支任务中主动检查当前对话与任务状态是否还可信。当新证据推翻早期前提、旧待办仍在驱动工作、对话与文件状态不一致、模型不断沿错误路线补丁,或用户要求回溯、分支、回滚和重新开始时使用。需要恢复时说明错误影响到哪里、应回到什么状态、保留什么,并给出可直接粘贴的新提示词。 |
rewind
把有用的带回去,把混乱留下
可靠事实、真实失败、有效代码、证据和后来学会的策略是资产;错误假设、陈旧待办、失败叙事和已经形成惯性的上下文是负担。
Rewind 不是简单撤销。它让一个更早、更干净的状态获得后来验证的知识,同时不再继承错误路线留下的影响。
主动识别上下文失真
在重大证据出现、方向切换和长阶段结束时,重新判断当前对话、计划和文件状态是否仍能支持可靠行动。旧前提已经影响计划、待办或解释,继续补充说明也无法摆脱旧路线时,主动建议 Rewind。
常见信号:
- 新证据已推翻关键前提,工作仍按旧计划前进;
- 当前分支、文件、部署或数据状态与对话描述不再一致;
- 已完成或失效的待办持续被重新执行;
- 多轮失败让模型围绕同一解释不断补丁,而不再检查原因;
- 原任务的目的地或范围已经改变,却仍试图把新工作塞进旧时间线。
上下文长本身不是理由。方向正确、状态清楚且重新核验表明现有路线仍可信时,继续当前任务。
恢复到能重新作判断的位置
恢复方式取决于错误影响到了哪里,不由"尽量少改"或"全部重来"的偏好预定。先检查哪些 context_revision、scope_revision、对话结论、产物、文件和外部状态仍依赖失效前提。
回到一个能重新作出可靠判断的状态:清除依赖错误前提的结论、计划和待办,保留重新核验后仍然成立的事实、证据和产物。影响确实很小时可以原地修正;已经影响计划或上下文时可以分支、回溯或重开;目标和授权范围都改变时,不把新工作伪装成旧任务的延续。
恢复当前 Active Task 时区分事实和决定来源:checkout、调用链和运行证据可以被新证据纠正;AD-* 随所属设计或实现产物重新核验和修订;有效的 UD-* 只有用户明确替换后才能失效。先用 longrein task work start 建立恢复工作单元,再修订所有受影响的专业产物。事实变化用 task finding 或 task context 增加 context_revision;scope、source/working/target 意图、Task Operating Envelope、兼容承诺和风险接受变化时,取得用户决定后用 task context --decision UD-### 增加 scope_revision,并在摘要中写清 supersedes 关系。Runtime 将返回点、保留与废弃内容及待重新核验产物写入 Task Timeline;Rewind 不直接编辑核心状态文件。
对话状态与外部状态分别判断
后来修改的文件可能有效,而对话已经受到错误前提影响;也可能推理值得保留,但探索性代码应隔离。分别声明:
- 哪些事实、失败、产物和代码继续可信;
- 哪些计划、解释和待办失去权威;
- 当前文件、分支、数据和外部系统实际处于什么状态;
- 哪些恢复动作只是建议,哪些已获授权。
任何删除文件、恢复用户修改、改写 Git 历史或改变外部系统的动作,都需要用户明确授权。Rewind 的判断不自动授予破坏性执行权。
给过去的自己一条短提示词
不要搬运整段聊天。新提示词只保留仍有效的目标与外部状态、后来验证的关键事实、必须丢弃的错误前提、重新检查现实的起点,以及再次停下判断的条件。它不应提前替新任务选定实现动作。
回溯后的第一步应恢复反馈:读取真实状态、重放关键失败、核验基线或取得缺失证据。不要刚回到过去就立即继续实现,否则只是用更短上下文重复同一错误。
证据不足时,让过去的自己先验证;不要把后见之明伪装成当时就该知道的事实。
产物
当前 Session 有 Active Task,且足以改变时间线的建议需要保存时,按 Rewind 产物 demo 写入 <task-workspace>/rewind/rewind.md;该 Demo 是产物结构的唯一来源。落盘后用 longrein task artifact 登记,并以 task work finish 或 task work block 收束工作单元。没有 Active Task 时在对话中交付建议,或只写用户指定的路径。
边界
方向本身需要重塑时重新进入 shape;当前提示词的表达改进交给 prompt;发现值得复用的时间线失败、恢复方法或 Skill 缺陷时,由 evolution 决定应落成任务证据、项目资产还是 Skill 改进。