Cursor Agent Auto 模式无限循环读同一段文件怎么办
Cursor Agent 在 Auto 模式下可能反复调用同一个文件读取操作上百次,耗尽用量不停下来。把模型从 Auto 切到具体型号可以避免,Cursor 团队已确认在修。

Cursor Agent 在 Auto 模式下会偶发进入无限循环,反复对同一个文件的同一段范围执行读取操作,循环上百次直到你手动中断。在这个过程中用量正常计费,不会自动停止。2026 年 9 月 8 日论坛用户 Yamazaki Yasuhiro 报告了这个问题。
Bug 的表现
Yamazaki 描述的场景是:在 Agent 模式下使用 Auto 模型(当时路由到 Claude 3.7 Sonnet),Agent 在处理一个任务时进入了完全无用的工具调用循环。它反复调用同一个文件读取操作(相同的文件名、相同的行范围),每次调用之间没有任何有意义的输出或状态变化。
循环在上下文压缩(compaction)之后触发。当会话上下文过长被压缩后,模型似乎丢失了之前的进度信息,开始重复它在压缩前做过的操作。由于 Cursor 客户端没有检测重复工具调用的断路器(circuit breaker),循环可以无限继续。
用户需要手动发现并中断这个循环,但在这期间的所有工具调用都正常计费。
触发条件
基于论坛报告和 Cursor 工程师的回复,这个 Bug 的触发条件是:
- 使用 Auto 模式(模型由 Cursor 自动选择和路由)
- 会话足够长,触发了上下文压缩
- 压缩后模型的行为发生了退化
不是每次使用 Auto 模式都会触发,但一旦触发就没有自动停止机制。Cursor 工程师 Mohit 确认这不是用户配置问题:"压缩后 Agent 持续重复同一个文件读取操作且没有任何阻止机制,这不是预期行为。"
怎么避免
Cursor 工程师给出的建议是:在模型选择器里选一个具体模型(比如 Claude Fable 5.1),不要用 Auto。Auto 模式下 Cursor 会根据任务特征选择模型,但模型切换可能增加压缩后行为退化的概率。
如果你已经在 Auto 模式下遇到了循环:
- 立即在聊天面板里点击停止按钮中断 Agent
- 检查你的用量(Settings → Usage),确认这次循环消耗了多少额度
- 如果消耗异常,联系 Cursor 支持要求退款(Mohit 在帖子里暗示了这个可能性:"如果你对用量有疑问……")
- 切到具体模型后重试任务
用户提出的改进建议
Yamazaki 在报告里提了三个建议,都指向同一个缺失:客户端侧的安全机制。
相同工具调用阈值:如果完全相同的工具调用(同名、同参数)连续重复超过 3 次,自动中断并提醒用户。
每轮工具调用上限:在单次用户轮次内设置可配置的最大工具调用次数,超出需要用户确认。
压缩后的失效检测:上下文压缩后如果模型开始重复之前的动作,强制切换到请求用户指导的模式。
这些机制在当前版本(3.19.13)中都不存在。考虑到 Agent 越来越多地被用于长时间无人值守的任务,缺少断路器是一个实际的经济风险。