@classcad/mcp 0.2.2 → 0.3.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/README.md +128 -87
- package/dist/app/SOURCE.txt +4 -0
- package/dist/app/assets/index-54a14bc0.css +8 -0
- package/dist/app/assets/index-c650c783.js +11257 -0
- package/dist/app/assets/troika-three-text.esm-188d86b5.js +220 -0
- package/dist/app/favicon.svg +98 -0
- package/dist/app/index.html +19 -0
- package/dist/app/manifest.json +14 -0
- package/dist/auth.d.ts +8 -0
- package/dist/auth.js +49 -10
- package/dist/auth.js.map +1 -1
- package/dist/backend.d.ts +8 -0
- package/dist/backend.js +39 -0
- package/dist/backend.js.map +1 -0
- package/dist/client.d.ts +48 -11
- package/dist/client.js +152 -167
- package/dist/client.js.map +1 -1
- package/dist/daemon.d.ts +0 -2
- package/dist/daemon.js +77 -62
- package/dist/daemon.js.map +1 -1
- package/dist/engine/key.d.ts +29 -0
- package/dist/engine/key.js +145 -0
- package/dist/engine/key.js.map +1 -0
- package/dist/engine/wasm-worker.js +7 -7
- package/dist/engine/wasm-worker.js.map +1 -1
- package/dist/engine/wasm.d.ts +16 -14
- package/dist/engine/wasm.js +22 -30
- package/dist/engine/wasm.js.map +1 -1
- package/dist/mcp-server.d.ts +4 -4
- package/dist/mcp-server.js +72 -28
- package/dist/mcp-server.js.map +1 -1
- package/dist/queue.js +1 -1
- package/dist/queue.js.map +1 -1
- package/dist/server.js +69 -36
- package/dist/server.js.map +1 -1
- package/dist/share/hub.d.ts +70 -0
- package/dist/share/hub.js +494 -0
- package/dist/share/hub.js.map +1 -0
- package/dist/share/protocol.d.ts +87 -0
- package/dist/share/protocol.js +54 -0
- package/dist/share/protocol.js.map +1 -0
- package/dist/share/relay.d.ts +45 -0
- package/dist/share/relay.js +230 -0
- package/dist/share/relay.js.map +1 -0
- package/dist/share/server.d.ts +27 -0
- package/dist/share/server.js +399 -0
- package/dist/share/server.js.map +1 -0
- package/dist/share/session.d.ts +120 -0
- package/dist/share/session.js +336 -0
- package/dist/share/session.js.map +1 -0
- package/dist/tools/auth.js +1 -1
- package/dist/tools/auth.js.map +1 -1
- package/dist/tools/docs.js +3 -2
- package/dist/tools/docs.js.map +1 -1
- package/dist/tools/lifecycle.js +36 -9
- package/dist/tools/lifecycle.js.map +1 -1
- package/dist/tools/share.d.ts +18 -0
- package/dist/tools/share.js +277 -0
- package/dist/tools/share.js.map +1 -0
- package/dist/tools/viewer.d.ts +1 -1
- package/dist/tools/viewer.js +11 -6
- package/dist/tools/viewer.js.map +1 -1
- package/package.json +4 -3
- package/dist/bridge/protocol.d.ts +0 -87
- package/dist/bridge/protocol.js +0 -14
- package/dist/bridge/protocol.js.map +0 -1
- package/dist/bridge/server.d.ts +0 -35
- package/dist/bridge/server.js +0 -236
- package/dist/bridge/server.js.map +0 -1
- package/dist/tools/bridge.d.ts +0 -4
- package/dist/tools/bridge.js +0 -115
- package/dist/tools/bridge.js.map +0 -1
package/dist/client.js
CHANGED
|
@@ -24,23 +24,30 @@ import { PendingRequests, completeGraphic, normalizeResult, withEmissionOverride
|
|
|
24
24
|
// Supports reconnecting with a different ClassCAD-Session-Id header at runtime
|
|
25
25
|
// via reconnect(sessionId) — used by the use_session MCP tool.
|
|
26
26
|
//
|
|
27
|
-
// ──
|
|
27
|
+
// ── Two engines, one client ──────────────────────────────────────────────────
|
|
28
28
|
// ws a ClassCAD worker (Drogon) over WebSocket - own session or a shared
|
|
29
29
|
// one (?invite=). The default.
|
|
30
|
-
// bridge an app's in-page WASM engine reached through the bridge listener
|
|
31
|
-
// (?bridge= share link); commands are relayed to the page.
|
|
32
30
|
// wasm the MCP's OWN engine: the published WASM build hosted in a worker
|
|
33
31
|
// thread of this process (engine/wasm.ts). Needs a key.
|
|
34
|
-
// Which one is used:
|
|
35
|
-
//
|
|
36
|
-
//
|
|
37
|
-
//
|
|
38
|
-
//
|
|
39
|
-
//
|
|
32
|
+
// Which one is used: an invite URL decides by itself (→ ws). Without one the
|
|
33
|
+
// ENGINE POLICY applies (opts.engine / use_session's engine argument): 'auto'
|
|
34
|
+
// tries the worker first and falls back to the local WASM when the worker is
|
|
35
|
+
// not reachable; 'drogon' insists on the worker; 'wasm' goes local right away.
|
|
36
|
+
//
|
|
37
|
+
// ── Sharing ──────────────────────────────────────────────────────────────────
|
|
38
|
+
// Either engine can be shared with apps, by the session protocol of a ClassCAD
|
|
39
|
+
// server (invites, peers, presence, fan-out of every command's frames). On a
|
|
40
|
+
// worker the server speaks it; for the MCP's own engine share/hub.ts does,
|
|
41
|
+
// through relay() and onEngineReply() below. What reaches this client of that
|
|
42
|
+
// protocol besides its own results (peers, presence) goes to onSessionFrame().
|
|
40
43
|
import WebSocket from 'ws';
|
|
41
44
|
import { randomUUID } from 'crypto';
|
|
42
45
|
import { connect as tcpConnect } from 'net';
|
|
43
46
|
import { startLocalEngine } from './engine/wasm.js';
|
|
47
|
+
/** Frames of the session protocol that answer no request (see SessionFrame). */
|
|
48
|
+
const SESSION_FRAMES = new Set(['SessionJoined', 'PeerJoined', 'PeerLeft', 'Presence']);
|
|
49
|
+
/** Commands that change nothing: a sibling's Result for one of them leaves the caches valid. */
|
|
50
|
+
const READS = new Set(['GetTree', 'Sync', 'GetEmissionConfig', 'SetEmissionConfig', 'CreateInvite', 'RevokeInvite']);
|
|
44
51
|
const DEFAULT_URL = 'ws://0.0.0.0:9094/';
|
|
45
52
|
const REQUEST_TIMEOUT = 30_000;
|
|
46
53
|
const CONNECT_TIMEOUT = 5_000;
|
|
@@ -76,6 +83,13 @@ function workerListening(url) {
|
|
|
76
83
|
* @classcad/script's emission.ts and is applied by runScript.)
|
|
77
84
|
*/
|
|
78
85
|
export const PULL_GRAPHIC_ON = { sendGraphic_Kernel: true };
|
|
86
|
+
/**
|
|
87
|
+
* The graphic database settings the MCP's renders are built on (brep edges,
|
|
88
|
+
* sketch and structure-object graphics, tessellated curves). The database is
|
|
89
|
+
* the engine's, shared by everyone on it: a docked app's own settings must not
|
|
90
|
+
* switch these off (share/hub.ts keeps them on).
|
|
91
|
+
*/
|
|
92
|
+
export const GRAPHIC_SETTINGS = { isGraphicEnabled: true, isCCGraphicEnabled: true, isSketchGraphicEnabled: true, doCurveTessellation: true };
|
|
79
93
|
export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
80
94
|
const graphics = opts.graphics !== false;
|
|
81
95
|
const debug = opts.debug === true;
|
|
@@ -109,13 +123,7 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
109
123
|
let currentSessionId = opts.sessionId ?? null;
|
|
110
124
|
// Single-flight guard so concurrent tool calls share one open attempt.
|
|
111
125
|
let connectPromise = null;
|
|
112
|
-
// ── Bridge transport (in-app engines) ──
|
|
113
|
-
// Instead of a WebSocket to a worker, commands go to the app that announced
|
|
114
|
-
// `bridgeToken` on the bridge listener; the app runs them on its WASM engine
|
|
115
|
-
// and returns everything the engine emitted. The replies are normalized to
|
|
116
|
-
// the worker's frame shape and fed through handleFrame like WS frames.
|
|
117
126
|
let transport = 'ws';
|
|
118
|
-
let bridgeConn = null;
|
|
119
127
|
// ── Local WASM engine (engine/wasm.ts) ──
|
|
120
128
|
// Started on first use under the 'wasm' policy (or 'auto' with the worker
|
|
121
129
|
// unreachable); kept for the client's lifetime — a restart costs seconds
|
|
@@ -129,19 +137,16 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
129
137
|
let lastWorkerProbe = 0;
|
|
130
138
|
let workerWaitingLogged = false;
|
|
131
139
|
let probing = false;
|
|
132
|
-
const wasmAvailable = () => !!opts.wasm
|
|
140
|
+
const wasmAvailable = () => !!opts.wasm;
|
|
133
141
|
const log = opts.log ?? (() => { });
|
|
134
|
-
let bridgeToken = null;
|
|
135
|
-
let bridgeUnsubClose = null;
|
|
136
|
-
let bridgePeerId = null;
|
|
137
142
|
// The invite token of a server session joined via reconnectUrl (?invite=…).
|
|
138
143
|
let inviteToken = null;
|
|
139
|
-
//
|
|
144
|
+
// The local engine emits graphic as binary packages per command (no bundled
|
|
140
145
|
// graphic on GetTree). Accumulate containers by id so a pull can hand the
|
|
141
146
|
// renderer the complete picture; the renderer drops consumed bodies itself.
|
|
142
|
-
const
|
|
147
|
+
const containers = new Map();
|
|
143
148
|
function send(obj) {
|
|
144
|
-
if (transport === '
|
|
149
|
+
if (transport === 'wasm') {
|
|
145
150
|
sendViaEngine(obj);
|
|
146
151
|
return;
|
|
147
152
|
}
|
|
@@ -149,30 +154,16 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
149
154
|
throw new Error('WebSocket not open');
|
|
150
155
|
ws.send(JSON.stringify(obj));
|
|
151
156
|
}
|
|
152
|
-
/**
|
|
157
|
+
/** The local engine: one request → everything the engine emitted for it. */
|
|
153
158
|
function sendViaEngine(req) {
|
|
154
159
|
const txId = String(req.transactionID);
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
entry?.reject(new Error('local WASM engine is not running'));
|
|
161
|
-
return;
|
|
162
|
-
}
|
|
163
|
-
run = localEngine.execute(req);
|
|
164
|
-
}
|
|
165
|
-
else {
|
|
166
|
-
const conn = bridgeConn;
|
|
167
|
-
if (!conn) {
|
|
168
|
-
const entry = pending.get(txId);
|
|
169
|
-
pending.delete(txId);
|
|
170
|
-
entry?.reject(new Error('bridge not attached — call use_session with the app\'s share link'));
|
|
171
|
-
return;
|
|
172
|
-
}
|
|
173
|
-
run = conn.request('engine.execute', req);
|
|
160
|
+
if (!localEngine) {
|
|
161
|
+
const entry = pending.get(txId);
|
|
162
|
+
pending.delete(txId);
|
|
163
|
+
entry?.reject(new Error('local WASM engine is not running'));
|
|
164
|
+
return;
|
|
174
165
|
}
|
|
175
|
-
|
|
166
|
+
localEngine.execute(req).then(res => deliverEngineResult(req, res), err => {
|
|
176
167
|
const entry = pending.get(txId);
|
|
177
168
|
if (entry) {
|
|
178
169
|
pending.delete(txId);
|
|
@@ -180,7 +171,85 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
180
171
|
}
|
|
181
172
|
});
|
|
182
173
|
}
|
|
183
|
-
/**
|
|
174
|
+
/**
|
|
175
|
+
* Keeps the accumulated graphic in step with one reply of the local engine,
|
|
176
|
+
* whoever asked. The engine never announces that a body is gone, so
|
|
177
|
+
* containers are dropped here: all of them when the drawing is emptied
|
|
178
|
+
* (clear, load with doClear — a restored checkpoint included), and on every
|
|
179
|
+
* pull those whose owner left the model tree (a deleted feature, a clear
|
|
180
|
+
* that kept some ids). Without this a render shows bodies of earlier models
|
|
181
|
+
* next to the current one.
|
|
182
|
+
*/
|
|
183
|
+
function absorb(req, res) {
|
|
184
|
+
if (res.decodeErrors?.length)
|
|
185
|
+
log(`${String(req.command)}: dropped undecodable engine output (${res.decodeErrors.join('; ')})`);
|
|
186
|
+
if (emptiesDrawing(req))
|
|
187
|
+
containers.clear();
|
|
188
|
+
for (const pkg of res.binaryMessages ?? []) {
|
|
189
|
+
for (const c of pkg?.containers ?? []) {
|
|
190
|
+
if (c && c.id != null)
|
|
191
|
+
containers.set(String(c.id), c);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
for (const m of res.messages ?? []) {
|
|
195
|
+
if (m?.command !== 'Result')
|
|
196
|
+
continue;
|
|
197
|
+
const from = m._from_ ?? m.from ?? req.command;
|
|
198
|
+
if (from !== 'GetTree' && from !== 'Sync')
|
|
199
|
+
continue;
|
|
200
|
+
const tree = (m.structure ?? m.result)?.tree;
|
|
201
|
+
if (!tree || typeof tree !== 'object')
|
|
202
|
+
continue;
|
|
203
|
+
for (const [key, c] of containers) {
|
|
204
|
+
if (!(String(c.owner ?? c.id) in tree))
|
|
205
|
+
containers.delete(key);
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
const replyListeners = new Set();
|
|
210
|
+
function onEngineReply(listener) {
|
|
211
|
+
replyListeners.add(listener);
|
|
212
|
+
return () => void replyListeners.delete(listener);
|
|
213
|
+
}
|
|
214
|
+
/** A docked app's command on the MCP's own engine (see Client.relay). */
|
|
215
|
+
async function relay(req) {
|
|
216
|
+
await ensureOpen();
|
|
217
|
+
if (transport !== 'wasm' || !localEngine)
|
|
218
|
+
throw new Error('this session does not run on the MCP\'s own engine');
|
|
219
|
+
const res = await localEngine.execute(req);
|
|
220
|
+
// Anything but a pull may have changed the model: the caches are stale, and
|
|
221
|
+
// database settings an app set may have replaced the ones renders need.
|
|
222
|
+
if (req.command !== 'GetTree' && req.command !== 'Sync') {
|
|
223
|
+
version++;
|
|
224
|
+
if (touchesDatabaseSettings(req))
|
|
225
|
+
ensuredGeneration = -1;
|
|
226
|
+
}
|
|
227
|
+
absorb(req, res);
|
|
228
|
+
for (const hear of replyListeners)
|
|
229
|
+
hear(req, res, 'guest');
|
|
230
|
+
return res;
|
|
231
|
+
}
|
|
232
|
+
/** Whether a command sets the engine's database settings (the ones GRAPHIC_SETTINGS must then be put back into). */
|
|
233
|
+
function touchesDatabaseSettings(req) {
|
|
234
|
+
return Array.isArray(req.task) && req.task.some(t => t && typeof t === 'object' && 'v1.common.setDatabaseSettings' in t);
|
|
235
|
+
}
|
|
236
|
+
const engineStartListeners = new Set();
|
|
237
|
+
function onEngineStart(listener) {
|
|
238
|
+
engineStartListeners.add(listener);
|
|
239
|
+
return () => void engineStartListeners.delete(listener);
|
|
240
|
+
}
|
|
241
|
+
const sessionListeners = new Set();
|
|
242
|
+
function onSessionFrame(listener) {
|
|
243
|
+
sessionListeners.add(listener);
|
|
244
|
+
return () => void sessionListeners.delete(listener);
|
|
245
|
+
}
|
|
246
|
+
function sendFrame(frame) {
|
|
247
|
+
if (transport !== 'ws' || !ws || ws.readyState !== WebSocket.OPEN)
|
|
248
|
+
return false;
|
|
249
|
+
ws.send(JSON.stringify(frame));
|
|
250
|
+
return true;
|
|
251
|
+
}
|
|
252
|
+
/** Turns a reply of the local engine into worker-shaped Result frames and delivers them. */
|
|
184
253
|
function deliverEngineResult(req, res) {
|
|
185
254
|
const txId = String(req.transactionID);
|
|
186
255
|
const fail = (why) => {
|
|
@@ -190,19 +259,9 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
190
259
|
entry.reject(new Error(why));
|
|
191
260
|
}
|
|
192
261
|
};
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
// containers have to be dropped here: all of them when the drawing is
|
|
197
|
-
// emptied (clear, load with doClear — a restored checkpoint included) …
|
|
198
|
-
if (emptiesDrawing(req))
|
|
199
|
-
bridgeContainers.clear();
|
|
200
|
-
for (const pkg of res.binaryMessages ?? []) {
|
|
201
|
-
for (const c of pkg?.containers ?? []) {
|
|
202
|
-
if (c && c.id != null)
|
|
203
|
-
bridgeContainers.set(String(c.id), c);
|
|
204
|
-
}
|
|
205
|
-
}
|
|
262
|
+
absorb(req, res);
|
|
263
|
+
for (const hear of replyListeners)
|
|
264
|
+
hear(req, res, 'host');
|
|
206
265
|
// Errors the engine reported on the side (ErrorMessage frames, errorState 2).
|
|
207
266
|
const sideErrors = (res.messages ?? [])
|
|
208
267
|
.filter(m => m?.command === 'ErrorMessage' && Number(m.attributes?.errorState) >= 2)
|
|
@@ -236,18 +295,8 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
236
295
|
frame.structure = frame.result;
|
|
237
296
|
delete frame.result;
|
|
238
297
|
}
|
|
239
|
-
//
|
|
240
|
-
|
|
241
|
-
// bodies of earlier models next to the current one.
|
|
242
|
-
const tree = frame.structure?.tree;
|
|
243
|
-
if (tree && typeof tree === 'object') {
|
|
244
|
-
for (const [key, c] of bridgeContainers) {
|
|
245
|
-
if (!(String(c.owner ?? c.id) in tree))
|
|
246
|
-
bridgeContainers.delete(key);
|
|
247
|
-
}
|
|
248
|
-
}
|
|
249
|
-
// A pull delivers the COMPLETE graphic: the accumulated containers.
|
|
250
|
-
frame.graphic = { containers: [...bridgeContainers.values()] };
|
|
298
|
+
// A pull delivers the COMPLETE graphic: the accumulated containers (absorb pruned them).
|
|
299
|
+
frame.graphic = { containers: [...containers.values()] };
|
|
251
300
|
}
|
|
252
301
|
delivered = true;
|
|
253
302
|
handleFrame(Buffer.from(JSON.stringify(frame)), false);
|
|
@@ -274,19 +323,6 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
274
323
|
const method = task ? Object.keys(task)[0] : undefined;
|
|
275
324
|
return method ? `${String(req.command)} ${method}` : String(req.command);
|
|
276
325
|
}
|
|
277
|
-
function detachBridge() {
|
|
278
|
-
if (bridgeUnsubClose)
|
|
279
|
-
bridgeUnsubClose();
|
|
280
|
-
bridgeUnsubClose = null;
|
|
281
|
-
const conn = bridgeConn;
|
|
282
|
-
bridgeConn = null;
|
|
283
|
-
if (conn && bridgePeerId) {
|
|
284
|
-
conn.request('session.detached', { peerId: bridgePeerId }).catch(() => { });
|
|
285
|
-
}
|
|
286
|
-
bridgePeerId = null;
|
|
287
|
-
bridgeToken = null;
|
|
288
|
-
bridgeContainers.clear();
|
|
289
|
-
}
|
|
290
326
|
function handleFrame(data, isBinary) {
|
|
291
327
|
if (isBinary)
|
|
292
328
|
return;
|
|
@@ -298,11 +334,21 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
298
334
|
return;
|
|
299
335
|
}
|
|
300
336
|
const txId = frame._transactionID_;
|
|
301
|
-
if (!txId)
|
|
337
|
+
if (!txId) {
|
|
338
|
+
// The session protocol's own frames: who joined or left, what they published.
|
|
339
|
+
if (SESSION_FRAMES.has(frame?.command))
|
|
340
|
+
for (const hear of sessionListeners)
|
|
341
|
+
hear(frame);
|
|
302
342
|
return;
|
|
343
|
+
}
|
|
303
344
|
const entry = pending.get(txId);
|
|
304
|
-
if (!entry)
|
|
345
|
+
if (!entry) {
|
|
346
|
+
// A sibling's command (the server fans its frames out to everyone in the
|
|
347
|
+
// session): whatever it was, the model may be another one now.
|
|
348
|
+
if (frame.command === 'Result' && !READS.has(frame._from_))
|
|
349
|
+
version++;
|
|
305
350
|
return;
|
|
351
|
+
}
|
|
306
352
|
if (frame.command !== 'Result')
|
|
307
353
|
return;
|
|
308
354
|
pending.delete(txId);
|
|
@@ -355,12 +401,6 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
355
401
|
// the in-flight open. After a successful open, ws stays defined; close()
|
|
356
402
|
// and reconnect() reset it as needed.
|
|
357
403
|
async function ensureOpen() {
|
|
358
|
-
if (transport === 'bridge') {
|
|
359
|
-
if (bridgeConn)
|
|
360
|
-
return;
|
|
361
|
-
throw new Error('The app behind the share link is gone (bridge closed). Either reopen the share in the app and call use_session with the new link, ' +
|
|
362
|
-
'or leave the app: use_session with engine "wasm" runs on the MCP\'s own local engine, engine "drogon" on the ClassCAD worker, "auto" picks.');
|
|
363
|
-
}
|
|
364
404
|
if (transport === 'wasm' && localEngine?.closed) {
|
|
365
405
|
if (connectPromise)
|
|
366
406
|
return connectPromise;
|
|
@@ -402,7 +442,7 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
402
442
|
autoFallback = false;
|
|
403
443
|
if (how === 'wasm') {
|
|
404
444
|
if (!wasmAvailable())
|
|
405
|
-
throw new Error('No local WASM engine
|
|
445
|
+
throw new Error('No local WASM engine (CLASSCAD_WASM=off): use engine "drogon" with a running ClassCAD worker.');
|
|
406
446
|
await openWasm();
|
|
407
447
|
return;
|
|
408
448
|
}
|
|
@@ -420,7 +460,7 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
420
460
|
}
|
|
421
461
|
if (unreachable && how === 'auto' && !wasmAvailable()) {
|
|
422
462
|
throw new Error(`No ClassCAD worker reachable at ${currentUrl} (${err.message}). Start one (classcad-cli worker) or set CLASSCAD_WS_URL — ` +
|
|
423
|
-
'or
|
|
463
|
+
'or unset CLASSCAD_WASM=off so the MCP can host the engine itself (local WASM).');
|
|
424
464
|
}
|
|
425
465
|
throw err;
|
|
426
466
|
}
|
|
@@ -472,8 +512,6 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
472
512
|
catch { }
|
|
473
513
|
ws = undefined;
|
|
474
514
|
}
|
|
475
|
-
if (transport === 'bridge')
|
|
476
|
-
detachBridge();
|
|
477
515
|
resetCaches();
|
|
478
516
|
transport = 'wasm';
|
|
479
517
|
currentSessionId = null;
|
|
@@ -488,11 +526,17 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
488
526
|
}
|
|
489
527
|
if (!localEngine) {
|
|
490
528
|
localEngine = await startLocalEngine({ ...opts.wasm, log });
|
|
491
|
-
// A new engine has default database settings.
|
|
492
|
-
// payloads held here) stay valid: restore loads them
|
|
529
|
+
// A new engine has an empty drawing and default database settings.
|
|
530
|
+
// Checkpoints (save payloads held here) stay valid: restore loads them
|
|
531
|
+
// into this one.
|
|
532
|
+
containers.clear();
|
|
493
533
|
ensuredGeneration = -1;
|
|
494
534
|
await bootstrapSession();
|
|
535
|
+
for (const hear of engineStartListeners)
|
|
536
|
+
hear();
|
|
495
537
|
}
|
|
538
|
+
for (const hear of sessionListeners)
|
|
539
|
+
hear({ command: 'Connected', transport: 'wasm' });
|
|
496
540
|
}
|
|
497
541
|
/** Replaces a retired local engine (crash, trap, timeout) with a new one. */
|
|
498
542
|
async function restartLocalEngine(why) {
|
|
@@ -505,8 +549,6 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
505
549
|
return request('Execute', { task: [task], options: { undoable: false } });
|
|
506
550
|
}
|
|
507
551
|
function close() {
|
|
508
|
-
if (transport === 'bridge')
|
|
509
|
-
detachBridge();
|
|
510
552
|
if (ws && ws.readyState <= WebSocket.OPEN)
|
|
511
553
|
ws.close();
|
|
512
554
|
if (localEngine) {
|
|
@@ -571,11 +613,7 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
571
613
|
try {
|
|
572
614
|
await request('Execute', {
|
|
573
615
|
task: [
|
|
574
|
-
{
|
|
575
|
-
'v1.common.setDatabaseSettings': [
|
|
576
|
-
{ isGraphicEnabled: true, isCCGraphicEnabled: true, isSketchGraphicEnabled: true, doCurveTessellation: true },
|
|
577
|
-
],
|
|
578
|
-
},
|
|
616
|
+
{ 'v1.common.setDatabaseSettings': [{ ...GRAPHIC_SETTINGS }] },
|
|
579
617
|
],
|
|
580
618
|
options: { undoable: false },
|
|
581
619
|
}, { track: false });
|
|
@@ -664,63 +702,11 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
664
702
|
graphicVersion = -1;
|
|
665
703
|
knownKernel = null;
|
|
666
704
|
}
|
|
667
|
-
async function openBridge(token) {
|
|
668
|
-
const registry = opts.bridge?.() ?? null;
|
|
669
|
-
if (!registry)
|
|
670
|
-
throw new Error('The bridge listener is not running in this MCP (CLASSCAD_BRIDGE_LISTEN failed to bind, or the MCP runs in-process without a daemon).');
|
|
671
|
-
if (ws && ws.readyState <= WebSocket.OPEN) {
|
|
672
|
-
try {
|
|
673
|
-
ws.close();
|
|
674
|
-
}
|
|
675
|
-
catch { }
|
|
676
|
-
ws = undefined;
|
|
677
|
-
}
|
|
678
|
-
detachBridge();
|
|
679
|
-
resetCaches();
|
|
680
|
-
transport = 'bridge';
|
|
681
|
-
bridgeToken = token;
|
|
682
|
-
// Apps reconnect with backoff (buerli connectBridge: 500 ms … 5 s) after a
|
|
683
|
-
// daemon restart; wait longer than the largest backoff step.
|
|
684
|
-
const conn = await registry.waitFor(token, 8_000);
|
|
685
|
-
if (!conn) {
|
|
686
|
-
transport = 'ws';
|
|
687
|
-
bridgeToken = null;
|
|
688
|
-
throw new Error(`No app has announced share token "${token}" on ${registry.url}. ` +
|
|
689
|
-
'Create the share in the app first (it connects to this MCP when the token is minted), then call use_session again.');
|
|
690
|
-
}
|
|
691
|
-
if (conn.kind !== 'bridge') {
|
|
692
|
-
transport = 'ws';
|
|
693
|
-
bridgeToken = null;
|
|
694
|
-
throw new Error(`Token "${token}" belongs to a server session (invite), not an in-app engine — pass it as ?invite= instead.`);
|
|
695
|
-
}
|
|
696
|
-
bridgeConn = conn;
|
|
697
|
-
bridgePeerId = randomUUID();
|
|
698
|
-
bridgeUnsubClose = conn.onClose(() => {
|
|
699
|
-
if (bridgeConn !== conn)
|
|
700
|
-
return;
|
|
701
|
-
bridgeConn = null;
|
|
702
|
-
for (const [, entry] of pending) {
|
|
703
|
-
try {
|
|
704
|
-
entry.reject(new Error('bridge closed — the app revoked the share or went away'));
|
|
705
|
-
}
|
|
706
|
-
catch { }
|
|
707
|
-
}
|
|
708
|
-
pending.clear();
|
|
709
|
-
});
|
|
710
|
-
try {
|
|
711
|
-
await conn.request('session.attached', { peerId: bridgePeerId, role: 'edit', client: 'classcad-mcp' });
|
|
712
|
-
}
|
|
713
|
-
catch {
|
|
714
|
-
/* older apps without the session.* handlers still relay engine commands */
|
|
715
|
-
}
|
|
716
|
-
await bootstrapSession();
|
|
717
|
-
}
|
|
718
705
|
async function openWs(sessionId) {
|
|
719
|
-
if (transport === 'bridge')
|
|
720
|
-
detachBridge();
|
|
721
706
|
// Leaving the local engine for a worker: the engine stays warm in case
|
|
722
707
|
// the policy brings us back; close() ends it with the client.
|
|
723
708
|
transport = 'ws';
|
|
709
|
+
containers.clear();
|
|
724
710
|
if (ws && ws.readyState <= WebSocket.OPEN) {
|
|
725
711
|
try {
|
|
726
712
|
ws.close();
|
|
@@ -772,6 +758,8 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
772
758
|
timer = setTimeout(() => fail(new Error('Connection timeout')), opts.connectTimeoutMs ?? CONNECT_TIMEOUT);
|
|
773
759
|
});
|
|
774
760
|
sock.on('message', (d, b) => handleFrame(d, b));
|
|
761
|
+
for (const hear of sessionListeners)
|
|
762
|
+
hear({ command: 'Connected', transport: 'ws' });
|
|
775
763
|
sock.on('close', () => {
|
|
776
764
|
if (ws !== sock)
|
|
777
765
|
return;
|
|
@@ -814,13 +802,6 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
814
802
|
}
|
|
815
803
|
await openWs(null);
|
|
816
804
|
}
|
|
817
|
-
async function reconnectBridge(token) {
|
|
818
|
-
generation++;
|
|
819
|
-
connectPromise = null;
|
|
820
|
-
currentSessionId = null;
|
|
821
|
-
inviteToken = null;
|
|
822
|
-
await openBridge(token);
|
|
823
|
-
}
|
|
824
805
|
// No eager open here. The WS is opened on first request/execute/pull call
|
|
825
806
|
// (via ensureOpen) or immediately by reconnect(). This keeps the MCP
|
|
826
807
|
// passive at startup so it doesn't create stray ephemeral worker sessions.
|
|
@@ -838,7 +819,13 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
838
819
|
refreshTree,
|
|
839
820
|
reconnect,
|
|
840
821
|
reconnectUrl,
|
|
841
|
-
|
|
822
|
+
open: ensureOpen,
|
|
823
|
+
relay,
|
|
824
|
+
onEngineReply,
|
|
825
|
+
onEngineStart,
|
|
826
|
+
engineContainers: () => [...containers.values()],
|
|
827
|
+
onSessionFrame,
|
|
828
|
+
sendFrame,
|
|
842
829
|
get ws() {
|
|
843
830
|
return ws;
|
|
844
831
|
},
|
|
@@ -855,11 +842,9 @@ export async function connect(url = DEFAULT_URL, opts = {}) {
|
|
|
855
842
|
return localEngine;
|
|
856
843
|
},
|
|
857
844
|
get shareToken() {
|
|
858
|
-
return
|
|
845
|
+
return inviteToken;
|
|
859
846
|
},
|
|
860
847
|
get connected() {
|
|
861
|
-
if (transport === 'bridge')
|
|
862
|
-
return bridgeConn !== null;
|
|
863
848
|
if (transport === 'wasm')
|
|
864
849
|
return localEngine !== null;
|
|
865
850
|
return !!ws && ws.readyState === WebSocket.OPEN;
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/daemon.d.ts
CHANGED
|
@@ -12,13 +12,11 @@ export declare const DAEMON_HOST = "127.0.0.1";
|
|
|
12
12
|
*/
|
|
13
13
|
export declare function daemonBuildStamp(): string;
|
|
14
14
|
export { DEFAULT_DAEMON_PORT };
|
|
15
|
-
export declare const DEFAULT_BRIDGE_LISTEN = "ws://127.0.0.1:9096/bridge";
|
|
16
15
|
/** Exit after this long without any session (ms). */
|
|
17
16
|
export declare const DEFAULT_IDLE_MS = 60000;
|
|
18
17
|
export type DaemonOptions = {
|
|
19
18
|
port?: number;
|
|
20
19
|
wsUrl?: string;
|
|
21
|
-
bridgeListen?: string;
|
|
22
20
|
idleMs?: number;
|
|
23
21
|
/** Where to log (a file path); undefined = stderr. */
|
|
24
22
|
logFile?: string;
|