@georgedong32/pi-effort
v0.1.0
Published
Pi extension for controlling thinking effort with model-adaptive min/max aliases
Maintainers
Readme
pi-effort
Extension for pi: small command surface for reasoning effort and OpenAI/Codex fast mode.
Commands
Exactly two slash commands are exposed:
/effort {min|minimal|low|medium|high|xhigh|max}
/fast [on|off]No /effort show, /effort default, /effort options, /effort fast, or /fast status. Bare /fast toggles the current fast-mode setting.
Effort
/effort accepts the current model's supported reasoning levels plus two adaptive aliases:
| Model type | min | max | Explicit levels |
|---|---|---|---|
| Non-reasoning | — | — | (thinking unavailable) |
| Reasoning | minimal | high | minimal, low, medium, high |
| xhigh-capable reasoning | minimal | xhigh | minimal, low, medium, high, xhigh |
Examples:
/effort min
/effort medium
/effort maxInteractive picker
Bare /effort (no argument) opens a horizontal slider with the model's
supported levels, current selection highlighted. Use ←/→ to move, Enter
to confirm, Esc to cancel. The strongest available level sits flush against
the right edge — no trailing whitespace.
Effort
──────────────────▲─────────────────────────────────
minimal low medium high xhigh
←/→ to adjust · Enter to confirm · Esc to cancelTab also advances one step to the right. The picker falls back to a plain
select dialog in non-TUI modes (RPC, print).
Fast mode
Fast mode is the latency/service-tier knob. When enabled, pi-effort adds
service_tier: "priority" to GPT-5 / OpenAI-Codex provider requests that do not
already specify a tier.
/fast # toggle
/fast on # force on
/fast off # force offFast mode persists in ~/.pi/agent/settings.json under:
{
"pi-effort": {
"fastMode": true
}
}Footer status
For compact powerline footers, the extension publishes these status keys:
pi-effort-thinking—think:<level>pi-effort-fast—fastonly when fast mode is enabled and applies to the current model
Keyboard shortcut
Ctrl+Shift+E cycles through the current model's reasoning levels.
CLI flag
pi --effort max
pi --effort min
pi --effort highThe flag uses the same values as /effort.
Install
pi install npm:@georgedong32/pi-effortVerify what Pi is loading:
pi list
npm list -g --depth=0 @georgedong32/pi-effortThe durable Pi setting is the package entry in ~/.pi/agent/settings.json:
{
"packages": [
"npm:@georgedong32/pi-effort"
]
}Local development
For a one-off local test from this checkout:
npm install
pi -e ./index.tsFor a longer local-path development install:
pi remove npm:@georgedong32/pi-effort
pi install "$(pwd)"After publishing a new version, switch back to the npm package:
npm publish
pi remove "$(pwd)"
pi install npm:@georgedong32/pi-effortVerification
npm run check
npm test
npm pack --dry-runRepo structure
index.ts Pi extension entrypoint
effort.ts Parsing, settings, and model capability logic
effort-picker.ts Custom TUI component for the /effort overlay
package.json Package metadata and Pi manifest
tsconfig.json TypeScript configurationLicense
Apache-2.0
