hermes-agent/apps/desktop/src/app/session/hooks
Brooklyn Nicholson b8a2b9b93e feat(desktop): native OS credit alerts + billing-page nudge (#69808)
Round out the credit-notice handling from the previous commit with the two
optional pieces from the issue:

- Native OS notification for the urgent pair. `credits.depleted` /
  `credits.restored` also fire an Electron notification when Hermes is
  backgrounded, via a new `credits` NativeNotificationKind (the existing
  five didn't fit) with its own toggle in Settings → Notifications (the
  panel is data-driven off NATIVE_NOTIFICATION_KINDS, so the toggle and
  i18n are the only additions). The escalating usage line and grant-spent
  notice stay in-app toasts only. Dispatch is `global` (account-wide, not
  session-bound) and gated by the user's prefs + backgrounded check.
- Billing-page nudge. A `credits.*` crossing invalidates the
  `['billing','state']` query so Settings → Billing reflects the change
  immediately instead of waiting up to 30s for its poll.

`nativeNoticeInput()` is a pure mapping (urgent-key gate → native input),
unit-tested directly; the gateway-event branch does the localized-title
lookup and gated dispatch. i18n added for all four locales.
2026-07-23 01:25:58 -05:00
..
use-message-stream feat(desktop): native OS credit alerts + billing-page nudge (#69808) 2026-07-23 01:25:58 -05:00
use-prompt-actions fix(desktop): stop model-switch dup + route recovery resumes to the owning profile 2026-07-22 23:42:43 -05:00
use-session-actions fix(desktop): stop spurious provider onboarding from credential warnings 2026-07-23 00:18:21 -05:00
session-context-drift.test.ts fix(desktop): scope submit drift guard to genuine session switches (#69578) 2026-07-22 20:21:19 +00:00
session-context-drift.ts fix(desktop): scope submit drift guard to genuine session switches (#69578) 2026-07-22 20:21:19 +00:00
use-background-queue-drain.test.tsx fix(desktop): Stop parks the queue instead of firing the next queued prompt 2026-07-20 23:35:13 -04:00
use-background-queue-drain.ts fix(desktop): Stop parks the queue instead of firing the next queued prompt 2026-07-20 23:35:13 -04:00
use-context-suggestions.ts Add Hermes desktop app (#20059) 2026-05-31 17:46:56 -05:00
use-cwd-actions.test.tsx fmt(js): npm run fix on merge (#65229) 2026-07-15 21:40:56 +00:00
use-cwd-actions.ts fix(desktop): preserve sidebar workspace targets across new drafts 2026-07-12 04:43:43 -04:00
use-hermes-config.test.ts fmt(js): npm run fix on merge (#69805) 2026-07-23 03:32:32 +00:00
use-hermes-config.ts fix(desktop): separate workspace defaults from live cwd (#69765) 2026-07-23 02:44:26 +00:00
use-model-controls.test.tsx fix(desktop): scope model options by profile (#62795) 2026-07-22 09:40:50 -04:00
use-model-controls.ts fix(desktop): scope model options by profile (#62795) 2026-07-22 09:40:50 -04:00
use-preview-routing.test.tsx fmt(js): npm run fix on merge (#69562) 2026-07-22 19:01:09 +00:00
use-preview-routing.ts fmt(js): npm run fix on merge (#69562) 2026-07-22 19:01:09 +00:00
use-route-resume.test.tsx style(desktop,tui): fix all lint/type/formatting issues 2026-06-26 01:04:33 -05:00
use-route-resume.ts style(desktop,tui): fix all lint/type/formatting issues 2026-06-26 01:04:33 -05:00
use-session-actions.test.tsx fmt(js): npm run fix on merge (#69879) 2026-07-23 05:14:26 +00:00
use-session-list-actions.test.tsx fix(desktop): honor optimistic session tombstones on list & tree refresh 2026-07-22 22:54:25 -05:00
use-session-list-actions.ts fmt(js): npm run fix on merge (#69823) 2026-07-23 04:09:14 +00:00
use-session-state-cache.test.tsx fmt(js): npm run fix on merge (#67307) 2026-07-19 04:11:15 +00:00
use-session-state-cache.ts fmt(js): npm run fix on merge (#69644) 2026-07-22 21:56:16 +00:00