doxa-maps/.claude/settings.json
doxa-maps-88655c70 dd81a8818c Status line: which plugin this session is working on
Several builder sessions run at once, each in its own worktree, and from
the outside every one looks like a terminal printing tool calls. Asking
"which plugin are you on?" cost a round trip every time.

  doxa-maps · bundler-2/work · ▶ research-map-plus-grid (cap-4)

What it reports, in order: the bundle with the most recently modified
UNCOMMITTED file (that is what "working on" means); else library/ or
internal/ named as a scope, because an edit there is not one plugin's
business and naming whichever bundle happens to be dirty would be a lie;
else the last plugin touched in the recent commits, so the line still says
something true at the moment work lands instead of going blank.

The capability tier is read from manifest.json with the studio's own
formula (5 - PT[type], plugin-studio.vue:293), not a table retyped here.
Two copies of that mapping with nothing forcing agreement is the shape
check:capability-citations exists to catch — the README once captioned a
bundle cap-1 while the manifest said cap-2.

Details that were wrong on the first cut and are now measured: the repo
name comes from the remote, not the checkout directory, or every session
gets labelled with a worktree name nobody recognises (wt-bundler-2); and
the commit fallback uses `git log -m`, without which a MERGE commit lists
no files and the line read "idle" immediately after landing work.

Fail-soft throughout and never exits non-zero: no git, no branch; no
manifest, no tier; nothing edited, "idle". A status line runs on every
render, so one that errors or prints a stack trace is worse than none.
~172ms per render, no absolute paths (check:no-abs-paths).

Verified across all five tiers plus the library/ and internal/ scopes;
7/7 pre, 18/18 post.
2026-09-24 00:26:24 +00:00

7 lines
118 B
JSON

{
"statusLine": {
"type": "command",
"command": "bash .claude/statusline-plugin.sh",
"padding": 0
}
}