dsh-connect 0.7.0 → 0.7.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/lib/index.d.ts +10 -4
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +5 -2
- package/lib/index.js.map +1 -1
- package/lib/menu-controller.d.ts +71 -0
- package/lib/menu-controller.d.ts.map +1 -0
- package/lib/menu-controller.js +284 -0
- package/lib/menu-controller.js.map +1 -0
- package/lib/menus.d.ts +62 -0
- package/lib/menus.d.ts.map +1 -0
- package/lib/menus.js +99 -0
- package/lib/menus.js.map +1 -0
- package/lib/runner.d.ts +51 -89
- package/lib/runner.d.ts.map +1 -1
- package/lib/runner.js +45 -608
- package/lib/runner.js.map +1 -1
- package/lib/stream.d.ts +62 -2
- package/lib/stream.d.ts.map +1 -1
- package/lib/stream.js +270 -0
- package/lib/stream.js.map +1 -1
- package/lib/types.d.ts +11 -0
- package/lib/types.d.ts.map +1 -1
- package/package.json +2 -2
package/lib/menus.js
ADDED
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/** Localized menu title for a menu id. */
|
|
2
|
+
export function menuTitle(menuId, t) {
|
|
3
|
+
switch (menuId) {
|
|
4
|
+
case "root":
|
|
5
|
+
return t.menuRoot;
|
|
6
|
+
case "workspace":
|
|
7
|
+
return t.menuWorkspace;
|
|
8
|
+
case "chat":
|
|
9
|
+
return t.menuChat;
|
|
10
|
+
case "settings":
|
|
11
|
+
return t.menuSettings;
|
|
12
|
+
case "model":
|
|
13
|
+
return t.menuModel;
|
|
14
|
+
case "reasoning":
|
|
15
|
+
return t.menuReasoning;
|
|
16
|
+
case "notify":
|
|
17
|
+
return t.menuNotify;
|
|
18
|
+
case "language":
|
|
19
|
+
return t.menuSettingsLanguage;
|
|
20
|
+
case "progress":
|
|
21
|
+
return t.progressMenuTitle;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
/** Named root-menu sections: workspace / chat (1 col), task / system (2 col). */
|
|
25
|
+
export function rootMenuSections(t) {
|
|
26
|
+
return [
|
|
27
|
+
{ title: t.rootSectionWorkspace, ids: ["workspace"], columnsPerRow: 1 },
|
|
28
|
+
{ title: t.rootSectionChat, ids: ["chat", "history"], columnsPerRow: 1 },
|
|
29
|
+
{ title: t.rootSectionTask, ids: ["task", "goals", "schedule"], columnsPerRow: 2 },
|
|
30
|
+
{ title: t.rootSectionSystem, ids: ["status", "plugins", "compact", "settings"], columnsPerRow: 2 },
|
|
31
|
+
];
|
|
32
|
+
}
|
|
33
|
+
/** Localized label for a turn end reason. */
|
|
34
|
+
export function reasonLabel(reason, t) {
|
|
35
|
+
switch (reason) {
|
|
36
|
+
case "completed":
|
|
37
|
+
return t.reasonCompleted;
|
|
38
|
+
case "aborted":
|
|
39
|
+
return t.reasonAborted;
|
|
40
|
+
case "blocked":
|
|
41
|
+
return t.reasonBlocked;
|
|
42
|
+
case "error":
|
|
43
|
+
return t.reasonError;
|
|
44
|
+
case "max-tokens":
|
|
45
|
+
return t.reasonMaxTokens;
|
|
46
|
+
case "interrupted":
|
|
47
|
+
return t.reasonInterrupted;
|
|
48
|
+
default:
|
|
49
|
+
return t.reasonUnknown;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
/** Localized label for a goal phase. */
|
|
53
|
+
export function goalPhaseLabel(phase, t) {
|
|
54
|
+
switch (phase) {
|
|
55
|
+
case "active":
|
|
56
|
+
return t.goalPhaseActive;
|
|
57
|
+
case "paused":
|
|
58
|
+
return t.goalPhasePaused;
|
|
59
|
+
case "blocked":
|
|
60
|
+
return t.goalPhaseBlocked;
|
|
61
|
+
case "complete":
|
|
62
|
+
return t.goalPhaseComplete;
|
|
63
|
+
default:
|
|
64
|
+
return phase;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
/** Dedupe (case-insensitive, trailing-slash-normalized) the workspace candidates. */
|
|
68
|
+
export function listWorkspaces(opts) {
|
|
69
|
+
const out = [];
|
|
70
|
+
const seen = new Set();
|
|
71
|
+
const add = (path, title) => {
|
|
72
|
+
if (path === "")
|
|
73
|
+
return;
|
|
74
|
+
const key = path.replace(/[\\/]+$/, "").toLowerCase();
|
|
75
|
+
if (seen.has(key))
|
|
76
|
+
return;
|
|
77
|
+
seen.add(key);
|
|
78
|
+
out.push({ path, title: title || path });
|
|
79
|
+
};
|
|
80
|
+
add(opts.workDir, opts.currentDirLabel);
|
|
81
|
+
for (const w of opts.registry?.list?.() ?? [])
|
|
82
|
+
add(w.path, w.title);
|
|
83
|
+
for (const p of opts.workspaces)
|
|
84
|
+
add(p, p);
|
|
85
|
+
return out;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Which render mode a menu should use. Data-heavy menus (model / session /
|
|
89
|
+
* workspace) collapse to a single select_static so the card stays compact;
|
|
90
|
+
* every other menu stays a button grid — a full menu must never read as a
|
|
91
|
+
* single closed/empty select. This is a pure function so it can be unit-tested
|
|
92
|
+
* (a naive "auto when many options" collapses settings/language etc. too).
|
|
93
|
+
*/
|
|
94
|
+
export function menuRender(menuId) {
|
|
95
|
+
return menuId === "model" || menuId === "chat" || menuId === "workspace"
|
|
96
|
+
? "dropdown"
|
|
97
|
+
: "buttons";
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=menus.js.map
|
package/lib/menus.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"menus.js","sourceRoot":"","sources":["../src/menus.ts"],"names":[],"mappings":"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"}
|
package/lib/runner.d.ts
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import type { Context } from "@deepseek-ai/cordis";
|
|
2
2
|
import { type Session, type SessionEvent } from "@deepseek-ai/dsh-session";
|
|
3
|
-
import
|
|
3
|
+
import { type ModelSelection } from "@deepseek-ai/dsh-agent";
|
|
4
|
+
import type { ChannelAdapter, InboundMessage, OutboundTarget } from "./types.js";
|
|
5
|
+
import { type NotifyLevel } from "./stream.js";
|
|
6
|
+
import { type MenuId } from "./menus.js";
|
|
7
|
+
import { type MenuHost } from "./menu-controller.js";
|
|
4
8
|
import type { BindingStore } from "./binding.js";
|
|
5
|
-
import { type Language } from "./i18n.js";
|
|
9
|
+
import { type Language, type Messages } from "./i18n.js";
|
|
6
10
|
import { type ReminderStore } from "./scheduler.js";
|
|
7
11
|
export interface ConnectConfig {
|
|
8
12
|
/** Agent preset id composed into each session; `undefined` = roster default. */
|
|
@@ -25,7 +29,8 @@ export interface ConnectConfig {
|
|
|
25
29
|
autoMirror?: boolean;
|
|
26
30
|
/** Liveness heartbeat interval ms for the streaming card; 0 disables it (default: 60000). */
|
|
27
31
|
streamHeartbeatMs?: number;
|
|
28
|
-
/** Default notification level for streaming replies (
|
|
32
|
+
/** Default notification level for streaming replies. Default 'result' (final answer only) keeps cards short. */
|
|
33
|
+
/** Streaming reply detail. Default 'result' (final answer only) to keep chat cards short. */
|
|
29
34
|
notifyLevel?: NotifyLevel;
|
|
30
35
|
/** Proactive progress-notice interval ms: when a turn goes silent for this long, a standalone status card is sent (default: 300000 = 5 min; 0 disables). */
|
|
31
36
|
progressTimeoutMs?: number;
|
|
@@ -48,63 +53,14 @@ export interface ResolvedConnectConfig {
|
|
|
48
53
|
progressTimeoutMs: number;
|
|
49
54
|
}
|
|
50
55
|
export declare function resolveConnectConfig(config: ConnectConfig): ResolvedConnectConfig;
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
chunks: {
|
|
54
|
-
push(text: string): void;
|
|
55
|
-
};
|
|
56
|
-
lastText: string;
|
|
57
|
-
reasoning: boolean;
|
|
58
|
-
hintPushed: boolean;
|
|
59
|
-
lastIndex: number | undefined;
|
|
60
|
-
pushedAny: boolean;
|
|
61
|
-
lastPushAt: number;
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* How much of the agent's live progress the streaming card shows.
|
|
65
|
-
* - `full` — everything: reasoning text, tool calls, heartbeats, answer.
|
|
66
|
-
* - `important` — key milestones only: thinking hint, tool calls, heartbeats, answer (no reasoning text).
|
|
67
|
-
* - `result` — only the final answer.
|
|
68
|
-
*/
|
|
69
|
-
export type NotifyLevel = "full" | "important" | "result";
|
|
70
|
-
/** One assistant chunk event of interest to the streaming bridge. */
|
|
71
|
-
export interface StreamChunkLike {
|
|
72
|
-
type: string;
|
|
73
|
-
index?: number;
|
|
74
|
-
text?: string;
|
|
75
|
-
block?: {
|
|
76
|
-
type?: string;
|
|
77
|
-
text?: string;
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
export declare function applyStreamChunk(state: StreamState, thinkingHint: string, chunk: StreamChunkLike, level?: NotifyLevel): void;
|
|
81
|
-
/**
|
|
82
|
-
* Push a localized tool-call status line into the streaming queue so long
|
|
83
|
-
* tool-execution stretches stay visibly alive (the Web GUI shows tool calls;
|
|
84
|
-
* the chat card should too). Ends the reasoning phase and drops the block
|
|
85
|
-
* index so the next content block gets its own separator instead of stacking
|
|
86
|
-
* one on top of the tool line's own blank lines.
|
|
87
|
-
* @param state - the turn's mutable assembly state.
|
|
88
|
-
* @param label - the localized status line, e.g. "🔧 调用工具 `pwsh` — …".
|
|
89
|
-
*/
|
|
90
|
-
export declare function applyToolCall(state: StreamState, label: string): void;
|
|
91
|
-
/** Pull a short human summary out of a tool call's `arguments` JSON (whitespace folded to one line). */
|
|
92
|
-
export declare function toolCallSummary(argumentsJson: unknown): string | undefined;
|
|
93
|
-
/** Pull the first question's text out of an `ask_user_question` arguments JSON (whitespace folded to one line). */
|
|
94
|
-
export declare function questionTextOf(argumentsJson: unknown): string;
|
|
95
|
-
export declare function summarizeTurn(events: readonly SessionEvent[], firstSeq: number): TurnOutcome;
|
|
96
|
-
/** Error category used to pick actionable advice for the user. */
|
|
97
|
-
export type ErrorCategory = "permission" | "network" | "model" | "generic";
|
|
98
|
-
/** Classify an error message into an advice bucket (keyword-based, best-effort). */
|
|
99
|
-
export declare function classifyError(detail: string): ErrorCategory;
|
|
100
|
-
export declare class AgentRunner {
|
|
101
|
-
private readonly ctx;
|
|
56
|
+
export declare class AgentRunner implements MenuHost {
|
|
57
|
+
readonly ctx: Context;
|
|
102
58
|
private readonly config;
|
|
103
|
-
|
|
104
|
-
|
|
59
|
+
readonly channel: string;
|
|
60
|
+
readonly chatKey: string;
|
|
105
61
|
private readonly chatType;
|
|
106
|
-
|
|
107
|
-
|
|
62
|
+
readonly adapter: ChannelAdapter;
|
|
63
|
+
readonly bindings: BindingStore;
|
|
108
64
|
private readonly adapters?;
|
|
109
65
|
/**
|
|
110
66
|
* Route a replayed queued message back into the runner of its own channel
|
|
@@ -119,11 +75,12 @@ export declare class AgentRunner {
|
|
|
119
75
|
private agent?;
|
|
120
76
|
private handle?;
|
|
121
77
|
private turn?;
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
78
|
+
workDir: string;
|
|
79
|
+
language: Language;
|
|
80
|
+
notifyLevel: NotifyLevel;
|
|
81
|
+
progressTimeoutMs: number;
|
|
82
|
+
t: Messages;
|
|
83
|
+
private readonly menu;
|
|
127
84
|
constructor(ctx: Context, config: ResolvedConnectConfig, channel: string, chatKey: string, chatType: "p2p" | "group", adapter: ChannelAdapter, bindings: BindingStore, adapters?: Map<string, ChannelAdapter> | undefined,
|
|
128
85
|
/**
|
|
129
86
|
* Route a replayed queued message back into the runner of its own channel
|
|
@@ -133,8 +90,12 @@ export declare class AgentRunner {
|
|
|
133
90
|
requeue?: ((msg: InboundMessage) => void) | undefined,
|
|
134
91
|
/** Persistent chat-level reminders (`/remind`), wired by ConnectService. */
|
|
135
92
|
reminders?: ReminderStore | undefined);
|
|
136
|
-
|
|
137
|
-
|
|
93
|
+
menuTitle(menuId: MenuId): string;
|
|
94
|
+
rootMenuSections(): readonly {
|
|
95
|
+
title: string;
|
|
96
|
+
ids: readonly string[];
|
|
97
|
+
columnsPerRow?: number;
|
|
98
|
+
}[];
|
|
138
99
|
private reasonLabel;
|
|
139
100
|
/** Prefer the user's first DSH workspace over the process cwd as default. */
|
|
140
101
|
private resolveDefaultWorkDir;
|
|
@@ -155,7 +116,7 @@ export declare class AgentRunner {
|
|
|
155
116
|
/** Pick the localized advice text for a failed turn. */
|
|
156
117
|
private errorAdvice;
|
|
157
118
|
/** Present a destructive-action confirmation; true only when the user confirms. */
|
|
158
|
-
|
|
119
|
+
confirmAction(target: OutboundTarget, promptText: string, messageId?: string): Promise<boolean>;
|
|
159
120
|
private drain;
|
|
160
121
|
private runTurn;
|
|
161
122
|
private ensureAgent;
|
|
@@ -172,7 +133,10 @@ export declare class AgentRunner {
|
|
|
172
133
|
* sessions). Titles come from the binding record when known, otherwise from
|
|
173
134
|
* the host's session title service. Sorted newest first.
|
|
174
135
|
*/
|
|
175
|
-
|
|
136
|
+
collectWorkdirSessions(): Promise<{
|
|
137
|
+
sessionId: string;
|
|
138
|
+
title: string;
|
|
139
|
+
}[]>;
|
|
176
140
|
/**
|
|
177
141
|
* Session ids the DSH workspace registry attaches to a work directory.
|
|
178
142
|
* Best-effort: without a workspace registry this returns `[]`.
|
|
@@ -182,7 +146,7 @@ export declare class AgentRunner {
|
|
|
182
146
|
private sessionTitleOf;
|
|
183
147
|
private get agents();
|
|
184
148
|
private get sessions();
|
|
185
|
-
|
|
149
|
+
defaultSelection(): ModelSelection;
|
|
186
150
|
/**
|
|
187
151
|
* Compose the preset-only agent setup.
|
|
188
152
|
*
|
|
@@ -259,45 +223,43 @@ export declare class AgentRunner {
|
|
|
259
223
|
* without requiring manual `/mirror` command.
|
|
260
224
|
*/
|
|
261
225
|
private autoCreateWebMirror;
|
|
262
|
-
|
|
226
|
+
newChat(msg: InboundMessage): Promise<void>;
|
|
263
227
|
private clearChat;
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
228
|
+
switchTo(sessionId: string, ownerKey: string): Promise<void>;
|
|
229
|
+
listWorkspaces(): {
|
|
230
|
+
path: string;
|
|
231
|
+
title: string;
|
|
232
|
+
}[];
|
|
233
|
+
showStatus(target: OutboundTarget): Promise<void>;
|
|
269
234
|
/** Extract the most recent turn's completion info from session events. */
|
|
270
235
|
private getLastTurnInfo;
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
private setModel;
|
|
276
|
-
private reasoningMenuItems;
|
|
277
|
-
private setReasoning;
|
|
236
|
+
showTasks(target: OutboundTarget): Promise<void>;
|
|
237
|
+
showSettings(target: OutboundTarget): Promise<void>;
|
|
238
|
+
setModel(provider: string, model: string, msg: InboundMessage): Promise<void>;
|
|
239
|
+
setReasoning(effort: string | undefined, msg: InboundMessage): Promise<void>;
|
|
278
240
|
/** Switch the user-facing language for this chat, persisted in its binding. */
|
|
279
|
-
|
|
241
|
+
setLanguage(lang: Language, target: OutboundTarget, msg: InboundMessage): Promise<void>;
|
|
280
242
|
/**
|
|
281
243
|
* Switch the notification level for this chat (persisted in its binding and
|
|
282
244
|
* effective immediately for the next streaming reply).
|
|
283
245
|
*/
|
|
284
|
-
|
|
246
|
+
setNotifyLevel(level: NotifyLevel, target: OutboundTarget, msg: InboundMessage): Promise<void>;
|
|
285
247
|
/** Show the three-level notification picker (used by the `/notify` command). */
|
|
286
248
|
private openNotifyPicker;
|
|
287
249
|
/**
|
|
288
250
|
* Switch the proactive progress-notice interval for this chat (persisted in
|
|
289
251
|
* its binding and effective for the next turn; 0 disables the watchdog).
|
|
290
252
|
*/
|
|
291
|
-
|
|
253
|
+
setProgressTimeout(ms: number, target: OutboundTarget, msg: InboundMessage): Promise<void>;
|
|
292
254
|
/** Show the progress-interval picker (used by the `/progress` command). */
|
|
293
255
|
private openProgressPicker;
|
|
294
|
-
|
|
256
|
+
showPlugins(target: OutboundTarget): Promise<void>;
|
|
295
257
|
private createWorkspace;
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
258
|
+
compact(target: OutboundTarget): Promise<void>;
|
|
259
|
+
showHistory(target: OutboundTarget, limit: number): Promise<void>;
|
|
260
|
+
showGoals(target: OutboundTarget): Promise<void>;
|
|
299
261
|
private goalPhaseLabel;
|
|
300
|
-
|
|
262
|
+
showSchedule(target: OutboundTarget): Promise<void>;
|
|
301
263
|
private showAllWorkspaces;
|
|
302
264
|
/**
|
|
303
265
|
* Create or show Web mirror session for this chat.
|
package/lib/runner.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAA2B,KAAK,OAAO,EAAE,KAAK,YAAY,EAAiB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
|