Claude Code省Token的12个实用技巧:从上下文管理到模型选择

Claude Code 的 Token 消耗源于累积上下文,通过诊断、清空、精简配置与匹配模型可系统性省钱。
文章指出,Claude Code 每次请求都会携带完整对话历史,即使有提示缓存,历史内容仍计入消耗,因此“更小的上下文等于更便宜的消息”是核心原则。作者给出12个可操作方法:先用 /usage 和 /context 诊断Token去向,优先处理冗长的 CLAUDE.md、过多 MCP 工具和巨型文件读取;切换任务时用 /clear 免费清空,确需延续才用 /compact;把 CLAUDE.md 控制在约200行,长流程移入按需加载的 Skills;禁用不用的 MCP 服务器;按任务难度用 /model 和 /effort 匹配模型与推理强度;精确提问、大任务先规划、嘈杂任务交给子代理;并用 Hook 在数据进入上下文前预清洗测试输出。
为什么你的Token总是不够用?
如果你经常触及Claude Code的使用上限,或者API账单持续攀升,问题很可能出在上下文管理上。理解Claude Code的工作机制是省钱的第一步:每次发送消息时,它都会携带整个对话历史——包括你的指令、读取过的文件以及所有工具调用结果。即使启用了提示缓存(Prompt Caching)让重复历史更便宜,这些内容仍然计入消耗。这意味着在一个开了整天的会话里问一句简单问题,你依然要为全天积累的上下文买单。
核心原则只有一条:更小的上下文意味着更便宜的消息。以下12个方法,从诊断到执行,帮你系统性地削减Token消耗。
提示缓存(Prompt Caching) 是 Anthropic API 提供的一项优化机制:当请求的前缀(如系统提示、CLAUDE.md、对话历史的前若干轮)与上一次请求完全相同时,这部分内容会以缓存读取价计费,通常仅为正常输入价的十分之一左右,且延迟更低。但缓存有生命周期(默认约5分钟,每次命中会刷新),长时间不活动后过期,下一条消息就要按全价重新处理历史。此外,缓存只降低单价,不减少令牌数量——上下文越长,即便命中缓存,累积的绝对成本仍然可观。这就是为什么文章反复强调“清空比压缩更便宜”:/clear 让上下文归零,从根本上消除重复计费的基础。
先诊断:看清Token去向
用 /usage 和 /context 定位大头
你无法修复看不见的东西。两个命令是起点:输入 /usage,API用户可查看本次会话的Token用量和成本;Pro或Max订阅用户还能看到是什么在消耗限额——技能(Skills)、子代理(Sub-agents)、MCP服务器各自占了多少,并附带优化建议。接着输入 /context,它会展示当前上下文窗口被什么填满,让你精确知道该裁剪什么。重点关注大块头:冗长的CLAUDE.md、过多的MCP工具、巨大的文件读取和命令输出,这些是你的首要目标。
上下文管理:最直接的省钱手段
切换任务时果断 /clear
最大的单项收益也最简单:当你切换到不相关的工作时,输入 /clear。旧对话被清空,下一条消息从小上下文重新开始。一个好习惯是——完成一个功能、提交代码,然后在下个任务前清空。清空不花任何成本,CLAUDE.md 会在新会话中重新加载。如果想稍后回到某个会话,先用 /rename 命名,再用 /resume 找回。

需要延续时用 /compact,但要算清账
有时你想继续同一个任务,但对话已经太长。这时用 /compact:Claude会总结历史,用摘要代替完整记录继续。更好的做法是告诉它什么重要,比如 /compact focus on the API changes and the failing tests。一个诚实的警告:压缩本身要读取整个对话,所以它本身就是一次大请求。如果你并不需要历史,/clear 更便宜。
给CLAUDE.md瘦身,把长流程搬进Skills
CLAUDE.md 在每个会话开始时加载,所以其中每一行都在每次对话中被计费。把它控制在约200行以内,只保留精华:命令、关键规则、Claude反复出错的地方。例如如何构建和测试、三行以内的文件夹结构、最重要的两三条规则——而不是一整本风格指南。把冗长的特定工作流(如如何审查PR、如何执行迁移)移入Skills,技能只在需要时加载。你甚至可以在CLAUDE.md中加入一段简短的压缩指令,让每次摘要都保留你在意的内容。
Skills(技能) 是 Claude Code 中一种按需加载的能力封装机制,通常以包含说明文档和可选脚本的目录形式存在。与 CLAUDE.md 在每次会话启动时全量注入不同,技能只在 Claude 判断当前任务需要时才被读取,因此其内容不占用日常对话的上下文预算。这使得技能非常适合承载冗长但低频的流程,例如代码审查清单、数据库迁移步骤、发布检查表。把这类内容从 CLAUDE.md 移入技能,相当于把“常驻内存”改成“按需调页”,既保留了可复用性,又避免为从不触发的流程持续付费。
精简MCP服务器与工具
每个连接的MCP服务器都会把工具名称和说明加入上下文。输入 /mcp 查看列表,禁用当前不用的服务器。当存在命令行工具时优先使用它——比如GitHub用 gh,Claude可以直接运行,完全不向上下文添加工具列表。
模型与推理成本控制
按任务选模型:/model 随时切换
不是每个任务都需要最大的模型。Sonnet能处理大多数编码工作,成本低于Opus。把Opus留给困难的架构决策和长链条多步推理。用 /model 随时切换,甚至可以在会话中途切换。注意:继承你模型的子代理也继承价格——简单的辅助任务,给它们Haiku。
用 /effort 降低推理强度
思考Token按输出Token计费,在高强度设置下,每次请求可能增加数万Token。对于重命名、小修复、格式化这类简单任务,用 /effort 降低强度;遇到真正的问题再调高。让推理强度匹配任务难度,等于白捡钱。

提问与工作流优化
精确提问,指向具体文件
模糊请求很贵。“改进这个代码库”会让Claude扫描一切,逐个文件猜测你的意图。“给 auth.ts 中登录函数添加输入验证”则让它直奔一个文件。用 @ 符号指向确切文件,并说明“完成”的标准,比如哪个测试应该通过。最贵的Token,是花在构建错误东西上的那些。

大任务先规划,小步快跑
对于较大任务,按 Shift+Tab 切换到计划模式(Plan Mode):Claude先探索并提出方案,再写任何代码。如果它还是走错了方向,立刻按 Escape;双击 Escape 或输入 /rewind 可回到早前的节点。工作时分小步进行——写一个文件、测试、再继续。
把嘈杂任务丢给子代理
运行测试、读取日志、抓取文档会在上下文里灌满你永远不会再读的输出。把这些任务交给子代理:嘈杂输出留在它自己的上下文中,只有简短摘要返回。子代理仍然消耗Token,所以简单任务给它更小的模型,比如Haiku。
子代理(Sub-agents) 是由主会话派生出的独立 Claude 实例,拥有自己的上下文窗口。它执行任务(如跑测试、读日志、抓取网页)时产生的全部中间输出都留在自己的窗口内,结束后只把一段精简的结论回传给主代理。这实现了上下文的“隔离”——主会话不会因为一次读取上万行日志而被撑爆。代价是子代理的令牌同样计费,且它需要重新建立对任务的理解,因此不适合需要大量主会话背景的复杂推理;对于边界清晰、输出嘈杂的辅助工作,它是性价比最高的选择。
进阶技巧:用Hook预清洗数据
让测试输出只保留失败信息
来自官方文档的高级技巧:Hook可以在Claude看到数据之前就清洗它。这个 pre-tool-use hook 在每条bash命令运行前触发;当命令是测试运行时,它重写命令,只保留失败信息。把它加入 settings.json,并在hooks文件夹中放入它调用的小脚本。于是Claude读到的不是成千上万行通过的测试,而是几行关于哪里坏了的说明。输入 /hooks 确认它已激活。同样的思路适用于日志文件:只返回错误行。
Hook 是 Claude Code 的事件钩子机制,允许在特定生命周期节点(如工具调用前、工具调用后、会话开始时)自动执行用户定义的脚本。配置写在 settings.json 的 hooks 字段中,脚本本身放在约定目录。pre-tool-use 钩子在 Claude 发起工具调用、但命令尚未真正执行时触发,因此可以在数据进入模型上下文之前对其进行改写、过滤或拦截。文章中的测试输出清洗正是利用这一点:把冗长的测试命令重写为只输出失败摘要的版本,从源头削减令牌,而不是事后压缩。
把一切串成日常例程

把上述方法固化成习惯:每个任务以清晰具体的提示开始;大改动先规划;默认用Sonnet和普通推理强度;切换任务时清空;只在需要历史时压缩;嘈杂工作交给子代理。长时间休息后缓存已过期,下一条消息会重新为完整历史付费——如果是新任务,先清空。每周检查一次 /usage 和 /context,修复最大的那项。
更小的上下文、正确的模型、更少的弯路——这就是用同样Token做更多事的方法。今天就可以从三件事开始:任务之间 /clear、默认使用更简单的模型、以及保持精简的CLAUDE.md。
相关推荐
科技前沿Caro揭秘:LBJ如何用伪装骗过种族隔离派
罗伯特·卡罗在LBJ传记中记录前参议员塔尔梅奇的采访:约翰逊初入参议院时刻意迎合南方保守派,塔尔梅奇称未察觉其民权倾向。掌权后约翰逊推动1964年民权法案与1965年投票权法案,揭示政治伪装与改革时机的关系。
科技前沿GitHub日报·11月07日:Agent就绪与上下文压缩
2026年09月02日(周三)午间版 AI新闻速递+热点深度讨论
科技前沿ToolLens:用Rust打造的MCP网关,将数千工具精简为三个
ToolLens 是一个用 Rust 编写的开源 MCP 网关,只向 AI 智能体暴露三个工具而非数千个,通过网关模式解决工具数量膨胀带来的上下文压力,为 MCP 生态提供工程化参考。