这篇短文说明了 Claude Code 为什么把 Todo 机制升级为 Task 机制,以及这次升级如何服务更长周期、多会话的真实工程协作。变更动因作者指出模型能力提升后,旧有 Todo 提醒机制在小任务中已不再必要。继续依赖 Todo 反而可能约束模型自主规划能力,形成“能力已升级但工具未松绑”的矛盾。升级目标不是增…
转载说明:本文译自 We’re turning Todos into Tasks in Claude Code,作者为 Thariq。原文发布时间:2026-01-22。Claude Code 把 Todos 升级为 Tasks 封面图 今天,我们在 Claude Code 中把 Todos 升级为 Tasks。Tasks 是一种新的基础原语,帮助 Claude Code 跟踪并完成更复杂的项目,也能在多个会话或多个子代理之间协作推进。 随着模型能力持续提升,我们最该做的事情之一,就是不断“松绑”Claude,让它真正用上新能力。与早期模型相比,Opus 4.5 能更长时间自主运行,也更能保持状态一致。我们发现,在较小任务里,TodoWrite 工具已经不再必要,因为 Claude 往往本来就知道下一步该做什么。 与此同时,我们也越来越常用 Claude Code 去完成长周期项目,这些项目会跨越多个子代理、多个上下文窗口,甚至多个会话。项目一旦变复杂,任务之间就会出现依赖、阻塞和协同需求,单一会话内的 Todo 模式开始不够用。 因此,我们很明确地意识到:Todos 需要演进,才能支持 Claude 在更长链路的项目上稳定工作。社区里也出现了相同趋势,我们从 Steve Yegge 的 Beads 等项目中获得了启发。 Tasks 是我们为跨项目协同设计的新抽象。Claude 可以创建彼此依赖的任务,并把依赖关系写入元数据,这更接近真实项目的组织方式。此外,Tasks 存储在文件系统里,因此多个子代理或多个会话可以同时协作。某个会话更新任务后,更新会广播给所有正在处理同一任务列表的会话。 你现在就可以让 Claude 创建 tasks,尤其是在拉起子代理时会非常有用。Tasks 默认存放在 ~/.claude/tasks,这也意味着你可以在其上继续构建自己的辅助工具。 如果想让多个会话共享同一个任务列表,可以通过环境变量指定 TaskList,然后这样启动 Claude:CLAUDE_CODE_TASK_LIST_ID=groceries claude 这个方式同样适用于 claude -p 和 AgentSDK。 Tasks 是支持 Claude 构建更复杂项目的关键积木。我们也很期待看到你如何把它用在自己的工作流里。