Added
- Real-Answer Benchmark feature — Press
Ctrl+Ato run a live completion benchmark on the currently selected model. Measures actual wall-clock response time and tokens-per-second (TPS) with a real chat completion request ("Why is the sky blue? Answer in exactly one short sentence."). Results appear in the new Answer Speed column as4.3s / 13 TPS. - New
Answer Speedcolumn in the TUI table, positioned after the Uptime column. Defaults to—, shows a green spinner while benchmarking, and displays compact error codes (ERR,TIMEOUT,401,429) on failure. - New module
src/benchmark.jswith lightweight, native Node.js benchmark logic:benchmarkModel({ apiKey, modelId, providerKey, url })— sends one completion, measures time, parsesusage.completion_tokenswith aMath.ceil(outputText.length / 4)fallback clearly labeled as an estimate.- Guards against division-by-zero and unsupported providers (rovo, gemini, opencode-zen return
UNSUPPORTED). - Respects existing API key handling and fails gracefully on missing credentials, rate limits, or timeouts.
- Benchmark state stored in TUI state keyed by
${providerKey}/${modelId}, so results survive re-renders and table refreshes. Ctrl+Adocumented in the Help overlay (Ikey).
Changed
- Responsive column breakpoints adjusted to accommodate the new
Answer Speedcolumn (14 cols). Progressive hiding order: Rank → Answer Speed → Up% → Tier → Stability. Compact mode still active at ~163+ cols. - Removed the startup Shell Environment popup — The modal that asked existing users whether to export API keys to shell on every launch has been eliminated. It was intrusive and re-appeared even after being skipped.
- Shell Environment setup is now on-demand via Settings (P key). The "Shell Env Export" row shows:
🔘 Not configured — Enter to set upfor users who never configured it (previously shown the popup)✅ Enabledwhen active❌ Disabledwhen explicitly turned off
- New users who add their first API key still get shell env enabled automatically (zero-friction default). Existing users can press
Enteron the Settings row to enable it at any time.