Teknium
98d11c95f4
feat(vault): zero-setup UX — save a login on the page that needs it, managers auto-detected, one "Passwords & Logins" surface
...
Nobody should have to learn `hermes vault add` or find a toggle before "log into GitHub" works.
- browser_vault_save_login: when the agent reaches a sign-in page with no saved login it asks the user
on THEIR surface (CLI two-step panel on the sudo modal: identifier shown, password masked; Desktop
card with labelled Email/username + Password fields). The answer goes to the encrypted vault bound to
the page origin and is filled at once; the model gets back only the handle and identifier. Declining
returns save_declined; headless sessions get prompt_unavailable. Never a password in chat.
- Vault tools ride with the browser toolset (check_browser_requirements) instead of appearing only once
the vault has items — an empty vault is exactly when save_login is needed. browser_vault_list hints
at it when empty.
- 1Password / Bitwarden are login sources as soon as their CLI is installed; `vault.<name>.enabled`
is opt-OUT only. Settings shows Detected/Locked/Unlocked/Off/Not detected with a switch only for
installed managers; `hermes vault sources` reports detection, `--disable`/`--enable` flip the opt-out.
- Desktop nav/page renamed "Passwords & Logins"; empty state tells the user they do not need to add
anything; all five locales updated. Docs rewritten from "how it works" to "say log into X".
- New per-thread SaveLoginPrompt callback (agent/vault_backends/unlock.py) installed beside the unlock
prompt on every CLI site and the gateway bridge (vault.save_login.request/respond/expire), propagated
to worker threads via tools.thread_context.
Live: CLI PTY (real model, packaged Chromium, local login server) — panel shown, identifier + masked
password typed, server received the correct password, password absent from terminal transcript and
from every file under HERMES_HOME outside vault/. Native Electron (headless, isolated HOME/HERMES_HOME,
own Vite + CDP port) — card shown, "Save & sign in", server received the password, Settings lists the
saved item, password absent from the rendered UI.
2026-09-10 10:35:07 -07:00
..
2026-09-07 07:10:28 -07:00
2026-09-07 16:48:29 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 17:13:22 -07:00
2026-09-04 00:15:16 -07:00
2026-09-09 13:01:48 -07:00
2026-09-10 10:35:07 -07:00
2026-09-06 20:50:02 +05:30
2026-09-02 13:29:48 -07:00
2026-09-03 13:16:47 -07:00
2026-09-02 18:56:06 -07:00
2026-09-03 09:44:26 -07:00
2026-09-10 13:23:00 +02:00
2026-09-09 11:29:56 -07:00
2026-09-09 12:21:28 +05:30
2026-09-04 00:15:16 -07:00
2026-09-07 08:07:26 -07:00
2026-09-06 05:37:03 -07:00
2026-09-06 05:37:03 -07:00
2026-09-03 09:44:26 -07:00
2026-09-02 20:10:26 -07:00
2026-09-02 21:38:20 -07:00
2026-09-03 17:13:22 -07:00
2026-09-10 09:11:00 -07:00
2026-09-07 07:06:58 -07:00
2026-09-07 06:02:22 -07:00
2026-09-03 13:29:35 -07:00
2026-09-07 07:06:58 -07:00
2026-09-09 12:19:13 +05:30
2026-09-02 18:18:18 -07:00
2026-09-03 17:13:22 -07:00
2026-09-02 18:49:57 -07:00
2026-09-02 18:49:57 -07:00
2026-09-02 18:49:57 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 17:13:22 -07:00
2026-09-04 00:15:16 -07:00
2026-09-05 10:54:19 +05:30
2026-09-09 11:29:56 -07:00
2026-09-07 05:24:15 -07:00
2026-09-07 05:24:15 -07:00
2026-09-07 06:07:16 -07:00
2026-09-02 18:47:54 -07:00
2026-09-07 21:43:54 +05:30
2026-09-07 08:09:57 -07:00
2026-09-06 22:45:31 +05:30
2026-09-07 21:22:49 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 09:44:26 -07:00
2026-09-07 08:13:01 -07:00
2026-09-07 05:59:08 -07:00
2026-09-09 09:21:55 -07:00
2026-09-03 09:44:26 -07:00
2026-09-05 16:44:23 +05:30
2026-09-10 03:04:51 -07:00
2026-09-10 10:27:07 -07:00
2026-09-03 09:44:26 -07:00
2026-09-02 18:57:14 -07:00
2026-09-07 08:06:48 -07:00
2026-09-07 08:06:48 -07:00
2026-09-03 22:00:01 -07:00
2026-09-03 13:48:49 -07:00
2026-09-03 09:44:26 -07:00
2026-09-07 06:15:43 -07:00
2026-09-07 08:19:32 -07:00
2026-09-07 07:10:28 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 04:31:46 -07:00
2026-09-09 13:01:48 -07:00
2026-09-09 16:30:24 -07:00
2026-09-02 13:29:48 -07:00
2026-09-03 17:13:22 -07:00
2026-09-09 11:29:56 -07:00
2026-09-02 18:22:13 -07:00
2026-09-10 10:35:07 -07:00
2026-09-03 09:44:26 -07:00
2026-09-07 21:10:50 -07:00
2026-09-02 19:32:53 -07:00
2026-09-03 17:13:22 -07:00
2026-09-04 00:15:16 -07:00
2026-09-07 08:08:04 -07:00
2026-09-06 14:19:42 -07:00
2026-09-07 06:05:13 -07:00
2026-09-03 09:44:26 -07:00
2026-09-02 18:53:53 -07:00
2026-09-09 13:08:25 +05:30
2026-09-09 10:58:16 -07:00
2026-09-07 08:28:43 -07:00
2026-09-02 18:22:13 -07:00
2026-09-02 18:58:42 -07:00
2026-09-02 18:22:13 -07:00
2026-09-02 20:02:44 -07:00
2026-09-03 22:00:01 -07:00
2026-09-02 19:22:42 -07:00
2026-09-03 09:44:26 -07:00
2026-09-02 18:22:13 -07:00
2026-09-02 18:29:05 -07:00
2026-09-02 22:21:06 -07:00
2026-09-10 10:27:07 -07:00
2026-09-10 10:27:07 -07:00
2026-09-02 18:28:38 -07:00
2026-09-02 18:28:38 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 09:44:26 -07:00
2026-09-07 06:15:43 -07:00
2026-09-02 19:10:21 -07:00
2026-09-10 09:22:31 -07:00
2026-09-07 21:43:54 +05:30
2026-09-02 18:33:06 -07:00
2026-09-06 09:09:00 -07:00
2026-09-04 00:15:16 -07:00
2026-09-06 09:11:04 -07:00
2026-09-02 22:21:06 -07:00
2026-09-02 19:05:15 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 17:13:22 -07:00
2026-09-09 12:17:57 +05:30
2026-09-03 09:44:26 -07:00
2026-09-03 15:07:39 -07:00
2026-09-02 19:10:21 -07:00
2026-09-02 18:22:01 -07:00
2026-09-03 13:28:22 -07:00
2026-09-09 12:21:28 +05:30
2026-09-03 17:13:22 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 09:44:26 -07:00
2026-09-02 18:33:06 -07:00
2026-09-02 19:10:21 -07:00
2026-09-02 18:44:36 -07:00
2026-09-02 19:10:21 -07:00
2026-09-02 19:22:52 -07:00
2026-09-02 19:18:18 -07:00
2026-09-02 18:51:24 -07:00
2026-09-07 21:43:54 +05:30
2026-09-03 13:48:49 -07:00
2026-09-07 08:24:54 -07:00
2026-09-10 09:22:31 -07:00
2026-09-10 10:35:07 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 09:44:26 -07:00
2026-09-02 19:16:38 -07:00
2026-09-08 04:38:47 -07:00
2026-09-03 17:13:22 -07:00
2026-09-02 19:18:18 -07:00
2026-09-03 04:56:59 +05:30
2026-09-07 06:15:43 -07:00
2026-09-06 05:35:12 -07:00
2026-09-09 10:32:01 +05:30
2026-09-07 07:10:28 -07:00
2026-09-02 19:19:44 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 09:44:26 -07:00
2026-09-07 07:10:28 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 03:31:03 -07:00
2026-09-03 10:40:25 -07:00
2026-09-03 12:29:52 -07:00
2026-09-03 13:29:35 -07:00
2026-09-02 19:42:28 -07:00
2026-09-03 03:31:03 -07:00
2026-09-04 02:03:08 -07:00
2026-09-02 19:36:47 -07:00
2026-09-09 10:31:26 +05:30
2026-09-09 10:31:26 +05:30
2026-09-03 13:24:04 -07:00
2026-09-04 00:15:16 -07:00
2026-09-02 19:45:03 -07:00
2026-09-02 19:19:44 -07:00
2026-09-02 19:42:28 -07:00
2026-09-03 10:40:25 -07:00
2026-09-10 02:21:16 +05:30
2026-09-10 02:21:16 +05:30
2026-09-03 10:40:25 -07:00
2026-09-06 22:56:51 +05:30
2026-09-02 22:23:45 -07:00
2026-09-03 17:13:22 -07:00
2026-09-04 00:15:16 -07:00
2026-09-04 00:15:16 -07:00
2026-09-03 09:44:26 -07:00
2026-09-04 00:15:16 -07:00
2026-09-02 18:51:40 -07:00
2026-09-09 11:29:56 -07:00
2026-09-03 09:44:26 -07:00
2026-09-10 10:27:07 -07:00
2026-09-06 13:21:17 -07:00
2026-09-10 10:27:07 -07:00
2026-09-03 13:12:23 -07:00
2026-09-09 09:51:31 -07:00
2026-09-09 12:17:57 +05:30
2026-09-10 10:27:07 -07:00
2026-09-03 09:44:26 -07:00
2026-09-10 13:23:00 +02:00
2026-09-09 09:51:31 -07:00
2026-09-09 12:17:57 +05:30
2026-09-03 09:44:26 -07:00
2026-09-03 13:12:23 -07:00
2026-09-06 13:21:17 -07:00
2026-09-06 13:21:17 -07:00
2026-09-09 16:30:24 -07:00
2026-09-07 06:15:43 -07:00
2026-09-03 13:12:23 -07:00
2026-09-02 18:40:01 -07:00
2026-09-03 17:13:22 -07:00
2026-09-02 19:30:27 -07:00
2026-09-02 19:26:50 -07:00
2026-09-03 09:44:26 -07:00
2026-09-02 18:45:32 -07:00
2026-09-09 11:42:43 -07:00
2026-09-06 14:19:42 -07:00
2026-09-06 13:21:17 -07:00
2026-09-10 02:44:26 -07:00
2026-09-10 10:35:07 -07:00
2026-09-10 10:35:07 -07:00
2026-09-09 02:35:41 -07:00
2026-09-02 19:19:54 -07:00
2026-09-02 18:29:10 -07:00
2026-09-02 19:07:07 -07:00
2026-09-03 17:13:22 -07:00
2026-09-04 00:15:16 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 17:13:22 -07:00
2026-09-04 07:17:00 -07:00