工具库Claude Code发布于 2026/08/08作者 AI近距离已人工审核6 分钟

AI Coding Agent 总是用量见底?把 Token 优化拆成这四层

从用量监控、rtk、Caveman 到 CodeGraph:一篇补齐官方文档、最小接入方式与开源地址的 AI Coding Agent Token 优化指南。

很多人遇到 Claude Code 用量见底时,第一反应是换套餐、换模型,或者要求它“回答短一点”。但这三件事通常没有碰到真正的消耗结构:一段冗长的 git diff、一轮又一轮的全仓搜索、每次都带上的无关规则,以及写给人看的客套说明,都会进入模型的上下文或输出。

Token 优化不是单一开关,而是一条从可见性、输入、输出到检索路径的工程链路。本文聚焦四个能直接动手验证的模块:用量监控、命令输出压缩、回答压缩与代码图谱定位。项目方给出的节省比例只适合作为评估方向,实际效果仍取决于任务类型、上下文长度与团队工作流。

Token 优化四层地图

先给结论:不要一口气装齐所有工具。先用监控确定瓶颈;CLI 输出特别长再上 rtk,交付文本特别啰嗦再试 Caveman,大型仓库里反复追调用链才考虑 CodeGraph。它们不是同一种“省 token 插件”,而是在不同环节减少无效信息。

一张图看懂:token 到底花在哪

模型调用里最容易被忽略的是输入。提示词、历史对话、系统规则、加载的文件、工具返回内容,都会作为输入反复参与后续轮次;模型最终生成的解释、计划和总结,则是输出。对 coding agent 来说,输入往往还包含大段命令行输出。

环节典型浪费对应模块优先级
看不见消耗到限额才发现异常Claude Code Usage Monitor先做
工具输出进入上下文git log、测试日志、rg 结果太长rtk
模型输出重复解释、客套话、过长总结Caveman按团队偏好
找代码的过程搜索—读文件—发现不对—再搜索CodeGraph大仓库优先
长会话与常驻规则历史和无关文档反复随请求发送Claude Code 原生命令与设置所有人都该做

这里有一个容易混淆的点:rtk 统计的“输入/输出”是 shell 命令压缩前后的 stdout,不是模型账单上的 input/output tokens。它能减少送入模型的命令输出,但并不意味着总费用会按同样比例下降;提示词、历史和模型输出仍然存在。rtk 的官方说明也明确区分了这两件事。

模块一:先把用量看见——Claude Code Usage Monitor

这不是 Anthropic 官方客户端的一部分,而是开源的本地 companion:它读取本机 Claude Code 数据,提供终端监控、预测、导出和状态栏接入。最新版还会优先使用 Claude Code statusline 传来的官方 rate_limits;拿不到时会把本地估算明确标记出来。也就是说,它适合判断“该不该收手”,不应替代你的官方账单数据。

最小使用方式如下。项目 README 推荐使用 uv 进行隔离安装:

uv tool install claude-monitor

# 终端中持续显示当前使用情况
claude-monitor

# 适合脚本或状态栏:输出一次 JSON 快照
claude-monitor --once --output json

如果要接入 Claude Code 的 statusline,按项目文档运行 claude-monitor --statusline,再把它配置为 statusline hook。它的价值不在于“替你省 token”,而在于把原本事后才知道的消耗,变成一个可以在任务进行中做取舍的信号。

模块二:少把终端废话塞进上下文——rtk

rtk(Rust Token Killer)是一个 Rust 编写的 CLI 代理。它会在 Agent 读取命令输出前压缩结果:例如把 git log 收敛到 hash、作者和标题;将测试输出聚焦在失败项;将长搜索结果按文件归组。对“工具调用很多、每次返回很多文本”的任务,这通常是最先值得试的一层。

最小验证不要直接改全局 Agent 配置。先在一个临时任务里对比原命令和代理命令:

# 按 rtk 官方安装页完成安装后
rtk git log --oneline -50
rtk rg "createClient" apps/
rtk npm test

# 查看已记录的压缩收益
rtk gain --daily

原文提到 rtk 会写入 ~/.claude/CLAUDE.md 并引用生成的 RTK.md,让 Claude Code 知道哪些命令应通过它执行。接入前最好先审阅这些规则:压缩适合探索和定位,但排障时可能恰好需要被折叠的完整日志。一个稳妥的团队策略是:默认压缩,遇到失败再显式请求原始输出。

模块三:让模型少说,不是让它少想——Caveman

Caveman 处理的是输出侧。它把回答改成短句、要点、路径和命令优先的形式,尽量删除礼貌用语、重复背景和过渡句,同时声明不会改变代码、命令与错误文本。它的 README 标示为支持 Claude Code、Codex 等多种 agent 的 skill/plugin;“可节省多少”来自项目自己的 benchmark,应视为方向性指标,而不是对任意任务的保证。

基础接入可按项目的安装页完成,再在 Claude Code 内启用:

/caveman

# 希望恢复完整叙述时,在提示词开头写:
normal mode

原文指出,该插件通过 SessionStartUserPromptSubmit hooks 维持模式,因此不必每轮重复执行命令。它很适合代码审查、故障定位、改动汇总;但面向非技术同事的方案说明、需要教育性的架构讨论,反而不宜强制短输出。团队如果把它设为默认,应保留清晰的退出方式。

模块四:别让 Agent 从文件系统里猜答案——CodeGraph

CodeGraph 的方法和前两个不同:它先为仓库建立本地语义图谱,将函数、类、导入、调用链等关系变成可查询的结构。Agent 通过 MCP 先问“谁调用它”“改动影响哪些路径”,再读取少量目标文件,减少的是反复 grep 和误读文件的探索成本。

官方 README 给出的最短接入路径是三步:安装 CLI、连接 agent、为当前项目建图。

# macOS / Linux 安装脚本;执行前请先审阅远程脚本内容
curl -fsSL https://raw.githubusercontent.com/colbymchenry/codegraph/main/install.sh | sh

# 自动配置 Claude Code、Codex CLI、Cursor 等已安装 agent 的 MCP 连接
codegraph install

# 在目标仓库根目录执行,生成该仓库的图谱
codegraph init

这里的边界也很明确:codegraph install 只负责把 MCP server 接到 agent,codegraph init 才会建立项目索引。它更适合跨层调用多、多人维护、历史包袱重的仓库;一个很小的项目直接用 rg 和编辑器跳转,未必值得引入常驻索引和额外运维面。

不装插件也能立刻做的两件事

这些工具之外,参考文章中最值得保留的是两条原生工作习惯。第一,定期执行 Claude Code 的 /context,检查会话里到底装进了什么;第二,任务切换或路线改变时用 /clear 开一个干净会话。Claude Code 的成本管理文档交互模式文档都值得和团队规则一起阅读。

更关键的是审计 CLAUDE.md:把“每次会话都加载的 @ 引用”改成“在某类任务发生时再读取的文档”。例如:

# 不建议:每次启动都装入订阅系统细节
@docs/billing-and-subscriptions.md

# 更稳:只有任务相关时才按需读取
当问题涉及订阅、退款或账单状态时,先读取 docs/billing-and-subscriptions.md。

这不是在减少知识,而是在把常驻知识改成可检索知识。尤其是团队共享配置,每一次无关加载都会被每位成员的每轮会话放大。

从哪一层开始:一份落地清单

你的症状先做什么暂时不要做什么
经常快到额度才察觉安装 Monitor,先观察一周用估算值替代官方账单
测试、日志、搜索结果很长小范围试用 rtk 并保留原始日志通道把压缩率当成实际省钱比例
Agent 每次都写很长的说明在个人任务试 Caveman在所有面向人的文档任务强制启用
反复追跨文件调用链在一个大仓库评估 CodeGraph为小仓库引入复杂索引
每个长会话都越来越慢/context/clearCLAUDE.md 审计继续把所有规则设为启动必读

真正值得记住的不是某个插件的宣传数字,而是这个顺序:先确认消耗,再定位浪费属于输入、输出还是检索路径,最后只在对应环节加工具。 对大多数团队,/context/clear 与瘦身后的项目规则已经是零成本的第一步;当数据证明 CLI 输出或大型代码库探索才是主因时,再引入 rtkCodeGraph,会比“全套安装”更可靠。

来源与开源地址

  1. 参考文章:How I Stopped Running out of Tokens
  2. Claude Code:Manage costs effectively
  3. Claude Code:Monitoring usage
  4. Claude Code Usage Monitor(GitHub)
  5. rtk(GitHub)
  6. Caveman(GitHub)
  7. CodeGraph(GitHub)

编辑注:本文的功能、命令和安装路径以链接中的官方文档与仓库为准;安装远程脚本、启用 hooks 或给 agent 配置 MCP 前,请按团队安全流程审阅其权限与脚本内容。

参考资料

  1. https://danielabaron.me/blog/how-i-stopped-running-out-of-tokens/
  2. https://code.claude.com/docs/en/costs
  3. https://github.com/Maciek-roboblog/Claude-Code-Usage-Monitor
  4. https://github.com/rtk-ai/rtk
  5. https://github.com/JuliusBrussee/caveman
  6. https://github.com/colbymchenry/codegraph

Continue Reading

相关推荐

继续阅读同一工具与主题下的实战内容。