@agi-fans/dsh-tui 0.22.0 → 0.23.1
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/LICENSE +26 -0
- package/lib/CHANGELOG.md +219 -1
- package/lib/chrome/box.d.ts +1 -18
- package/lib/chrome/box.js +2 -45
- package/lib/chrome/box.js.map +1 -1
- package/lib/chrome/code-highlight.js +4 -4
- package/lib/chrome/code-highlight.js.map +1 -1
- package/lib/chrome/command-output.d.ts +0 -1
- package/lib/chrome/command-output.js +11 -5
- package/lib/chrome/command-output.js.map +1 -1
- package/lib/chrome/goal-bar.js +1 -1
- package/lib/chrome/goal-bar.js.map +1 -1
- package/lib/chrome/main-screen-renderer.js +4 -3
- package/lib/chrome/main-screen-renderer.js.map +1 -1
- package/lib/chrome/markdown.d.ts +3 -3
- package/lib/chrome/markdown.js +85 -36
- package/lib/chrome/markdown.js.map +1 -1
- package/lib/chrome/md-style.d.ts +5 -2
- package/lib/chrome/md-style.js +13 -4
- package/lib/chrome/md-style.js.map +1 -1
- package/lib/chrome/renderer.d.ts +37 -1
- package/lib/chrome/renderer.js.map +1 -1
- package/lib/chrome/status-line.d.ts +3 -3
- package/lib/chrome/status-line.js +5 -5
- package/lib/chrome/status-line.js.map +1 -1
- package/lib/chrome/theme.d.ts +8 -3
- package/lib/chrome/theme.js +51 -153
- package/lib/chrome/theme.js.map +1 -1
- package/lib/commands/auth-account.d.ts +9 -0
- package/lib/commands/auth-account.js +202 -0
- package/lib/commands/auth-account.js.map +1 -0
- package/lib/commands/auth.js +238 -414
- package/lib/commands/auth.js.map +1 -1
- package/lib/commands/diff.js +22 -16
- package/lib/commands/diff.js.map +1 -1
- package/lib/commands/export.d.ts +0 -1
- package/lib/commands/export.js +99 -32
- package/lib/commands/export.js.map +1 -1
- package/lib/commands/files.js +11 -9
- package/lib/commands/files.js.map +1 -1
- package/lib/commands/integrations.d.ts +12 -1
- package/lib/commands/integrations.js +120 -23
- package/lib/commands/integrations.js.map +1 -1
- package/lib/commands/jobs-browser.d.ts +3 -0
- package/lib/commands/jobs-browser.js +152 -0
- package/lib/commands/jobs-browser.js.map +1 -0
- package/lib/commands/jobs.d.ts +3 -14
- package/lib/commands/jobs.js +26 -18
- package/lib/commands/jobs.js.map +1 -1
- package/lib/commands/model.d.ts +3 -0
- package/lib/commands/model.js +212 -128
- package/lib/commands/model.js.map +1 -1
- package/lib/commands/open-external.d.ts +2 -0
- package/lib/commands/open-external.js +19 -0
- package/lib/commands/open-external.js.map +1 -0
- package/lib/commands/permission.js +65 -54
- package/lib/commands/permission.js.map +1 -1
- package/lib/commands/plugins.js +381 -139
- package/lib/commands/plugins.js.map +1 -1
- package/lib/commands/schedule-catalog.d.ts +12 -0
- package/lib/commands/schedule-catalog.js +41 -0
- package/lib/commands/schedule-catalog.js.map +1 -0
- package/lib/commands/schedule-history.d.ts +4 -0
- package/lib/commands/schedule-history.js +62 -0
- package/lib/commands/schedule-history.js.map +1 -0
- package/lib/commands/schedule.d.ts +12 -15
- package/lib/commands/schedule.js +220 -187
- package/lib/commands/schedule.js.map +1 -1
- package/lib/commands/session-configuration.d.ts +3 -0
- package/lib/commands/session-configuration.js +62 -28
- package/lib/commands/session-configuration.js.map +1 -1
- package/lib/commands/session.js +116 -66
- package/lib/commands/session.js.map +1 -1
- package/lib/commands/terminal.js +14 -8
- package/lib/commands/terminal.js.map +1 -1
- package/lib/definition.d.ts +115 -15
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/input/actions.d.ts +1 -1
- package/lib/input/actions.js +5 -2
- package/lib/input/actions.js.map +1 -1
- package/lib/input/composer-files.d.ts +2 -0
- package/lib/input/composer-files.js +13 -3
- package/lib/input/composer-files.js.map +1 -1
- package/lib/input/image-paste.d.ts +5 -12
- package/lib/input/image-paste.js +32 -28
- package/lib/input/image-paste.js.map +1 -1
- package/lib/input/key-test.d.ts +5 -0
- package/lib/input/key-test.js +19 -0
- package/lib/input/key-test.js.map +1 -0
- package/lib/input/keys.d.ts +2 -0
- package/lib/input/keys.js +4 -1
- package/lib/input/keys.js.map +1 -1
- package/lib/locale/index.d.ts +6 -0
- package/lib/locale/index.js +32 -0
- package/lib/locale/index.js.map +1 -0
- package/lib/locale/prompt.d.ts +4 -0
- package/lib/locale/prompt.js +24 -0
- package/lib/locale/prompt.js.map +1 -0
- package/lib/locale/zh.d.ts +1114 -0
- package/lib/locale/zh.js +1115 -0
- package/lib/locale/zh.js.map +1 -0
- package/lib/prompt-intents.d.ts +4 -0
- package/lib/prompt-intents.js +4 -0
- package/lib/prompt-intents.js.map +1 -1
- package/lib/runtime/account-settings.d.ts +18 -0
- package/lib/runtime/account-settings.js +241 -0
- package/lib/runtime/account-settings.js.map +1 -0
- package/lib/runtime/agent-profile.d.ts +3 -3
- package/lib/runtime/agent-profile.js +4 -4
- package/lib/runtime/agent-profile.js.map +1 -1
- package/lib/runtime/btw-policy.js +2 -1
- package/lib/runtime/btw-policy.js.map +1 -1
- package/lib/runtime/btw.js +1 -2
- package/lib/runtime/btw.js.map +1 -1
- package/lib/runtime/composer-images.d.ts +2 -2
- package/lib/runtime/composer-images.js +4 -4
- package/lib/runtime/composer-images.js.map +1 -1
- package/lib/runtime/composer-shell.js +27 -1
- package/lib/runtime/composer-shell.js.map +1 -1
- package/lib/runtime/file-browser.d.ts +19 -0
- package/lib/runtime/file-browser.js +291 -0
- package/lib/runtime/file-browser.js.map +1 -0
- package/lib/runtime/file-review.d.ts +6 -9
- package/lib/runtime/file-review.js +91 -7
- package/lib/runtime/file-review.js.map +1 -1
- package/lib/runtime/help-reader.d.ts +12 -0
- package/lib/runtime/help-reader.js +50 -0
- package/lib/runtime/help-reader.js.map +1 -0
- package/lib/runtime/human-interaction.js +1 -1
- package/lib/runtime/human-interaction.js.map +1 -1
- package/lib/runtime/model-catalog-editor.d.ts +12 -0
- package/lib/runtime/model-catalog-editor.js +215 -0
- package/lib/runtime/model-catalog-editor.js.map +1 -0
- package/lib/runtime/model-settings.d.ts +11 -0
- package/lib/runtime/model-settings.js +404 -0
- package/lib/runtime/model-settings.js.map +1 -0
- package/lib/runtime/plugin-settings.d.ts +4 -1
- package/lib/runtime/plugin-settings.js +164 -88
- package/lib/runtime/plugin-settings.js.map +1 -1
- package/lib/runtime/prompt-browser.d.ts +9 -0
- package/lib/runtime/prompt-browser.js +19 -0
- package/lib/runtime/prompt-browser.js.map +1 -0
- package/lib/runtime/provider-local.d.ts +27 -27
- package/lib/runtime/provider-local.js +1288 -308
- package/lib/runtime/provider-local.js.map +1 -1
- package/lib/runtime/reference-reader.d.ts +15 -0
- package/lib/runtime/reference-reader.js +78 -0
- package/lib/runtime/reference-reader.js.map +1 -0
- package/lib/runtime/runner.js +38 -29
- package/lib/runtime/runner.js.map +1 -1
- package/lib/runtime/session-runtime.js +1 -1
- package/lib/runtime/session-runtime.js.map +1 -1
- package/lib/runtime/settings-draft.d.ts +21 -0
- package/lib/runtime/settings-draft.js +166 -0
- package/lib/runtime/settings-draft.js.map +1 -0
- package/lib/runtime/settings-preferences.js +1 -1
- package/lib/runtime/settings-preferences.js.map +1 -1
- package/lib/runtime/startup-notices.d.ts +0 -1
- package/lib/runtime/startup-notices.js +35 -6
- package/lib/runtime/startup-notices.js.map +1 -1
- package/lib/runtime/subagent-model-selection.js +2 -1
- package/lib/runtime/subagent-model-selection.js.map +1 -1
- package/lib/runtime/subagent-settings.d.ts +14 -0
- package/lib/runtime/subagent-settings.js +288 -0
- package/lib/runtime/subagent-settings.js.map +1 -0
- package/lib/runtime/terminal-notifications.d.ts +3 -0
- package/lib/runtime/terminal-notifications.js +13 -8
- package/lib/runtime/terminal-notifications.js.map +1 -1
- package/lib/runtime/terminal-probe.d.ts +2 -0
- package/lib/runtime/terminal-probe.js +9 -0
- package/lib/runtime/terminal-probe.js.map +1 -1
- package/lib/runtime/tool-presentation.js.map +1 -1
- package/lib/runtime/tool-reader.d.ts +5 -0
- package/lib/runtime/tool-reader.js +27 -0
- package/lib/runtime/tool-reader.js.map +1 -0
- package/lib/runtime/web-settings.d.ts +14 -0
- package/lib/runtime/web-settings.js +339 -0
- package/lib/runtime/web-settings.js.map +1 -0
- package/lib/session/command-attachments.d.ts +17 -0
- package/lib/session/command-attachments.js +50 -0
- package/lib/session/command-attachments.js.map +1 -0
- package/lib/session/context-diagnostics.d.ts +16 -0
- package/lib/session/context-diagnostics.js +15 -0
- package/lib/session/context-diagnostics.js.map +1 -1
- package/lib/session/external-agents.d.ts +3 -1
- package/lib/session/external-agents.js +35 -10
- package/lib/session/external-agents.js.map +1 -1
- package/lib/session/generation-continuation.d.ts +11 -0
- package/lib/session/generation-continuation.js +34 -0
- package/lib/session/generation-continuation.js.map +1 -0
- package/lib/session/goal-controls.d.ts +5 -0
- package/lib/session/goal-controls.js +81 -0
- package/lib/session/goal-controls.js.map +1 -0
- package/lib/session/interaction-adapter.d.ts +7 -3
- package/lib/session/interaction-adapter.js +121 -49
- package/lib/session/interaction-adapter.js.map +1 -1
- package/lib/session/message-queue.d.ts +2 -0
- package/lib/session/message-queue.js +102 -17
- package/lib/session/message-queue.js.map +1 -1
- package/lib/session/pending-inputs.d.ts +30 -0
- package/lib/session/pending-inputs.js +183 -0
- package/lib/session/pending-inputs.js.map +1 -0
- package/lib/session/session-configuration.js +1 -1
- package/lib/session/session-configuration.js.map +1 -1
- package/lib/session/session-controller.d.ts +33 -20
- package/lib/session/session-controller.js +500 -129
- package/lib/session/session-controller.js.map +1 -1
- package/lib/session/session-library.d.ts +3 -1
- package/lib/session/session-library.js +15 -0
- package/lib/session/session-library.js.map +1 -1
- package/lib/session/subagent-roster.d.ts +1 -0
- package/lib/session/subagent-roster.js +16 -5
- package/lib/session/subagent-roster.js.map +1 -1
- package/lib/session/subagent-tracker.d.ts +2 -0
- package/lib/session/subagent-tracker.js +18 -0
- package/lib/session/subagent-tracker.js.map +1 -1
- package/lib/session/tui-settings.d.ts +9 -5
- package/lib/session/tui-settings.js +3 -1
- package/lib/session/tui-settings.js.map +1 -1
- package/lib/session/workflow-projection.d.ts +2 -1
- package/lib/session/workflow-projection.js +34 -4
- package/lib/session/workflow-projection.js.map +1 -1
- package/lib/views/autocomplete.d.ts +12 -12
- package/lib/views/autocomplete.js +54 -45
- package/lib/views/autocomplete.js.map +1 -1
- package/lib/views/context-overview.d.ts +4 -0
- package/lib/views/context-overview.js +43 -0
- package/lib/views/context-overview.js.map +1 -0
- package/lib/views/copy-targets.d.ts +6 -2
- package/lib/views/copy-targets.js +19 -14
- package/lib/views/copy-targets.js.map +1 -1
- package/lib/views/document-reader.d.ts +10 -1
- package/lib/views/document-reader.js +63 -6
- package/lib/views/document-reader.js.map +1 -1
- package/lib/views/event-views.js +29 -11
- package/lib/views/event-views.js.map +1 -1
- package/lib/views/file-actions.js +21 -0
- package/lib/views/file-actions.js.map +1 -1
- package/lib/views/file-browser.d.ts +98 -0
- package/lib/views/file-browser.js +120 -0
- package/lib/views/file-browser.js.map +1 -0
- package/lib/views/history-search.js +4 -4
- package/lib/views/history-search.js.map +1 -1
- package/lib/views/hotkey-format.d.ts +3 -2
- package/lib/views/hotkey-format.js +4 -3
- package/lib/views/hotkey-format.js.map +1 -1
- package/lib/views/hotkeys.js +10 -12
- package/lib/views/hotkeys.js.map +1 -1
- package/lib/views/list-view.js +16 -11
- package/lib/views/list-view.js.map +1 -1
- package/lib/views/prompt-selector.d.ts +23 -1
- package/lib/views/prompt-selector.js +123 -60
- package/lib/views/prompt-selector.js.map +1 -1
- package/lib/views/settings-list.d.ts +6 -1
- package/lib/views/settings-list.js +69 -46
- package/lib/views/settings-list.js.map +1 -1
- package/lib/views/tool-actions.d.ts +16 -0
- package/lib/views/tool-actions.js +29 -0
- package/lib/views/tool-actions.js.map +1 -0
- package/lib/views/trajectory-timeline.d.ts +5 -6
- package/lib/views/trajectory-timeline.js +25 -15
- package/lib/views/trajectory-timeline.js.map +1 -1
- package/lib/views/trajectory.d.ts +23 -2
- package/lib/views/trajectory.js +404 -186
- package/lib/views/trajectory.js.map +1 -1
- package/lib/views/transcript-render.d.ts +39 -15
- package/lib/views/transcript-render.js +406 -208
- package/lib/views/transcript-render.js.map +1 -1
- package/lib/views/transcript-types.d.ts +3 -2
- package/lib/views/transcript-types.js.map +1 -1
- package/lib/views/workflow.d.ts +16 -0
- package/lib/views/workflow.js +42 -0
- package/lib/views/workflow.js.map +1 -0
- package/package.json +61 -58
- package/lib/chrome/welcome-tips.d.ts +0 -23
- package/lib/chrome/welcome-tips.js +0 -24
- package/lib/chrome/welcome-tips.js.map +0 -1
- package/lib/session/steering.d.ts +0 -3
- package/lib/session/steering.js +0 -9
- package/lib/session/steering.js.map +0 -1
|
@@ -1,37 +1,72 @@
|
|
|
1
1
|
/** Agent composition selection and diagnostics. */
|
|
2
2
|
import { isBlankSession, formatAgentPreset } from "../session/session-configuration.js";
|
|
3
3
|
import { registerCommands } from "./registration.js";
|
|
4
|
+
import { readReference } from "../runtime/reference-reader.js";
|
|
4
5
|
export const name = 'omdsh-command-session-configuration';
|
|
5
6
|
export const inject = ['commands', 'omdshSession', 'tui', 'agentPresets'];
|
|
7
|
+
/** Enter Creator without submitting a prompt or changing the default preset. */
|
|
8
|
+
export async function startCreator(ctx, invocation) {
|
|
9
|
+
const runtime = ctx.get('omdshSession');
|
|
10
|
+
if (runtime === undefined)
|
|
11
|
+
return { kind: 'error', text: 'Creator is unavailable in this host.' };
|
|
12
|
+
if (invocation.agent.status === 'running')
|
|
13
|
+
return { kind: 'error', text: 'Finish or interrupt the active turn before starting Creator.' };
|
|
14
|
+
const preset = (await runtime.agentPresets()).find(preset => preset.id === 'cordis');
|
|
15
|
+
if (preset === undefined || preset.broken !== undefined)
|
|
16
|
+
return { kind: 'error', text: preset?.broken ?? 'Creator is unavailable in this profile.' };
|
|
17
|
+
invocation.signal.throwIfAborted();
|
|
18
|
+
if (isBlankSession(invocation.agent.session))
|
|
19
|
+
await runtime.changeAgentPreset(invocation.agent, preset.id);
|
|
20
|
+
else
|
|
21
|
+
await runtime.newSession(invocation.agent, preset.id);
|
|
22
|
+
return { kind: 'success', text: 'Creator is ready. Describe the plugin you want to create. The default Agent preset is unchanged.' };
|
|
23
|
+
}
|
|
6
24
|
async function selectAgent(ctx, invocation) {
|
|
25
|
+
const lifetime = new AbortController();
|
|
26
|
+
invocation = { ...invocation, signal: AbortSignal.any([invocation.signal, lifetime.signal]) };
|
|
27
|
+
const reader = {
|
|
28
|
+
prompt: (request) => ctx.tui.prompt({ ...request, onSuperseded: () => lifetime.abort() }),
|
|
29
|
+
...(ctx.tui.copyText === undefined ? {} : { copyText: (text, label) => ctx.tui.copyText(text, label) }),
|
|
30
|
+
};
|
|
31
|
+
const inspect = async (requested) => {
|
|
32
|
+
const text = await presetDiagnostics(ctx.agentPresets, invocation.agent, requested);
|
|
33
|
+
if (ctx.tui.interactive !== true)
|
|
34
|
+
return { kind: 'success', text };
|
|
35
|
+
await readReference(reader, 'Agent composition', text, invocation.signal);
|
|
36
|
+
return { kind: 'success' };
|
|
37
|
+
};
|
|
7
38
|
const args = invocation.rawInput.trim().split(/\s+/u);
|
|
39
|
+
if (invocation.rawInput.trim() === 'creator')
|
|
40
|
+
return startCreator(ctx, invocation);
|
|
8
41
|
if (args[0] === 'inspect' && args.length <= 2) {
|
|
9
|
-
return
|
|
42
|
+
return inspect(args[1]);
|
|
10
43
|
}
|
|
11
44
|
if (invocation.rawInput.trim() !== '')
|
|
12
|
-
return { kind: 'error', text: 'Usage: /agent [inspect [preset-id]]' };
|
|
45
|
+
return { kind: 'error', text: 'Usage: /agent [creator|inspect [preset-id]]' };
|
|
13
46
|
if (!isBlankSession(invocation.agent.session)) {
|
|
14
47
|
const lockedMessage = 'The Agent preset is fixed for this conversation. Start /new to choose a different preset before sending a message. Use /agent inspect to view its composition.';
|
|
15
48
|
if (ctx.tui.interactive !== true) {
|
|
16
49
|
return { kind: 'success', text: lockedMessage };
|
|
17
50
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
51
|
+
let selected = 'close';
|
|
52
|
+
while (!invocation.signal.aborted) {
|
|
53
|
+
const action = await reader.prompt({ localize: true,
|
|
54
|
+
title: 'Agent',
|
|
55
|
+
question: 'The Agent preset is fixed for this conversation',
|
|
56
|
+
detail: 'Start /new to choose a different preset before sending a message.',
|
|
57
|
+
options: [
|
|
58
|
+
{ label: 'Close', value: 'close', description: 'Return to the current conversation' },
|
|
59
|
+
{ label: 'Inspect composition', value: 'inspect', description: 'View declared presets and this session’s retained composition' },
|
|
60
|
+
],
|
|
61
|
+
initialValue: selected,
|
|
62
|
+
allowCustom: false,
|
|
63
|
+
notify: false,
|
|
64
|
+
signal: invocation.signal,
|
|
65
|
+
});
|
|
66
|
+
if (action !== 'inspect')
|
|
67
|
+
break;
|
|
68
|
+
selected = action;
|
|
69
|
+
await inspect();
|
|
35
70
|
}
|
|
36
71
|
return { kind: 'success' };
|
|
37
72
|
}
|
|
@@ -39,7 +74,7 @@ async function selectAgent(ctx, invocation) {
|
|
|
39
74
|
const presets = await ctx.omdshSession.agentPresets();
|
|
40
75
|
if (presets.length === 0)
|
|
41
76
|
return { kind: 'error', text: 'No Agent presets are configured.' };
|
|
42
|
-
const selected = await ctx.tui.prompt({
|
|
77
|
+
const selected = await ctx.tui.prompt({ localize: ['title', 'question', 'actions', 'detail'],
|
|
43
78
|
title: 'Agent',
|
|
44
79
|
question: 'Choose the Agent composition for this blank session',
|
|
45
80
|
detail: 'Locked after the first prompt · /agent inspect shows composition diagnostics',
|
|
@@ -53,8 +88,7 @@ async function selectAgent(ctx, invocation) {
|
|
|
53
88
|
allowCustom: false,
|
|
54
89
|
notify: false,
|
|
55
90
|
submitLabel: 'apply',
|
|
56
|
-
signal: invocation.signal,
|
|
57
|
-
});
|
|
91
|
+
signal: invocation.signal, });
|
|
58
92
|
if (selected === null)
|
|
59
93
|
return { kind: 'success' };
|
|
60
94
|
const broken = presets.find(preset => preset.id === selected)?.broken;
|
|
@@ -78,16 +112,16 @@ export async function presetDiagnostics(registry, agent, requested) {
|
|
|
78
112
|
if (rows.length === 0)
|
|
79
113
|
return `No declared preset: ${requested ?? '(none)'}`;
|
|
80
114
|
return [
|
|
81
|
-
'Agent compositions',
|
|
115
|
+
'# Agent compositions',
|
|
82
116
|
'Current declarations apply to new sessions. Existing sessions retain their mounted revision.',
|
|
83
117
|
...rows.flatMap(row => [
|
|
84
|
-
'',
|
|
85
|
-
...(row.broken === undefined ? row.rows.map(plugin =>
|
|
118
|
+
'', `## ${row.name ?? row.id} (${row.id})${row.isDefault ? ' · default' : ''}${row.broken === undefined ? '' : ' · unavailable'}`,
|
|
119
|
+
...(row.broken === undefined ? row.rows.map(plugin => `- ${plugin.entryId ?? '(no id)'} · ${plugin.enabled === 'conditional' ? 'conditional' : plugin.enabled ? 'enabled' : 'disabled'} · ${plugin.moduleName}${plugin.fiberState === undefined ? '' : ` · ${['pending', 'loading', 'active', 'failed', 'disposed', 'unloading'][plugin.fiberState] ?? 'unknown'}`}`) : [row.broken]),
|
|
86
120
|
]),
|
|
87
|
-
'', 'This session’s retained composition',
|
|
121
|
+
'', '## This session’s retained composition',
|
|
88
122
|
...(retained.length === 0 ? ['No preset composition is bound to this session.'] : retained.flatMap(row => [
|
|
89
|
-
row.id
|
|
90
|
-
...row.modules.map(module =>
|
|
123
|
+
`### ${row.id}`,
|
|
124
|
+
...row.modules.map(module => `- ${module.moduleName}`),
|
|
91
125
|
...(row.leakedServices.length === 0 ? [] : [`Isolation errors: ${row.leakedServices.join(', ')}`]),
|
|
92
126
|
])),
|
|
93
127
|
].join('\n');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-configuration.js","sourceRoot":"","sources":["../../src/commands/session-configuration.ts"],"names":[],"mappings":"AAAA,mDAAmD;AAKnD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAA;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"session-configuration.js","sourceRoot":"","sources":["../../src/commands/session-configuration.ts"],"names":[],"mappings":"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"}
|
package/lib/commands/session.js
CHANGED
|
@@ -1,23 +1,19 @@
|
|
|
1
1
|
/** Session lifecycle and inspection commands registered through dsh-commands. */
|
|
2
|
+
import { createPromptBrowser } from "../runtime/prompt-browser.js";
|
|
2
3
|
import { SessionId } from '@deepseek-ai/dsh-session';
|
|
3
4
|
import { registerCommands } from "./registration.js";
|
|
4
5
|
import { askPrompt, confirmPrompt } from "../prompt-intents.js";
|
|
5
6
|
import { formatRelativeAge } from "../chrome/relative-time.js";
|
|
6
|
-
import { formatPermission
|
|
7
|
+
import { formatPermission } from "../chrome/status-line.js";
|
|
7
8
|
import { formatAgentPreset } from "../session/session-configuration.js";
|
|
8
9
|
import { readSessionLibrary, sortSessionRows, togglePinnedSession, updateSessionLibrary } from "../session/session-library.js";
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
10
|
+
import { contextOverviewDetails } from "../session/context-diagnostics.js";
|
|
11
|
+
import { readReference } from "../runtime/reference-reader.js";
|
|
12
|
+
import { currentWorkingDirectory } from "../session/working-directory.js";
|
|
11
13
|
export const name = 'omdsh-command-session';
|
|
12
14
|
export const inject = ['commands', 'omdshSession', 'tui'];
|
|
13
15
|
/** Cross-session search page size shown in one Session Library prompt. */
|
|
14
16
|
const SESSION_SEARCH_LIMIT = 20;
|
|
15
|
-
function humanText(event) {
|
|
16
|
-
if (event.type !== 'user/message' || event.data.source.kind !== 'user')
|
|
17
|
-
return undefined;
|
|
18
|
-
const text = blocksText(event.data.content);
|
|
19
|
-
return text === '' ? undefined : text;
|
|
20
|
-
}
|
|
21
17
|
async function newSession(ctx, invocation) {
|
|
22
18
|
if (invocation.rawInput.trim() !== '')
|
|
23
19
|
return { kind: 'error', text: 'Usage: /new' };
|
|
@@ -33,8 +29,11 @@ async function resumeSession(ctx, invocation, search) {
|
|
|
33
29
|
if (invocation.agent.status === 'running') {
|
|
34
30
|
return { kind: 'error', text: 'Finish or interrupt the active turn before resuming another session.' };
|
|
35
31
|
}
|
|
32
|
+
const abort = new AbortController();
|
|
33
|
+
invocation = { ...invocation, signal: AbortSignal.any([invocation.signal, abort.signal]) };
|
|
34
|
+
const prompt = request => ctx.tui.prompt({ ...request, signal: invocation.signal, onSuperseded: () => abort.abort() });
|
|
36
35
|
await ctx.omdshSession.refreshRecent();
|
|
37
|
-
|
|
36
|
+
const id = search === undefined ? invocation.rawInput.trim() : '';
|
|
38
37
|
if (id !== '' && search === undefined) {
|
|
39
38
|
const stored = await ctx.get('sessionPersistence')?.stat(SessionId(id));
|
|
40
39
|
if (stored === undefined) {
|
|
@@ -48,18 +47,20 @@ async function resumeSession(ctx, invocation, search) {
|
|
|
48
47
|
}
|
|
49
48
|
if (id === '') {
|
|
50
49
|
const libraryPath = ctx.omdshSession.sessionLibraryPath;
|
|
50
|
+
const browse = createPromptBrowser(prompt);
|
|
51
51
|
let archivedView = false;
|
|
52
|
+
let searchDiagnostic = '';
|
|
52
53
|
let selectedId;
|
|
53
|
-
while (
|
|
54
|
+
while (!invocation.signal.aborted) {
|
|
54
55
|
const library = readSessionLibrary(libraryPath);
|
|
55
56
|
const inventory = new Map(ctx.omdshSession.recentSessions.map(row => [row.id, row]));
|
|
56
57
|
const source = search === undefined ? ctx.omdshSession.recentSessions : search.rows.map(row => ({ ...row, ...inventory.get(row.id), ...(row.preview === undefined ? {} : { preview: row.preview }) }));
|
|
57
58
|
const recent = sortSessionRows(source.filter(row => library.archived.includes(row.id) === archivedView), library.pinned);
|
|
58
59
|
if ((search?.rows ?? ctx.omdshSession.recentSessions).length === 0)
|
|
59
60
|
return { kind: 'success', text: 'No durable sessions found.' };
|
|
60
|
-
const answer = await
|
|
61
|
+
const answer = await browse({ localize: ['title', 'question', 'actions'],
|
|
61
62
|
title: `Session Library${search === undefined ? '' : ' · Search'}${archivedView ? ' · Archived' : ''}`,
|
|
62
|
-
|
|
63
|
+
detail: [searchDiagnostic, search === undefined ? '' : `Content search: ${search.query} · ${search.rows.length} matches loaded`].filter(Boolean).join('\n'),
|
|
63
64
|
notify: false,
|
|
64
65
|
...(selectedId === undefined ? {} : { initialValue: selectedId }),
|
|
65
66
|
question: '',
|
|
@@ -89,40 +90,52 @@ async function resumeSession(ctx, invocation, search) {
|
|
|
89
90
|
}),
|
|
90
91
|
})),
|
|
91
92
|
actions: [
|
|
93
|
+
...(search?.nextCursor === undefined ? [] : [{ key: 'Alt+N', label: 'load more', valuePrefix: 'more:', scope: 'list' }]),
|
|
92
94
|
...(search === undefined ? [] : [{ key: 'Alt+L', label: 'all sessions', valuePrefix: 'library:', scope: 'list' }]),
|
|
93
95
|
...(ctx.get('sessionQuery') === undefined ? [] : [{ key: 'Alt+S', label: 'search content', valuePrefix: 'search:', scope: 'list' }]),
|
|
94
|
-
{ key: '
|
|
95
|
-
{ key: '
|
|
96
|
+
{ key: 'Alt+R', label: 'rename', valuePrefix: 'rename:' },
|
|
97
|
+
{ key: 'Alt+P', label: 'pin/unpin', valuePrefix: 'pin:' },
|
|
96
98
|
{ key: 'Alt+A', label: archivedView ? 'restore' : 'archive', valuePrefix: 'archive:' },
|
|
97
99
|
{ key: 'Alt+V', label: archivedView ? 'active sessions' : 'archived sessions', valuePrefix: 'view:', scope: 'list' },
|
|
98
100
|
],
|
|
99
101
|
presentation: 'card',
|
|
100
102
|
filterable: true,
|
|
101
103
|
allowCustom: false,
|
|
102
|
-
signal: invocation.signal,
|
|
103
|
-
|
|
104
|
-
if (answer === null)
|
|
104
|
+
signal: invocation.signal, }, JSON.stringify([search?.query, archivedView]));
|
|
105
|
+
if (answer === null || invocation.signal.aborted)
|
|
105
106
|
return { kind: 'success' };
|
|
106
107
|
invocation.signal.throwIfAborted();
|
|
108
|
+
if (answer === 'more:' && search?.nextCursor !== undefined) {
|
|
109
|
+
const page = await findSessions(ctx, { ...invocation, rawInput: search.query }, search.nextCursor);
|
|
110
|
+
if (page.kind === 'rows') {
|
|
111
|
+
search = { ...page, rows: [...new Map([...search.rows, ...page.rows].map(row => [row.id, row])).values()] };
|
|
112
|
+
searchDiagnostic = '';
|
|
113
|
+
}
|
|
114
|
+
else
|
|
115
|
+
searchDiagnostic = page.text ?? '';
|
|
116
|
+
continue;
|
|
117
|
+
}
|
|
107
118
|
if (answer === 'library:') {
|
|
119
|
+
searchDiagnostic = '';
|
|
108
120
|
search = undefined;
|
|
109
121
|
archivedView = false;
|
|
110
122
|
selectedId = undefined;
|
|
111
123
|
continue;
|
|
112
124
|
}
|
|
113
125
|
if (answer === 'search:') {
|
|
114
|
-
const query = await
|
|
126
|
+
const query = await prompt(askPrompt({ localize: ['title', 'question', 'actions'], title: 'Search session content', question: 'Enter search text', initialInput: search?.query ?? '', signal: invocation.signal }));
|
|
115
127
|
if (query === null || query.trim() === '')
|
|
116
128
|
continue;
|
|
117
129
|
const result = await findSessions(ctx, { ...invocation, rawInput: query });
|
|
118
130
|
if (result.kind === 'rows') {
|
|
131
|
+
searchDiagnostic = '';
|
|
119
132
|
search = result;
|
|
120
133
|
archivedView = false;
|
|
121
134
|
selectedId = undefined;
|
|
122
135
|
continue;
|
|
123
136
|
}
|
|
124
137
|
if (result.text !== undefined) {
|
|
125
|
-
|
|
138
|
+
searchDiagnostic = result.text;
|
|
126
139
|
continue;
|
|
127
140
|
}
|
|
128
141
|
continue;
|
|
@@ -150,28 +163,44 @@ async function resumeSession(ctx, invocation, search) {
|
|
|
150
163
|
if (row === undefined)
|
|
151
164
|
continue;
|
|
152
165
|
selectedId = target;
|
|
153
|
-
const title = await
|
|
166
|
+
const title = await prompt(askPrompt({ localize: ['title', 'question', 'actions'],
|
|
154
167
|
title: 'Rename Session',
|
|
155
168
|
question: `New title for “${row.title}”`,
|
|
156
169
|
initialInput: row.title,
|
|
157
170
|
signal: invocation.signal,
|
|
158
171
|
}));
|
|
159
|
-
if (title !== null)
|
|
160
|
-
|
|
172
|
+
if (title !== null && !invocation.signal.aborted) {
|
|
173
|
+
try {
|
|
174
|
+
await ctx.omdshSession.renameSession(invocation.agent, target, title, invocation.signal);
|
|
175
|
+
searchDiagnostic = '';
|
|
176
|
+
}
|
|
177
|
+
catch (error) {
|
|
178
|
+
searchDiagnostic = error instanceof Error ? error.message : String(error);
|
|
179
|
+
}
|
|
180
|
+
}
|
|
161
181
|
continue;
|
|
162
182
|
}
|
|
163
|
-
|
|
183
|
+
selectedId = answer;
|
|
184
|
+
if (answer === invocation.agent.id) {
|
|
185
|
+
searchDiagnostic = 'That session is already active.';
|
|
186
|
+
continue;
|
|
187
|
+
}
|
|
188
|
+
const resumed = await resumeStoredSession(ctx, invocation, answer, prompt);
|
|
189
|
+
if (resumed.kind === 'success' && resumed.text !== undefined)
|
|
190
|
+
return resumed;
|
|
191
|
+
searchDiagnostic = resumed.text ?? '';
|
|
164
192
|
}
|
|
193
|
+
return { kind: 'success' };
|
|
165
194
|
}
|
|
166
195
|
if (id === invocation.agent.id)
|
|
167
196
|
return { kind: 'success', text: 'That session is already active.' };
|
|
168
|
-
return resumeStoredSession(ctx, invocation, id);
|
|
197
|
+
return resumeStoredSession(ctx, invocation, id, prompt);
|
|
169
198
|
}
|
|
170
|
-
async function resumeStoredSession(ctx, invocation, id) {
|
|
199
|
+
async function resumeStoredSession(ctx, invocation, id, prompt) {
|
|
171
200
|
try {
|
|
172
201
|
const stored = await ctx.get('sessionPersistence')?.stat(SessionId(id));
|
|
173
202
|
if (stored?.formatStatus === 'migration-required' && ctx.tui.interactive === true) {
|
|
174
|
-
const migrate = await confirmPrompt(
|
|
203
|
+
const migrate = await confirmPrompt(prompt, { localize: ['title', 'options', 'actions'],
|
|
175
204
|
title: 'Migrate session',
|
|
176
205
|
question: ctx.omdshSession.recentSessions.find(row => row.id === id)?.title ?? id,
|
|
177
206
|
detail: 'Opening this session writes a current-format generation and retains the historical source. Browsing the Session Library does not migrate it.',
|
|
@@ -186,13 +215,15 @@ async function resumeStoredSession(ctx, invocation, id) {
|
|
|
186
215
|
return { kind: 'success', text: `Resumed ${id}.` };
|
|
187
216
|
}
|
|
188
217
|
catch (error) {
|
|
218
|
+
if (ctx.omdshSession.agent?.id === id)
|
|
219
|
+
return { kind: 'success', text: `Resumed ${id}. Session Library refresh failed: ${error instanceof Error ? error.message : String(error)}` };
|
|
189
220
|
if (invocation.signal.aborted)
|
|
190
221
|
return { kind: 'error', text: 'Resume cancelled.' };
|
|
191
222
|
return { kind: 'error', text: 'Resume failed: ' + (error instanceof Error ? error.message : String(error)) };
|
|
192
223
|
}
|
|
193
224
|
}
|
|
194
225
|
/** Read session content without replacing the active conversation. */
|
|
195
|
-
async function findSessions(ctx, invocation) {
|
|
226
|
+
async function findSessions(ctx, invocation, cursor) {
|
|
196
227
|
if (invocation.agent.status === 'running') {
|
|
197
228
|
return { kind: 'error', text: 'Finish or interrupt the active turn before resuming another session.' };
|
|
198
229
|
}
|
|
@@ -201,16 +232,22 @@ async function findSessions(ctx, invocation) {
|
|
|
201
232
|
if (sessionQuery === undefined)
|
|
202
233
|
return { kind: 'error', text: 'Session search is not configured.' };
|
|
203
234
|
let hits;
|
|
235
|
+
let nextCursor;
|
|
204
236
|
try {
|
|
205
|
-
const page = await sessionQuery.searchSessions({
|
|
237
|
+
const page = await sessionQuery.searchSessions({
|
|
238
|
+
query, limit: SESSION_SEARCH_LIMIT,
|
|
239
|
+
sessionFilters: [{ kind: 'cwd', values: [currentWorkingDirectory(ctx, invocation.agent.session)] }],
|
|
240
|
+
...(cursor === undefined ? {} : { cursor }),
|
|
241
|
+
}, { signal: invocation.signal });
|
|
206
242
|
hits = page.items;
|
|
243
|
+
nextCursor = page.nextCursor;
|
|
207
244
|
}
|
|
208
245
|
catch (error) {
|
|
209
246
|
if (invocation.signal.aborted)
|
|
210
247
|
return { kind: 'error', text: 'Search cancelled.' };
|
|
211
248
|
return { kind: 'error', text: 'Session search failed: ' + (error instanceof Error ? error.message : String(error)) };
|
|
212
249
|
}
|
|
213
|
-
if (hits.length === 0)
|
|
250
|
+
if (hits.length === 0 && cursor === undefined)
|
|
214
251
|
return { kind: 'success', text: `No sessions match “${query}”.` };
|
|
215
252
|
const titles = new Map();
|
|
216
253
|
try {
|
|
@@ -221,60 +258,68 @@ async function findSessions(ctx, invocation) {
|
|
|
221
258
|
}
|
|
222
259
|
}
|
|
223
260
|
catch { /* title folding is best-effort; the snippet still identifies the hit */ }
|
|
224
|
-
return { kind: 'rows', query, rows: hits.map(hit => ({
|
|
261
|
+
return { kind: 'rows', query, ...(nextCursor === undefined ? {} : { nextCursor }), rows: hits.map(hit => ({
|
|
225
262
|
id: hit.header.id,
|
|
226
263
|
title: titles.get(hit.header.id) ?? hit.bestMatch.snippet,
|
|
227
264
|
preview: hit.bestMatch.snippet,
|
|
228
265
|
createdAt: hit.header.createdAt,
|
|
229
266
|
})) };
|
|
230
267
|
}
|
|
231
|
-
function
|
|
268
|
+
function contextSnapshot(ctx, invocation) {
|
|
232
269
|
const stats = ctx.omdshSession.stats(invocation.agent);
|
|
233
270
|
const selection = ctx.omdshSession.selection(invocation.agent);
|
|
234
|
-
const
|
|
271
|
+
const reasoning = ctx.omdshSession.reasoningEffort(invocation.agent);
|
|
235
272
|
const controls = ctx.omdshSession.controls(invocation.agent);
|
|
236
273
|
const workflow = controls.plan?.pending === true
|
|
237
274
|
? controls.plan.active ? 'Plan → Default (pending)' : 'Plan (pending)'
|
|
238
275
|
: controls.plan?.active === true ? 'Plan' : 'Default';
|
|
239
276
|
return {
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
`| Model | \`${selection.provider}/${selection.model}\` |`,
|
|
248
|
-
`| Reasoning | \`${reasoningEffort ?? 'not available'}\` |`,
|
|
249
|
-
`| Agent | ${formatAgentPreset(controls.agentPreset ?? 'standard')} |`,
|
|
250
|
-
`| Workflow | ${workflow} |`,
|
|
251
|
-
...(controls.permission === undefined ? [] : [`| Access | ${formatPermission(controls.permission)} |`]),
|
|
252
|
-
`| Activity | ${stats.turns} turns · ${stats.steps} steps |`,
|
|
253
|
-
`| Tokens | ${formatTokens(stats.inputTokens)} in · ${formatTokens(stats.outputTokens)} out |`,
|
|
254
|
-
`| Queue | ${invocation.agent.inbox.nextTurn.length} follow-up · ${invocation.agent.inbox.nextStep.length} steering |`,
|
|
255
|
-
].join('\n'),
|
|
277
|
+
...ctx.omdshSession.contextDiagnostics(invocation.agent),
|
|
278
|
+
sessionId: invocation.agent.id, model: `${selection.provider}/${selection.model}`,
|
|
279
|
+
...(reasoning === undefined ? {} : { reasoning }),
|
|
280
|
+
agent: formatAgentPreset(controls.agentPreset ?? 'standard'), workflow,
|
|
281
|
+
...(controls.permission === undefined ? {} : { access: formatPermission(controls.permission) }),
|
|
282
|
+
turns: stats.turns, steps: stats.steps, inputTokens: stats.inputTokens, outputTokens: stats.outputTokens,
|
|
283
|
+
followUp: invocation.agent.inbox.nextTurn.length, steering: invocation.agent.inbox.nextStep.length,
|
|
256
284
|
};
|
|
257
285
|
}
|
|
258
286
|
async function retry(ctx, invocation) {
|
|
259
287
|
if (invocation.rawInput.trim() !== '')
|
|
260
288
|
return { kind: 'error', text: 'Usage: /retry' };
|
|
261
|
-
const
|
|
262
|
-
|
|
263
|
-
const text = humanText(log[i]);
|
|
264
|
-
if (text === undefined)
|
|
265
|
-
continue;
|
|
266
|
-
await ctx.omdshSession.send(text, invocation.agent);
|
|
267
|
-
return { kind: 'success', text: 'Re-running the most recent human prompt as a new turn.' };
|
|
268
|
-
}
|
|
269
|
-
return { kind: 'success', text: 'No human prompt is available to retry.' };
|
|
289
|
+
const resent = await ctx.omdshSession.retryLastPrompt(invocation.agent, invocation.signal);
|
|
290
|
+
return { kind: 'success', text: resent ? 'Re-sent the last human prompt with its attachments as a new turn.' : 'No human prompt is available to retry.' };
|
|
270
291
|
}
|
|
271
|
-
function showContext(ctx, invocation) {
|
|
292
|
+
async function showContext(ctx, invocation) {
|
|
272
293
|
if (invocation.rawInput.trim() !== '')
|
|
273
294
|
return { kind: 'error', text: 'Usage: /context' };
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
text:
|
|
277
|
-
}
|
|
295
|
+
const read = () => contextSnapshot(ctx, invocation);
|
|
296
|
+
if (ctx.tui.interactive !== true || ctx.tui.openContext === undefined) {
|
|
297
|
+
return { kind: 'success', text: contextOverviewDetails(read()) };
|
|
298
|
+
}
|
|
299
|
+
const abort = new AbortController();
|
|
300
|
+
const signal = AbortSignal.any([invocation.signal, abort.signal]);
|
|
301
|
+
const onSuperseded = () => { abort.abort(); };
|
|
302
|
+
while (!signal.aborted) {
|
|
303
|
+
const action = await ctx.tui.openContext({ read, signal, onSuperseded,
|
|
304
|
+
canCompact: ctx.commands.list(invocation.agent).some(command => command.name === 'compact') });
|
|
305
|
+
if (signal.aborted || action === null)
|
|
306
|
+
break;
|
|
307
|
+
if (action === 'details') {
|
|
308
|
+
await readReference({ prompt: request => ctx.tui.prompt({ ...request, onSuperseded }),
|
|
309
|
+
...(ctx.tui.copyText === undefined ? {} : { copyText: (text, label) => ctx.tui.copyText(text, label) }),
|
|
310
|
+
}, 'Context · Details', contextOverviewDetails(read()), signal);
|
|
311
|
+
}
|
|
312
|
+
else if (action === 'copy') {
|
|
313
|
+
await ctx.tui.copyText?.(invocation.agent.id, 'Session ID');
|
|
314
|
+
}
|
|
315
|
+
else if (action === 'compact') {
|
|
316
|
+
const result = await ctx.commands.execute(invocation.agent, '/compact', [], signal);
|
|
317
|
+
return result?.result ?? { kind: 'error', text: 'Context compaction is unavailable.' };
|
|
318
|
+
}
|
|
319
|
+
else
|
|
320
|
+
break;
|
|
321
|
+
}
|
|
322
|
+
return { kind: 'success' };
|
|
278
323
|
}
|
|
279
324
|
export function apply(ctx) {
|
|
280
325
|
registerCommands(ctx, [
|
|
@@ -284,7 +329,7 @@ export function apply(ctx) {
|
|
|
284
329
|
await ctx.omdshSession.openQueue(invocation.signal, invocation.agent);
|
|
285
330
|
return { kind: 'success' };
|
|
286
331
|
} },
|
|
287
|
-
{ name: 'context', description: 'Inspect
|
|
332
|
+
{ name: 'context', description: 'Inspect context usage and session details', handler: invocation => showContext(ctx, invocation) },
|
|
288
333
|
{ name: 'new', description: 'Start a new session', handler: invocation => newSession(ctx, invocation) },
|
|
289
334
|
{
|
|
290
335
|
name: 'resume',
|
|
@@ -292,8 +337,13 @@ export function apply(ctx) {
|
|
|
292
337
|
input: { hint: '[session-id|query]' },
|
|
293
338
|
handler: invocation => resumeSession(ctx, invocation),
|
|
294
339
|
},
|
|
295
|
-
{ name: '
|
|
296
|
-
|
|
340
|
+
{ name: 'continue', description: 'Continue an eligible failed generation without resending the prompt', handler: async (invocation) => {
|
|
341
|
+
if (invocation.rawInput.trim() !== '')
|
|
342
|
+
return { kind: 'error', text: 'Usage: /continue' };
|
|
343
|
+
await ctx.omdshSession.continueGeneration(invocation.agent, undefined, invocation.signal);
|
|
344
|
+
return { kind: 'success' };
|
|
345
|
+
} },
|
|
346
|
+
{ name: 'retry', description: 'Resend the last human prompt with its attachments', handler: invocation => retry(ctx, invocation) },
|
|
297
347
|
], 'omdsh session commands');
|
|
298
348
|
}
|
|
299
349
|
//# sourceMappingURL=session.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/commands/session.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/commands/session.ts"],"names":[],"mappings":"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"}
|