Status line rebuilt on statusLine.preset: custom after an interactive tune-up (live loop: config edit -> watcher repaint -> niri screenshot verify).
Chip (top, right segments):token_in · token_out · cost · context_pct · time_spent -- pure numbers, stable width. The red rule left of the chip is the context meter (length = usage).
Strip (bottom, left segments):session_name · vim · mode · hostname · model · path · git · pr -- branch text off (worktree branches are autogenerated), dirty-file badges kept; full cwd path (stripWorkPrefix: false).
Cut: tok/s (lives on the working row), wall clock, cache trio, context_total, subagents, session hash.
models.yml: frank-archon display name slimmed to "frank-archon"; id untouched (zero wiring impact).
Docs: new pi/statusline.md -- the preset-vs-custom trap (named presets silently ignore the segment arrays; the old nerd config had dead arrays), composer-shape -> segment routing, contextLine truth.
Composer shape stayed claude after live box/band/rule previews. bats tests/ 27/27.
Notes
No Gitea issue: the credential-store token lacks issue scope (403, documented in gitea-api-pr-operations skill).
Post-merge: other workstations git pull to adopt; blankpad's live config already runs this exact state.
## What
Status line rebuilt on `statusLine.preset: custom` after an interactive tune-up (live loop: config edit -> watcher repaint -> niri screenshot verify).
- **Chip (top, right segments):** `token_in · token_out · cost · context_pct · time_spent` -- pure numbers, stable width. The red rule left of the chip *is* the context meter (length = usage).
- **Strip (bottom, left segments):** `session_name · vim · mode · hostname · model · path · git · pr` -- branch text off (worktree branches are autogenerated), dirty-file badges kept; full cwd path (`stripWorkPrefix: false`).
- **Cut:** tok/s (lives on the working row), wall clock, cache trio, `context_total`, `subagents`, `session` hash.
- **`models.yml`:** frank-archon display name slimmed to `"frank-archon"`; `id` untouched (zero wiring impact).
- **Docs:** new [pi/statusline.md](omp-docs/pi/statusline.md) -- the preset-vs-custom trap (named presets silently ignore the segment arrays; the old `nerd` config had dead arrays), composer-shape -> segment routing, contextLine truth.
Composer shape stayed `claude` after live `box`/`band`/`rule` previews. `bats tests/` 27/27.
## Notes
- No Gitea issue: the credential-store token lacks issue scope (403, documented in gitea-api-pr-operations skill).
- Post-merge: other workstations `git pull` to adopt; blankpad's live config already runs this exact state.
Named presets silently ignore leftSegments/rightSegments - the nerd
preset's baked arrays were what we saw, and the configured arrays were
dead. preset: custom with explicit arrays: chip (right) = token_in,
token_out, cost, context_pct, time_spent; strip (left) = session_name,
vim, mode, hostname, model, path, git (branch text off - worktree
branches are autogenerated; dirty badges kept), pr. Cut tok/s duplicate,
clock, cache trio, context_total, subagents, session hash. Composer
shape stays claude after live box/band/rule trials. models.yml display
name frank-archon drops the (dankserver) suffix; id untouched.
Docs: pi/statusline.md records the preset-vs-custom trap, shape->segment
routing, and the context-meter truth.
stripWorkPrefix true: worktree sessions show projectName/worktreeName with
the worktree glyph instead of the on-disk cwd; matches the live bar tuned
and screenshot-approved 2026-10-18.
Band merges the segment groups into one row above the editor and paints
the labeled inline context meter (60% - 200K); the session title rides
the working row. Cumulative token totals live in /session - off the bar.
Docs and changelog updated to the band final state.
Left group keeps the where-am-I identity (host, path, git, pr); the right
cluster carries what's-running (model) plus cost and elapsed time, painted
in array order. context_pct verified to hoist into the inline meter spacer
regardless of array position. Docs + changelog updated.
dank
merged commit 876d8cd519 into main2026-10-18 01:09:59 -07:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
What
Status line rebuilt on
statusLine.preset: customafter an interactive tune-up (live loop: config edit -> watcher repaint -> niri screenshot verify).token_in · token_out · cost · context_pct · time_spent-- pure numbers, stable width. The red rule left of the chip is the context meter (length = usage).session_name · vim · mode · hostname · model · path · git · pr-- branch text off (worktree branches are autogenerated), dirty-file badges kept; full cwd path (stripWorkPrefix: false).context_total,subagents,sessionhash.models.yml: frank-archon display name slimmed to"frank-archon";iduntouched (zero wiring impact).nerdconfig had dead arrays), composer-shape -> segment routing, contextLine truth.Composer shape stayed
claudeafter livebox/band/rulepreviews.bats tests/27/27.Notes
git pullto adopt; blankpad's live config already runs this exact state.