📅 2026-09-14 · 进阶篇,承接 第 15 课《成本控制——把 token 账单按住》
为什么今天讲这个:从今天(9/14)起,Claude Code 夏季那轮临时 +50% 周配额下线,换成在原始基线上永久 +25%。数学上是 150 → 125,对一直吃促销的现有用户净减约 17%。覆盖 Pro / Max / Team 与按席位计费的旧版 Enterprise;5 小时窗口限流不变。 来源:BleepingComputer、AI Catchup、QCode
第 15 课讲的是「怎么让单次任务更省」。这一课讲的是周预算被砍之后,你要改的是调度方式,不是抠 prompt。
技巧 1(入门):先分清两套限流,再谈省
Claude Code 同时受两套独立限流约束,它们的应对策略完全相反:
| 限流 | 窗口 | 本次是否变化 | 撞上的典型场景 | 正确反应 |
|---|---|---|---|---|
| 5 小时窗口 | 滚动 5h | ❌ 不变 | 一个下午猛干一个大重构 | 拆任务、中途换活,等窗口滚过去 |
| 周配额 | 自然周 | ✅ 今日 −17% | 周三下午突然「本周没了」 | 改整周的任务分配,而不是改单次 prompt |
先把当前状态看清楚:
# 会话内:看本周期用量与重置时间
/usage
# 看当前会话的 token 与花费明细
/cost
动作项:今天(周一)先跑一次 /usage,把「本周起点」记下来。周三再跑一次——如果周三就用掉 60%+,说明你的周计划需要重排,而不是等周五被断供才发现。
⚠️ 有报道称「Auto 模式的权限分类器不再计入周用量」,可部分抵消本次收紧(implicator.ai)。该说法目前单一来源,没有其他佐证,请以你自己
/usage的实际读数为准。
技巧 2(基础):把「读」和「写」拆到不同模型上
周配额的大头往往不是写代码,而是为了搞清楚该改哪里而做的大量探索性读取。这部分完全不需要最强模型。
会话内切换:
/model claude-haiku-4-5 # 探索、找文件、读日志、跑测试看输出
/model claude-sonnet-5 # 实际写代码、改逻辑
更省事的做法:把「探索」外包给 subagent,让它用便宜模型跑完再只回吐结论。在 .claude/agents/scout.md 里:
---
name: scout
description: 只读代码侦察兵。在大仓库里定位「改动应该落在哪些文件」,不写代码。
model: haiku
tools: Glob, Grep, Read
---
你是只读侦察兵。任务:根据描述定位相关文件与函数。
输出必须 ≤ 300 字,格式固定:
1. 相关文件清单(路径:行号范围 — 一句话说明为什么相关)
2. 建议的改动落点(不超过 3 处)
3. 你不确定的地方(如果有)
禁止:贴大段代码、禁止写文件、禁止推测性重构建议。
关键在输出上限:subagent 自己的上下文窗独立,烧的是它自己的便宜 token,主会话只接收那 300 字。这是第 15 课「模型分层调度」的具体落地形态。
- 📖 Subagents 文档
- 📖 模型配置
技巧 3(进阶):把可批处理的活从交互式会话里赶出去
交互式会话里每一轮都要重新发上下文;而「批量改 30 个文件的 import」「给 50 个函数补 docstring」这类活,本质是同一个 prompt 跑 N 次,放在交互式会话里是纯浪费。
用无头模式 + 循环,每个文件开一个干净的短会话:
#!/usr/bin/env bash
# batch-docstring.sh — 每个文件一个独立短会话,上下文最小
set -euo pipefail
for f in $(git ls-files 'src/**/*.py'); do
echo "→ $f"
claude -p "给 $f 中所有公开函数补 Google 风格 docstring。
不要改动任何函数体逻辑。不要改动 import。改完直接写回文件。
如果该文件已全部有 docstring,输出 SKIP 并且不要写文件。" \
--model claude-haiku-4-5 \
--allowedTools "Read,Edit" \
--max-turns 6
done
三个省额度的要点:
--model haiku—— 机械改写不配用大模型。--max-turns—— 给每个文件设硬上限,防止某个文件让它反复纠结烧掉一大截。--allowedTools收窄 —— 工具越少,系统 prompt 越短,也越不会跑偏去做没让它做的事。
跑之前一定先 git commit 或开 worktree,批处理翻车是回滚而不是靠 undo。
技巧 4(实战):用 hook 给周配额装一个「刹车提示」
最难受的不是配额紧,是不知不觉就没了。用 SessionStart hook 在每次开会话时把用量摆在眼前,再用 PreToolUse 给最烧钱的操作加一道确认。
.claude/settings.json:
{
"hooks": {
"SessionStart": [
{
"hooks": [
{
"type": "command",
"command": "date +'📅 %a — 本周第 %u 天。开工前先跑 /usage 看看还剩多少。'"
}
]
}
],
"PreToolUse": [
{
"matcher": "Task",
"hooks": [
{
"type": "command",
"command": "echo '⚠️ 即将启动 subagent——确认这活值得开一个独立上下文窗。'"
}
]
}
]
}
}
配合一条自定义斜杠命令,把「本周还能干什么」变成一次性检查。.claude/commands/budget.md:
---
description: 周配额体检——评估当前任务是否值得现在做
---
先运行 /usage,读出本周已用比例与重置时间。
然后针对我接下来要做的任务($ARGUMENTS),回答三件事,每条一句话:
1. 这活预计消耗:小 / 中 / 大,依据是什么
2. 按当前剩余额度,现在做会不会导致周内断供
3. 有没有更省的做法(换小模型 / 拆成无头批处理 / 推到下周)
如果判断是「大」且剩余额度 < 40%,直接建议我推迟,并说明推迟的代价。
用法:/budget 把整个 auth 模块从 session 迁到 JWT。
一页速记
| 场景 | 动作 |
|---|---|
| 周一开工 | /usage 记起点;周三复查 |
| 找代码 / 读日志 | 丢给 scout subagent(haiku,输出 ≤300 字) |
| 批量机械改写 | claude -p + --model haiku + --max-turns + 收窄 --allowedTools |
| 大任务开工前 | /budget <任务描述>,让它算算划不划算 |
| 撞上 5h 限流 | 换一类活,别硬等 |
| 撞上周限流 | 改下周的任务分配,不是改 prompt |
一句话总结:周配额砍了 17%,省 token 的老办法(精简 prompt、/clear)边际收益已经很小了;真正的杠杆在调度——让便宜模型干探索、让无头模式干批量、让 hook 帮你在花光之前踩刹车。
Claude Code 小课 · 第 31 课 · 2026-09-14
主页