hermes-agent/ui-tui/src/app
Brooklyn Nicholson e762ea1741 fix(ui-tui): a skin that authors a background owns its polarity
The theme engine picked light/dark adaptation from the HOST terminal
(detectLightMode) even when the skin authors its own background — which
the TUI then paints onto the terminal via OSC-11. On a light-mode Apple
Terminal without truecolor, a pure-black skin (e.g. Bloomberg) got its
foregrounds ansi256-bucketed *for a light background that no longer
exists*: theme.color.text became 'ansi256(214)', which also fails the
OSC-10 hex gate, so the terminal default fg stayed the light profile's
near-black — markdown body text rendered black-on-black.

fromSkin now resolves polarity from the skin's authored background when
present (skinIsLight), uses that background as the reference canvas for
the derived tone ladder and contrast adaptation, and only falls back to
host detection for skins without a background (they render on the
terminal's own surface). The paired light_colors/dark_colors pick in
themeForSkin follows the same rule.
2026-07-22 18:11:27 -05:00
..
slash fix(acp,tui): rename /compact to /compress and /density to resolve command collision 2026-07-22 06:58:05 -07:00
createGatewayEventHandler.ts fix(ui-tui): a skin that authors a background owns its polarity 2026-07-22 18:11:27 -05:00
createSlashHandler.ts feat(ui-tui): self-authored widgets — user-widget loader, hot-load, skill 2026-07-21 20:59:54 -05:00
delegationStore.ts feat(tui): subagent spawn observability overlay 2026-04-22 10:38:17 -05:00
gatewayContext.tsx feat: add inline token count etc and fix venv 2026-04-15 10:20:56 -05:00
gatewayRecovery.ts fix(tui): auto-recover session on unexpected gateway death (+ persist lifecycle breadcrumbs) (#35893) 2026-05-31 10:36:57 -05:00
inputSelectionStore.ts fix(tui): mouse + keyboard text selection in the composer (#16732) 2026-04-27 16:43:48 -07:00
interfaces.ts feat(ui-tui): ambient widget mode — registry-driven slash catalog + in-flow dock 2026-07-21 20:59:53 -05:00
overlayStore.ts feat(ui-tui): ambient widget mode — registry-driven slash catalog + in-flow dock 2026-07-21 20:59:53 -05:00
petFlashStore.ts refactor(tui): drive the vibe heart from the core reaction event 2026-07-10 05:42:08 -05:00
scroll.ts fix(tui): refresh scroll height at cached bottom 2026-05-07 05:48:19 -07:00
setupHandoff.ts feat(tui): /model and /setup slash commands with in-place CLI handoff 2026-04-17 10:58:18 -05:00
spawnHistoryStore.ts fix(tui): handle timeout/error subagent statuses in /agents (#26687) 2026-05-15 20:19:02 -05:00
submissionCore.ts fmt(js): npm run fix on merge (#65229) 2026-07-15 21:40:56 +00:00
turnController.ts fmt(js): npm run fix on merge (#68135) 2026-07-20 16:46:35 +00:00
turnStore.ts chore(tui): remove dead branch cleanup code 2026-04-26 21:54:24 -05:00
uiStore.ts feat(ui-tui): theme engine — seeds to derived-tone ladder + flash-free boot 2026-07-21 16:36:57 -05:00
useBatteryPoll.ts feat(status-bar): add /battery toggle for a color-coded battery read-out 2026-07-21 13:54:11 -05:00
useComposerState.ts fix(cli): restore fallback paste collapse + handle long single-line pastes (#32447) 2026-05-25 23:49:01 -07:00
useConfigSync.ts fix(tui): revision-aware reload.mcp — an ack now means the revision was LOADED 2026-07-21 20:27:15 -05:00
useInputHandlers.ts feat(ui-tui): widget-app SDK — registry, host, dispatch; demos become apps 2026-07-21 20:59:52 -05:00
useLongRunToolCharms.ts chore(tui): clean live progress lint 2026-04-26 15:42:07 -05:00
useMainApp.ts feat(ui-tui): self-authored widgets — user-widget loader, hot-load, skill 2026-07-21 20:59:54 -05:00
usePet.ts style(desktop,tui): fix all lint/type/formatting issues 2026-06-26 01:04:33 -05:00
useSessionLifecycle.ts fix(tui): redraw dashboard after new session (#65239) 2026-07-15 21:23:08 -04:00
useSubmission.test.ts fix(cli,tui): recall real paste content on up-arrow 2026-07-20 23:23:40 -05:00
useSubmission.ts feat(surfaces): route busy-input corrections through active-turn redirect 2026-07-22 12:10:58 -05:00