驯服 Opus 4.5 的效率:使用 TodoWrite 让 Claude 代码保持正轨
Source: Dev.to

实际会发生什么
根据 Anthropic 的文档,Opus 4.5 旨在 “跳过摘要以提升效率并保持工作流动性。” 听起来很理想。
但在实际使用中,你要求一个 5 步的流程,它却直接给出最终结果——跳过了第 2、3、4 步。高效?是的。但这不是我想要的。
我在做一次测试评审任务时遇到了这个问题。我希望 Claude 能够:
- 列出规范中的所有测试项
- 根据标准评估每一项
- 筛选出关键项
- 生成最终的测试计划
结果它直接跳到第 4 步:“这是你的优化测试计划!” 我需要第 2、3 步来了解 为什么 这些测试被选中。
解决方案:使用 TodoWrite 明确步骤
Claude Code 内置了一个叫 TodoWrite 的 TODO 管理功能。当你显式注册任务时,Opus 4.5 会把它们当作必须完成的检查点。
在任务开始时,告诉 Claude Code 注册这些步骤:
Before starting, register these steps using TodoWrite:
1. List all test items from the spec
2. Evaluate each against the criteria
3. Filter to essential items with reasoning
4. Generate the final test plan
或者直接在提示中加入以下指令:
Use TodoWrite to track each step. Do not skip any steps.
一旦这些步骤被注册为 TODO,Opus 就会把它们视为真实的检查点——而不是可以跳过的可选步骤。
我硬着头皮学到的一个小限制
如果注册的步骤太多(7 步以上),Opus 4.5 可能会出于“效率”把它们合并,反而失去效果。
不要这样写:
1. Read file A
2. Read file B
3. Read file C
4. Analyze A
5. Analyze B
6. Analyze C
7. Compare results
8. Generate report
改成这样:
1. Read and analyze all relevant files
2. Compare the implementations
3. Generate the report with findings
使用有意义的、高层次的步骤,而不是微观任务。
这帮我解决了哪些问题
- 多步骤重构时需要查看中间状态
- 调试会话中想要每个阶段的推理过程
- 任何 Opus 4.5 “好心”直接跳到结尾的任务
Opus 4.5 的效率是一个特性,而不是 bug——但有时你需要的是过程,而不仅仅是结果。TodoWrite 为你把控制权找了回来。