Austin Pickett
3be1326f8d
feat(desktop): /api/env derives provider key membership from unified catalog
...
The Keys tab now surfaces every keys-tab provider in provider_catalog() (the
`hermes model` universe), synthesizing a card even when the env var has no hand
entry in OPTIONAL_ENV_VARS. Closes the drift where openai-api, kilocode, novita,
tencent-tokenhub, and copilot were CLI-configurable but invisible in the desktop
Providers → API keys tab.
Each provider row now carries backend-derived provider/provider_label grouping
hints so the desktop can group by the same provider identity the CLI picker
uses. Hand OPTIONAL_ENV_VARS prose still wins where present (enrichment, not a
gate). Shared non-provider credentials (e.g. tool-category GITHUB_TOKEN) are
explicitly not hijacked into a provider card — Copilot uses its provider-owned
COPILOT_GITHUB_TOKEN.
2026-06-19 07:26:46 -07:00
..
2026-06-16 15:49:59 -07:00
2026-05-18 10:14:38 -07:00
2026-06-19 17:32:13 +05:30
2026-06-19 01:53:32 +05:30
2026-06-15 06:29:00 -07:00
2026-06-18 09:09:21 +10:00
2026-06-14 04:51:50 -07:00
2026-06-02 12:37:40 -04:00
2026-06-19 07:07:06 -07:00
2026-06-19 07:26:46 -07:00
2026-06-18 16:04:58 -05:00
2026-06-11 15:06:07 -04:00
2026-06-06 11:46:24 -07:00
2026-06-19 13:53:39 +05:30
2026-06-19 15:23:41 +08:00
2026-06-16 13:09:40 -07:00
2026-06-19 17:32:13 +05:30
2026-06-08 15:21:28 -07:00
2026-06-05 13:30:02 +10:00
2026-05-28 22:26:25 -07:00
2026-06-19 07:16:57 -07:00
2026-06-19 07:07:06 -07:00
2026-06-01 19:52:28 -07:00
2026-06-19 06:31:56 -07:00
2026-06-15 11:55:02 -04:00
2026-06-13 14:50:05 -07:00
2026-05-28 22:26:25 -07:00
2026-06-06 18:33:44 -07:00
2026-05-28 22:26:25 -07:00
2026-05-18 21:43:59 -07:00
2026-05-28 22:26:25 -07:00
2026-06-15 12:50:19 -04:00
2026-06-17 18:48:35 -05:00
2026-06-03 07:32:00 +07:00
2026-06-14 00:27:59 -04:00
2026-06-10 15:32:34 +10:00
2026-06-01 16:06:44 +10:00
2026-06-19 10:52:16 +10:00
2026-06-01 13:32:55 +10:00
2026-06-05 02:54:34 -07:00
2026-06-10 17:37:34 -07:00
2026-05-25 15:18:55 -07:00
2026-05-28 22:26:25 -07:00
2026-05-28 22:26:25 -07:00
2026-06-08 06:32:42 -07:00
2026-05-28 22:26:25 -07:00
2026-06-17 12:11:31 +10:00
2026-06-17 15:39:04 -05:00
2026-05-28 21:40:39 -07:00
2026-05-27 14:31:55 -07:00
2026-06-19 17:36:18 +05:30
2026-06-08 09:35:22 -07:00
2026-05-29 22:29:48 -07:00
2026-05-27 10:49:33 -07:00
2026-06-01 20:13:42 -07:00
2026-06-08 02:18:21 -07:00
2026-06-18 22:11:35 +05:30
2026-06-18 16:26:34 +07:00
2026-06-18 14:14:41 +10:00
2026-06-14 17:34:11 +07:00
2026-05-27 13:55:51 -07:00
2026-05-28 22:26:25 -07:00
2026-06-13 05:19:44 -07:00
2026-05-28 22:26:25 -07:00
2026-05-28 22:26:25 -07:00
2026-05-28 22:26:25 -07:00
2026-05-28 22:26:25 -07:00
2026-05-28 22:26:25 -07:00
2026-06-09 23:22:10 -07:00
2026-05-28 22:26:25 -07:00
2026-06-04 18:04:47 -07:00
2026-06-03 11:22:06 -07:00
2026-05-28 22:26:25 -07:00
2026-06-09 03:17:12 -07:00
2026-06-18 09:16:40 -07:00
2026-05-28 22:26:25 -07:00
2026-06-08 09:35:22 -07:00
2026-05-28 22:26:25 -07:00
2026-06-08 12:11:54 -07:00
2026-06-12 13:42:42 -04:00
2026-06-08 07:03:12 -07:00
2026-06-09 18:49:08 -05:00
2026-06-14 03:20:21 -07:00
2026-05-28 22:26:25 -07:00
2026-05-28 22:26:25 -07:00
2026-05-28 22:26:25 -07:00
2026-05-28 22:26:25 -07:00
2026-06-07 05:01:27 -07:00
2026-06-03 06:36:46 -07:00
2026-06-18 16:04:58 -05:00
2026-06-12 08:30:06 -05:00
2026-06-18 05:41:23 -07:00
2026-06-12 14:02:19 -04:00
2026-06-03 12:00:27 -07:00
2026-05-28 22:26:25 -07:00
2026-06-12 02:06:47 -07:00
2026-05-28 22:26:25 -07:00
2026-06-07 17:49:38 -07:00