[开源] 关于我给OpenCode弄了个缓存统计插件这件事 OpenCode Visual Cache

OpenCode Visual Cache

实时 Token 缓存命中率 · TUI 侧边栏可视化
自适应主题色 · 自动低饱和设计语言 · 支持中/英双语
GitHub 项目地址


功能

  • 缓存命中率:实时计算并显示缓存命中率,自适应宽度进度条
  • Token 明细:缓存读 / 缓存写 / 未命中 / 输出,标签左对齐 · 数据右对齐
  • 费用与节省:Session 累计费用 + 缓存命中带来的费用节省
  • 模型定价:显示当前模型的输入 / 缓存读单价(从 provider 配置动态读取)
  • 折叠面板:点击标题折叠为一行,节省侧边栏空间
  • 颜色自适应:命中率 ≥85% 绿 · ≥70% 橙 · <70% 红,颜色从主题色自动去饱和
  • 语言适配:自动检测系统语言

安装

方式一:OpenCode 命令安装(推荐)

在 OpenCode 中按 Ctrl + P 打开命令面板,搜索 install plugin,按TAB切换到global,输入:

复制代码
opencode-visual-cache@latest

回车即可完成安装与配置。

方式二:手动安装

1. 安装插件

bash 复制代码
npm install -g opencode-visual-cache@latest

2. 配置 TUI 插件

创建或编辑 ~/.config/opencode/tui.jsonc

jsonc 复制代码
{
  "$schema": "https://opencode.ai/tui.json",
  "plugin": ["opencode-visual-cache@latest"]
}

重启 OpenCode

进入任意 session,侧边栏即可看到缓存统计面板。


更新

由于 OpenCode 已知问题 #6774,插件缓存会锁死在首次安装时的版本,不会自动检测 npm 上的新版本。

更新步骤:

1. 清除 OpenCode 插件缓存

powershell 复制代码
# Windows
Remove-Item -Recurse -Force "$env:USERPROFILE\.cache\opencode\packages\opencode-visual-cache@latest"
bash 复制代码
# macOS / Linux
rm -rf ~/.cache/opencode/packages/opencode-visual-cache@latest

2. 重新安装插件

在 OpenCode 中按 Ctrl + Pinstall pluginopencode-visual-cache@latest → 回车

3. 重启 OpenCode


调试

强制英文(Windows PowerShell):

powershell 复制代码
$env:CACHE_TUI_LANG="en"; opencode

兼容性

代码完全模型无关,支持所有 OpenCode 兼容的 AI 模型(DeepSeek / Claude / GPT 等)。

Token 数据和定价信息均通过 OpenCode SDK 标准接口获取。


License

MIT

相关推荐
kyriewen4 小时前
别再对着 TypeScript 报错发呆了:我把 10 个最常见的红色波浪线翻译成了人话
前端·javascript·typescript
妙码生花10 小时前
现代前端的极致性能 icon 加载方案(死磕成功版)
前端·vue.js·typescript
MonkeyKing13 小时前
鸿蒙ArkTS深度剖析:ArkTS与TS/JS核心差异、静态强类型实战优势
typescript·harmonyos
xiezhr15 小时前
逛GitHub发现一款免费带有AI功能的数据库管理工具DBX
ai·开源软件·自然语言·数据库管理工具
Momo__2 天前
TypeScript satisfies 操作符——比 as 更安全的类型守门员
前端·typescript
Awu12273 天前
⚡从零开发 Agent CLI(四):给 CLI 装上"LLM 引擎"
typescript·ai编程·claude
假如让我当三天老蒯5 天前
TypeScript 继续学习(学习用)
前端·面试·typescript
小七-七牛开发者5 天前
TokenPilot:让 LLM Agent 长会话成本降 60%+ 的上下文管理
缓存·agent·token·context·上下文·推理成本
糖拌西瓜皮5 天前
Node.js工程化实践:包管理、TypeScript配置与代码质量
typescript·node.js
Bolt7 天前
TypeScript 7.0 来了:当 tsc 用 Go 重写之后
javascript·typescript·go