用 Claude Code 写代码的人常遇到两种卡壳:一是任务跑到一半被限流打断,二是月底才发现用量涨得莫名其妙却说不清钱花在哪。这篇不讲缓存机制也不讲选站,只解决一件事——Max 档的额度按什么口径计量、一轮任务把额度吃在哪、怎么建一套每周能核对的用量流程,让长任务不被中途掐断。
用 Claude Code 写代码的人常遇到两种卡壳:一是任务跑到一半被限流打断,二是月底才发现用量涨得莫名其妙却说不清钱花在哪。这篇不讲缓存机制也不讲选站,只解决一件事——Max 档的额度按什么口径计量、一轮任务把额度吃在哪、怎么建一套每周能核对的用量流程,让长任务不被中途掐断。
先说清一件事:额度数字是浮动的,官方会调窗口和阈值,任何写死的数字过一阵就失效。所以下面的做法都指向同一个原则——把口径和曲线摸清,数字自己去站内页面核对当时的记录,别凭记忆下判断。
先搞清 Max 档额度是按什么口径给的
额度不是「多少次对话」,而是按上下文长度和时间窗滚动的用量池。同一个问题问十遍和问一遍的成本差得很远,因为每一轮都会把历史上下文重新带进去。所以判断自己用量是否合理,第一件事是看单次会话平均上下文有多大,而不是数今天开了几次会话。两档订阅的口径差异去 /coding-plans/anthropic-claude-product-subscription-max-5x 和 /coding-plans/anthropic-claude-product-subscription-max-20x 核对。
| 你的使用特征 | 更可能被哪种限制卡住 | 先看什么 |
|---|---|---|
| 单次会话上下文很大、一天只开一两个 | 单窗瞬时限流 | 单轮上下文增长曲线 |
| 单次不大但一天开很多会话、多项目并行 | 整周总量 | 当天累计用量 |
| 多项目同时跑长任务 | 两者叠加 | 任务是否可错峰 |
| 频繁让模型读全量目录 | 单轮峰值 | 读取范围能不能先圈定 |
- 第一项看单次会话平均上下文大小,这决定你会不会被单窗限流顶到墙上
- 第二项看一天开几个会话、有没有多项目并行,这决定整周总量撑不撑得住
- 第三项看有没有大范围读取或批量操作,这类动作最容易制造单轮峰值
- 三项都偏高,说明不是写法问题,是档位和用法一起出了问题,得分开处理
一轮编码任务把额度吃在哪几个地方
典型消耗顺序是这样的:读仓库结构和相关文件 → 反复试错改代码 → 跑测试看报错 → 再读一遍改动上下文。多数人以为写代码那几步最贵,实际最大一头往往是重读和重试,因为每次重试都要把之前读过的内容重新送一遍。
- 第一步:圈定范围再动手先让模型只读两三个相关文件,而不是先读全量目录。验证方法:对比同一任务两种做法的单轮上下文,看前置读取那一截差多少。
- 第二步:盯单轮上下文增长曲线在客户端观察每一轮的上下文增长,比事后看总量有用得多。多数失控是某一轮读了超大文件或整段日志,不是整体偏高。
- 第三步:把大文件和大日志挡在外面读取前先截取关键片段,或让模型先判断哪个文件真的相关。验证方法:看下一轮是不是还在反复引用同一段长内容。
- 第四步:换算一轮的规模不确定哪一步最费,用 /tools/token-price-calculator 把那一轮的上下文规模换算一下,能直观看出是哪类操作在拖后腿。
还有一种常见浪费是让模型重复确认。同一份改动,让它复述一遍设计再动手,看着稳妥,实际是把已经付过成本的上下文再付一次。真正需要的是清晰的验收条件,不是反复复述。
额度不是被写代码吃掉的,多半是被反复重读和重试吃掉的。
每周一次的额度核对流程
不要等月底一次性复盘,那时候你连哪一轮失控都想不起来了。固定每周花十分钟做一次,比月底翻账单准得多,也更容易发现是习惯问题还是档位问题。
- 导出并分组导出本周会话记录,按项目分组。验证方法:能一眼看出哪个项目占了大部分用量,而不是一团模糊的总量。
- 标出异常轮次找上下文最大的几轮,判断是必要读取还是冗余重读。验证方法:给每轮贴一个标签,能区分「必须读」和「重复读」。
- 设两道闸一是单轮任务上下文超过自己定的上限就停下来拆任务;二是当天累计用量到某个比例就换成小任务或推迟非紧急重构。
- 写好降级顺序提前写下额度快见底时的取舍:先砍探索性重构和批量格式化,保住赶工期的核心改动。别等被打断才临时决定先做哪个。
- 判断档位是否匹配连续两周都撞上限,多半不是写法问题。去 /coding-plans 对比各档额度,再决定升档还是拆成按量调用补位。
| 核对项 | 正常表现 | 需要处理的信号 |
|---|---|---|
| 单轮上下文峰值 | 集中在少数几轮 | 几乎每轮都很大 |
| 重读比例 | 低,读完就动手 | 同一文件反复出现 |
| 当天累计曲线 | 平缓上升 | 某一小时突然拉高 |
| 撞限频率 | 偶发一两次 | 每周固定撞 |
这套流程有个前提:你得愿意花十分钟做记录。如果你只是偶尔写点小脚本,不需要这么麻烦;但如果每天有几个小时都挂在 Claude Code 上跑长任务,不记录就等于把额度交给运气。什么情况下不适用——项目本身高度探索性、每次读什么事先完全无法预判,那就别强求压缩读取,改从档位和任务拆分上想办法。
下一步把两档订阅的口径和额度追踪记录放在一起看,再对照自己这一周的用量曲线,判断到底是该改写法还是该换档位。→常见问题
Max 档额度是每天重置还是按月算?
两者都有:单时间窗的瞬时限制会较快恢复,整体用量池按更长的周期滚动。具体窗口长度和恢复节奏官方会调整,别按印象记,去站内编程套餐页和额度重置追踪看当期规则;被限流时先判断是瞬时还是总量,两者的应对完全不同。
额度用完了能不能临时切到按量 API 继续写?
可以,这是常见的补位做法:把订阅当主力跑日常开发,遇到必须当天完成的大改动时切官方 API 按量走。注意切换后成本口径变了,同一任务在两种方式下的花费不可直接比较,建议到 /official-api/providers/anthropic 核对当期规格后再决定哪些活值得切出去。
多开几个会话会不会更省额度?
不一定。拆会话能降低单轮上下文,但如果每个新会话都要重新读一遍仓库结构,总读取量反而上升。判断标准是:拆开之后重复读取的部分有没有超过省下的上下文;对同一份代码反复改的场景,保持会话连续通常更省。