dsh-ssh-tui 0.7.0 → 0.7.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/README.en.md +90 -7
- package/README.md +58 -7
- package/lib/approval-cache.js +12 -9
- package/lib/approval-cache.js.map +1 -1
- package/lib/color-depth.js +26 -5
- package/lib/color-depth.js.map +1 -1
- package/lib/diag.js +60 -17
- package/lib/diag.js.map +1 -1
- package/lib/dialogs.js.map +1 -1
- package/lib/display-sock.js +68 -10
- package/lib/display-sock.js.map +1 -1
- package/lib/footer.js +35 -7
- package/lib/footer.js.map +1 -1
- package/lib/gateway-protocol.js +202 -0
- package/lib/gateway-protocol.js.map +1 -0
- package/lib/i18n/en.js +63 -41
- package/lib/i18n/en.js.map +1 -1
- package/lib/i18n/zh.js +63 -41
- package/lib/i18n/zh.js.map +1 -1
- package/lib/index.js +99 -23
- package/lib/index.js.map +1 -1
- package/lib/job-label.js +99 -17
- package/lib/job-label.js.map +1 -1
- package/lib/plan.js +269 -17
- package/lib/plan.js.map +1 -1
- package/lib/platform.js +88 -0
- package/lib/platform.js.map +1 -0
- package/lib/provider-catalog.js +3 -0
- package/lib/provider-catalog.js.map +1 -1
- package/lib/route-memory.js +8 -1
- package/lib/route-memory.js.map +1 -1
- package/lib/session-list.js +18 -1
- package/lib/session-list.js.map +1 -1
- package/lib/session-lock.js +75 -23
- package/lib/session-lock.js.map +1 -1
- package/lib/session-route.js +331 -0
- package/lib/session-route.js.map +1 -0
- package/lib/subagent-model.js +79 -1
- package/lib/subagent-model.js.map +1 -1
- package/lib/term-text.js +7 -4
- package/lib/term-text.js.map +1 -1
- package/lib/tool-present.js +46 -14
- package/lib/tool-present.js.map +1 -1
- package/lib/tui.js +1796 -274
- package/lib/tui.js.map +1 -1
- package/lib/types/color-depth.d.ts +4 -4
- package/lib/types/diag.d.ts +11 -0
- package/lib/types/dialogs.d.ts +4 -0
- package/lib/types/display-sock.d.ts +52 -1
- package/lib/types/footer.d.ts +18 -4
- package/lib/types/gateway-protocol.d.ts +88 -0
- package/lib/types/job-label.d.ts +38 -7
- package/lib/types/plan.d.ts +94 -4
- package/lib/types/platform.d.ts +50 -0
- package/lib/types/route-memory.d.ts +17 -22
- package/lib/types/session-list.d.ts +5 -0
- package/lib/types/session-lock.d.ts +9 -0
- package/lib/types/session-route.d.ts +191 -0
- package/lib/types/subagent-model.d.ts +53 -0
- package/lib/types/term-text.d.ts +3 -2
- package/lib/types/tool-present.d.ts +2 -17
- package/lib/types/transcript-types.d.ts +44 -1
- package/lib/types/tui.d.ts +292 -2
- package/lib/types/update-check.d.ts +42 -1
- package/lib/update-check.js +31 -2
- package/lib/update-check.js.map +1 -1
- package/package.json +1 -1
package/lib/session-lock.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-lock.js","sourceRoot":"","sources":["../src/session-lock.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session-lock.js","sourceRoot":"","sources":["../src/session-lock.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,331 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-session provider/model memory.
|
|
3
|
+
*
|
|
4
|
+
* The parent route and the subagent route used to be one global choice: `/model`
|
|
5
|
+
* and `/submodel` wrote a default that every later session inherited. Once a
|
|
6
|
+
* child could run on a *different* supplier that stopped being enough — resuming
|
|
7
|
+
* an old conversation silently re-ran it on whatever the last conversation used,
|
|
8
|
+
* and there was no way to see which supplier had paid for the earlier one.
|
|
9
|
+
*
|
|
10
|
+
* Each session's effective route is recorded here, next to the TUI's other
|
|
11
|
+
* per-session state under `$DSH_HOME`, and applied when that session starts
|
|
12
|
+
* again. A new session still starts from the global default; the record only
|
|
13
|
+
* ever overrides it for the session it belongs to, and never for another one.
|
|
14
|
+
*
|
|
15
|
+
* The record is a cache of a decision, not a source of truth: every field is
|
|
16
|
+
* parsed defensively, and a route whose provider no longer exists is still
|
|
17
|
+
* applied (the launcher reports the failure the same way it would for a CLI
|
|
18
|
+
* flag).
|
|
19
|
+
*
|
|
20
|
+
* @module dsh-ssh-tui/session-route
|
|
21
|
+
*/
|
|
22
|
+
import { mkdir, readFile, rename, writeFile } from 'node:fs/promises';
|
|
23
|
+
import { dirname, join } from 'node:path';
|
|
24
|
+
import { resolveDshHome } from './display-sock.js';
|
|
25
|
+
import { adoptSessionSubagentSelection, normalizeSubagentSelection } from './subagent-model.js';
|
|
26
|
+
/** Bumped when the stored shape changes meaning; older files are ignored. */
|
|
27
|
+
const ROUTE_FILE_VERSION = 1;
|
|
28
|
+
/**
|
|
29
|
+
* How many sessions keep a record. The file is a convenience cache, and a
|
|
30
|
+
* hundred-odd conversations is more history than a resume picker offers.
|
|
31
|
+
*/
|
|
32
|
+
export const SESSION_ROUTE_LIMIT = 200;
|
|
33
|
+
export function sessionRoutePath(dshHome = resolveDshHome()) {
|
|
34
|
+
return join(dshHome, 'tui-session-routes.json');
|
|
35
|
+
}
|
|
36
|
+
function trimmed(value) {
|
|
37
|
+
return typeof value === 'string' ? value.trim() : '';
|
|
38
|
+
}
|
|
39
|
+
function parseSubagentRoute(raw) {
|
|
40
|
+
if (raw === null || typeof raw !== 'object' || Array.isArray(raw))
|
|
41
|
+
return undefined;
|
|
42
|
+
const row = raw;
|
|
43
|
+
const model = trimmed(row.model);
|
|
44
|
+
if (model === '')
|
|
45
|
+
return undefined;
|
|
46
|
+
const provider = trimmed(row.provider);
|
|
47
|
+
const effort = trimmed(row.reasoningEffort);
|
|
48
|
+
return {
|
|
49
|
+
...(provider === '' ? {} : { provider }),
|
|
50
|
+
model,
|
|
51
|
+
...(effort === '' ? {} : { reasoningEffort: effort }),
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
/** Parse one record; anything that cannot name a route is dropped. */
|
|
55
|
+
export function parseSessionRoute(raw) {
|
|
56
|
+
if (raw === null || typeof raw !== 'object' || Array.isArray(raw))
|
|
57
|
+
return undefined;
|
|
58
|
+
const row = raw;
|
|
59
|
+
const provider = trimmed(row.provider);
|
|
60
|
+
const model = trimmed(row.model);
|
|
61
|
+
if (provider === '' || model === '')
|
|
62
|
+
return undefined;
|
|
63
|
+
const effort = trimmed(row.reasoningEffort);
|
|
64
|
+
const subagent = parseSubagentRoute(row.subagent);
|
|
65
|
+
const updatedAt = typeof row.updatedAt === 'number' && Number.isFinite(row.updatedAt)
|
|
66
|
+
? Math.max(0, row.updatedAt)
|
|
67
|
+
: 0;
|
|
68
|
+
return {
|
|
69
|
+
provider,
|
|
70
|
+
model,
|
|
71
|
+
...(effort === '' ? {} : { reasoningEffort: effort }),
|
|
72
|
+
...(subagent === undefined ? {} : { subagent }),
|
|
73
|
+
updatedAt,
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
/** Parse the whole file; a file from another version reads as empty. */
|
|
77
|
+
export function parseSessionRoutes(raw) {
|
|
78
|
+
const out = new Map();
|
|
79
|
+
if (raw === null || typeof raw !== 'object' || Array.isArray(raw))
|
|
80
|
+
return out;
|
|
81
|
+
const file = raw;
|
|
82
|
+
if (file.version !== ROUTE_FILE_VERSION)
|
|
83
|
+
return out;
|
|
84
|
+
const entries = file.entries;
|
|
85
|
+
if (entries === null || typeof entries !== 'object' || Array.isArray(entries))
|
|
86
|
+
return out;
|
|
87
|
+
for (const [sessionId, value] of Object.entries(entries)) {
|
|
88
|
+
const id = sessionId.trim();
|
|
89
|
+
if (id === '')
|
|
90
|
+
continue;
|
|
91
|
+
const route = parseSessionRoute(value);
|
|
92
|
+
if (route !== undefined)
|
|
93
|
+
out.set(id, route);
|
|
94
|
+
}
|
|
95
|
+
return out;
|
|
96
|
+
}
|
|
97
|
+
export async function loadSessionRoutes(path = sessionRoutePath()) {
|
|
98
|
+
try {
|
|
99
|
+
return parseSessionRoutes(JSON.parse(await readFile(path, 'utf8')));
|
|
100
|
+
}
|
|
101
|
+
catch {
|
|
102
|
+
return new Map();
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
/** The record for one session, or undefined when it never had one. */
|
|
106
|
+
export async function loadSessionRoute(sessionId, path = sessionRoutePath()) {
|
|
107
|
+
const id = sessionId.trim();
|
|
108
|
+
if (id === '')
|
|
109
|
+
return undefined;
|
|
110
|
+
return (await loadSessionRoutes(path)).get(id);
|
|
111
|
+
}
|
|
112
|
+
/** Keep the newest `limit` records, so the file cannot grow without bound. */
|
|
113
|
+
export function pruneSessionRoutes(entries, limit = SESSION_ROUTE_LIMIT) {
|
|
114
|
+
if (entries.size <= limit)
|
|
115
|
+
return new Map(entries);
|
|
116
|
+
const newest = [...entries.entries()]
|
|
117
|
+
.sort((left, right) => (right[1].updatedAt ?? 0) - (left[1].updatedAt ?? 0))
|
|
118
|
+
.slice(0, Math.max(0, limit));
|
|
119
|
+
return new Map(newest);
|
|
120
|
+
}
|
|
121
|
+
export async function saveSessionRoutes(path, entries) {
|
|
122
|
+
const payload = {
|
|
123
|
+
version: ROUTE_FILE_VERSION,
|
|
124
|
+
entries: Object.fromEntries(pruneSessionRoutes(entries)),
|
|
125
|
+
};
|
|
126
|
+
const body = `${JSON.stringify(payload)}\n`;
|
|
127
|
+
const tmp = `${path}.${process.pid}.tmp`;
|
|
128
|
+
try {
|
|
129
|
+
await mkdir(dirname(path), { recursive: true });
|
|
130
|
+
await writeFile(tmp, body, { encoding: 'utf8', mode: 0o600 });
|
|
131
|
+
await rename(tmp, path);
|
|
132
|
+
return true;
|
|
133
|
+
}
|
|
134
|
+
catch {
|
|
135
|
+
try {
|
|
136
|
+
await writeFile(path, body, { encoding: 'utf8', mode: 0o600 });
|
|
137
|
+
return true;
|
|
138
|
+
}
|
|
139
|
+
catch {
|
|
140
|
+
// A route that cannot be written is a session that starts from the
|
|
141
|
+
// default next time, not a broken turn.
|
|
142
|
+
return false;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Record one session's route, leaving every other session alone.
|
|
148
|
+
*
|
|
149
|
+
* Read-modify-write on purpose: two Hosts (two SSH windows) can be open at
|
|
150
|
+
* once, and neither may drop the other's entry.
|
|
151
|
+
*/
|
|
152
|
+
export async function saveSessionRoute(sessionId, route, path = sessionRoutePath()) {
|
|
153
|
+
const id = sessionId.trim();
|
|
154
|
+
const parsed = parseSessionRoute({ ...route, updatedAt: Date.now() });
|
|
155
|
+
if (id === '' || parsed === undefined)
|
|
156
|
+
return false;
|
|
157
|
+
const entries = await loadSessionRoutes(path);
|
|
158
|
+
entries.set(id, parsed);
|
|
159
|
+
return saveSessionRoutes(path, entries);
|
|
160
|
+
}
|
|
161
|
+
/** Whether two records describe the same route (the timestamp is ignored). */
|
|
162
|
+
export function sameSessionRoute(left, right) {
|
|
163
|
+
if (left === undefined || right === undefined)
|
|
164
|
+
return left === right;
|
|
165
|
+
if (left.provider !== right.provider || left.model !== right.model)
|
|
166
|
+
return false;
|
|
167
|
+
if ((left.reasoningEffort ?? '') !== (right.reasoningEffort ?? ''))
|
|
168
|
+
return false;
|
|
169
|
+
const a = left.subagent;
|
|
170
|
+
const b = right.subagent;
|
|
171
|
+
if (a === undefined || b === undefined)
|
|
172
|
+
return a === b;
|
|
173
|
+
return a.model === b.model
|
|
174
|
+
&& (a.provider ?? '') === (b.provider ?? '')
|
|
175
|
+
&& (a.reasoningEffort ?? '') === (b.reasoningEffort ?? '');
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Shape a live parent route plus the subagent selection into a record.
|
|
179
|
+
*
|
|
180
|
+
* Shared by the TUI (which reports what its refs hold) and the launcher (which
|
|
181
|
+
* writes it), so the two cannot disagree about what a session was running on.
|
|
182
|
+
* An empty provider or model yields nothing: a record that cannot name a route
|
|
183
|
+
* would come back as a lie.
|
|
184
|
+
*/
|
|
185
|
+
export function sessionRouteInput(input) {
|
|
186
|
+
const provider = input.provider.trim();
|
|
187
|
+
const model = input.model.trim();
|
|
188
|
+
if (provider === '' || model === '')
|
|
189
|
+
return undefined;
|
|
190
|
+
const effort = input.reasoningEffort?.trim() ?? '';
|
|
191
|
+
const subagent = input.subagent;
|
|
192
|
+
const subagentModel = subagent?.model.trim() ?? '';
|
|
193
|
+
const subagentProvider = subagent?.provider?.trim() ?? '';
|
|
194
|
+
const subagentEffort = subagent?.reasoningEffort?.trim() ?? '';
|
|
195
|
+
return {
|
|
196
|
+
provider,
|
|
197
|
+
model,
|
|
198
|
+
...(effort === '' ? {} : { reasoningEffort: effort }),
|
|
199
|
+
...(subagent === undefined || subagentModel === ''
|
|
200
|
+
? {}
|
|
201
|
+
: {
|
|
202
|
+
subagent: {
|
|
203
|
+
...(subagentProvider === '' ? {} : { provider: subagentProvider }),
|
|
204
|
+
model: subagentModel,
|
|
205
|
+
...(subagentEffort === '' ? {} : { reasoningEffort: subagentEffort }),
|
|
206
|
+
},
|
|
207
|
+
}),
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Providers the harness ships with. They are routable in any install even when
|
|
212
|
+
* the adapter list is still warming up, so a record naming one is never treated
|
|
213
|
+
* as stale on that basis alone.
|
|
214
|
+
*/
|
|
215
|
+
export const BUILTIN_ROUTABLE_PROVIDERS = ['deepseek-official', 'xai', 'opencode-go', 'opencode'];
|
|
216
|
+
/**
|
|
217
|
+
* Whether this install can still route to a provider.
|
|
218
|
+
*
|
|
219
|
+
* Deliberately permissive: the cost of wrongly *keeping* a record is an error the
|
|
220
|
+
* harness already reports clearly (an unknown route, the same one a launch flag
|
|
221
|
+
* would hit), while wrongly *dropping* one silently loses the session's route —
|
|
222
|
+
* which is the whole feature. So a provider counts as routable when it is a
|
|
223
|
+
* built-in, appears in the adapter list, has a configured `llm-pi-ai` profile, or
|
|
224
|
+
* is listed by the adapter's own model catalog.
|
|
225
|
+
*/
|
|
226
|
+
export function providerIsRoutable(input) {
|
|
227
|
+
const id = input.provider.trim();
|
|
228
|
+
if (id === '')
|
|
229
|
+
return false;
|
|
230
|
+
if (BUILTIN_ROUTABLE_PROVIDERS.includes(id))
|
|
231
|
+
return true;
|
|
232
|
+
if ((input.listed ?? []).some(entry => entry.trim() === id))
|
|
233
|
+
return true;
|
|
234
|
+
return (input.configured ?? []).some(entry => entry.trim() === id);
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Decide what of a recorded route still applies.
|
|
238
|
+
*
|
|
239
|
+
* A provider that no longer exists takes its whole record with it: the session
|
|
240
|
+
* was configured around that supplier (its model, its effort, and the children
|
|
241
|
+
* it pinned), so the honest answer is the app-level default for all of it rather
|
|
242
|
+
* than a half-restored route. A pinned *child* provider that is gone is narrower:
|
|
243
|
+
* the parent route is kept and the children fall back to the app-level subagent
|
|
244
|
+
* setting. An inherited child route has no pin to check — it follows the parent,
|
|
245
|
+
* which was just found routable.
|
|
246
|
+
*/
|
|
247
|
+
export function routeAvailabilityPlan(input) {
|
|
248
|
+
const recorded = input.recorded;
|
|
249
|
+
if (recorded === undefined)
|
|
250
|
+
return {};
|
|
251
|
+
if (!input.routable(recorded.provider))
|
|
252
|
+
return { droppedProvider: recorded.provider };
|
|
253
|
+
const subagent = recorded.subagent;
|
|
254
|
+
if (subagent === undefined)
|
|
255
|
+
return { route: recorded };
|
|
256
|
+
if (subagent.provider !== undefined && !input.routable(subagent.provider)) {
|
|
257
|
+
return { route: recorded, droppedSubagentProvider: subagent.provider };
|
|
258
|
+
}
|
|
259
|
+
return { route: recorded, subagent };
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* Apply a resumed session's record to the live selection.
|
|
263
|
+
*
|
|
264
|
+
* Returns what the record was worth (see `routeAvailabilityPlan`) so the
|
|
265
|
+
* launcher can say which route the session came back on — and, when a supplier
|
|
266
|
+
* has been removed since, which one it fell back from. A new session is left
|
|
267
|
+
* alone, and so is a resumed one that never had a record: both start from the
|
|
268
|
+
* app-level defaults, which is the behaviour before any of this existed.
|
|
269
|
+
*
|
|
270
|
+
* The subagent route is applied in memory only: it belongs to the conversation
|
|
271
|
+
* being resumed, and writing it back to the settings would make one session's
|
|
272
|
+
* pin the default for every later session.
|
|
273
|
+
*/
|
|
274
|
+
export async function restoreSessionRoute(input) {
|
|
275
|
+
if (!input.resume)
|
|
276
|
+
return {};
|
|
277
|
+
const recorded = await loadSessionRoute(input.sessionId, input.path ?? sessionRoutePath());
|
|
278
|
+
const plan = routeAvailabilityPlan({
|
|
279
|
+
...(recorded === undefined ? {} : { recorded }),
|
|
280
|
+
routable: input.routable ?? (() => true),
|
|
281
|
+
});
|
|
282
|
+
if (plan.subagent !== undefined) {
|
|
283
|
+
adoptSessionSubagentSelection(input.subagentSelection, normalizeSubagentSelection(plan.subagent));
|
|
284
|
+
}
|
|
285
|
+
return plan;
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
* The route a launch should run on, in one place.
|
|
289
|
+
*
|
|
290
|
+
* Precedence: an in-process change, then launch flags, then the session's own
|
|
291
|
+
* record, then the global default, then the last remembered route. A resumed
|
|
292
|
+
* conversation therefore comes back on the supplier it was actually using, while
|
|
293
|
+
* a new one still starts from the default — and an explicit flag still wins,
|
|
294
|
+
* because that is this launch's ask.
|
|
295
|
+
*
|
|
296
|
+
* The reasoning effort travels with the route it was chosen for: it is taken
|
|
297
|
+
* from whichever source supplied the provider/model, and only when the flags did
|
|
298
|
+
* not move the route away from it. A CLI that changes either half must not
|
|
299
|
+
* inherit the saved effort of a different model.
|
|
300
|
+
*/
|
|
301
|
+
export function resolveLaunchRoute(input) {
|
|
302
|
+
const provider = input.live?.provider
|
|
303
|
+
?? input.cli?.provider
|
|
304
|
+
?? input.session?.provider
|
|
305
|
+
?? input.saved?.provider
|
|
306
|
+
?? input.remembered?.provider
|
|
307
|
+
?? 'deepseek-official';
|
|
308
|
+
const model = input.live?.model
|
|
309
|
+
?? input.cli?.model
|
|
310
|
+
?? input.session?.model
|
|
311
|
+
?? input.saved?.model
|
|
312
|
+
?? input.remembered?.model
|
|
313
|
+
?? 'deepseek-v4-flash';
|
|
314
|
+
// An in-process selection decides on its own: a `/model` that picked "provider
|
|
315
|
+
// default" means no effort, not "the effort this route happened to carry".
|
|
316
|
+
const effort = input.live !== undefined
|
|
317
|
+
? input.live.reasoningEffort
|
|
318
|
+
: input.session !== undefined && input.session.provider === provider && input.session.model === model
|
|
319
|
+
? input.session.reasoningEffort
|
|
320
|
+
: input.saved !== undefined && input.saved.provider === provider && input.saved.model === model
|
|
321
|
+
? input.saved.reasoningEffort
|
|
322
|
+
: input.remembered !== undefined && input.remembered.provider === provider && input.remembered.model === model
|
|
323
|
+
? input.remembered.reasoningEffort
|
|
324
|
+
: undefined;
|
|
325
|
+
return {
|
|
326
|
+
provider,
|
|
327
|
+
model,
|
|
328
|
+
...(effort === undefined || effort === '' ? {} : { reasoningEffort: effort }),
|
|
329
|
+
};
|
|
330
|
+
}
|
|
331
|
+
//# sourceMappingURL=session-route.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-route.js","sourceRoot":"","sources":["../src/session-route.ts"],"names":[],"mappings":"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"}
|
package/lib/subagent-model.js
CHANGED
|
@@ -98,6 +98,51 @@ export function defaultSubagentModelForProvider(provider, listed = [], parentMod
|
|
|
98
98
|
}
|
|
99
99
|
return preferred[0] ?? DEFAULT_SUBAGENT_MODEL;
|
|
100
100
|
}
|
|
101
|
+
/**
|
|
102
|
+
* Canonical id of the supplier behind a route.
|
|
103
|
+
*
|
|
104
|
+
* The settings file can name the same supplier two ways — `xai` against
|
|
105
|
+
* `grok`, `deepseek-official` against `deepseek` — and a `/submodel` pin that
|
|
106
|
+
* spells the parent's own provider differently is still the parent's provider.
|
|
107
|
+
* Only those aliases collapse: an id the TUI cannot vouch for (`deepseek-eu`,
|
|
108
|
+
* `grok-mirror`, a relay) stays itself, because two routes it cannot prove
|
|
109
|
+
* share a bill are two providers.
|
|
110
|
+
*/
|
|
111
|
+
export function canonicalProviderId(provider) {
|
|
112
|
+
const id = provider?.trim().toLowerCase() ?? '';
|
|
113
|
+
if (id === '')
|
|
114
|
+
return '';
|
|
115
|
+
if (id === 'deepseek' || id === 'deepseek-official')
|
|
116
|
+
return 'deepseek';
|
|
117
|
+
// The OAuth plugin registers itself as `xai-oauth`: every `xai-*` id is xAI.
|
|
118
|
+
if (id === 'xai' || id === 'grok' || id.startsWith('xai-'))
|
|
119
|
+
return 'xai';
|
|
120
|
+
return id;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* True when `child` is a different supplier from `parent`.
|
|
124
|
+
*
|
|
125
|
+
* This is the one condition that earns a subagent an accent colour: a child
|
|
126
|
+
* that follows the parent — or that was pinned back onto the parent's own
|
|
127
|
+
* provider — is on the parent's route and must read as such.
|
|
128
|
+
*/
|
|
129
|
+
export function subagentProviderDiffers(parent, child) {
|
|
130
|
+
const a = canonicalProviderId(parent);
|
|
131
|
+
const b = canonicalProviderId(child);
|
|
132
|
+
if (a === '' || b === '')
|
|
133
|
+
return false;
|
|
134
|
+
return a !== b;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Identity SGR for a subagent chip title. Same provider as the parent stays
|
|
138
|
+
* the violet used since the courtesy-name work; a different provider uses
|
|
139
|
+
* cyan so the foreign route is visible without a second color layer.
|
|
140
|
+
*/
|
|
141
|
+
export const SUBAGENT_IDENTITY_SGR = '38;5;141';
|
|
142
|
+
export const SUBAGENT_FOREIGN_SGR = '38;5;80';
|
|
143
|
+
export function subagentIdentitySgr(foreign) {
|
|
144
|
+
return foreign ? SUBAGENT_FOREIGN_SGR : SUBAGENT_IDENTITY_SGR;
|
|
145
|
+
}
|
|
101
146
|
/**
|
|
102
147
|
* True when the stored subagent model still belongs to the parent provider
|
|
103
148
|
* family. An explicit leftover DeepSeek flash id after switching to xAI is
|
|
@@ -160,6 +205,32 @@ export function describeSubagentFit(input) {
|
|
|
160
205
|
following,
|
|
161
206
|
};
|
|
162
207
|
}
|
|
208
|
+
/**
|
|
209
|
+
* Adopt a session's own subagent route, outranking the settings watcher.
|
|
210
|
+
* @param ref - the shared selection handle.
|
|
211
|
+
* @param selection - the route the session's record names.
|
|
212
|
+
*/
|
|
213
|
+
export function adoptSessionSubagentSelection(ref, selection) {
|
|
214
|
+
ref.current = selection;
|
|
215
|
+
ref.source = 'session';
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Hand the ref back to the settings watcher.
|
|
219
|
+
*
|
|
220
|
+
* Called when a user change makes the settings the source again, and before a
|
|
221
|
+
* new session starts in this process — a session-scoped route must not leak into
|
|
222
|
+
* the next conversation. Only a readable section may replace the current value:
|
|
223
|
+
* resetting on a settings service that is not up yet would swap the route for
|
|
224
|
+
* the built-in default instead.
|
|
225
|
+
*/
|
|
226
|
+
export function releaseSessionSubagentSelection(ref, settingsValue) {
|
|
227
|
+
if (ref.source !== 'session')
|
|
228
|
+
return;
|
|
229
|
+
ref.source = 'settings';
|
|
230
|
+
if (settingsValue === null || settingsValue === undefined)
|
|
231
|
+
return;
|
|
232
|
+
ref.current = normalizeSubagentSelection(settingsValue);
|
|
233
|
+
}
|
|
163
234
|
/** Settings schema for `$DSH_HOME/settings.yaml`. */
|
|
164
235
|
export const SUBAGENT_SETTINGS_SCHEMA = z.object({
|
|
165
236
|
provider: z.string(),
|
|
@@ -187,7 +258,7 @@ export function normalizeSubagentSelection(value) {
|
|
|
187
258
|
*/
|
|
188
259
|
export function createSubagentSelection(ctx) {
|
|
189
260
|
let source = () => ({ model: DEFAULT_SUBAGENT_MODEL });
|
|
190
|
-
const ref = { current: normalizeSubagentSelection(source()) };
|
|
261
|
+
const ref = { current: normalizeSubagentSelection(source()), source: 'settings' };
|
|
191
262
|
installSettingsSection(ctx, SUBAGENT_SETTINGS_NAMESPACE, SUBAGENT_SETTINGS_SCHEMA, {
|
|
192
263
|
model: DEFAULT_SUBAGENT_MODEL,
|
|
193
264
|
}, {
|
|
@@ -195,6 +266,13 @@ export function createSubagentSelection(ctx) {
|
|
|
195
266
|
source = () => current();
|
|
196
267
|
},
|
|
197
268
|
onChange: () => {
|
|
269
|
+
// A session's own route is not the settings' to overwrite; see
|
|
270
|
+
// `SubagentSelectionRef.source`. The host fires this on writes to the
|
|
271
|
+
// subagent section from anywhere — the web UI, another SSH window — and
|
|
272
|
+
// adopting that value here is what silently dropped a resumed session's
|
|
273
|
+
// pin.
|
|
274
|
+
if (ref.source === 'session')
|
|
275
|
+
return;
|
|
198
276
|
ref.current = normalizeSubagentSelection(source());
|
|
199
277
|
},
|
|
200
278
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subagent-model.js","sourceRoot":"","sources":["../src/subagent-model.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,CAAC,MAAM,0BAA0B,CAAA;AAExC,OAAO,EAAE,iBAAiB,EAA6C,MAAM,sBAAsB,CAAA;AACnG,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAC3E,OAAO,EAAE,CAAC,EAAE,MAAM,iBAAiB,CAAA;AAEnC,sEAAsE;AACtE,MAAM,CAAC,MAAM,2BAA2B,GAAG,iBAAiB,CAAC,kBAAkB,CAAC,CAAA;AAEhF,4EAA4E;AAC5E,MAAM,CAAC,MAAM,sBAAsB,GAAG,mBAAmB,CAAA;AAEzD,2EAA2E;AAC3E,MAAM,CAAC,MAAM,0BAA0B,GAAG,UAAU,CAAA;AAEpD,mDAAmD;AACnD,MAAM,sBAAsB,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,CAAU,CAAA;AAE1E,8CAA8C;AAC9C,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,KAAK,CAAU,CAAA;AAEnD,SAAS,cAAc,CAAC,QAAgB;IACtC,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IACxC,IAAI,EAAE,KAAK,mBAAmB,IAAI,EAAE,KAAK,UAAU,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,UAAU,CAAA;IACpG,IAAI,EAAE,KAAK,KAAK,IAAI,EAAE,KAAK,MAAM,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAA;IAClG,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,SAAS,cAAc,CAAC,KAAa,EAAE,OAA0B;IAC/D,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IACrC,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;AACpD,CAAC;AAED,qEAAqE;AACrE,SAAS,kBAAkB,CAAC,CAAS,EAAE,CAAS;IAC9C,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,OAAO,KAAK,GAAG,CAAC,CAAC,MAAM,IAAI,KAAK,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;QAAE,KAAK,IAAI,CAAC,CAAA;IAChF,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,WAAW,CAAC,EAAU;IAC7B,OAAO,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AAChE,CAAC;AAED;;;;GAIG;AACH,SAAS,sBAAsB,CAC7B,KAAa,EACb,SAA4B,EAC5B,WAA+B;IAE/B,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IACrC,MAAM,MAAM,GAAG,WAAW,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,CAAA;IACtD,MAAM,cAAc,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,CAAA;IAC7E,IAAI,cAAc,IAAI,CAAC;QAAE,OAAO,CAAC,GAAG,GAAG,cAAc,CAAA;IACrD,IAAI,MAAM,KAAK,EAAE,IAAI,EAAE,KAAK,MAAM;QAAE,OAAO,CAAC,EAAE,CAAA;IAC9C,IAAI,KAAK,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IACvC,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;QAClB,MAAM,MAAM,GAAG,kBAAkB,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;QAC7C,IAAI,MAAM,IAAI,EAAE;YAAE,KAAK,IAAI,EAAE,CAAA;aACxB,IAAI,MAAM,IAAI,CAAC;YAAE,KAAK,IAAI,CAAC,CAAA;IAClC,CAAC;IACD,IAAI,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,KAAK,IAAI,CAAC,CAAA;IACrC,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,KAAK,IAAI,EAAE,CAAA;IAC/E,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,+BAA+B,CAC7C,QAAgB,EAChB,SAA4B,EAAE,EAC9B,WAAoB;IAEpB,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACvC,MAAM,SAAS,GAAG,MAAM,KAAK,KAAK;QAChC,CAAC,CAAC,CAAC,0BAA0B,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC;QAClE,CAAC,CAAC,MAAM,KAAK,UAAU;YACrB,CAAC,CAAC,CAAC,sBAAsB,EAAE,8BAA8B,EAAE,mBAAmB,CAAC;YAC/E,CAAC,CAAC,EAAE,CAAA;IACR,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAA;IAChF,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CACpC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,EAAE,kBAAkB,CAAC;YACvD,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,EAAE,sBAAsB,CAAC;gBAClE,CAAC,CAAC,IAAI,CAAC,CAAA;QACb,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAA;QACxD,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC7B,MAAM,KAAK,GAAG,sBAAsB,CAAC,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC;kBAC3D,sBAAsB,CAAC,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,CAAA;YACrD,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;QACjD,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,sBAAsB,CAAC,CAAA;IAChE,CAAC;IACD,OAAO,SAAS,CAAC,CAAC,CAAC,IAAI,sBAAsB,CAAA;AAC/C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,4BAA4B,CAC1C,QAAgB,EAChB,KAAa,EACb,SAA4B,EAAE;IAE9B,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;IACvB,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,KAAK,CAAA;IAC3B,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAAE,OAAO,KAAK,CAAA;IAC3D,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACvC,IAAI,MAAM,KAAK,KAAK;QAAE,OAAO,cAAc,CAAC,EAAE,EAAE,kBAAkB,CAAC,CAAA;IACnE,IAAI,MAAM,KAAK,UAAU;QAAE,OAAO,cAAc,CAAC,EAAE,EAAE,sBAAsB,CAAC,CAAA;IAC5E,mEAAmE;IACnE,IAAI,cAAc,CAAC,EAAE,EAAE,kBAAkB,CAAC;QAAE,OAAO,KAAK,CAAA;IACxD,OAAO,IAAI,CAAA;AACb,CAAC;AAKD;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IACrC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,OAAO,CAAA;IAC7B,IAAI,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAA;IACzG,IAAI,cAAc,CAAC,EAAE,EAAE,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAAE,OAAO,OAAO,CAAA;IACxG,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,OAAO,CAAA;IAClF,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,mBAAmB,CAAC,KAKnC;IACC,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,KAAK,SAAS,CAAA;IACjD,MAAM,UAAU,GAAG,4BAA4B,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;IACrF,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IAC9C,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAA;IAC9G,MAAM,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAA;IAC3E,MAAM,SAAS,GAAG,IAAI,KAAK,OAAO;QAChC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QAChB,CAAC,CAAC,IAAI,KAAK,OAAO;YAChB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;YAC9D,CAAC,CAAC,EAAE,CAAA;IACR,MAAM,UAAU,GAAG,SAAS,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,MAAM,SAAS,EAAE,CAAA;IACnF,OAAO;QACL,IAAI,EAAE,CAAC,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC;QACpF,UAAU;QACV,SAAS,EAAE,IAAI,KAAK,OAAO;QAC3B,SAAS;KACV,CAAA;AACH,CAAC;
|
|
1
|
+
{"version":3,"file":"subagent-model.js","sourceRoot":"","sources":["../src/subagent-model.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,CAAC,MAAM,0BAA0B,CAAA;AAExC,OAAO,EAAE,iBAAiB,EAA6C,MAAM,sBAAsB,CAAA;AACnG,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAC3E,OAAO,EAAE,CAAC,EAAE,MAAM,iBAAiB,CAAA;AAEnC,sEAAsE;AACtE,MAAM,CAAC,MAAM,2BAA2B,GAAG,iBAAiB,CAAC,kBAAkB,CAAC,CAAA;AAEhF,4EAA4E;AAC5E,MAAM,CAAC,MAAM,sBAAsB,GAAG,mBAAmB,CAAA;AAEzD,2EAA2E;AAC3E,MAAM,CAAC,MAAM,0BAA0B,GAAG,UAAU,CAAA;AAEpD,mDAAmD;AACnD,MAAM,sBAAsB,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,CAAU,CAAA;AAE1E,8CAA8C;AAC9C,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,KAAK,CAAU,CAAA;AAEnD,SAAS,cAAc,CAAC,QAAgB;IACtC,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IACxC,IAAI,EAAE,KAAK,mBAAmB,IAAI,EAAE,KAAK,UAAU,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,UAAU,CAAA;IACpG,IAAI,EAAE,KAAK,KAAK,IAAI,EAAE,KAAK,MAAM,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAA;IAClG,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,SAAS,cAAc,CAAC,KAAa,EAAE,OAA0B;IAC/D,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IACrC,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;AACpD,CAAC;AAED,qEAAqE;AACrE,SAAS,kBAAkB,CAAC,CAAS,EAAE,CAAS;IAC9C,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,OAAO,KAAK,GAAG,CAAC,CAAC,MAAM,IAAI,KAAK,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;QAAE,KAAK,IAAI,CAAC,CAAA;IAChF,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,WAAW,CAAC,EAAU;IAC7B,OAAO,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AAChE,CAAC;AAED;;;;GAIG;AACH,SAAS,sBAAsB,CAC7B,KAAa,EACb,SAA4B,EAC5B,WAA+B;IAE/B,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IACrC,MAAM,MAAM,GAAG,WAAW,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,CAAA;IACtD,MAAM,cAAc,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,CAAA;IAC7E,IAAI,cAAc,IAAI,CAAC;QAAE,OAAO,CAAC,GAAG,GAAG,cAAc,CAAA;IACrD,IAAI,MAAM,KAAK,EAAE,IAAI,EAAE,KAAK,MAAM;QAAE,OAAO,CAAC,EAAE,CAAA;IAC9C,IAAI,KAAK,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IACvC,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;QAClB,MAAM,MAAM,GAAG,kBAAkB,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;QAC7C,IAAI,MAAM,IAAI,EAAE;YAAE,KAAK,IAAI,EAAE,CAAA;aACxB,IAAI,MAAM,IAAI,CAAC;YAAE,KAAK,IAAI,CAAC,CAAA;IAClC,CAAC;IACD,IAAI,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,KAAK,IAAI,CAAC,CAAA;IACrC,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,KAAK,IAAI,EAAE,CAAA;IAC/E,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,+BAA+B,CAC7C,QAAgB,EAChB,SAA4B,EAAE,EAC9B,WAAoB;IAEpB,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACvC,MAAM,SAAS,GAAG,MAAM,KAAK,KAAK;QAChC,CAAC,CAAC,CAAC,0BAA0B,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC;QAClE,CAAC,CAAC,MAAM,KAAK,UAAU;YACrB,CAAC,CAAC,CAAC,sBAAsB,EAAE,8BAA8B,EAAE,mBAAmB,CAAC;YAC/E,CAAC,CAAC,EAAE,CAAA;IACR,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAA;IAChF,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CACpC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,EAAE,kBAAkB,CAAC;YACvD,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,EAAE,sBAAsB,CAAC;gBAClE,CAAC,CAAC,IAAI,CAAC,CAAA;QACb,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAA;QACxD,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC7B,MAAM,KAAK,GAAG,sBAAsB,CAAC,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC;kBAC3D,sBAAsB,CAAC,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,CAAA;YACrD,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;QACjD,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,sBAAsB,CAAC,CAAA;IAChE,CAAC;IACD,OAAO,SAAS,CAAC,CAAC,CAAC,IAAI,sBAAsB,CAAA;AAC/C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAA4B;IAC9D,MAAM,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,CAAA;IAC/C,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,EAAE,CAAA;IACxB,IAAI,EAAE,KAAK,UAAU,IAAI,EAAE,KAAK,mBAAmB;QAAE,OAAO,UAAU,CAAA;IACtE,6EAA6E;IAC7E,IAAI,EAAE,KAAK,KAAK,IAAI,EAAE,KAAK,MAAM,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAA;IACxE,OAAO,EAAE,CAAA;AACX,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAA0B,EAAE,KAAyB;IAC3F,MAAM,CAAC,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;IACrC,MAAM,CAAC,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAA;IACpC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,KAAK,CAAA;IACtC,OAAO,CAAC,KAAK,CAAC,CAAA;AAChB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,UAAU,CAAA;AAC/C,MAAM,CAAC,MAAM,oBAAoB,GAAG,SAAS,CAAA;AAE7C,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAClD,OAAO,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,qBAAqB,CAAA;AAC/D,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,4BAA4B,CAC1C,QAAgB,EAChB,KAAa,EACb,SAA4B,EAAE;IAE9B,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;IACvB,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,KAAK,CAAA;IAC3B,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAAE,OAAO,KAAK,CAAA;IAC3D,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACvC,IAAI,MAAM,KAAK,KAAK;QAAE,OAAO,cAAc,CAAC,EAAE,EAAE,kBAAkB,CAAC,CAAA;IACnE,IAAI,MAAM,KAAK,UAAU;QAAE,OAAO,cAAc,CAAC,EAAE,EAAE,sBAAsB,CAAC,CAAA;IAC5E,mEAAmE;IACnE,IAAI,cAAc,CAAC,EAAE,EAAE,kBAAkB,CAAC;QAAE,OAAO,KAAK,CAAA;IACxD,OAAO,IAAI,CAAA;AACb,CAAC;AAKD;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IACrC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,OAAO,CAAA;IAC7B,IAAI,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAA;IACzG,IAAI,cAAc,CAAC,EAAE,EAAE,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAAE,OAAO,OAAO,CAAA;IACxG,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,OAAO,CAAA;IAClF,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,mBAAmB,CAAC,KAKnC;IACC,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,KAAK,SAAS,CAAA;IACjD,MAAM,UAAU,GAAG,4BAA4B,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;IACrF,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IAC9C,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAA;IAC9G,MAAM,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAA;IAC3E,MAAM,SAAS,GAAG,IAAI,KAAK,OAAO;QAChC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QAChB,CAAC,CAAC,IAAI,KAAK,OAAO;YAChB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;YAC9D,CAAC,CAAC,EAAE,CAAA;IACR,MAAM,UAAU,GAAG,SAAS,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,MAAM,SAAS,EAAE,CAAA;IACnF,OAAO;QACL,IAAI,EAAE,CAAC,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC;QACpF,UAAU;QACV,SAAS,EAAE,IAAI,KAAK,OAAO;QAC3B,SAAS;KACV,CAAA;AACH,CAAC;AAqCD;;;;GAIG;AACH,MAAM,UAAU,6BAA6B,CAC3C,GAAyB,EACzB,SAA4B;IAE5B,GAAG,CAAC,OAAO,GAAG,SAAS,CAAA;IACvB,GAAG,CAAC,MAAM,GAAG,SAAS,CAAA;AACxB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,+BAA+B,CAC7C,GAAyB,EACzB,aAAsB;IAEtB,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;QAAE,OAAM;IACpC,GAAG,CAAC,MAAM,GAAG,UAAU,CAAA;IACvB,IAAI,aAAa,KAAK,IAAI,IAAI,aAAa,KAAK,SAAS;QAAE,OAAM;IACjE,GAAG,CAAC,OAAO,GAAG,0BAA0B,CAAC,aAAa,CAAC,CAAA;AACzD,CAAC;AAED,qDAAqD;AACrD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,sBAAsB,CAAC;IACjD,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;CAC5B,CAAC,CAAA;AAEF,oEAAoE;AACpE,MAAM,UAAU,0BAA0B,CAAC,KAAc;IACvD,MAAM,GAAG,GAAG,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAqB,CAAA;IAC1F,OAAO;QACL,GAAG,CAAC,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE;YAChE,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE;YACnC,CAAC,CAAC,EAAE,CAAC;QACP,KAAK,EAAE,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;YAC7D,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE;YAClB,CAAC,CAAC,sBAAsB;QAC1B,GAAG,CAAC,OAAO,GAAG,CAAC,eAAe,KAAK,QAAQ,IAAI,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE;YAC9E,CAAC,CAAC,EAAE,eAAe,EAAE,iBAAiB,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE;YACpE,CAAC,CAAC,EAAE,CAAC;KACR,CAAA;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,GAAY;IAClD,IAAI,MAAM,GAAG,GAAqB,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC,CAAA;IACxE,MAAM,GAAG,GAAyB,EAAE,OAAO,EAAE,0BAA0B,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAA;IACvG,sBAAsB,CAAC,GAAG,EAAE,2BAA2B,EAAE,wBAAwB,EAAE;QACjF,KAAK,EAAE,sBAAsB;KAC9B,EAAE;QACD,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACrB,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,EAAiC,CAAA;QACzD,CAAC;QACD,QAAQ,EAAE,GAAG,EAAE;YACb,+DAA+D;YAC/D,sEAAsE;YACtE,wEAAwE;YACxE,wEAAwE;YACxE,OAAO;YACP,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;gBAAE,OAAM;YACpC,GAAG,CAAC,OAAO,GAAG,0BAA0B,CAAC,MAAM,EAAE,CAAC,CAAA;QACpD,CAAC;KACF,CAAC,CAAA;IACF,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,qBAAqB,CAAC,SAA4B;IAChE,OAAO;QACL,GAAG,CAAC,SAAS,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC7E,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,GAAG,CAAC,SAAS,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC;KAC3G,CAAA;AACH,CAAC"}
|
package/lib/term-text.js
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* the interactive TUI class.
|
|
6
6
|
*/
|
|
7
7
|
import { t } from './i18n/index.js';
|
|
8
|
+
import { downgradeSgr } from './color-depth.js';
|
|
8
9
|
/**
|
|
9
10
|
* Codex-style compact elapsed: `0s`, `1m 05s`, `1h 01m 01s`.
|
|
10
11
|
* Used by the workspace wait card while the model has not streamed yet.
|
|
@@ -480,7 +481,7 @@ export function wrapTracked(text, width) {
|
|
|
480
481
|
return out;
|
|
481
482
|
}
|
|
482
483
|
/** Paint one already-wrapped output line by the segments overlapping its range. */
|
|
483
|
-
export function paintSegmentedLine(line, start, end, segments) {
|
|
484
|
+
export function paintSegmentedLine(line, start, end, segments, depth = 'truecolor') {
|
|
484
485
|
if (segments.length === 0)
|
|
485
486
|
return line;
|
|
486
487
|
let out = '';
|
|
@@ -497,7 +498,9 @@ export function paintSegmentedLine(line, start, end, segments) {
|
|
|
497
498
|
// Gaps (the tool title) stay default foreground — do not drop them.
|
|
498
499
|
if (from > cursor)
|
|
499
500
|
out += line.slice(cursor - start, from - start);
|
|
500
|
-
|
|
501
|
+
const code = downgradeSgr(seg.sgr, depth);
|
|
502
|
+
const slice = line.slice(from - start, to - start);
|
|
503
|
+
out += code === '' ? slice : `\x1b[${code}m${slice}\x1b[0m`;
|
|
501
504
|
cursor = to;
|
|
502
505
|
}
|
|
503
506
|
if (cursor < end)
|
|
@@ -505,8 +508,8 @@ export function paintSegmentedLine(line, start, end, segments) {
|
|
|
505
508
|
return out === '' ? line : out;
|
|
506
509
|
}
|
|
507
510
|
/** Wrap `text` and color each output line by overlapping `segments`. */
|
|
508
|
-
export function wrapSegmented(text, width, segments) {
|
|
509
|
-
return wrapTracked(text, width).map(({ line, start, end }) => paintSegmentedLine(line, start, end, segments));
|
|
511
|
+
export function wrapSegmented(text, width, segments, depth = 'truecolor') {
|
|
512
|
+
return wrapTracked(text, width).map(({ line, start, end }) => paintSegmentedLine(line, start, end, segments, depth));
|
|
510
513
|
}
|
|
511
514
|
export function truncate(text, maxLines) {
|
|
512
515
|
const lines = text.split('\n');
|