labgate 0.5.39 → 0.5.42

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.
Files changed (47) hide show
  1. package/README.md +132 -248
  2. package/dist/cli.js +9 -33
  3. package/dist/cli.js.map +1 -1
  4. package/dist/lib/config.d.ts +19 -3
  5. package/dist/lib/config.js +154 -75
  6. package/dist/lib/config.js.map +1 -1
  7. package/dist/lib/container.d.ts +11 -9
  8. package/dist/lib/container.js +749 -282
  9. package/dist/lib/container.js.map +1 -1
  10. package/dist/lib/dataset-mcp.js +2 -9
  11. package/dist/lib/dataset-mcp.js.map +1 -1
  12. package/dist/lib/display-mcp.d.ts +2 -2
  13. package/dist/lib/display-mcp.js +17 -38
  14. package/dist/lib/display-mcp.js.map +1 -1
  15. package/dist/lib/doctor.js +8 -0
  16. package/dist/lib/doctor.js.map +1 -1
  17. package/dist/lib/explorer-claude.js +36 -1
  18. package/dist/lib/explorer-claude.js.map +1 -1
  19. package/dist/lib/explorer-eval.js +3 -2
  20. package/dist/lib/explorer-eval.js.map +1 -1
  21. package/dist/lib/image-pull-lock.d.ts +18 -0
  22. package/dist/lib/image-pull-lock.js +167 -0
  23. package/dist/lib/image-pull-lock.js.map +1 -0
  24. package/dist/lib/init.js +22 -19
  25. package/dist/lib/init.js.map +1 -1
  26. package/dist/lib/slurm-cli-passthrough.d.ts +12 -2
  27. package/dist/lib/slurm-cli-passthrough.js +401 -143
  28. package/dist/lib/slurm-cli-passthrough.js.map +1 -1
  29. package/dist/lib/startup-stage-lock.d.ts +21 -0
  30. package/dist/lib/startup-stage-lock.js +196 -0
  31. package/dist/lib/startup-stage-lock.js.map +1 -0
  32. package/dist/lib/ui.d.ts +40 -0
  33. package/dist/lib/ui.html +4953 -3366
  34. package/dist/lib/ui.js +1771 -297
  35. package/dist/lib/ui.js.map +1 -1
  36. package/dist/lib/web-terminal-startup-readiness.d.ts +8 -0
  37. package/dist/lib/web-terminal-startup-readiness.js +29 -0
  38. package/dist/lib/web-terminal-startup-readiness.js.map +1 -0
  39. package/dist/lib/web-terminal.d.ts +51 -0
  40. package/dist/lib/web-terminal.js +171 -1
  41. package/dist/lib/web-terminal.js.map +1 -1
  42. package/dist/mcp-bundles/dataset-mcp.bundle.mjs +144 -93
  43. package/dist/mcp-bundles/display-mcp.bundle.mjs +35 -43
  44. package/dist/mcp-bundles/explorer-mcp.bundle.mjs +263 -146
  45. package/dist/mcp-bundles/results-mcp.bundle.mjs +39 -41
  46. package/dist/mcp-bundles/slurm-mcp.bundle.mjs +19 -21
  47. package/package.json +1 -1
@@ -0,0 +1,8 @@
1
+ export type WebTerminalStartupAgent = 'claude' | 'codex';
2
+ export interface WebTerminalStartupSignals {
3
+ hasLaunchSignal: boolean;
4
+ hasSummary: boolean;
5
+ launchKind: 'agent-launch' | 'device-auth' | null;
6
+ }
7
+ export declare function getWebTerminalStartupSignals(agent: WebTerminalStartupAgent, buffer: string): WebTerminalStartupSignals;
8
+ export declare function isWebTerminalStartupReady(agent: WebTerminalStartupAgent, buffer: string): boolean;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getWebTerminalStartupSignals = getWebTerminalStartupSignals;
4
+ exports.isWebTerminalStartupReady = isWebTerminalStartupReady;
5
+ const WEB_TERMINAL_STARTUP_HEADER_RE = /(?:^|\n)\s*LabGate\s*(?:\n|$)/i;
6
+ const WEB_TERMINAL_STARTUP_BLOCKED_RE = /(?:^|\n)\s*Blocked\s+\d+\s+patterns\b/i;
7
+ const WEB_TERMINAL_STARTUP_AGENT_LAUNCH_RE = /(?:^|\n)\s*\[labgate\]\s+Starting\s+(?:claude|codex)\s+in\s+\/work\b/i;
8
+ const WEB_TERMINAL_CODEX_DEVICE_AUTH_RE = /(?:^|\n)\s*\[labgate\]\s+Starting\s+Codex\s+device-code\s+login\b/i;
9
+ function stripAnsiForStartupReadiness(text) {
10
+ return String(text || '')
11
+ .replace(/\u001b\][^\u0007]*(?:\u0007|\u001b\\)/g, '')
12
+ .replace(/\u001b\[[0-9;?]*[ -/]*[@-~]/g, '')
13
+ .replace(/\r/g, '\n');
14
+ }
15
+ function getWebTerminalStartupSignals(agent, buffer) {
16
+ const plain = stripAnsiForStartupReadiness(buffer);
17
+ const hasAgentLaunch = WEB_TERMINAL_STARTUP_AGENT_LAUNCH_RE.test(plain);
18
+ const hasDeviceAuthLaunch = agent === 'codex' && WEB_TERMINAL_CODEX_DEVICE_AUTH_RE.test(plain);
19
+ return {
20
+ hasLaunchSignal: hasAgentLaunch || hasDeviceAuthLaunch,
21
+ hasSummary: WEB_TERMINAL_STARTUP_HEADER_RE.test(plain) && WEB_TERMINAL_STARTUP_BLOCKED_RE.test(plain),
22
+ launchKind: hasDeviceAuthLaunch ? 'device-auth' : hasAgentLaunch ? 'agent-launch' : null,
23
+ };
24
+ }
25
+ function isWebTerminalStartupReady(agent, buffer) {
26
+ const signals = getWebTerminalStartupSignals(agent, buffer);
27
+ return signals.hasLaunchSignal && signals.hasSummary;
28
+ }
29
+ //# sourceMappingURL=web-terminal-startup-readiness.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web-terminal-startup-readiness.js","sourceRoot":"","sources":["../../src/lib/web-terminal-startup-readiness.ts"],"names":[],"mappings":";;AAoBA,oEASC;AAED,8DAGC;AA1BD,MAAM,8BAA8B,GAAG,gCAAgC,CAAC;AACxE,MAAM,+BAA+B,GAAG,wCAAwC,CAAC;AACjF,MAAM,oCAAoC,GAAG,uEAAuE,CAAC;AACrH,MAAM,iCAAiC,GAAG,oEAAoE,CAAC;AAE/G,SAAS,4BAA4B,CAAC,IAAY;IAChD,OAAO,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;SACtB,OAAO,CAAC,wCAAwC,EAAE,EAAE,CAAC;SACrD,OAAO,CAAC,8BAA8B,EAAE,EAAE,CAAC;SAC3C,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAgB,4BAA4B,CAAC,KAA8B,EAAE,MAAc;IACzF,MAAM,KAAK,GAAG,4BAA4B,CAAC,MAAM,CAAC,CAAC;IACnD,MAAM,cAAc,GAAG,oCAAoC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxE,MAAM,mBAAmB,GAAG,KAAK,KAAK,OAAO,IAAI,iCAAiC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/F,OAAO;QACL,eAAe,EAAE,cAAc,IAAI,mBAAmB;QACtD,UAAU,EAAE,8BAA8B,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,+BAA+B,CAAC,IAAI,CAAC,KAAK,CAAC;QACrG,UAAU,EAAE,mBAAmB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI;KACzF,CAAC;AACJ,CAAC;AAED,SAAgB,yBAAyB,CAAC,KAA8B,EAAE,MAAc;IACtF,MAAM,OAAO,GAAG,4BAA4B,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC5D,OAAO,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,UAAU,CAAC;AACvD,CAAC"}
@@ -5,6 +5,7 @@ export type WebTerminalPermissionMode = 'default' | 'dangerous';
5
5
  export interface WebTerminalRecord {
6
6
  id: string;
7
7
  name?: string;
8
+ starred?: boolean;
8
9
  agent: WebTerminalAgent;
9
10
  runtime?: RuntimeType;
10
11
  workdir: string;
@@ -20,11 +21,26 @@ export interface WebTerminalExitInfo {
20
21
  exitCode: number;
21
22
  finishedAt: string;
22
23
  }
24
+ export interface WebTerminalBookmark {
25
+ id: string;
26
+ sessionId: string;
27
+ label?: string;
28
+ createdAt: string;
29
+ anchorText: string;
30
+ previewText: string;
31
+ viewportYHint: number;
32
+ aroundTopText?: string;
33
+ aroundBottomText?: string;
34
+ latestSeqAtCapture: number | null;
35
+ oldestSeqLoadedAtCapture: number | null;
36
+ anchorHash?: string;
37
+ }
23
38
  export declare function isValidWebTerminalId(raw: string): boolean;
24
39
  export declare function isValidWebTerminalName(raw: string): boolean;
25
40
  export declare function getWebTerminalsDir(): string;
26
41
  export declare function getWebTerminalRecordPath(id: string): string;
27
42
  export declare function getWebTerminalExitPath(id: string): string;
43
+ export declare function getWebTerminalBookmarksPath(id: string): string;
28
44
  export declare function ensureWebTerminalsDir(): void;
29
45
  export declare function tmuxSessionNameForWebTerminalId(id: string): string;
30
46
  export declare function createWebTerminalRecord(input: {
@@ -34,6 +50,33 @@ export declare function createWebTerminalRecord(input: {
34
50
  workdir: string;
35
51
  }): WebTerminalRecord;
36
52
  export declare function writeWebTerminalRecord(record: WebTerminalRecord): void;
53
+ export declare function readWebTerminalBookmarks(id: string): WebTerminalBookmark[];
54
+ export declare function writeWebTerminalBookmarks(id: string, bookmarks: WebTerminalBookmark[]): void;
55
+ export declare function addWebTerminalBookmark(id: string, input: {
56
+ label?: string;
57
+ anchorText: string;
58
+ previewText?: string;
59
+ viewportYHint?: number;
60
+ aroundTopText?: string;
61
+ aroundBottomText?: string;
62
+ latestSeqAtCapture?: number | null;
63
+ oldestSeqLoadedAtCapture?: number | null;
64
+ anchorHash?: string;
65
+ }): {
66
+ ok: true;
67
+ bookmark: WebTerminalBookmark;
68
+ } | {
69
+ ok: false;
70
+ code: 'not_found';
71
+ error: string;
72
+ };
73
+ export declare function deleteWebTerminalBookmark(id: string, bookmarkId: string): {
74
+ ok: true;
75
+ } | {
76
+ ok: false;
77
+ code: 'not_found';
78
+ error: string;
79
+ };
37
80
  export declare function clearWebTerminalExitInfo(id: string): void;
38
81
  export declare function readWebTerminalRecord(id: string): WebTerminalRecord | null;
39
82
  export declare function listWebTerminalRecords(): WebTerminalRecord[];
@@ -49,6 +92,14 @@ export declare function renameWebTerminalRecord(id: string, nextNameRaw: string)
49
92
  code: 'not_found' | 'invalid_name' | 'name_taken';
50
93
  error: string;
51
94
  };
95
+ export declare function setWebTerminalRecordStarred(id: string, starred: boolean): {
96
+ ok: true;
97
+ record: WebTerminalRecord;
98
+ } | {
99
+ ok: false;
100
+ code: 'not_found';
101
+ error: string;
102
+ };
52
103
  export declare function updateWebTerminalRecordStatus(id: string, next: {
53
104
  status: WebTerminalStatus;
54
105
  exitCode?: number | null;
@@ -5,15 +5,21 @@ exports.isValidWebTerminalName = isValidWebTerminalName;
5
5
  exports.getWebTerminalsDir = getWebTerminalsDir;
6
6
  exports.getWebTerminalRecordPath = getWebTerminalRecordPath;
7
7
  exports.getWebTerminalExitPath = getWebTerminalExitPath;
8
+ exports.getWebTerminalBookmarksPath = getWebTerminalBookmarksPath;
8
9
  exports.ensureWebTerminalsDir = ensureWebTerminalsDir;
9
10
  exports.tmuxSessionNameForWebTerminalId = tmuxSessionNameForWebTerminalId;
10
11
  exports.createWebTerminalRecord = createWebTerminalRecord;
11
12
  exports.writeWebTerminalRecord = writeWebTerminalRecord;
13
+ exports.readWebTerminalBookmarks = readWebTerminalBookmarks;
14
+ exports.writeWebTerminalBookmarks = writeWebTerminalBookmarks;
15
+ exports.addWebTerminalBookmark = addWebTerminalBookmark;
16
+ exports.deleteWebTerminalBookmark = deleteWebTerminalBookmark;
12
17
  exports.clearWebTerminalExitInfo = clearWebTerminalExitInfo;
13
18
  exports.readWebTerminalRecord = readWebTerminalRecord;
14
19
  exports.listWebTerminalRecords = listWebTerminalRecords;
15
20
  exports.resolveWebTerminalRecord = resolveWebTerminalRecord;
16
21
  exports.renameWebTerminalRecord = renameWebTerminalRecord;
22
+ exports.setWebTerminalRecordStarred = setWebTerminalRecordStarred;
17
23
  exports.updateWebTerminalRecordStatus = updateWebTerminalRecordStatus;
18
24
  exports.readWebTerminalExitInfo = readWebTerminalExitInfo;
19
25
  exports.getTmuxBinary = getTmuxBinary;
@@ -25,6 +31,7 @@ exports.sanitizeExistingWebTerminalRecords = sanitizeExistingWebTerminalRecords;
25
31
  const fs_1 = require("fs");
26
32
  const path_1 = require("path");
27
33
  const os_1 = require("os");
34
+ const crypto_1 = require("crypto");
28
35
  const child_process_1 = require("child_process");
29
36
  const util_1 = require("util");
30
37
  const config_js_1 = require("./config.js");
@@ -34,6 +41,7 @@ const TMUX_BIN_CANDIDATES = ['tmux', '/opt/homebrew/bin/tmux', '/usr/local/bin/t
34
41
  const WEB_TERMINAL_ID_RE = /^wt-[a-z0-9_-]{4,80}$/i;
35
42
  const WEB_TERMINAL_NAME_RE = /^[a-z0-9](?:[a-z0-9._-]{0,63})$/i;
36
43
  let cachedTmuxBinary = null;
44
+ const WEB_TERMINAL_BOOKMARK_MAX_COUNT = 100;
37
45
  function normalizeId(raw) {
38
46
  return (raw || '').trim();
39
47
  }
@@ -60,6 +68,9 @@ function getWebTerminalRecordPath(id) {
60
68
  function getWebTerminalExitPath(id) {
61
69
  return (0, path_1.join)(getWebTerminalsDir(), `${id}.exit.json`);
62
70
  }
71
+ function getWebTerminalBookmarksPath(id) {
72
+ return (0, path_1.join)(getWebTerminalsDir(), `${id}.bookmarks.json`);
73
+ }
63
74
  function ensureWebTerminalsDir() {
64
75
  (0, config_js_1.ensurePrivateDir)(getWebTerminalsDir());
65
76
  }
@@ -98,6 +109,7 @@ function parseWebTerminalRecord(raw) {
98
109
  return {
99
110
  id,
100
111
  ...(name && isValidWebTerminalName(name) ? { name } : {}),
112
+ ...(typeof parsed.starred === 'boolean' ? { starred: parsed.starred } : {}),
101
113
  agent: parsed.agent,
102
114
  ...(runtime ? { runtime } : {}),
103
115
  workdir: String(parsed.workdir || ''),
@@ -121,9 +133,12 @@ function parseWebTerminalRecord(raw) {
121
133
  function writeWebTerminalRecord(record) {
122
134
  ensureWebTerminalsDir();
123
135
  const target = getWebTerminalRecordPath(record.id);
136
+ writeWebTerminalJsonFileAtomic(target, record);
137
+ }
138
+ function writeWebTerminalJsonFileAtomic(target, value) {
124
139
  const temp = `${target}.${process.pid}.${Date.now()}.tmp`;
125
140
  try {
126
- (0, fs_1.writeFileSync)(temp, JSON.stringify(record, null, 2) + '\n', { encoding: 'utf-8', mode: config_js_1.PRIVATE_FILE_MODE });
141
+ (0, fs_1.writeFileSync)(temp, JSON.stringify(value, null, 2) + '\n', { encoding: 'utf-8', mode: config_js_1.PRIVATE_FILE_MODE });
127
142
  (0, config_js_1.ensurePrivateFile)(temp);
128
143
  (0, fs_1.renameSync)(temp, target);
129
144
  (0, config_js_1.ensurePrivateFile)(target);
@@ -138,6 +153,145 @@ function writeWebTerminalRecord(record) {
138
153
  }
139
154
  }
140
155
  }
156
+ function sanitizeBookmarkText(raw, maxLength) {
157
+ const text = typeof raw === 'string' ? raw.trim() : '';
158
+ if (!text)
159
+ return '';
160
+ return text.slice(0, maxLength);
161
+ }
162
+ function sanitizeBookmarkNumber(raw) {
163
+ const value = Number(raw);
164
+ if (!Number.isFinite(value))
165
+ return 0;
166
+ return Math.max(0, Math.floor(value));
167
+ }
168
+ function sanitizeNullableBookmarkSeq(raw) {
169
+ if (raw === null || raw === undefined || raw === '')
170
+ return null;
171
+ const value = Number(raw);
172
+ if (!Number.isFinite(value))
173
+ return null;
174
+ return Math.max(0, Math.floor(value));
175
+ }
176
+ function parseWebTerminalBookmark(raw, sessionId) {
177
+ if (!raw || typeof raw !== 'object')
178
+ return null;
179
+ const parsed = raw;
180
+ const id = sanitizeBookmarkText(parsed.id, 128);
181
+ if (!id)
182
+ return null;
183
+ const normalizedSessionId = normalizeId(String(parsed.sessionId || sessionId || ''));
184
+ if (!isValidWebTerminalId(normalizedSessionId))
185
+ return null;
186
+ const anchorText = sanitizeBookmarkText(parsed.anchorText, 1_200);
187
+ if (!anchorText)
188
+ return null;
189
+ const createdAt = sanitizeBookmarkText(parsed.createdAt, 64) || new Date().toISOString();
190
+ const previewText = sanitizeBookmarkText(parsed.previewText, 2_000) || anchorText;
191
+ const label = sanitizeBookmarkText(parsed.label, 160);
192
+ const aroundTopText = sanitizeBookmarkText(parsed.aroundTopText, 500);
193
+ const aroundBottomText = sanitizeBookmarkText(parsed.aroundBottomText, 500);
194
+ const anchorHash = sanitizeBookmarkText(parsed.anchorHash, 128);
195
+ return {
196
+ id,
197
+ sessionId: normalizedSessionId,
198
+ ...(label ? { label } : {}),
199
+ createdAt,
200
+ anchorText,
201
+ previewText,
202
+ viewportYHint: sanitizeBookmarkNumber(parsed.viewportYHint),
203
+ ...(aroundTopText ? { aroundTopText } : {}),
204
+ ...(aroundBottomText ? { aroundBottomText } : {}),
205
+ latestSeqAtCapture: sanitizeNullableBookmarkSeq(parsed.latestSeqAtCapture),
206
+ oldestSeqLoadedAtCapture: sanitizeNullableBookmarkSeq(parsed.oldestSeqLoadedAtCapture),
207
+ ...(anchorHash ? { anchorHash } : {}),
208
+ };
209
+ }
210
+ function sortWebTerminalBookmarks(bookmarks) {
211
+ bookmarks.sort((a, b) => {
212
+ const cmp = String(b.createdAt || '').localeCompare(String(a.createdAt || ''));
213
+ if (cmp !== 0)
214
+ return cmp;
215
+ return String(b.id || '').localeCompare(String(a.id || ''));
216
+ });
217
+ return bookmarks;
218
+ }
219
+ function capWebTerminalBookmarks(bookmarks) {
220
+ return sortWebTerminalBookmarks(bookmarks).slice(0, WEB_TERMINAL_BOOKMARK_MAX_COUNT);
221
+ }
222
+ function readWebTerminalBookmarks(id) {
223
+ if (!isValidWebTerminalId(id))
224
+ return [];
225
+ const path = getWebTerminalBookmarksPath(id);
226
+ if (!(0, fs_1.existsSync)(path))
227
+ return [];
228
+ try {
229
+ const raw = JSON.parse((0, fs_1.readFileSync)(path, 'utf-8'));
230
+ if (!Array.isArray(raw))
231
+ return [];
232
+ const parsed = raw
233
+ .map((entry) => parseWebTerminalBookmark(entry, id))
234
+ .filter((entry) => !!entry);
235
+ return capWebTerminalBookmarks(parsed);
236
+ }
237
+ catch {
238
+ return [];
239
+ }
240
+ }
241
+ function writeWebTerminalBookmarks(id, bookmarks) {
242
+ ensureWebTerminalsDir();
243
+ const normalizedId = normalizeId(id);
244
+ if (!isValidWebTerminalId(normalizedId)) {
245
+ throw new Error('Invalid terminal session id.');
246
+ }
247
+ const sanitized = capWebTerminalBookmarks((Array.isArray(bookmarks) ? bookmarks : [])
248
+ .map((entry) => parseWebTerminalBookmark(entry, normalizedId))
249
+ .filter((entry) => !!entry));
250
+ writeWebTerminalJsonFileAtomic(getWebTerminalBookmarksPath(normalizedId), sanitized);
251
+ }
252
+ function addWebTerminalBookmark(id, input) {
253
+ const existing = readWebTerminalRecord(id);
254
+ if (!existing) {
255
+ return { ok: false, code: 'not_found', error: 'Terminal session not found.' };
256
+ }
257
+ const bookmark = parseWebTerminalBookmark({
258
+ id: `bm-${Date.now().toString(36)}-${(0, crypto_1.randomBytes)(2).toString('hex')}`,
259
+ sessionId: existing.id,
260
+ createdAt: new Date().toISOString(),
261
+ label: input.label,
262
+ anchorText: input.anchorText,
263
+ previewText: input.previewText,
264
+ viewportYHint: input.viewportYHint,
265
+ aroundTopText: input.aroundTopText,
266
+ aroundBottomText: input.aroundBottomText,
267
+ latestSeqAtCapture: input.latestSeqAtCapture,
268
+ oldestSeqLoadedAtCapture: input.oldestSeqLoadedAtCapture,
269
+ anchorHash: input.anchorHash,
270
+ }, existing.id);
271
+ if (!bookmark) {
272
+ return { ok: false, code: 'not_found', error: 'Terminal session not found.' };
273
+ }
274
+ const next = capWebTerminalBookmarks([bookmark].concat(readWebTerminalBookmarks(existing.id)));
275
+ writeWebTerminalBookmarks(existing.id, next);
276
+ return { ok: true, bookmark };
277
+ }
278
+ function deleteWebTerminalBookmark(id, bookmarkId) {
279
+ const existing = readWebTerminalRecord(id);
280
+ if (!existing) {
281
+ return { ok: false, code: 'not_found', error: 'Terminal session not found.' };
282
+ }
283
+ const targetId = sanitizeBookmarkText(bookmarkId, 128);
284
+ if (!targetId) {
285
+ return { ok: false, code: 'not_found', error: 'Bookmark not found.' };
286
+ }
287
+ const current = readWebTerminalBookmarks(existing.id);
288
+ const next = current.filter((bookmark) => bookmark.id !== targetId);
289
+ if (next.length === current.length) {
290
+ return { ok: false, code: 'not_found', error: 'Bookmark not found.' };
291
+ }
292
+ writeWebTerminalBookmarks(existing.id, next);
293
+ return { ok: true };
294
+ }
141
295
  function clearWebTerminalExitInfo(id) {
142
296
  const path = getWebTerminalExitPath(id);
143
297
  try {
@@ -243,6 +397,22 @@ function renameWebTerminalRecord(id, nextNameRaw) {
243
397
  writeWebTerminalRecord(updated);
244
398
  return { ok: true, record: updated };
245
399
  }
400
+ function setWebTerminalRecordStarred(id, starred) {
401
+ const existing = readWebTerminalRecord(id);
402
+ if (!existing) {
403
+ return { ok: false, code: 'not_found', error: 'Terminal session not found.' };
404
+ }
405
+ const nextStarred = starred === true;
406
+ const updated = {
407
+ ...existing,
408
+ ...(nextStarred ? { starred: true } : {}),
409
+ updatedAt: new Date().toISOString(),
410
+ };
411
+ if (!nextStarred)
412
+ delete updated.starred;
413
+ writeWebTerminalRecord(updated);
414
+ return { ok: true, record: updated };
415
+ }
246
416
  function updateWebTerminalRecordStatus(id, next) {
247
417
  const existing = readWebTerminalRecord(id);
248
418
  if (!existing)
@@ -1 +1 @@
1
- {"version":3,"file":"web-terminal.js","sourceRoot":"","sources":["../../src/lib/web-terminal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"web-terminal.js","sourceRoot":"","sources":["../../src/lib/web-terminal.ts"],"names":[],"mappings":"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"}