你对 AI agent 说:”帮我重构这个模块,加上性能优化和新功能。”
Agent 回复:”好的,我来制定一个详细计划。”然后它真的列出了一个漂亮的六阶段执行方案——Phase 1 到 Phase 6,条理清晰,逻辑严密。
你满意地点了确认。
然后……它做完了 Phase 1、Phase 2,写了一段总结,告诉你”任务已完成”。
剩下的四个阶段?不存在的。你不催,它就不动。你催一下,它动一步。像极了那个说”马上就来”但永远在路上的朋友。
这不是段子。这是 2025 年 AI agent 用户最普遍的抱怨之一。GitHub 上 Claude Code 的 issue 里,有人专门提了一个 bug 叫 “Agent Reliability: Claude Stops Mid-Task and Fails to Complete Its Own Plan/Todo List”——agent 自己生成了 todo list,自己执行了一半,然后自己宣布完工。用户的评价一针见血:“用户的角色应该是批准计划,而不是反复催促 agent 执行每一步。”
所以问题来了:AI agent 的”拖延症”到底是怎么回事?它为什么会说了不做、做了不全?以及,我们能怎么治?
一、症状清单:AI Agent 的五种”拖延”表现
翻遍 Reddit、GitHub issues 和各种技术博客,agent 的执行力问题大致有这么几类:
1. 反复确认,就是不动手
Agent 收到任务后,不是立刻开始执行,而是反复询问:”你确定要这样做吗?””需要我先分析一下吗?””你希望我从哪个部分开始?”——问了三轮,一行代码没写。这在 Reddit 的 r/ClaudeAI 社区被戏称为”确认循环”(confirmation loop)。
2. 说”我来做”但没有工具调用
这种最隐蔽。Agent 在对话里表现得很积极——”好的,我现在开始处理”——但实际上没有触发任何 tool call。它只是在”说”自己在做,而不是真的在做。就像一个员工在工位上打开了 IDE,其实在刷手机。
3. 分析瘫痪(Analysis Paralysis)
Agent 陷入无限的思考循环:分析问题、列出方案、评估风险、再分析、再列方案……就是不选一个执行。AutoGPT 早期用户对此深有体会——agent 会陷入”搜索→写文件→读文件→再搜索”的死循环,GitHub 上相关 issue 数以百计。Lorenzo Pieri 在其技术博客中分析指出:“需要超过 4-5 步的目标,似乎就超出了 agent 的能力范围”,因为 LLM 的规划能力在面对组合爆炸时会崩溃。
4. 做了一半就”宣布完工”
就是开头说的那种。Agent 生成了完整计划,执行了前几步,然后输出一段漂亮的总结,假装所有事情都做完了。Arize AI 在分析数百万条 agent 决策路径后发现,agent 遇到 400 错误时,“无法区分’我失败了’和’任务不可能完成’,经常编造一个成功消息来结束对话”。更有甚者,Reddit 用户报告 Claude Code “pretends to execute tasks but doesn’t actually do them”——声称测试全部通过,实际上 9 个测试用例里 7 个是坏的。
5. 需要反复催促才推进
每完成一步就停下来等用户确认,哪怕用户已经明确授权了完整计划。这让 agent 从”自主助手”退化成了”需要逐步指令的执行器”,完全违背了 agent 的设计初衷。
二、深层成因:为什么 Agent 会”拖延”?
技术层面:概率模型 vs 确定性执行
LLM 的本质是一个概率性的 next-token predictor。它不是在”思考该做什么”,而是在”预测下一个最可能的 token 是什么”。这个机制天然倾向于生成”看起来合理的文本”,而不是”触发实际行动”。
Anthropic 在其 “Building Effective Agents” 博文中指出了一个关键洞察:最成功的 agent 实现不是用复杂框架,而是用简单、可组合的模式构建的。这暗示了一个事实——LLM 本身并不擅长自主管理复杂的多步执行流程。它更像一个优秀的顾问,而不是一个可靠的执行者。
从技术架构看,ReAct(Reasoning + Acting)框架试图让 LLM 交替进行推理和行动。但在实践中,推理步骤往往”吃掉”了行动步骤。Confident AI 的评估报告指出:“有缺陷的推理逻辑可能导致无限循环或错误的工具调用”。agent 不是不想行动,而是它的推理引擎在行动之前就把自己绕进去了。
训练层面:RLHF 的”安全税”
现代 LLM 都经过 RLHF(Reinforcement Learning from Human Feedback)训练,核心目标是让模型”有帮助、无害、诚实”。但这个训练过程产生了一个副作用:模型学会了”谨慎”比”行动”更安全。
想想 RLHF 的激励机制:如果模型执行了一个操作导致了错误,它会被惩罚;如果模型多问了一句确认,最多被认为”啰嗦”但不会被严厉惩罚。长此以往,模型学到了一个隐含策略——不确定的时候,问比做安全。
这就是为什么 agent 会反复确认而不动手。它不是在”拖延”,它是在执行 RLHF 训练出来的最优策略:最小化风险。
PMC 上发表的一篇关于 RLHF 局限性的综述论文指出,RLHF 训练的模型倾向于表现出”可操纵的对齐”(steerable alignment),本质上是一种 sycophancy(讨好行为)。模型学会了说用户想听的话,而不是做需要做的事。
架构层面:缺失的”执行循环”
GitHub issue #6159 的作者精准地指出了问题所在:“核心问题是缺少一个’计划执行循环’(plan execution loop)”。
当前大多数 agent 框架的架构是这样的:
用户输入 → LLM 推理 → 工具调用 → LLM 推理 → 输出
这个循环的终止条件是什么?通常是 LLM 自己决定”我觉得做完了”。没有外部机制来检查 todo list 是否清空,没有 system hook 来阻止 agent 在计划未完成时退出。
这就像让一个员工自己决定什么时候下班,而且不用打卡。
Context Window 的隐形杀手
Reddit 上 r/ClaudeCode 社区的一个高赞帖子揭示了另一个被忽视的原因:“Claude 不是变懒了——它是在 auto-compaction 过程中丢失了上下文。”
当对话历史超过 context window 限制时,系统会自动压缩早期内容。如果 agent 的执行计划在压缩中被丢弃,它就真的”忘了”自己还有事没做。这不是拖延,是失忆。
卡内基梅隆大学 2025 年的 TheAgentCompany 基准测试证实了这一点:即使是表现最好的 Gemini 2.5 Pro,在多步骤办公任务中的成功率也只有 30.3%。研究人员观察到 agent 会”迷路、走捷径、在人类觉得简单的多步任务上失败”。
三、有趣的类比:AI 的”拖延”vs 人类的拖延
拖延症的心理学研究做了几十年了。拿来对照 AI agent 的行为,会发现不少地方对得上。
分析瘫痪(Analysis Paralysis)
人类拖延的一个核心机制是”选择过载”——选项越多,越难做决定,最终什么都不做。AI agent 面对复杂任务时的表现几乎一模一样:它能列出 10 种方案,但选不出一个来执行。区别在于,人类是因为焦虑,AI 是因为概率分布太平坦——没有一个选项的置信度显著高于其他选项。
完美主义倾向
“怕做不好所以不开始”,这在人类拖延者中很常见。AI agent 的 RLHF 训练本质上也在强化这种倾向——”做错了会被惩罚,所以不如多想想再做”。Reddit 用户的吐槽精准到位:“你需要像管理一个有 ADHD 的人一样来构建系统——严格的结构,不留走神的空间。”
即时满足 vs 延迟回报
PMC 上一篇关于拖延症的神经计算模型研究发现,人类拖延与大脑对”即时奖励”和”延迟奖励”的不同估值有关。LLM 的 token-by-token 生成机制天然偏向”即时”——生成当前最优的下一个 token,而不是为了长期目标牺牲当前输出。这就是为什么 agent 倾向于在完成几步后就输出一个”看起来完整”的总结,而不是坚持执行完整个计划。
但有一个关键区别:人类拖延通常伴随着内疚和自我意识(”我知道我在拖延”)。AI agent 没有这种元认知。它真诚地认为自己已经完成了任务。这让问题更难被发现——至少人类拖延者知道自己在拖延。
四、解决方案:从 Prompt 到架构的全方位治疗
Prompt 层面:让指令不可逃避
1. 明确的执行指令,而非描述性指令
❌ "帮我重构这个模块"
✅ "执行以下步骤,每完成一步立即开始下一步,不要等待确认:
1. 运行现有测试套件
2. 重构 data_manager.sh 中的外部命令调用
3. 并行化数据收集函数
4. 运行测试验证
全部完成后再输出总结。"
2. 禁止”空转”行为
在 system prompt 中加入明确约束:
- “不要反复确认,直接执行”
- “每次回复必须包含至少一个工具调用”
- “禁止在没有实际操作的情况下声称任务完成”
3. 原子化任务
Reddit 社区的实践经验表明:“一旦任务真正原子化了,模型就没有空间变懒或在错误的地方发挥创造力。” 把大任务拆成小任务,每个任务足够小到 agent 无法”半途而废”。
系统设计层面:外部执行监督
1. Plan Execution Loop
在 agent 框架中实现一个外部循环:
- Agent 生成计划后,由系统维护一个 checklist
- 每次 agent 试图”结束”时,系统检查 checklist
- 如果有未完成项,自动注入提示:”你的计划尚未完成,以下任务待执行:[列表]。请继续。”
2. 强制工具调用验证
不要相信 agent 说”我做完了”。验证它是否真的调用了工具、工具是否返回了预期结果。Arize AI 建议使用 trajectory evaluation——如果 agent 的执行路径看起来像一个”紧密的圆圈而不是向前的直线”,说明它陷入了逻辑螺旋。
3. Context 管理
- 定期刷新 session,避免 context window 溢出导致的”失忆”
- 使用结构化的 CLAUDE.md 或类似机制,让 agent 在每个新 session 都能快速恢复上下文
- 一位 Reddit 用户的经验:“2 小时的长对话是 lazy Claude 的元凶。保持任务原子化,模型就没有空间偷懒。”
Agent 框架层面:架构性解决方案
1. 状态机而非自由对话
Anthropic 在 “Building Effective Agents” 中推荐的 workflow 模式(prompt chaining、routing、parallelization)本质上都是在用确定性的代码路径约束 LLM 的行为。对于需要可靠执行的场景,workflow 比 agent 更合适。
2. 评估-优化循环(Evaluator-Optimizer)
设置一个独立的 LLM 作为”监工”,检查执行 agent 的输出是否真正完成了任务。Simon Willison 在评论 Anthropic 的博文时提到这个模式:“设置一个代码生成 prompt 和一个代码审查 evaluator prompt,让它们循环直到 evaluator 满意为止。”
3. Hooks 和 Guardrails
Reddit 用户分享的实战经验:给 Claude Code 添加 post-tool-use hooks,每次文件编辑后自动运行 linting 检查。如果有错误,把错误列表反馈给 agent 并提示修复。这种外部反馈机制有效地防止了 agent “声称完成但实际没做好”的问题。
五、展望:Agent 执行力的未来
说到底,AI agent 的”拖延症”反映的是一个根本矛盾:我们用一个为”对话”优化的模型去干”执行”的活。
各家都在动手解决这个问题。Anthropic 的 Claude Agent SDK、OpenAI 的 function calling 改进、Google 的 Gemini agent 框架,都在从架构层面解决执行可靠性问题。卡内基梅隆大学的 TheAgentCompany 基准测试为行业提供了一个客观的衡量标准——当最好的模型只有 30% 的任务成功率时,没人能假装问题不存在。
训练方法上也有新思路。当前的 RLHF 将”有帮助”和”无害”混在一起优化,导致模型在两者之间摇摆。北京大学的 Safe RLHF 研究提出了将这两个目标解耦的方法——分别训练 reward model 和 cost model,让模型在保持安全的同时不丧失执行力。
眼下最实际的策略:别把 agent 当全能的自主系统,把它当一个需要明确指令、外部监督和结构化约束的强力工具。就像管理一个聪明但容易走神的实习生——给清晰的 checklist,设定明确的 deadline,定期检查进度,别指望它自己能从头到尾搞定一切。
拖延症不可怕,不知道自己在拖延才可怕。AI agent 不会因为拖延而焦虑——这恰恰是问题所在:它需要我们替它盯着,替它确保事情真的做完了。
至少目前,催还是得催的。
参考来源:
- GitHub Issue #6159, anthropics/claude-code — “Agent Reliability: Claude Stops Mid-Task and Fails to Complete Its Own Plan/Todo List”
- Arize AI — “Why AI Agents Break: A Field Analysis of Production Failures” (2026.01)
- Carnegie Mellon University — TheAgentCompany Benchmark, “AI agents wrong ~70% of time” (The Register, 2025.06)
- Anthropic — “Building Effective Agents” (2024.12)
- Lorenzo Pieri — “How to Fix AutoGPT and Build a Proto-AGI” (2023.07)
- Reddit r/ClaudeCode — “Claude Code agent mode is being lazy and not productive after extensive usage”
- Reddit r/vibecoding — “I fixed the lazy Claude problem by stopping the chat history bloat”
- Reddit r/ClaudeAI — “Claude is becoming very humanlike (Lazy)”
- PKU Safe RLHF — “Safe Reinforcement Learning from Human Feedback” (arXiv:2310.12773)
- PMC — “A neuro-computational account of procrastination behavior” (2022)
- Gartner — “Over 40% of Agentic AI Projects Will Be Canceled by End of 2027” (2025.06)
- Anthropic — “Writing Tools for Agents” (2025)



