@guard22/opencode-tps-meter
v1.1.0
Published
Fail-closed OpenCode TUI patch for live and final output TPS observability
Maintainers
Readme
OpenCode TPS Meter
Adds live streaming and final output-token throughput to the OpenCode TUI footer. The installer uses a fail-closed source patcher: if an upstream layout is not recognized, it stops before replacing the user's launcher.
Why this exists
Coding-agent throughput is operational data: it helps distinguish model latency, transport stalls, rendering delays, and regressions between releases. OpenCode does not currently expose a normal plugin hook for its TUI footer, so this project owns the compatibility work required to keep that signal visible.
It provides:
- live rolling TPS over the last 15 seconds while a response is streaming
- exact output TPS after the response completes
- compatibility validation against legacy and current OpenCode layouts
- launcher preservation and a clean uninstall path
Demo

Full video: assets/tps-meter-demo.mp4
This is a TUI/CLI patch, not a Desktop extension and not a normal OpenCode plugin. It patches the exact requested OpenCode source release during install.
Maintenance contract
- Current compatibility target: OpenCode
1.18.4 - Tested releases are patch-applied and typechecked in the GitHub Actions matrix
- Split-TUI releases validate both
packages/opencodeandpackages/tui - Unknown source layouts fail before the launcher is replaced
- Security reports use private vulnerability reporting
- Contributions follow the focused compatibility workflow in CONTRIBUTING.md
Primary maintainer: Floze
Install
Install the published package:
npx @guard22/opencode-tps-meter installInstall the latest repository version:
curl -fsSL https://raw.githubusercontent.com/floze-the-genius/opencode-tps-meter/main/install.sh | bashDefault behavior:
- if
OPENCODE_TPS_VERSIONis set, install that exact OpenCode version - else if your installed
opencode-stockor non-wrapperopencodeversion is detectable, patch that version - else fall back to the latest upstream stable OpenCode release
To force a specific version:
OPENCODE_TPS_VERSION=1.4.1 npx @guard22/opencode-tps-meter installHow the installer works
- downloads the exact OpenCode tag for the requested version
- runs a content-based auto-patcher against the OpenCode source
- installs the patched source into
~/.local/share/opencode-tps-meter/releases/<version> - points
~/.local/share/opencode-tps-meter/currentat the active release - installs a wrapper next to your detected
opencodebinary - preserves your original launcher as
opencode-stockin that same directory
If the requested OpenCode version changed the TUI structure too much, the installer exits without replacing your launcher.
Compatibility
The installer now tries to patch newer OpenCode releases automatically. It is no longer hardcoded to a short manual allowlist.
Known tested versions are listed in manifest.sh.
Right now the tested set is:
1.3.131.3.141.3.151.3.161.3.171.4.01.4.11.14.201.18.4
If you install a newer OpenCode release and the source layout still matches the expected TUI anchors, the installer should work without needing a new repo release.
Uninstall
npx @guard22/opencode-tps-meter uninstallNotes
- This patches OpenCode TUI/CLI, not Desktop.
- It preserves your launch directory, so
opencodeopens the project you launched it from. - Live TPS is an estimate based on stream deltas.
- Final TPS uses exact output-token usage from the completed assistant message.
- Requires
bun,git, andcurl. - If upstream rewrites the TUI footer structure, the auto-patcher will fail cleanly instead of half-installing.
Tested
- OpenCode
1.18.4 - OpenCode
1.14.20 - OpenCode
1.4.1 - OpenCode
1.4.0 - OpenCode
1.3.17 - OpenCode
1.3.16 - OpenCode
1.3.15 - OpenCode
1.3.14 - OpenCode
1.3.13 - Bun
1.3.13
