@stratusagent/dashboard 0.9.1 → 0.9.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stratusagent/dashboard",
3
- "version": "0.9.1",
3
+ "version": "0.9.2",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -2,7 +2,7 @@ import { el } from '../lib/dom.js';
2
2
  import { api } from '../lib/api.js';
3
3
  import { refreshCore, store } from '../app.js';
4
4
 
5
- const PROVIDERS = ['anthropic', 'openai'];
5
+ const PROVIDERS = ['anthropic', 'openai', 'codex'];
6
6
 
7
7
  /**
8
8
  * Bring a `<select>`'s options up to date without disturbing a choice.
@@ -83,7 +83,7 @@ export const renderSettings = (section) => {
83
83
  const provider = el('select', {}, ...PROVIDERS.map((name) => el('option', { value: name }, name)));
84
84
  const type = el('select', {},
85
85
  el('option', { value: 'api_key' }, 'API key'),
86
- el('option', { value: 'oauth_token' }, 'Claude subscription token'));
86
+ el('option', { value: 'oauth_token' }, 'Subscription sign-in'));
87
87
  const value = el('input', { type: 'password', placeholder: 'paste the key' });
88
88
  const baseUrl = el('input', { placeholder: 'optional — a proxy or local endpoint' });
89
89
 
@@ -149,6 +149,7 @@ export const renderSettings = (section) => {
149
149
  el('label', {}, 'Key'), value,
150
150
  el('label', {}, 'Endpoint'), baseUrl,
151
151
  el('p', { class: 'field-note' }, 'A key is bound to the endpoint you save it with, and is never sent anywhere else.'),
152
+ el('p', { class: 'field-note' }, 'A subscription sign-in is a Claude Code setup token for anthropic. For codex it only records that this machine uses `codex login` — type anything (say, "chatgpt") as the value; it is never sent anywhere.'),
152
153
  el('div', { class: 'actions' }, verifyButton, saveButton),
153
154
  ),
154
155
  refresh() {
@@ -156,7 +157,7 @@ export const renderSettings = (section) => {
156
157
  el('div', { class: 'grow' },
157
158
  el('div', { class: 'title' }, entry.provider),
158
159
  el('div', { class: 'sub' }, entry.stored
159
- ? `${entry.type === 'oauth_token' ? 'Claude subscription' : 'API key'}${entry.baseUrl ? ` · ${entry.baseUrl}` : ''}`
160
+ ? `${entry.type === 'oauth_token' ? (entry.provider === 'codex' ? 'ChatGPT sign-in (codex login)' : 'Claude subscription') : 'API key'}${entry.baseUrl ? ` · ${entry.baseUrl}` : ''}`
160
161
  : 'not signed in')),
161
162
  el('span', { class: `pill${entry.stored ? ' running' : ''}` }, entry.stored ? 'signed in' : 'none'),
162
163
  )));