mstro-app 0.1.54 → 0.1.57
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/bin/mstro.js +2 -1
- package/dist/server/cli/headless/claude-invoker.d.ts.map +1 -1
- package/dist/server/cli/headless/claude-invoker.js +151 -0
- package/dist/server/cli/headless/claude-invoker.js.map +1 -1
- package/dist/server/cli/headless/runner.d.ts.map +1 -1
- package/dist/server/cli/headless/runner.js +7 -1
- package/dist/server/cli/headless/runner.js.map +1 -1
- package/dist/server/cli/headless/stall-assessor.d.ts +30 -0
- package/dist/server/cli/headless/stall-assessor.d.ts.map +1 -0
- package/dist/server/cli/headless/stall-assessor.js +184 -0
- package/dist/server/cli/headless/stall-assessor.js.map +1 -0
- package/dist/server/cli/headless/types.d.ts +9 -1
- package/dist/server/cli/headless/types.d.ts.map +1 -1
- package/dist/server/cli/improvisation-session-manager.d.ts +21 -2
- package/dist/server/cli/improvisation-session-manager.d.ts.map +1 -1
- package/dist/server/cli/improvisation-session-manager.js +65 -5
- package/dist/server/cli/improvisation-session-manager.js.map +1 -1
- package/dist/server/index.js +4 -1
- package/dist/server/index.js.map +1 -1
- package/dist/server/mcp/bouncer-integration.d.ts.map +1 -1
- package/dist/server/mcp/bouncer-integration.js +32 -0
- package/dist/server/mcp/bouncer-integration.js.map +1 -1
- package/dist/server/services/platform.d.ts.map +1 -1
- package/dist/server/services/platform.js +8 -5
- package/dist/server/services/platform.js.map +1 -1
- package/dist/server/services/settings.d.ts +25 -0
- package/dist/server/services/settings.d.ts.map +1 -0
- package/dist/server/services/settings.js +72 -0
- package/dist/server/services/settings.js.map +1 -0
- package/dist/server/services/websocket/autocomplete.d.ts.map +1 -1
- package/dist/server/services/websocket/autocomplete.js +12 -15
- package/dist/server/services/websocket/autocomplete.js.map +1 -1
- package/dist/server/services/websocket/handler.d.ts +99 -2
- package/dist/server/services/websocket/handler.d.ts.map +1 -1
- package/dist/server/services/websocket/handler.js +618 -157
- package/dist/server/services/websocket/handler.js.map +1 -1
- package/dist/server/services/websocket/session-registry.d.ts +38 -0
- package/dist/server/services/websocket/session-registry.d.ts.map +1 -0
- package/dist/server/services/websocket/session-registry.js +154 -0
- package/dist/server/services/websocket/session-registry.js.map +1 -0
- package/dist/server/services/websocket/types.d.ts +2 -2
- package/dist/server/services/websocket/types.d.ts.map +1 -1
- package/package.json +2 -2
- package/server/cli/headless/RESEARCH.md +627 -0
- package/server/cli/headless/claude-invoker.ts +192 -1
- package/server/cli/headless/runner.ts +7 -1
- package/server/cli/headless/stall-assessor.ts +245 -0
- package/server/cli/headless/types.ts +9 -1
- package/server/cli/improvisation-session-manager.ts +73 -5
- package/server/index.ts +4 -1
- package/server/mcp/bouncer-integration.ts +32 -0
- package/server/services/platform.ts +8 -5
- package/server/services/settings.ts +89 -0
- package/server/services/websocket/autocomplete.ts +18 -14
- package/server/services/websocket/handler.ts +677 -170
- package/server/services/websocket/session-registry.ts +180 -0
- package/server/services/websocket/types.ts +31 -2
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export interface MstroSettings {
|
|
2
|
+
/**
|
|
3
|
+
* Claude model to use for main execution.
|
|
4
|
+
* - 'default' means don't pass --model (let Claude Code decide)
|
|
5
|
+
* - Any other string is passed as --model <value>
|
|
6
|
+
*/
|
|
7
|
+
model: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Get current settings, merged with defaults for any missing fields
|
|
11
|
+
*/
|
|
12
|
+
export declare function getSettings(): MstroSettings;
|
|
13
|
+
/**
|
|
14
|
+
* Save full settings to disk
|
|
15
|
+
*/
|
|
16
|
+
export declare function saveSettings(settings: MstroSettings): void;
|
|
17
|
+
/**
|
|
18
|
+
* Get the current model setting
|
|
19
|
+
*/
|
|
20
|
+
export declare function getModel(): string;
|
|
21
|
+
/**
|
|
22
|
+
* Update just the model setting
|
|
23
|
+
*/
|
|
24
|
+
export declare function setModel(model: string): void;
|
|
25
|
+
//# sourceMappingURL=settings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../../server/services/settings.ts"],"names":[],"mappings":"AAqBA,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAA;CACd;AAeD;;GAEG;AACH,wBAAgB,WAAW,IAAI,aAAa,CAgB3C;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,CAK1D;AAED;;GAEG;AACH,wBAAgB,QAAQ,IAAI,MAAM,CAEjC;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAI5C"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
// Copyright (c) 2025-present Mstro, Inc. All rights reserved.
|
|
2
|
+
// Licensed under the MIT License. See LICENSE file for details.
|
|
3
|
+
/**
|
|
4
|
+
* Settings Service
|
|
5
|
+
*
|
|
6
|
+
* Manages persistent machine-wide settings stored in ~/.mstro/settings.json
|
|
7
|
+
*
|
|
8
|
+
* Structure:
|
|
9
|
+
* {
|
|
10
|
+
* "model": "opus"
|
|
11
|
+
* }
|
|
12
|
+
*/
|
|
13
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
14
|
+
import { homedir } from 'node:os';
|
|
15
|
+
import { join } from 'node:path';
|
|
16
|
+
const MSTRO_DIR = join(homedir(), '.mstro');
|
|
17
|
+
const SETTINGS_FILE = join(MSTRO_DIR, 'settings.json');
|
|
18
|
+
const DEFAULT_SETTINGS = {
|
|
19
|
+
model: 'opus'
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Ensure the ~/.mstro directory exists
|
|
23
|
+
*/
|
|
24
|
+
function ensureMstroDir() {
|
|
25
|
+
if (!existsSync(MSTRO_DIR)) {
|
|
26
|
+
mkdirSync(MSTRO_DIR, { recursive: true, mode: 0o700 });
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Get current settings, merged with defaults for any missing fields
|
|
31
|
+
*/
|
|
32
|
+
export function getSettings() {
|
|
33
|
+
if (!existsSync(SETTINGS_FILE)) {
|
|
34
|
+
return { ...DEFAULT_SETTINGS };
|
|
35
|
+
}
|
|
36
|
+
try {
|
|
37
|
+
const content = readFileSync(SETTINGS_FILE, 'utf-8');
|
|
38
|
+
const stored = JSON.parse(content);
|
|
39
|
+
return {
|
|
40
|
+
...DEFAULT_SETTINGS,
|
|
41
|
+
...stored,
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
catch (err) {
|
|
45
|
+
console.warn('Failed to read settings file, using defaults:', err);
|
|
46
|
+
return { ...DEFAULT_SETTINGS };
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Save full settings to disk
|
|
51
|
+
*/
|
|
52
|
+
export function saveSettings(settings) {
|
|
53
|
+
ensureMstroDir();
|
|
54
|
+
writeFileSync(SETTINGS_FILE, JSON.stringify(settings, null, 2), {
|
|
55
|
+
mode: 0o600
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Get the current model setting
|
|
60
|
+
*/
|
|
61
|
+
export function getModel() {
|
|
62
|
+
return getSettings().model;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Update just the model setting
|
|
66
|
+
*/
|
|
67
|
+
export function setModel(model) {
|
|
68
|
+
const settings = getSettings();
|
|
69
|
+
settings.model = model;
|
|
70
|
+
saveSettings(settings);
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=settings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../server/services/settings.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,gEAAgE;AAEhE;;;;;;;;;GASG;AAEH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAC5E,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAA;AAC3C,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAA;AAWtD,MAAM,gBAAgB,GAAkB;IACtC,KAAK,EAAE,MAAM;CACd,CAAA;AAED;;GAEG;AACH,SAAS,cAAc;IACrB,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3B,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IACxD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,GAAG,gBAAgB,EAAE,CAAA;IAChC,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;QACpD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAClC,OAAO;YACL,GAAG,gBAAgB;YACnB,GAAG,MAAM;SACV,CAAA;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,+CAA+C,EAAE,GAAG,CAAC,CAAA;QAClE,OAAO,EAAE,GAAG,gBAAgB,EAAE,CAAA;IAChC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,QAAuB;IAClD,cAAc,EAAE,CAAA;IAChB,aAAa,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;QAC9D,IAAI,EAAE,KAAK;KACZ,CAAC,CAAA;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ;IACtB,OAAO,WAAW,EAAE,CAAC,KAAK,CAAA;AAC5B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAa;IACpC,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAA;IACtB,YAAY,CAAC,QAAQ,CAAC,CAAA;AACxB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autocomplete.d.ts","sourceRoot":"","sources":["../../../../server/services/websocket/autocomplete.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EACV,kBAAkB,EAElB,YAAY,EACb,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"autocomplete.d.ts","sourceRoot":"","sources":["../../../../server/services/websocket/autocomplete.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EACV,kBAAkB,EAElB,YAAY,EACb,MAAM,YAAY,CAAC;AA8EpB,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,YAAY,CAAoB;gBAE5B,mBAAmB,GAAE,YAAiB;IAIlD;;OAEG;IACH,eAAe,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAIzC;;OAEG;IACH,eAAe,IAAI,YAAY;IAI/B;;OAEG;IACH,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAa3C;;OAEG;IACH,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAWhD;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAkB/B;;OAEG;IACH,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,kBAAkB,EAAE;IAoEjF;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA0BzB;;OAEG;IACH,OAAO,CAAC,eAAe;IAkBvB;;OAEG;IACH,OAAO,CAAC,cAAc;IA6CtB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA8B1B;;OAEG;IACH,OAAO,CAAC,4BAA4B;CA8DrC"}
|
|
@@ -23,23 +23,20 @@ function compareAutocompleteResults(a, b) {
|
|
|
23
23
|
return a.relativePath.localeCompare(b.relativePath);
|
|
24
24
|
}
|
|
25
25
|
function extractFuseMatchIndices(result) {
|
|
26
|
-
const matchedIndices = [];
|
|
27
26
|
if (!result.matches)
|
|
28
|
-
return
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
}
|
|
40
|
-
}
|
|
27
|
+
return [];
|
|
28
|
+
// Prefer fileName matches (95% weight) over relativePath to avoid duplicates.
|
|
29
|
+
// Using both keys produces overlapping index ranges that garble the display.
|
|
30
|
+
const fileNameMatch = result.matches.find(m => m.key === 'fileName');
|
|
31
|
+
if (fileNameMatch?.indices) {
|
|
32
|
+
const filenameStart = result.item.relativePath.lastIndexOf('/') + 1;
|
|
33
|
+
return fileNameMatch.indices.map(([start, end]) => [filenameStart + start, filenameStart + end + 1]);
|
|
34
|
+
}
|
|
35
|
+
const pathMatch = result.matches.find(m => m.key === 'relativePath');
|
|
36
|
+
if (pathMatch?.indices) {
|
|
37
|
+
return pathMatch.indices.map(([start, end]) => [start, end + 1]);
|
|
41
38
|
}
|
|
42
|
-
return
|
|
39
|
+
return [];
|
|
43
40
|
}
|
|
44
41
|
function scoreFileMatch(file, baseScore, query, frecencyScore, recentFiles, calculateMatchedIndices) {
|
|
45
42
|
const depthPenalty = file.depth * 20;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autocomplete.js","sourceRoot":"","sources":["../../../../server/services/websocket/autocomplete.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"autocomplete.js","sourceRoot":"","sources":["../../../../server/services/websocket/autocomplete.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,15 @@ export declare class WebSocketImproviseHandler {
|
|
|
13
13
|
private usageReporter;
|
|
14
14
|
/** Per-tab selected git directory (tabId -> directory path) */
|
|
15
15
|
private gitDirectories;
|
|
16
|
+
/** Persistent tab→session mapping that survives WS disconnections */
|
|
17
|
+
private sessionRegistry;
|
|
18
|
+
/** All connected WS contexts (for broadcasting to all clients) */
|
|
19
|
+
private allConnections;
|
|
16
20
|
constructor();
|
|
21
|
+
/**
|
|
22
|
+
* Lazily initialize session registry for a working directory
|
|
23
|
+
*/
|
|
24
|
+
private getRegistry;
|
|
17
25
|
/**
|
|
18
26
|
* Set the usage reporter callback for sending usage data to platform
|
|
19
27
|
*/
|
|
@@ -68,6 +76,7 @@ export declare class WebSocketImproviseHandler {
|
|
|
68
76
|
private handleCreateDirectory;
|
|
69
77
|
private handleDeleteFile;
|
|
70
78
|
private handleRenameFile;
|
|
79
|
+
private handleNotifyFileOpened;
|
|
71
80
|
private handleFileExplorerMessage;
|
|
72
81
|
/**
|
|
73
82
|
* Get a session or throw
|
|
@@ -84,15 +93,45 @@ export declare class WebSocketImproviseHandler {
|
|
|
84
93
|
*/
|
|
85
94
|
private resumeHistoricalSession;
|
|
86
95
|
/**
|
|
87
|
-
* Initialize a
|
|
96
|
+
* Initialize a tab with its own session.
|
|
97
|
+
* Checks (in order): per-connection map → session registry → disk history → new session.
|
|
88
98
|
*/
|
|
89
99
|
private initializeTab;
|
|
100
|
+
/**
|
|
101
|
+
* Reattach to an existing in-memory session.
|
|
102
|
+
* Sends output history (completed movements + in-progress events) for state restoration.
|
|
103
|
+
*/
|
|
104
|
+
private reattachSession;
|
|
105
|
+
/**
|
|
106
|
+
* Build OutputLine-compatible history from a session's completed movements.
|
|
107
|
+
* Converts MovementRecords into the same format the web client uses for display.
|
|
108
|
+
*/
|
|
109
|
+
private buildOutputHistory;
|
|
110
|
+
/**
|
|
111
|
+
* Send a message to all connected clients EXCEPT the sender.
|
|
112
|
+
* Used for multi-client sync (e.g., tab created by one client, others should know).
|
|
113
|
+
*/
|
|
114
|
+
private broadcastToOthers;
|
|
115
|
+
/**
|
|
116
|
+
* Send a message to ALL connected clients (including sender).
|
|
117
|
+
*/
|
|
118
|
+
private broadcastToAll;
|
|
119
|
+
/**
|
|
120
|
+
* Return current machine-wide settings to the requesting client.
|
|
121
|
+
*/
|
|
122
|
+
private handleGetSettings;
|
|
123
|
+
/**
|
|
124
|
+
* Update settings and broadcast to all connected clients.
|
|
125
|
+
*/
|
|
126
|
+
private handleUpdateSettings;
|
|
90
127
|
/**
|
|
91
128
|
* Get session for a specific tab
|
|
92
129
|
*/
|
|
93
130
|
private getSession;
|
|
94
131
|
/**
|
|
95
132
|
* Handle connection close
|
|
133
|
+
* Note: Sessions are NOT destroyed — they persist for reconnection.
|
|
134
|
+
* Only the per-connection tab mapping is removed.
|
|
96
135
|
*/
|
|
97
136
|
handleClose(ws: WSContext): void;
|
|
98
137
|
/**
|
|
@@ -136,6 +175,45 @@ export declare class WebSocketImproviseHandler {
|
|
|
136
175
|
* Clean up stale sessions
|
|
137
176
|
*/
|
|
138
177
|
cleanupStaleSessions(): void;
|
|
178
|
+
/**
|
|
179
|
+
* Handle getActiveTabs — returns all registered tabs and their state.
|
|
180
|
+
* Used by new clients (multi-device, multi-browser) to discover existing tabs.
|
|
181
|
+
*/
|
|
182
|
+
private handleGetActiveTabs;
|
|
183
|
+
/**
|
|
184
|
+
* Handle syncTabMeta — update tab metadata (name) from a client.
|
|
185
|
+
*/
|
|
186
|
+
private handleSyncTabMeta;
|
|
187
|
+
/**
|
|
188
|
+
* Handle syncPromptText — relay prompt text changes to all clients.
|
|
189
|
+
* Ephemeral: not persisted, just broadcast for live collaboration.
|
|
190
|
+
*/
|
|
191
|
+
private handleSyncPromptText;
|
|
192
|
+
/**
|
|
193
|
+
* Handle removeTab — client is removing a tab.
|
|
194
|
+
*/
|
|
195
|
+
private handleRemoveTab;
|
|
196
|
+
/**
|
|
197
|
+
* Handle markTabViewed — a client has viewed a tab's completed output.
|
|
198
|
+
* Persists viewed state and broadcasts to all clients so the green dot
|
|
199
|
+
* disappears on every device.
|
|
200
|
+
*/
|
|
201
|
+
private handleMarkTabViewed;
|
|
202
|
+
/**
|
|
203
|
+
* Handle createTab — CLI registers the tab and broadcasts to all clients.
|
|
204
|
+
*
|
|
205
|
+
* When optimisticTabId is provided, CLI reuses that ID as the authoritative tab ID.
|
|
206
|
+
* The requesting client already created a local tab with this ID (optimistic UI),
|
|
207
|
+
* so there's no reconciliation needed — the tab ID is the same everywhere.
|
|
208
|
+
* The initTab flow (useTabInit) will handle session creation for the requesting client.
|
|
209
|
+
*
|
|
210
|
+
* Other clients that don't have this tab will add it via the tabCreated broadcast.
|
|
211
|
+
*/
|
|
212
|
+
private handleCreateTab;
|
|
213
|
+
/**
|
|
214
|
+
* Handle reorderTabs — client is reordering tabs.
|
|
215
|
+
*/
|
|
216
|
+
private handleReorderTabs;
|
|
139
217
|
/**
|
|
140
218
|
* Generate a notification summary using Claude Haiku
|
|
141
219
|
* Sends the result as a notificationSummary message
|
|
@@ -243,9 +321,28 @@ export declare class WebSocketImproviseHandler {
|
|
|
243
321
|
private handleTerminalClose;
|
|
244
322
|
private persistentHandlers;
|
|
245
323
|
private terminalListenerCleanups;
|
|
324
|
+
private terminalSubscribers;
|
|
325
|
+
/**
|
|
326
|
+
* Add a WS connection as a subscriber for terminal output.
|
|
327
|
+
*/
|
|
328
|
+
private addTerminalSubscriber;
|
|
329
|
+
/**
|
|
330
|
+
* Remove a WS subscriber from a terminal and clean up if no subscribers remain.
|
|
331
|
+
*/
|
|
332
|
+
private removeTerminalSubscriber;
|
|
333
|
+
/**
|
|
334
|
+
* Attach persistent (tmux) terminal handlers for output/exit broadcasting.
|
|
335
|
+
*/
|
|
336
|
+
private attachPersistentHandlers;
|
|
337
|
+
/**
|
|
338
|
+
* Set up PTY event listeners that broadcast to all subscribers.
|
|
339
|
+
* Only creates listeners once per terminal (idempotent).
|
|
340
|
+
*/
|
|
341
|
+
private setupTerminalBroadcastListeners;
|
|
246
342
|
/**
|
|
247
343
|
* Initialize a persistent (tmux-backed) terminal session
|
|
248
|
-
* These sessions survive server restarts
|
|
344
|
+
* These sessions survive server restarts.
|
|
345
|
+
* Uses subscriber pattern for multi-client output broadcasting.
|
|
249
346
|
*/
|
|
250
347
|
private handleTerminalInitPersistent;
|
|
251
348
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../server/services/websocket/handler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../server/services/websocket/handler.ts"],"names":[],"mappings":"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"}
|