@aiwayds/dsh-tui-pi 0.6.0 → 0.7.0

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/lib/index.js CHANGED
@@ -25,6 +25,7 @@ import { DshSessionBridge, persistDefaultModel, stashSessionIdForReload, takeSta
25
25
  import { currentThemePreference, readFooterHintsPreference, readPanelHeightPreference, readThemePreference, registerThemeSettings, writeThemePreference, } from "./theme-settings.js";
26
26
  import { openAgentManager } from "./agents.js";
27
27
  import { openSettingsBrowser } from "./settings.js";
28
+ import { openLoginFlow, openLogoutFlow } from "./login.js";
28
29
  import { reloadPlugin } from "./reload.js";
29
30
  import { inspectPersistedSession, pickPersistedSession, showSessionInfo } from "./sessions.js";
30
31
  import { applySubagentPolicy } from "./subagent-policy.js";
@@ -843,6 +844,73 @@ export function apply(ctx) {
843
844
  description: 'Show the current keybindings (custom file: ~/.dsh/keybindings.json)',
844
845
  handler: invocation => hotkeysHandler(invocation.rawInput, invocation.signal),
845
846
  }), 'dsh-tui-pi: /hotkeys');
847
+ // /login: register provider credentials — the terminal counterpart of
848
+ // pi-agent's /login, on the Models category's add-provider flow. Opens a
849
+ // searchable provider directory (including already-configured routes, so
850
+ // a re-login can overwrite a key), collects one API key through the masked
851
+ // editor, and commits the provider profile + credential the way the web
852
+ // Models page does. An optional argument names the provider: `/login
853
+ // openai` jumps straight to the key editor on a unique match and to a
854
+ // filtered picker otherwise.
855
+ const loginHandler = async (rawInput) => {
856
+ if (ctx.get('settings') === undefined) {
857
+ return { kind: 'error', text: 'Settings service is not available.' };
858
+ }
859
+ const result = await openLoginFlow({
860
+ ctx,
861
+ tui: ui.tui,
862
+ theme: ui.theme,
863
+ restoreFocus: () => ui.tui.setFocus(ui.editor),
864
+ onError: message => renderer.renderNotice(message, 'error'),
865
+ target: rawInput?.trim() ?? '',
866
+ });
867
+ if (result.kind === 'unknown') {
868
+ return {
869
+ kind: 'error',
870
+ text: `Unknown provider '${result.target}' — run /login to pick from the directory.`,
871
+ };
872
+ }
873
+ if (result.kind === 'cancelled')
874
+ return { kind: 'success', text: 'Login cancelled.' };
875
+ return { kind: 'success', text: `Provider ${result.name} configured.` };
876
+ };
877
+ commands.registerLocal('login', loginHandler);
878
+ ctx.effect(() => ctx.commands.register({
879
+ name: 'login',
880
+ description: 'Configure a provider API key (register or replace credentials)',
881
+ handler: invocation => loginHandler(invocation.rawInput, invocation.signal),
882
+ }), 'dsh-tui-pi: /login');
883
+ // /logout: remove a stored provider API key — pi-agent's /logout on the
884
+ // dsh side. Lists the providers with a stored credential and removes only
885
+ // the key on selection; the settings.yaml provider entry stays, exactly
886
+ // like pi's /logout keeps the model configuration while dropping auth.
887
+ const logoutHandler = async () => {
888
+ if (ctx.get('settings') === undefined) {
889
+ return { kind: 'error', text: 'Settings service is not available.' };
890
+ }
891
+ const result = await openLogoutFlow({
892
+ ctx,
893
+ tui: ui.tui,
894
+ theme: ui.theme,
895
+ restoreFocus: () => ui.tui.setFocus(ui.editor),
896
+ onError: message => renderer.renderNotice(message, 'error'),
897
+ });
898
+ if (result.kind === 'none') {
899
+ return { kind: 'success', text: 'No stored credentials to remove.' };
900
+ }
901
+ if (result.kind === 'cancelled')
902
+ return { kind: 'success', text: 'Logout cancelled.' };
903
+ if (result.kind === 'failed') {
904
+ return { kind: 'error', text: `Failed to remove stored API key for ${result.name}.` };
905
+ }
906
+ return { kind: 'success', text: `Removed stored API key for ${result.name}.` };
907
+ };
908
+ commands.registerLocal('logout', logoutHandler);
909
+ ctx.effect(() => ctx.commands.register({
910
+ name: 'logout',
911
+ description: 'Remove a stored provider API key (keeps the provider configuration)',
912
+ handler: invocation => logoutHandler(invocation.rawInput, invocation.signal),
913
+ }), 'dsh-tui-pi: /logout');
846
914
  // ------------------------------------------------- powerline footer + git --
847
915
  const git = new GitBranchWatcher(process.cwd());
848
916
  git.onChange = () => ui.requestRender();
@@ -971,7 +1039,7 @@ export function apply(ctx) {
971
1039
  * "aborted due to timeout" — those run with a never-aborting signal
972
1040
  * instead.
973
1041
  */
974
- const MODAL_COMMANDS = new Set(['settings', 'model', 'think', 'session', 'resume', 'theme', 'permission', 'agents', 'subagents', 'skill']);
1042
+ const MODAL_COMMANDS = new Set(['settings', 'model', 'think', 'session', 'resume', 'theme', 'permission', 'agents', 'subagents', 'skill', 'login', 'logout']);
975
1043
  /**
976
1044
  * Dispatch one user skill invocation (function 1). The skill is validated
977
1045
  * against `ctx.skills` (exists + user-invocable), then the user's line is
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/lib/login.d.ts ADDED
@@ -0,0 +1,114 @@
1
+ /**
2
+ * /login and /logout — the terminal counterparts of pi-agent's credential
3
+ * management, built on the Models category's add-provider flow.
4
+ *
5
+ * /login opens a searchable provider directory (including already-configured
6
+ * routes, so a re-login can overwrite a key), collects one API key through the
7
+ * masked EditField, and commits the provider profile + credential the same way
8
+ * the web Models page does. An optional argument names a provider directly:
9
+ * `/login openai` jumps straight to the key editor on a unique match and opens
10
+ * the picker filtered to the matches otherwise.
11
+ *
12
+ * /logout lists the providers with a stored credential (an async
13
+ * credentials.describe probe per ref), lets the user pick one, and removes
14
+ * only the credential — the settings.yaml provider entry stays, exactly like
15
+ * pi's /logout removes auth but keeps the model configuration.
16
+ *
17
+ * The pure decision logic (`resolveLoginTarget`, `listLogoutCandidates`) is
18
+ * unit-tested in test/login.test.mjs.
19
+ */
20
+ import type { Context } from '@deepseek-ai/cordis';
21
+ import { type TUI } from '@earendil-works/pi-tui';
22
+ import { type ProviderCatalogEntry } from './provider-catalog.ts';
23
+ import type { TuiTheme } from './theme/index.ts';
24
+ /**
25
+ * Resolve a `/login <provider>` argument against the picker directory:
26
+ * case-insensitive exact match on the route id or display name first, then a
27
+ * case-insensitive prefix match on either. Returns the matching entries in
28
+ * directory order — the caller reads the length: 0 = unknown, 1 = unique
29
+ * (jump straight to the key editor), >1 = show the picker filtered to the
30
+ * matches.
31
+ */
32
+ export declare function resolveLoginTarget(input: string, entries: readonly ProviderCatalogEntry[]): ProviderCatalogEntry[];
33
+ /** One configured llm-pi-ai provider considered by the /logout picker. */
34
+ export interface LogoutProvider {
35
+ /** llm-pi-ai providers dict key (also the credential ref stem). */
36
+ id: string;
37
+ /** Derived credential reference (e.g. `ANTHROPIC_API_KEY`). */
38
+ ref: string;
39
+ /** Profile displayName, when set. */
40
+ displayName?: string;
41
+ }
42
+ /** A logout candidate: a logged-in provider with its picker label. */
43
+ export interface LogoutCandidate {
44
+ id: string;
45
+ ref: string;
46
+ /** Picker label: displayName, else catalog name, else the route key. */
47
+ name: string;
48
+ }
49
+ /**
50
+ * Filter the configured llm-pi-ai providers down to the logged-in ones — a
51
+ * provider is a logout candidate when its credential ref is configured. The
52
+ * caller supplies the configured judgment (from async credentials.describe
53
+ * probes); the filtering and label resolution stay pure.
54
+ */
55
+ export declare function listLogoutCandidates(providers: readonly LogoutProvider[], configuredRefs: ReadonlySet<string>): LogoutCandidate[];
56
+ /** Outcome of the /login flow. */
57
+ export type LoginFlowResult = {
58
+ kind: 'unknown';
59
+ target: string;
60
+ } | {
61
+ kind: 'cancelled';
62
+ } | {
63
+ kind: 'configured';
64
+ name: string;
65
+ };
66
+ export interface LoginFlowOptions {
67
+ ctx: Context;
68
+ tui: TUI;
69
+ theme: TuiTheme;
70
+ /** Focus target to restore when the flow closes (usually the editor). */
71
+ restoreFocus: () => void;
72
+ /** Error sink for writes that fail after the editor already closed. */
73
+ onError: (message: string) => void;
74
+ /** Optional `/login <provider>` target (route id or display name). */
75
+ target?: string;
76
+ }
77
+ /** Outcome of the /logout flow. */
78
+ export type LogoutFlowResult = {
79
+ kind: 'none';
80
+ } | {
81
+ kind: 'cancelled';
82
+ } | {
83
+ kind: 'removed';
84
+ name: string;
85
+ } | {
86
+ kind: 'failed';
87
+ name: string;
88
+ };
89
+ export interface LogoutFlowOptions {
90
+ ctx: Context;
91
+ tui: TUI;
92
+ theme: TuiTheme;
93
+ /** Focus target to restore when the flow closes (usually the editor). */
94
+ restoreFocus: () => void;
95
+ /** Error sink for a failed credential removal (transcript notice). */
96
+ onError: (message: string) => void;
97
+ }
98
+ /**
99
+ * Open the provider login flow. Resolves when the flow closes: `configured`
100
+ * names the provider whose key was stored (a `notice` outcome — committed
101
+ * profile without a credentials service — counts as configured too),
102
+ * `cancelled` when the user escaped without committing, and `unknown` when a
103
+ * `/login <provider>` argument matched no route. Focus returns to
104
+ * `restoreFocus` on close.
105
+ */
106
+ export declare function openLoginFlow(options: LoginFlowOptions): Promise<LoginFlowResult>;
107
+ /**
108
+ * Open the provider logout flow: list the providers with a stored credential,
109
+ * remove only the key on selection (the settings.yaml provider entry stays).
110
+ * Resolves `removed` with the provider label after the unset lands, `failed`
111
+ * when the unset rejects, `none` when nothing is logged in, and `cancelled`
112
+ * when the user escapes. Focus returns to `restoreFocus` on close.
113
+ */
114
+ export declare function openLogoutFlow(options: LogoutFlowOptions): Promise<LogoutFlowResult>;
package/lib/login.js ADDED
@@ -0,0 +1,218 @@
1
+ /**
2
+ * /login and /logout — the terminal counterparts of pi-agent's credential
3
+ * management, built on the Models category's add-provider flow.
4
+ *
5
+ * /login opens a searchable provider directory (including already-configured
6
+ * routes, so a re-login can overwrite a key), collects one API key through the
7
+ * masked EditField, and commits the provider profile + credential the same way
8
+ * the web Models page does. An optional argument names a provider directly:
9
+ * `/login openai` jumps straight to the key editor on a unique match and opens
10
+ * the picker filtered to the matches otherwise.
11
+ *
12
+ * /logout lists the providers with a stored credential (an async
13
+ * credentials.describe probe per ref), lets the user pick one, and removes
14
+ * only the credential — the settings.yaml provider entry stays, exactly like
15
+ * pi's /logout removes auth but keeps the model configuration.
16
+ *
17
+ * The pure decision logic (`resolveLoginTarget`, `listLogoutCandidates`) is
18
+ * unit-tested in test/login.test.mjs.
19
+ */
20
+ import { settingsNamespace } from '@deepseek-ai/dsh-settings';
21
+ import { SelectList } from '@earendil-works/pi-tui';
22
+ import { wrapFramedOverlay } from "./frame.js";
23
+ import { catalogEntry, deriveKeyRef, directoryProviderEntries, PROVIDER_CATALOG, providerProfileFor, } from "./provider-catalog.js";
24
+ import { AddProviderFlow, commitProvider } from "./settings.js";
25
+ /** The llm-pi-ai settings namespace (same id the /settings browser uses). */
26
+ const LLM_PI_AI_NS = settingsNamespace('llm-pi-ai');
27
+ /**
28
+ * Resolve a `/login <provider>` argument against the picker directory:
29
+ * case-insensitive exact match on the route id or display name first, then a
30
+ * case-insensitive prefix match on either. Returns the matching entries in
31
+ * directory order — the caller reads the length: 0 = unknown, 1 = unique
32
+ * (jump straight to the key editor), >1 = show the picker filtered to the
33
+ * matches.
34
+ */
35
+ export function resolveLoginTarget(input, entries) {
36
+ const needle = input.trim().toLowerCase();
37
+ if (needle === '')
38
+ return [];
39
+ const exact = entries.filter(entry => entry.id.toLowerCase() === needle || entry.name.toLowerCase() === needle);
40
+ if (exact.length > 0)
41
+ return exact;
42
+ return entries.filter(entry => entry.id.toLowerCase().startsWith(needle) || entry.name.toLowerCase().startsWith(needle));
43
+ }
44
+ /**
45
+ * Filter the configured llm-pi-ai providers down to the logged-in ones — a
46
+ * provider is a logout candidate when its credential ref is configured. The
47
+ * caller supplies the configured judgment (from async credentials.describe
48
+ * probes); the filtering and label resolution stay pure.
49
+ */
50
+ export function listLogoutCandidates(providers, configuredRefs) {
51
+ return providers
52
+ .filter(provider => configuredRefs.has(provider.ref))
53
+ .map(provider => ({
54
+ id: provider.id,
55
+ ref: provider.ref,
56
+ name: provider.displayName !== undefined && provider.displayName !== ''
57
+ ? provider.displayName
58
+ : catalogEntry(provider.id)?.name ?? provider.id,
59
+ }));
60
+ }
61
+ /** Live llm-pi-ai configurable-provider directory entries, or `undefined`. */
62
+ function llmPiAiDirectory(ctx) {
63
+ const llm = ctx.get('llm');
64
+ if (llm?.listConfigurableProviders === undefined)
65
+ return undefined;
66
+ try {
67
+ return llm.listConfigurableProviders()
68
+ .filter(entry => entry.settingsNs === LLM_PI_AI_NS)
69
+ .map(entry => (entry.declared !== undefined
70
+ ? { provider: entry.provider, declared: entry.declared }
71
+ : { provider: entry.provider }));
72
+ }
73
+ catch {
74
+ return undefined;
75
+ }
76
+ }
77
+ /**
78
+ * Every picker entry for /login: all configurable routes, including
79
+ * already-configured ones (a re-login overwrites the key), but never
80
+ * hand-declared routes — a re-login must not overwrite a hand-declared
81
+ * api/baseURL/models profile with the catalog's.
82
+ */
83
+ function loginDirectoryEntries(ctx) {
84
+ const directory = llmPiAiDirectory(ctx);
85
+ return directory !== undefined && directory.length > 0
86
+ ? directoryProviderEntries(directory, new Set())
87
+ : PROVIDER_CATALOG;
88
+ }
89
+ /** Serialized llm-pi-ai profile write for /login (revision read at execution time). */
90
+ async function writeProviderProfile(settings, entry) {
91
+ try {
92
+ await settings.mutate(LLM_PI_AI_NS, [{ op: 'set', path: ['providers', entry.id], value: providerProfileFor(entry) }], settings.describe().find(desc => desc.ns === LLM_PI_AI_NS)?.revision);
93
+ }
94
+ catch (error) {
95
+ return error instanceof Error ? error.message : String(error);
96
+ }
97
+ return undefined;
98
+ }
99
+ /**
100
+ * Open the provider login flow. Resolves when the flow closes: `configured`
101
+ * names the provider whose key was stored (a `notice` outcome — committed
102
+ * profile without a credentials service — counts as configured too),
103
+ * `cancelled` when the user escaped without committing, and `unknown` when a
104
+ * `/login <provider>` argument matched no route. Focus returns to
105
+ * `restoreFocus` on close.
106
+ */
107
+ export async function openLoginFlow(options) {
108
+ const settings = options.ctx.get('settings');
109
+ if (settings === undefined)
110
+ throw new Error('settings service is not available');
111
+ const entries = loginDirectoryEntries(options.ctx);
112
+ const target = options.target?.trim() ?? '';
113
+ let pickerEntries = entries;
114
+ let initialEntry;
115
+ if (target !== '') {
116
+ const matches = resolveLoginTarget(target, entries);
117
+ if (matches.length === 1) {
118
+ initialEntry = matches[0];
119
+ }
120
+ else if (matches.length > 1) {
121
+ pickerEntries = matches;
122
+ }
123
+ else {
124
+ return { kind: 'unknown', target };
125
+ }
126
+ }
127
+ let committedName;
128
+ let overlay;
129
+ return new Promise(resolve => {
130
+ const flow = new AddProviderFlow(options.tui, options.theme, {
131
+ entries: pickerEntries,
132
+ ...(initialEntry !== undefined ? { initialEntry } : {}),
133
+ onCommit: (entry, key) => commitProvider(options.ctx, () => writeProviderProfile(settings, entry), entry, key).then(result => {
134
+ // A full success (undefined), and the no-credentials-service `notice`
135
+ // alike, mean the provider is configured now.
136
+ if (result === undefined || result.notice !== undefined)
137
+ committedName = entry.name;
138
+ return result;
139
+ }),
140
+ onExit: () => {
141
+ overlay?.hide();
142
+ options.restoreFocus();
143
+ resolve(committedName === undefined ? { kind: 'cancelled' } : { kind: 'configured', name: committedName });
144
+ },
145
+ onError: options.onError,
146
+ });
147
+ overlay = options.tui.showOverlay(wrapFramedOverlay(options.theme, flow), { width: '80%', maxHeight: '80%' });
148
+ });
149
+ }
150
+ /**
151
+ * Open the provider logout flow: list the providers with a stored credential,
152
+ * remove only the key on selection (the settings.yaml provider entry stays).
153
+ * Resolves `removed` with the provider label after the unset lands, `failed`
154
+ * when the unset rejects, `none` when nothing is logged in, and `cancelled`
155
+ * when the user escapes. Focus returns to `restoreFocus` on close.
156
+ */
157
+ export async function openLogoutFlow(options) {
158
+ const settings = options.ctx.get('settings');
159
+ if (settings === undefined)
160
+ throw new Error('settings service is not available');
161
+ const credentials = options.ctx.get('credentials');
162
+ const piDesc = settings.describe().find(desc => desc.ns === LLM_PI_AI_NS);
163
+ const providers = (piDesc?.value ?? {});
164
+ const candidates = Object.entries(providers.providers ?? {}).map(([id, profile]) => {
165
+ const displayName = typeof profile === 'object' && profile !== null
166
+ ? profile.displayName
167
+ : undefined;
168
+ return {
169
+ id,
170
+ ref: deriveKeyRef(id),
171
+ displayName: typeof displayName === 'string' && displayName !== '' ? displayName : undefined,
172
+ };
173
+ });
174
+ // No credential store in this process → there is nothing to unset.
175
+ if (credentials?.describe === undefined)
176
+ return { kind: 'none' };
177
+ const probes = await Promise.all(candidates.map(async (provider) => {
178
+ try {
179
+ const info = await credentials.describe(provider.ref);
180
+ return info.configured === true;
181
+ }
182
+ catch {
183
+ // A failing probe must not break the list — the provider reads as
184
+ // logged out, same as the Models status column.
185
+ return false;
186
+ }
187
+ }));
188
+ const configuredRefs = new Set(candidates.filter((_, index) => probes[index]).map(provider => provider.ref));
189
+ const loggedIn = listLogoutCandidates(candidates, configuredRefs);
190
+ if (loggedIn.length === 0)
191
+ return { kind: 'none' };
192
+ const items = loggedIn.map(candidate => ({
193
+ value: candidate.id,
194
+ label: candidate.name,
195
+ description: candidate.ref,
196
+ }));
197
+ return new Promise(resolve => {
198
+ const list = new SelectList(items, 12, options.theme.selectList);
199
+ // Framed overlay: 13 list rows + 4 frame rows fit inside 75% of 24 rows.
200
+ const overlay = options.tui.showOverlay(wrapFramedOverlay(options.theme, list), { width: '80%', maxHeight: '75%' });
201
+ const finish = (candidate) => {
202
+ overlay.hide();
203
+ options.restoreFocus();
204
+ if (candidate === undefined) {
205
+ resolve({ kind: 'cancelled' });
206
+ return;
207
+ }
208
+ void credentials.unset(candidate.ref).then(() => resolve({ kind: 'removed', name: candidate.name }), (cause) => {
209
+ const message = cause instanceof Error ? cause.message : String(cause);
210
+ options.onError(`Failed to remove stored key for ${candidate.name}: ${message}`);
211
+ resolve({ kind: 'failed', name: candidate.name });
212
+ });
213
+ };
214
+ list.onSelect = item => finish(loggedIn.find(candidate => candidate.id === item.value));
215
+ list.onCancel = () => finish(undefined);
216
+ });
217
+ }
218
+ //# sourceMappingURL=login.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../src/login.ts"],"names":[],"mappings":"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"}