Update the README to match the installer's new behavior: it detects the
available PowerShell host (prefers pwsh 7, falls back to Windows PowerShell
5.1) instead of writing a broken pwsh path when PS7 is absent, and runs a
self-test to confirm the statusline renders. Removes the now-inaccurate claim
that PowerShell 7 must be installed first.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C4QKwZ7bC7oCMVtnuJdDKm
The installer wrote a hardcoded pwsh.exe path into settings.json even when
PowerShell 7 was not installed, so Claude Code ran a nonexistent binary and
the statusline silently failed to render. Now detect the available host
(prefer pwsh 7, fall back to Windows PowerShell 5.1 which ships with every
Windows install) and add an end-to-end self-test so a broken host path is
caught at install time instead of silently at runtime.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C4QKwZ7bC7oCMVtnuJdDKm
The color logic lives in two files (context bar in cship.toml, the usage
bars in the wrapper), so the behavior was not discoverable from either one
alone. A single reference table records the thresholds and where to edit
each, so future changes keep the two color sources in sync.
The context bar colored at 40/70 percent, which on a 1M-token window only
turned yellow at 400k and red at 700k - far too late to warn before the
window fills. Percentage thresholds stay model-independent while mapping to
the intended 200k/400k marks on the current 1M window.
An installer can guarantee the assets and the font are in place but not that
the terminal actually draws the glyphs - that is the one thing decided on the
target machine at display time. Emitting the exact symbol set lets the user
confirm rendering at a glance and points a failing case at the terminal choice
rather than a missing font, which is the only remaining variable.
Making the installer a turnkey package means a fresh PC should end up
render-ready without manual font setup or an elevated prompt. The font is
placed in the per-user store and registered under HKCU so no admin rights
are required, and a failed download stays non-fatal because the statusline
already renders through the OS emoji fallback. Detection matches both the
spaced and unspaced registry naming so a second run correctly skips the
download instead of re-copying a font file that is locked while in use.
The install note and README claimed a Nerd Font was required. A codepoint
audit of the glyphs confirms none fall in the Private Use Area — they are
standard emoji and block-drawing characters that render via the OS emoji
fallback. Overstating the requirement would push users to install fonts
they do not need and imply the statusline breaks without one, which it
does not.
Replicating the cship-based statusline across machines meant manually
copying three files and hand-editing settings.json with per-user absolute
paths — error-prone and slow. Bundling the assets with an idempotent
installer that resolves the pwsh path at runtime and merges into an
existing settings.json makes rollout a single command per PC.