cc-vitals___给 Claude Code 装上仪表盘
给 Claude Code 装上"仪表盘":一眼看清模型、上下文和 token
用 Claude Code 写代码时,你有没有过这种感觉——聊着聊着,突然担心上下文是不是快满了?这次会话到底烧了多少 token?现在跑的是哪个模型、什么 effort 级别?界面上统统看不到,全靠猜。
今天我推荐一个我常用的开源小工具:cc-vitals(cc 是 Claude Code 的缩写,vitals 是"生命体征")。一个纯本地的 Claude Code 状态栏,装好后,你的输入框下方会多出一行实时信息,把会话的"生命体征"全部摊开:
claude-opus-4-1 · effort:xhigh · ctx 42% ████░░░░░░ (420.0k/1.0M) · tok ⇣420.0k ⇡1.2k · cache 90.5% · 📄 my-project
一行信息,六项关键数据
从左到右依次是:
- 模型:当前会话正在用的模型名,加粗高亮
- effort:本次会话的推理等级(low / medium / high / xhigh / max)
- 上下文用量:百分比 + 十格进度条 + 已用/总量。超过 60% 变黄、超过 80% 变红,快满时一眼就能察觉
- token 消耗:会话累计的输入/输出 token
- 缓存命中率:缓存读取占输入的比例。这个指标对 API 计费很关键——命中率高说明每次请求都在吃缓存,正在帮你省钱
- 会话名:当前会话的标题
以前要靠猜的,现在全是明牌。该不该开新会话、要不要压缩上下文,看一眼进度条就有答案。
它最大的优点:零成本
cc-vitals 用的是 Claude Code 原生的 statusLine 机制:每次刷新输入框时,Claude Code 把一段状态 JSON 通过标准输入喂给脚本,脚本处理后输出一行文字。整个过程不调用任何模型 API、不发任何网络请求——也就是说,它不消耗任何 token,也不产生任何费用。
这和很多"每加一个功能就要调一次接口"的插件完全不同。它只是本地文件读取加字符串拼接,渲染在毫秒级,完全不打扰你敲代码的节奏。对于按 token 计费的用户来说,这一点尤其珍贵:一个监控工具,自己却不产生一分钱消耗。
对第三方模型用户格外友好
很多用 DeepSeek 等第三方模型(通过 ANTHROPIC_BASE_URL 接入)的朋友都会踩一个坑:Claude Code 默认把模型当成 200K 上下文来管理,哪怕模型实际支持 1M,导致上下文"虚报"。cc-vitals 能把真实窗口显示得明明白白——只需在模型 ID 上加个 [1M] 后缀,状态栏立刻按真实窗口显示,占用百分比也重新计算,不再误导你。
而对官方 Claude 模型的用户,它开箱即用、零配置。
一键安装,一键卸载
装它不需要手动改一堆配置:
node install.js
脚本会自动复制文件、定位 node 的完整路径、把 statusLine 配置写进 settings.json,并且完整保留你已有的所有配置——API Key、模型、effort 一个都不碰。重复运行是幂等的,不会改坏任何东西。想卸载?一条 node install.js --uninstall 就干净利落,其余配置原样保留。
写在最后
这个工具代码很轻,核心就一个文件,没有第三方依赖,解决的是每天都会遇到的小烦恼。花三十秒装一下,换来的是对每一次对话"心里有数"。如果你也经常在 Claude Code 里长时间工作,非常值得一试。
项目开源地址:GitHub 搜索 cc-vitals。
