Claude Code 一直转圈卡住?它到底在干什么,烧不烧 Token
Claude Code 一直转圈不出结果,最让人焦虑的是「它是不是在偷偷烧我的 Token」。这篇说清楚转圈时它到底在干什么、哪些情况真的在烧 token、哪些是纯等待,以及卡住时该怎么处理——附上判断它是真卡还是在跑长任务的几个方法。
Claude Code 一直转圈、半天不出结果,最让人慌的不是慢,是「它是不是在偷偷烧我的 token」。答案分两种:如果是模型在生成或在调工具,确实在烧;如果是卡在网络等待或界面假死,那就没烧。 关键是分清楚它转圈时到底在干什么。这篇教你判断,再说卡住了该怎么办。
转圈时它可能在干这几件事
「转圈」是个笼统的状态,背后可能是完全不同的几种情况:
1. 模型正在生成(在烧 token)
最常见。它在思考、在写代码、在生成长回复。token 实打实在涨,尤其是开了 reasoning 的模型,推理过程本身就是 output token。这种转圈是正常的,等就行。
2. 在跑工具调用 / Agent 循环(在烧 token)
它读文件、跑命令、再把结果喂回模型——一轮工具调用就是一次完整的 input + output。Agent 模式下可能连续转好几分钟,背后是几十次调用在累加。这也是真烧 token。
3. 等网络 / 等 API 响应(基本不烧)
请求发出去了但服务端慢、或者你网络抖动。这时候转圈是在等,没有新 token 产生。
4. 界面假死(不烧)
进程卡了、终端渲染卡了,模型其实啥也没干。重启就好。
所以「转圈 = 烧钱」这个直觉只对了一半。真正烧 token 的是前两种,后两种你干等也不花钱。
怎么判断它是真卡还是在跑长任务
别凭感觉,看几个信号:
- 有没有新输出蹦出来:哪怕几十秒蹦一行,说明在正常生成 / 调工具,别急着打断
- 是不是 Agent 模式跑大任务:让它自己规划 + 执行的任务,转几分钟很正常,单次任务可能上千万 token
- CPU / 网络有没有动静:完全没动静、超过一两分钟没任何输出,多半是真卡了
- 看 token 数有没有在涨:这是最直接的——token 在涨就是在干活,纹丝不动就是卡了。装了 Vibe Usage 的话,会话的 token 曲线实时可见,不用猜
我看真实数据,Claude Code 用户单 session 累计 token 中位数约 100 万,但 p95 高达 1500 万。那些超长 session 转圈久是正常的,它真的在处理巨大的上下文。
卡住了怎么办
确认是真卡(长时间无输出、token 不涨)之后:
- 先按 Esc 中断,别直接关——中断比杀进程干净
- 长会话先 /compact:会话历史太长本身会让每次响应变慢、变贵。一天用几小时的话,每 1-2 小时 compact 一次
- 缩小单次任务的上下文:别让 Agent 自己 grep 全仓库,直接 @ 你知道相关的文件
- 真没反应就重启:界面假死重启 Claude Code,已经产生的 token 不会丢
顺带说一句省钱的点:长会话不光容易卡,还贵。上下文越堆越大,每条新消息的 input 都在涨。系统性 compact 之后,我自己的单 session 消耗直接砍半。
想知道转圈到底烧了多少
光靠肉眼看转圈判断不了它烧了多少 token。最直接的办法是看数据——卡住前后的 token 曲线一对比,是真在干活还是白等,一眼就清楚。
打开 Vibe Usage 看 Claude Code 每次会话的真实 token 消耗,它免费、本地、自动同步,能按会话、按时段显示 token 涨势。下次再遇到一直转圈,你不用猜它是不是在偷烧——看一眼曲线就知道。