跳到正文
claudemods

Claude Code 状态栏插件

Claude Code 状态栏插件会把分支、上下文占用、费用或计数器等实时信息显示在状态栏或输入框上方的横栏中,无需再去询问。

上下文仪表 在 Claude Code 中运行

上下文仪表

在状态栏显示上下文窗口占用、5 小时与 7 天套餐用量和会话花费,并在接近上限时发出提醒。

  • 状态栏
  • 弹出通知
  • 修改界面

已在 v2.1.291 实测

提示框上方的 Git 分支 在 Claude Code 中运行

提示框上方的 Git 分支

在 Claude Code 输入框上方用一行横条显示当前 git 分支、已修改文件数和领先/落后状态。

  • 输入框上方
  • 执行命令
  • 拦截工具调用
  • 修改界面

已在 v2.1.291 实测

工具调用计数器 在 Claude Code 中运行

工具调用计数器

统计 Claude 每轮和每个会话的工具调用次数,在加载指示器旁显示计数,并新增 /tally 查看明细。

  • 加载动画
  • 对话记录
  • 状态栏
  • 拦截工具调用
  • 修改界面
  • 添加命令/工具

已在 v2.1.291 实测

Claude Code 状态栏插件会在你工作时显示一小段实时状态:当前的 git 分支、上下文窗口的占用程度、套餐用量还剩多少、本次会话的费用,或者 Claude 在本回合调用了多少次工具。你扫一眼就能读到,不必再输入命令、等待回复。

Claude Code 状态栏插件如何绘制文本?

有两个显示位置。第一个是状态栏本身,插件通过 $.ui.status('...') 写入。它只接受纯文本字符串,是显示一个数字成本最低的方式。第二个是输入框上方的单行横栏,插件通过处理 AbovePrompt 渲染位置的 ui.render 事件、返回来自 $.ui.resolve(e) 的 Box 和 Text 元素来绘制它。横栏支持颜色、粗体和截断,适合 ⎇ main · 3 changed · ↑1 ↓0 这类信息更丰富的行。

刷新时机通常包括:session.start 用于首次读取,turn.complete 在 Claude 回答之后,session.compact 在上下文压缩之后,以及 $.clock.every(ms) 作为较慢的兜底刷新。不带明细地读取 $.session.usage() 的插件不产生任何开销,因为它读取的是 Claude Code 已经掌握的数据。完整的事件与渲染位置列表见 mods 参考文档。

安装前应该检查什么?

先看权限标记。纯粹的指示器应当只显示 修改界面,几乎不需要其他权限。对于 git 指示器来说,执行命令 很正常,因为它必须运行 git status,但请阅读“工作原理”一节,确认它具体运行的程序和参数。如果一个状态栏插件还显示 网络访问 或 读取你的提示词,就需要有充分的理由。

接着看“自定义”表格中的刷新间隔。在大型仓库中,定时器间隔太短意味着 git status 会频繁运行,在较慢的磁盘上你可能会感觉到。最后,查看插件页面上标注的测试版本;在终端中使用插件需要 Claude Code 2.1.287 或更高版本。

可以组合多个指示器吗?

可以。典型的搭配是输入框上方放一条分支横栏,再在状态栏里放一个上下文与费用计量器。通过 /config 中各插件的设置关闭你用不到的部分;如果状态栏太杂乱,还可以在 /plugin 的“已安装”标签页中停用整个插件。

常见问题

多个 Claude Code 状态栏插件会互相覆盖吗?
不会。每个插件通过 $.ui.status 写入的文本都归属于该插件,所以两个插件可以同时写入状态文本。不过状态栏很快就会变得拥挤,建议只保留你真正会看的两三个数字。
状态栏插件会拖慢 Claude 吗?
只要它在 turn.complete 这类事件发生时刷新,而不是每秒轮询,就不会。会按定时器运行程序(例如 git status)的插件,会让你在 /config 中设置间隔。
为什么输入框上方的横栏不见了?
横栏会给 Claude Code 自身的内容让位,例如在问卷打开期间。请确认插件已在 /plugin 中启用、你使用的是 Claude Code 2.1.287 或更高版本,并且在从 shell 安装后运行过 /reload-plugins。