nmdra/opencode-cache-stats
GitHub: nmdra/opencode-cache-stats
一个 opencode TUI 插件,在弹出对话框中展示当前会话的 prompt-cache 命中率、token 消耗与成本汇总,帮助开发者监控和优化 AI 编程的缓存使用效率。
Stars: 3 | Forks: 0
# cache-stats
`cache-stats` 是一个用于 [opencode](https://opencode.ai) 的 TUI 插件。TUI 即文本用户界面。该插件会在弹出对话框中显示当前活动 session 的 prompt-cache 命中率。
在 session 中运行 `/cache-stats` 命令(或 `cache-stats.show` 命令)即可打开该对话框。
## 功能
- 通过命中条和评语显示当前活动 session 的 cache 命中率。
- 显示 token、调用次数和成本的汇总。
- 按 model 和 subagent 对汇总进行分组。
- 显示每个 model 和每个 subagent 的命中率。
- 显示每次调用的平均值以及最后一次请求。
- 根据等级为命中率标记颜色:Excellent、Good、Fair 或 Poor。
- 支持使用方向键和翻页键进行滚动。
| 汇总与 models | 总计明细 | Subagents |
|:---:|:---:|:---:|
|  |  |  |
## 显示内容
该对话框显示:
- 当前活动 session 的整体 cache 命中百分比。通过命中条和评语(Excellent、Good、Fair 或 Poor)来展示等级。
- Session 汇总:总调用次数、model 数量、subagent 数量、总 token 数以及总成本。
- 每个 model 的明细,包含命中条、命中百分比和 token 总数。
- token、调用次数和成本的分组总计。总计包含百分比、每次调用的平均值以及最后一次请求。
- Subagent 列表,包含每个 subagent 的命中率以及每个 subagent 所使用的 model。
该插件使用以下公式计算 cache 命中率:
```
hit = cache read / (input + cache read)
```
cache 写入是一次性的准备成本。它不计入命中率。该插件还会报告从 cache 读取数据的 API 调用次数。
## 安装
1. 将插件复制到 `~/.config/opencode/tui-plugins/` 目录下。
2. 在 `~/.config/opencode/tui.json` 中注册该插件:
```
{
"$schema": "https://opencode.ai/tui.json",
"plugin": ["./tui-plugins/cache-stats.tsx"]
}
```
该仓库保留了 `tui.json` 的副本,名为 `tui.json.example`。
修改 `tui.json` 后,请重启 [opencode](https://opencode.ai)。然后在 session 中运行 `/cache-stats` 命令。
## 文件
- `tui-plugins/cache-stats.tsx` — TUI 插件
- `tui.json.example` — 注册配置示例
## 文档
- [index](docs/index.md) — 概述
- [installation](docs/installation.md) — 如何安装插件
- [usage](docs/usage.md) — 如何使用插件
- [how-it-works](docs/how-it-works.md) — 插件如何收集数据
- [colors](docs/colors.md) — 插件如何为命中率标记颜色
- [troubleshooting](docs/troubleshooting.md) — 如何修复常见错误
标签:AI, OpenCode, SOC Prime, TUI插件, 开发工具, 成本监控, 数据统计, 端口扫描, 缓存命中率, 自动化代码审查, 自动化攻击