hermes-agent/apps/desktop/src/lib
brooklyn! fa42ac094d
feat(desktop): Shift+click the status-bar zap to toggle YOLO globally (#41666)
The status-bar zap currently toggles per-session approval bypass (the same
scope as the TUI's Shift+Tab). This adds a global escape hatch: Shift+clicking
the zap flips the persistent approvals.mode in config.yaml between "off"
(bypass on) and "manual" (bypass off), affecting every session, the CLI, the
TUI, and cron — and it survives restarts.

- statusbar-controls: thread the click's shiftKey through onSelect via a new
  StatusbarSelectModifiers arg.
- yolo-session: add setGlobalYolo() that calls config.set with scope="global".
- use-statusbar-items: branch toggleYolo on modifiers.shiftKey; plain click
  stays per-session, Shift+click goes global.
- tui_gateway config.set "yolo" key: add scope="global" that reads/writes
  approvals.mode through the gateway's own (mtime-cached) config view, honors
  an explicit value, and re-emits session.info to every live session so each
  window's zap reflects the flip immediately.
- i18n: tooltip copy in en/ja/zh/zh-hant notes Shift+click toggles globally.

Tests: two new tui_gateway tests cover the global toggle and explicit-value
paths; existing session/process-scope yolo tests still pass.
2026-06-07 20:57:08 -05:00
..
keybinds fix(desktop): default-profile hotkey to two-key cmd+d mnemonic 2026-06-06 11:55:15 -05:00
ansi.test.ts fix(desktop): triage batch of GUI quality-of-life fixes (#37536) 2026-06-02 16:33:22 -04:00
ansi.ts chore(desktop): zero eslint/typecheck debt + prettier pass (#39100) 2026-06-04 14:10:38 +00:00
chat-messages.test.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
chat-messages.ts fix(desktop): render approval/sudo/secret prompts so tools stop silently timing out (#38578) 2026-06-04 01:53:51 +00:00
chat-runtime.test.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
chat-runtime.ts fix(desktop): make the running-turn timer per-session (#41182) 2026-06-07 04:29:05 -07:00
clipboard.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
commit-changelog.test.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
commit-changelog.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
desktop-slash-commands.test.ts feat(desktop): surface every provider + models from hermes model in the GUI menus (#40563) 2026-06-06 16:31:34 +00:00
desktop-slash-commands.ts feat(desktop): surface every provider + models from hermes model in the GUI menus (#40563) 2026-06-06 16:31:34 +00:00
embedded-images.test.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
embedded-images.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
external-link.test.tsx Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
external-link.tsx Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
gateway-events.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
gateway-ws-url.test.ts fix(desktop): don't fall back to a dead WS ticket on OAuth re-mint failure 2026-06-04 01:11:34 -07:00
gateway-ws-url.ts feat(desktop): per-session profile switching + cross-profile sessions 2026-06-04 16:35:34 -05:00
haptics.ts feat(desktop): drag sessions into chat as @session links + spawn loader 2026-06-04 19:41:51 -05:00
icons.ts feat(desktop): steer the live run from the composer 2026-06-05 20:50:30 -05:00
incremental-external-store-runtime.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
katex-memo.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
local-preview.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
markdown-code.test.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
markdown-code.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
markdown-preprocess.ts fix(desktop): stop bare-URL autolinker swallowing trailing emphasis asterisks (#41093) 2026-06-07 02:47:39 -07:00
media.remote.test.ts feat(desktop+gateway): remote media relay — attach images/PDFs and display gateway images over the network 2026-06-07 10:05:53 -07:00
media.ts feat(desktop+gateway): remote media relay — attach images/PDFs and display gateway images over the network 2026-06-07 10:05:53 -07:00
model-status-label.test.ts feat(desktop): inline model picker in the status bar 2026-06-02 19:09:41 -05:00
model-status-label.ts feat(desktop): inline model picker in the status bar 2026-06-02 19:09:41 -05:00
mutable-ref.ts chore(desktop): zero eslint/typecheck debt + prettier pass (#39100) 2026-06-04 14:10:38 +00:00
preview-targets.test.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
preview-targets.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
profile-color.ts feat(desktop): long-press a rail profile to pick its color 2026-06-04 20:12:37 -05:00
provider-setup-errors.test.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
provider-setup-errors.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
query-client.ts feat(desktop): per-session profile switching + cross-profile sessions 2026-06-04 16:35:34 -05:00
runtime-readiness.test.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
runtime-readiness.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
session-export.ts Refactor desktop i18n field copy into nested structures 2026-06-06 07:51:44 -07:00
session-search.test.ts feat(desktop): search sessions by id 2026-06-04 07:49:34 -07:00
session-search.ts feat(desktop): search sessions by id 2026-06-04 07:49:34 -07:00
speech-text.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
statusbar.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
storage.ts feat(desktop): long-press a rail profile to pick its color 2026-06-04 20:12:37 -05:00
todos.test.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
todos.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
tool-result-summary.test.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
tool-result-summary.ts fix(desktop): triage batch of GUI quality-of-life fixes (#37536) 2026-06-02 16:33:22 -04:00
use-enter-animation.ts fix(desktop): prevent IME Enter from splitting messages and viewport resize from disarming scroll anchor (#38333) 2026-06-03 20:14:52 +00:00
utils.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
voice-playback.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
yolo-session.ts feat(desktop): Shift+click the status-bar zap to toggle YOLO globally (#41666) 2026-06-07 20:57:08 -05:00