hermes-agent/ui-tui/src/app
Brooklyn Nicholson 66a7825ebb feat: unify active-project identity in chat status (supersedes #64721)
Surface the session's first-class Project in both chat surfaces: the
Desktop status bar (project name as the workspace label, full cwd in the
tooltip) and the TUI status label + /status output.

One source of truth. The per-profile projects.db is the authority, read
in tui_gateway via _project_info_for_cwd (backed by
projects_db.project_for_path) and threaded through every session.info
emission path the TUI consumes. The Desktop already caches that truth in
$projectTree, so it DERIVES the label from it (projectNameForCwd) instead
of carrying a second per-session $currentProject atom fed from
session.info.

That drops the parallel state #64721 introduced and the entire
reset/reconciliation surface it required (resume, agentless cwd.set,
gateway-switch, fresh-draft): the label is purely derived, so it stays
correct whenever the cwd or the project tree changes. Only explicit,
named projects resolve on both surfaces, so an auto-discovered repo root
keeps the cwd-leaf label everywhere.

Excludes the unrelated markdown shell-fence change bundled in #64721.
2026-07-18 23:08:13 -04:00
..
slash fmt(js): npm run fix on merge (#66983) 2026-07-18 15:12:47 +00:00
createGatewayEventHandler.ts fix(approval): scope smart deny owner overrides to one operation 2026-07-13 04:31:55 -07:00
createSlashHandler.ts style(desktop,tui): fix all lint/type/formatting issues 2026-06-26 01:04:33 -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 fmt(js): npm run fix on merge (#66834) 2026-07-18 09:06:55 +00:00
overlayStore.ts fmt(js): npm run fix on merge (#66834) 2026-07-18 09:06:55 +00: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 (#65229) 2026-07-15 21:40:56 +00:00
turnStore.ts chore(tui): remove dead branch cleanup code 2026-04-26 21:54:24 -05:00
uiStore.ts fix: stop reporting cache-hit rate and cost across all UI surfaces (#52717) 2026-06-25 15:21:22 -07: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 style(desktop,tui): fix all lint/type/formatting issues 2026-06-26 01:04:33 -05:00
useInputHandlers.ts fmt(js): npm run fix on merge (#66890) 2026-07-18 11:21:28 +00:00
useLongRunToolCharms.ts chore(tui): clean live progress lint 2026-04-26 15:42:07 -05:00
useMainApp.ts feat: unify active-project identity in chat status (supersedes #64721) 2026-07-18 23:08:13 -04: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.ts fmt(js): npm run fix on merge (#65229) 2026-07-15 21:40:56 +00:00