@siuver/omp-stress-monitor0.1.2
An oh-my-pi extension that shows a live, self-assessed agent stress estimate (0-100) on the status bar.
Built for omp
The author tagged this package oh-my-pi.
Reports 0
No reports yet.
Readme
@siuver/omp-stress-monitor
An npm-style oh-my-pi plugin that shows a live, self-assessed agent stress estimate (0-100) on the status bar. For fun.
Commands
| Command | Purpose |
|---|---|
/stress-monitor on |
Turns the monitor on and shows the stress line on the status bar. |
/stress-monitor off |
Turns the monitor off and clears the status line. |
/stress-monitor |
Reports the current on/off state (and last value when on). |
Behavior
When on, a right-aligned stress meter is shown directly above the status bar: 🧠 ▰▰▰▱▱▱ NN, a 🧠 icon, a six-cell gauge that fills with the stress level, and the integer NN (0–100). Both the gauge length and the color encode severity, so it still reads on weak-color themes: green for ≤ 33, yellow for 34–66, red for ≥ 67. Before the first result it shows a dim placeholder 🧠 ▱▱▱▱▱▱ ··. (It sits above the status bar rather than inside it because the native status-line segments are a fixed, built-in set with no plugin hook; an extension widget is the closest attachable surface.)
The estimate is recomputed throttled per agent step: on turn_end and agent_end, at most once per ~15 seconds, and never overlapping a previous assessment. Each recompute is a background call to the current session model (ctx.model) — a genuine agent self-assessment over a digest of the recent transcript. The call runs detached, so it never blocks or slows the main agent loop.
The toggle is in-memory and defaults on, so the monitor starts automatically each omp launch; run /stress-monitor off to disable it for the session. The line is display-only — it never reaches the model's context and never affects the agent's work. If no session model is available, the monitor shows the dim placeholder and does not call out.
How stress is estimated
The current session model is prompted with a fixed rubric to act as a stress meter and to reply with only a bare integer from 0 to 100. The rubric scales the number up for tool errors, retries, failed edits/builds/tests, contradictions, ambiguity, scope creep, and signs of user frustration; and down for clean progress, succeeding tools, and a positive or neutral user tone. The plugin parses the first integer out of the reply and clamps it to 0–100.
Install
omp plugin install @siuver/omp-stress-monitor
Restart omp after installation. omp plugin list should show this package; then /stress-monitor should appear in the slash command list. The monitor is on by default, so the line appears automatically; run /stress-monitor off to disable it.
Local Development
From the repository root:
bun run check
omp plugin link ./plugins/stress-monitor
Restart omp after linking.
Changelog
See CHANGELOG.md for release notes included in the npm package.
Why npm-style install
This plugin depends on ExtensionAPI and must be loaded through package.json omp.extensions. OMP's marketplace install path can list marketplace plugins, but it does not currently import TS extension factories from omp.extensions, so marketplace install alone will not load this plugin.