Tps
OpenCode TUI plugin that displays response performance metrics.
1
235
近 7 天 3
36.7
生态多维模型
12 天前
2026-09-23
快速安装与配置
opencode.json写入当前项目的 opencode.json,只对这个仓库生效。
opencode.json
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["@dmmop/opencode-tps@1.0.2"]
}写入 ~/.config/opencode/opencode.json,对所有项目生效。
~/.config/opencode/opencode.json
{
"$schema": "https://opencode.ai/config.json",
"plugin": ["@dmmop/opencode-tps@1.0.2"]
}若你要在本地改造这个插件,先装到项目里再从本地路径引用。
shell
pnpm add -D @dmmop/opencode-tpsOpenCode 启动时会通过内嵌运行时自动加载 npm 依赖并缓存至本地目录,无需手动在全局环境执行安装。
OpenCode TUI plugin that displays response performance metrics while a session is running.
Features
- Live tokens-per-second (TPS) estimate for the active response.
- Session-wide average output and reasoning token rate (AVG).
- Time to first token (TTFT).
- Tracks text, reasoning, and tool-input streaming events.
- Uses the OpenCode TUI session composer slot without changing conversation output.
Installation
Add the published package to the plugins array in your OpenCode configuration:
{
"$schema": "https://opencode.ai/config.json",
"plugins": ["@dmmop/opencode-tps"]
}
OpenCode installs the package and its production dependencies automatically. To
pin a release, use a versioned package specifier such as
@dmmop/opencode-tps@1.0.0.
Development
Requirements:
- Bun
- An OpenCode V2 environment with TUI plugin support
Install dependencies:
bun install
For local TUI development, point cli.json at this project directory. OpenCode
loads the conventional root tui.ts entrypoint.
Releasing
Commit messages
bun install installs a Husky commit-msg hook. Commitlint rejects malformed
Conventional Commits before Git creates the commit (70-character header limit;
capitalized subjects are allowed). Ordinary Git merge messages are exempt, but
bare version numbers and fixup! messages are not. CI validates every new commit
and the PR title too, including after title edits, to cover squash merges and
hooks bypassed with --no-verify. The validator checks syntax, not whether an
agent chose the correct semantic type for the actual change.
Automatic publication
The single CI and Release workflow tests pull requests and pushes to main.
It runs Bun tests, source typechecking, a TUI build and a packed-export smoke test.
Only a successful push to main can publish to npm and create a GitHub Release.
semantic-release uses Conventional Commits since the last release tag: fix:
produces a patch, feat: a minor, and ! or a BREAKING CHANGE: footer a major.
Documentation, maintenance and test-only commits do not trigger a release unless
marked breaking. The largest applicable bump wins. Use conventional PR titles
when squash-merging.
Versions are tracked by Git tags and npm, not by automatic bump commits on main;
the published manifest receives the computed version. Tag pushes do not start
another workflow. npm Trusted Publishing must authorize this repository's
release.yml workflow (OIDC); publication includes provenance and needs no npm token.
Metric notes
TPS is an estimate based on the byte length of streamed deltas. AVG is calculated from the output and reasoning token counts reported when a session step ends. TTFT measures the time from the start of a session step until the first streamed token.
License
MIT
同类生态推荐
Tokenmeter Tui
opencode-tokenmeter-tui
OpenCode TUI plugin: TokenMeter sidebar — live token usage, cost, and delegation tree for sessions
Quotes Tui
opencode-quotes-tui
OpenCode TUI plugin that replaces the home screen tips with a random quote
Headsup
@banburist/opencode-headsup
Live inference telemetry pinned to the OpenCode 2 sidebar.