@opentabs-dev/mcp-server 0.0.51 → 0.0.53

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 (38) hide show
  1. package/dist/browser-tools/analyze-site/index.d.ts.map +1 -1
  2. package/dist/browser-tools/analyze-site/index.js +25 -22
  3. package/dist/browser-tools/analyze-site/index.js.map +1 -1
  4. package/dist/config.d.ts +2 -2
  5. package/dist/config.d.ts.map +1 -1
  6. package/dist/config.js +9 -4
  7. package/dist/config.js.map +1 -1
  8. package/dist/dev-proxy.d.ts +8 -1
  9. package/dist/dev-proxy.d.ts.map +1 -1
  10. package/dist/dev-proxy.js +398 -5
  11. package/dist/dev-proxy.js.map +1 -1
  12. package/dist/extension-handlers.d.ts +8 -3
  13. package/dist/extension-handlers.d.ts.map +1 -1
  14. package/dist/extension-handlers.js +32 -13
  15. package/dist/extension-handlers.js.map +1 -1
  16. package/dist/extension-protocol.d.ts +7 -1
  17. package/dist/extension-protocol.d.ts.map +1 -1
  18. package/dist/extension-protocol.js +31 -9
  19. package/dist/extension-protocol.js.map +1 -1
  20. package/dist/http-routes.d.ts.map +1 -1
  21. package/dist/http-routes.js +19 -4
  22. package/dist/http-routes.js.map +1 -1
  23. package/dist/permissions.d.ts +1 -1
  24. package/dist/permissions.js +3 -3
  25. package/dist/permissions.js.map +1 -1
  26. package/dist/plugin-management.js +2 -2
  27. package/dist/plugin-management.js.map +1 -1
  28. package/dist/reload.js +3 -3
  29. package/dist/reload.js.map +1 -1
  30. package/dist/skip-permissions.d.ts +18 -0
  31. package/dist/skip-permissions.d.ts.map +1 -0
  32. package/dist/skip-permissions.js +22 -0
  33. package/dist/skip-permissions.js.map +1 -0
  34. package/dist/state.d.ts +2 -2
  35. package/dist/state.d.ts.map +1 -1
  36. package/dist/state.js +1 -1
  37. package/dist/state.js.map +1 -1
  38. package/package.json +1 -1
package/dist/dev-proxy.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Dev proxy for hot reload.
2
+ * Dev proxy for hot reload with MCP session persistence.
3
3
  *
4
4
  * Listens on the configured port. Forks the MCP server (dist/index.js) on
5
5
  * an ephemeral port (PORT=0). The worker reports its actual port to the proxy
@@ -7,10 +7,18 @@
7
7
  * current worker. Restarts the worker when .js files in the dist/ directory
8
8
  * change (debounced). Incoming HTTP requests are buffered during restarts and
9
9
  * drained once the new worker is ready (up to 5 seconds, then 503).
10
+ *
11
+ * MCP session bridging: The proxy assigns its own stable session ID to each
12
+ * MCP client. When a worker restarts, the proxy re-initializes the MCP session
13
+ * with the new worker on behalf of connected clients, mapping the stable proxy
14
+ * session ID to the new worker session ID. SSE GET streams are held open across
15
+ * worker restarts — the proxy reconnects the upstream SSE stream to the new
16
+ * worker and resumes forwarding events to the client.
10
17
  */
11
18
  import { DEFAULT_HOST, DEFAULT_PORT } from '@opentabs-dev/shared';
12
19
  import { WebSocket, WebSocketServer } from 'ws';
13
20
  import { fork } from 'node:child_process';
21
+ import { randomUUID } from 'node:crypto';
14
22
  import { watch } from 'node:fs';
15
23
  import { createServer, request as httpRequest } from 'node:http';
16
24
  import { resolve } from 'node:path';
@@ -24,11 +32,107 @@ let worker = null;
24
32
  let debounceTimer = null;
25
33
  const pending = [];
26
34
  let workerStartCount = 0;
35
+ /** Map from proxy session ID → session state. */
36
+ const sessions = new Map();
37
+ /** Reverse map from worker session ID → proxy session ID for fast lookup. */
38
+ const workerToProxySession = new Map();
27
39
  /** Drain all buffered requests now that the worker is ready. */
28
40
  const drainPending = () => {
29
41
  for (const fn of pending.splice(0))
30
42
  fn();
31
43
  };
44
+ /**
45
+ * Re-initialize all tracked MCP sessions with the new worker.
46
+ * Sends the original initialize request + notifications/initialized to the
47
+ * new worker for each session, capturing the new worker session IDs.
48
+ * Then reconnects SSE streams.
49
+ */
50
+ const reinitializeSessions = async (port) => {
51
+ const sessionsToReinit = [...sessions.values()];
52
+ if (sessionsToReinit.length === 0)
53
+ return;
54
+ console.log(`[proxy] Re-initializing ${sessionsToReinit.length} MCP session(s) with new worker`);
55
+ for (const session of sessionsToReinit) {
56
+ try {
57
+ // Remove old worker session mapping
58
+ workerToProxySession.delete(session.workerSessionId);
59
+ // Send the original initialize request to the new worker
60
+ const headers = {
61
+ 'Content-Type': 'application/json',
62
+ Accept: 'application/json, text/event-stream',
63
+ };
64
+ if (session.authHeader) {
65
+ headers['Authorization'] = session.authHeader;
66
+ }
67
+ const initRes = await fetch(`http://127.0.0.1:${port}/mcp`, {
68
+ method: 'POST',
69
+ headers,
70
+ body: JSON.stringify(session.initializeBody),
71
+ signal: AbortSignal.timeout(READY_TIMEOUT_MS),
72
+ });
73
+ if (!initRes.ok) {
74
+ const text = await initRes.text().catch(() => '');
75
+ console.error(`[proxy] Failed to re-initialize session ${session.proxySessionId}: ${initRes.status} ${text}`);
76
+ cleanupSession(session.proxySessionId);
77
+ continue;
78
+ }
79
+ const newWorkerSessionId = initRes.headers.get('mcp-session-id');
80
+ if (!newWorkerSessionId) {
81
+ console.error(`[proxy] Re-initialize did not return session ID for ${session.proxySessionId}`);
82
+ cleanupSession(session.proxySessionId);
83
+ continue;
84
+ }
85
+ // Update session mapping
86
+ session.workerSessionId = newWorkerSessionId;
87
+ workerToProxySession.set(newWorkerSessionId, session.proxySessionId);
88
+ // Consume the initialize response body
89
+ await initRes.text().catch(() => { });
90
+ // Send notifications/initialized
91
+ const notifHeaders = {
92
+ 'Content-Type': 'application/json',
93
+ Accept: 'application/json, text/event-stream',
94
+ 'mcp-session-id': newWorkerSessionId,
95
+ };
96
+ if (session.authHeader) {
97
+ notifHeaders['Authorization'] = session.authHeader;
98
+ }
99
+ await fetch(`http://127.0.0.1:${port}/mcp`, {
100
+ method: 'POST',
101
+ headers: notifHeaders,
102
+ body: JSON.stringify({ jsonrpc: '2.0', method: 'notifications/initialized' }),
103
+ signal: AbortSignal.timeout(READY_TIMEOUT_MS),
104
+ }).catch(() => { });
105
+ console.log(`[proxy] Session ${session.proxySessionId} re-initialized (worker session: ${newWorkerSessionId})`);
106
+ // Reconnect SSE streams for this session
107
+ for (const clientRes of session.sseStreams) {
108
+ if (!clientRes.destroyed && !clientRes.writableEnded) {
109
+ connectUpstreamSse(session, clientRes, port);
110
+ }
111
+ else {
112
+ session.sseStreams.delete(clientRes);
113
+ }
114
+ }
115
+ }
116
+ catch (err) {
117
+ console.error(`[proxy] Error re-initializing session ${session.proxySessionId}:`, err instanceof Error ? err.message : err);
118
+ cleanupSession(session.proxySessionId);
119
+ }
120
+ }
121
+ };
122
+ /** Remove a session and clean up its resources. */
123
+ const cleanupSession = (proxySessionId) => {
124
+ const session = sessions.get(proxySessionId);
125
+ if (!session)
126
+ return;
127
+ workerToProxySession.delete(session.workerSessionId);
128
+ for (const res of session.sseStreams) {
129
+ if (!res.destroyed && !res.writableEnded) {
130
+ res.end();
131
+ }
132
+ }
133
+ session.sseStreams.clear();
134
+ sessions.delete(proxySessionId);
135
+ };
32
136
  /**
33
137
  * Start (or restart) the worker. Kills the previous worker if running,
34
138
  * forks a new one with PORT=0 and OPENTABS_PROXY=1, then waits for the
@@ -53,9 +157,17 @@ const startWorker = () => {
53
157
  typeof msg.port === 'number') {
54
158
  workerPort = msg.port;
55
159
  console.log(`[proxy] Worker ready on port ${workerPort}`);
56
- if (isRestart)
57
- console.log('Hot reload complete');
58
- drainPending();
160
+ if (isRestart) {
161
+ // Re-initialize existing MCP sessions with the new worker before
162
+ // draining pending requests, so session mappings are ready.
163
+ void reinitializeSessions(workerPort).then(() => {
164
+ console.log('Hot reload complete');
165
+ drainPending();
166
+ });
167
+ }
168
+ else {
169
+ drainPending();
170
+ }
59
171
  }
60
172
  });
61
173
  child.on('exit', code => {
@@ -110,6 +222,281 @@ const proxyHttp = (req, res, port) => {
110
222
  });
111
223
  req.pipe(proxyReq);
112
224
  };
225
+ // --- MCP-aware HTTP handling ---
226
+ /** Read the full request body as a string. */
227
+ const readBody = (req) => new Promise((resolve, reject) => {
228
+ const chunks = [];
229
+ req.on('data', (chunk) => chunks.push(chunk));
230
+ req.on('end', () => resolve(Buffer.concat(chunks).toString()));
231
+ req.on('error', reject);
232
+ });
233
+ /**
234
+ * Connect an upstream SSE stream from the worker to a client response.
235
+ * Forwards SSE events from the worker to the client, rewriting the
236
+ * mcp-session-id in any headers to the proxy session ID.
237
+ */
238
+ const connectUpstreamSse = (session, clientRes, port) => {
239
+ const headers = {
240
+ Accept: 'text/event-stream',
241
+ 'mcp-session-id': session.workerSessionId,
242
+ };
243
+ if (session.authHeader) {
244
+ headers['Authorization'] = session.authHeader;
245
+ }
246
+ const upstreamReq = httpRequest({
247
+ hostname: '127.0.0.1',
248
+ port,
249
+ path: '/mcp',
250
+ method: 'GET',
251
+ headers,
252
+ }, upstreamRes => {
253
+ if (upstreamRes.statusCode !== 200) {
254
+ upstreamRes.resume();
255
+ return;
256
+ }
257
+ // Forward SSE data chunks to the client
258
+ upstreamRes.on('data', (chunk) => {
259
+ if (!clientRes.destroyed && !clientRes.writableEnded) {
260
+ clientRes.write(chunk);
261
+ }
262
+ });
263
+ // When upstream closes (worker restart), the proxy keeps the client
264
+ // response open. The reinitializeSessions() function will reconnect
265
+ // the upstream SSE stream after the new worker is ready.
266
+ upstreamRes.on('end', () => {
267
+ // Upstream ended — do NOT close the client response.
268
+ // It will be reconnected after worker restart.
269
+ });
270
+ upstreamRes.on('error', () => {
271
+ // Upstream error — keep client response open for reconnection.
272
+ });
273
+ });
274
+ upstreamReq.on('error', () => {
275
+ // Worker is down — keep the client response open.
276
+ // reinitializeSessions() will reconnect after the worker restarts.
277
+ });
278
+ upstreamReq.end();
279
+ };
280
+ /**
281
+ * Handle an MCP POST request. Intercepts initialize requests to track sessions,
282
+ * rewrites session IDs for existing sessions, and forwards to the worker.
283
+ */
284
+ const handleMcpPost = async (req, res, port) => {
285
+ const bodyStr = await readBody(req);
286
+ let body;
287
+ try {
288
+ body = JSON.parse(bodyStr);
289
+ }
290
+ catch {
291
+ res.writeHead(400);
292
+ res.end('Invalid JSON');
293
+ return;
294
+ }
295
+ const isInitialize = typeof body === 'object' &&
296
+ body !== null &&
297
+ body.method === 'initialize' &&
298
+ body.jsonrpc === '2.0';
299
+ const clientSessionId = req.headers['mcp-session-id'];
300
+ if (isInitialize) {
301
+ // Forward initialize to the worker (no session ID header)
302
+ const headers = {
303
+ 'Content-Type': 'application/json',
304
+ Accept: req.headers.accept ?? 'application/json, text/event-stream',
305
+ };
306
+ const authHeader = req.headers.authorization;
307
+ if (authHeader) {
308
+ headers['Authorization'] = authHeader;
309
+ }
310
+ // Forward Host header for DNS rebinding protection
311
+ if (req.headers.host) {
312
+ headers['Host'] = req.headers.host;
313
+ }
314
+ const workerRes = await fetch(`http://127.0.0.1:${port}/mcp`, {
315
+ method: 'POST',
316
+ headers,
317
+ body: bodyStr,
318
+ signal: AbortSignal.timeout(READY_TIMEOUT_MS),
319
+ });
320
+ const workerSessionId = workerRes.headers.get('mcp-session-id');
321
+ const responseBody = await workerRes.text();
322
+ if (workerRes.ok && workerSessionId) {
323
+ // Create a proxy session
324
+ const proxySessionId = randomUUID();
325
+ const session = {
326
+ proxySessionId,
327
+ workerSessionId,
328
+ initializeBody: body,
329
+ sseStreams: new Set(),
330
+ authHeader: authHeader ?? null,
331
+ };
332
+ sessions.set(proxySessionId, session);
333
+ workerToProxySession.set(workerSessionId, proxySessionId);
334
+ // Forward the response with the proxy session ID
335
+ const resHeaders = {
336
+ 'content-type': workerRes.headers.get('content-type') ?? 'application/json',
337
+ 'mcp-session-id': proxySessionId,
338
+ };
339
+ res.writeHead(workerRes.status, resHeaders);
340
+ res.end(responseBody);
341
+ }
342
+ else {
343
+ // Forward error response as-is
344
+ const resHeaders = {};
345
+ const ct = workerRes.headers.get('content-type');
346
+ if (ct)
347
+ resHeaders['content-type'] = ct;
348
+ res.writeHead(workerRes.status, resHeaders);
349
+ res.end(responseBody);
350
+ }
351
+ return;
352
+ }
353
+ // Non-initialize POST — look up the session and rewrite the session ID
354
+ if (clientSessionId) {
355
+ const session = sessions.get(clientSessionId);
356
+ if (session) {
357
+ // Rewrite the session ID header to the current worker session ID
358
+ const forwardHeaders = {};
359
+ for (const [key, value] of Object.entries(req.headers)) {
360
+ if (key === 'mcp-session-id') {
361
+ forwardHeaders[key] = session.workerSessionId;
362
+ }
363
+ else {
364
+ forwardHeaders[key] = value;
365
+ }
366
+ }
367
+ const proxyReq = httpRequest({ hostname: '127.0.0.1', port, path: '/mcp', method: 'POST', headers: forwardHeaders }, proxyRes => {
368
+ // Rewrite the session ID in the response back to the proxy session ID
369
+ const outHeaders = {};
370
+ for (const [key, value] of Object.entries(proxyRes.headers)) {
371
+ if (key === 'mcp-session-id') {
372
+ outHeaders[key] = session.proxySessionId;
373
+ }
374
+ else {
375
+ outHeaders[key] = value;
376
+ }
377
+ }
378
+ res.writeHead(proxyRes.statusCode ?? 200, outHeaders);
379
+ proxyRes.pipe(res);
380
+ res.on('close', () => proxyRes.destroy());
381
+ });
382
+ proxyReq.on('error', () => {
383
+ if (!res.headersSent) {
384
+ res.writeHead(502);
385
+ res.end('Bad Gateway');
386
+ }
387
+ });
388
+ proxyReq.write(bodyStr);
389
+ proxyReq.end();
390
+ return;
391
+ }
392
+ }
393
+ // Unknown session or no session header — forward as-is
394
+ const proxyReq = httpRequest({ hostname: '127.0.0.1', port, path: '/mcp', method: 'POST', headers: req.headers }, proxyRes => {
395
+ res.writeHead(proxyRes.statusCode ?? 200, proxyRes.headers);
396
+ proxyRes.pipe(res);
397
+ res.on('close', () => proxyRes.destroy());
398
+ });
399
+ proxyReq.on('error', () => {
400
+ if (!res.headersSent) {
401
+ res.writeHead(502);
402
+ res.end('Bad Gateway');
403
+ }
404
+ });
405
+ proxyReq.write(bodyStr);
406
+ proxyReq.end();
407
+ };
408
+ /**
409
+ * Handle an MCP GET request (SSE stream). The proxy keeps the client-facing
410
+ * SSE response alive across worker restarts by reconnecting the upstream
411
+ * SSE stream to the new worker.
412
+ */
413
+ const handleMcpGet = (req, res, port) => {
414
+ const clientSessionId = req.headers['mcp-session-id'];
415
+ if (!clientSessionId) {
416
+ proxyHttp(req, res, port);
417
+ return;
418
+ }
419
+ const session = sessions.get(clientSessionId);
420
+ if (!session) {
421
+ proxyHttp(req, res, port);
422
+ return;
423
+ }
424
+ // Write SSE headers to the client — the proxy owns this response
425
+ res.writeHead(200, {
426
+ 'Content-Type': 'text/event-stream',
427
+ 'Cache-Control': 'no-cache, no-transform',
428
+ Connection: 'keep-alive',
429
+ 'mcp-session-id': session.proxySessionId,
430
+ });
431
+ // Track this SSE stream for reconnection after worker restart
432
+ session.sseStreams.add(res);
433
+ res.on('close', () => {
434
+ session.sseStreams.delete(res);
435
+ // If the client disconnected and there are no more SSE streams, clean up
436
+ if (session.sseStreams.size === 0) {
437
+ cleanupSession(session.proxySessionId);
438
+ }
439
+ });
440
+ // Connect the upstream SSE stream from the current worker
441
+ connectUpstreamSse(session, res, port);
442
+ };
443
+ /**
444
+ * Handle an MCP DELETE request. Rewrites session ID and cleans up.
445
+ */
446
+ const handleMcpDelete = (req, res, port) => {
447
+ const clientSessionId = req.headers['mcp-session-id'];
448
+ if (!clientSessionId) {
449
+ proxyHttp(req, res, port);
450
+ return;
451
+ }
452
+ const session = sessions.get(clientSessionId);
453
+ if (!session) {
454
+ proxyHttp(req, res, port);
455
+ return;
456
+ }
457
+ // Rewrite session ID and forward
458
+ const forwardHeaders = {};
459
+ for (const [key, value] of Object.entries(req.headers)) {
460
+ if (key === 'mcp-session-id') {
461
+ forwardHeaders[key] = session.workerSessionId;
462
+ }
463
+ else {
464
+ forwardHeaders[key] = value;
465
+ }
466
+ }
467
+ const proxyReq = httpRequest({ hostname: '127.0.0.1', port, path: '/mcp', method: 'DELETE', headers: forwardHeaders }, proxyRes => {
468
+ res.writeHead(proxyRes.statusCode ?? 200, proxyRes.headers);
469
+ proxyRes.pipe(res);
470
+ res.on('close', () => proxyRes.destroy());
471
+ });
472
+ proxyReq.on('error', () => {
473
+ if (!res.headersSent) {
474
+ res.writeHead(502);
475
+ res.end('Bad Gateway');
476
+ }
477
+ });
478
+ proxyReq.end();
479
+ // Clean up the session
480
+ cleanupSession(session.proxySessionId);
481
+ };
482
+ /**
483
+ * Route an MCP request to the appropriate handler based on HTTP method.
484
+ */
485
+ const handleMcpRequest = (req, res, port) => {
486
+ if (req.method === 'GET') {
487
+ handleMcpGet(req, res, port);
488
+ }
489
+ else if (req.method === 'POST') {
490
+ void handleMcpPost(req, res, port);
491
+ }
492
+ else if (req.method === 'DELETE') {
493
+ handleMcpDelete(req, res, port);
494
+ }
495
+ else {
496
+ res.writeHead(405);
497
+ res.end('Method not allowed');
498
+ }
499
+ };
113
500
  // WebSocketServer in noServer mode — used only to complete client-side upgrades.
114
501
  // handleProtocols returns false to suppress ws's automatic protocol selection;
115
502
  // the 'headers' event injects the Sec-WebSocket-Protocol echo from the worker.
@@ -122,9 +509,15 @@ wss.on('headers', (headers) => {
122
509
  }
123
510
  });
124
511
  const httpServer = createServer((req, res) => {
512
+ const isMcpRequest = (req.url ?? '/').startsWith('/mcp');
125
513
  whenReady(() => {
126
514
  if (workerPort !== null) {
127
- proxyHttp(req, res, workerPort);
515
+ if (isMcpRequest) {
516
+ handleMcpRequest(req, res, workerPort);
517
+ }
518
+ else {
519
+ proxyHttp(req, res, workerPort);
520
+ }
128
521
  }
129
522
  else {
130
523
  res.writeHead(503);
@@ -1 +1 @@
1
- {"version":3,"file":"dev-proxy.js","sourceRoot":"","sources":["../src/dev-proxy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev-proxy.js","sourceRoot":"","sources":["../src/dev-proxy.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import type { PluginLogEntry } from './log-buffer.js';
8
8
  import type { RegisteredPlugin, ServerState, TabMapping } from './state.js';
9
- import type { JsonRpcError, JsonRpcNotification, JsonRpcRequest, JsonRpcResult, PluginTabInfo } from '@opentabs-dev/shared';
9
+ import type { ConfigStateResult, JsonRpcError, JsonRpcNotification, JsonRpcRequest, JsonRpcResult, PluginTabInfo, TrustTier } from '@opentabs-dev/shared';
10
10
  /** Callbacks the extension protocol can invoke on the MCP side */
11
11
  interface McpCallbacks {
12
12
  onToolConfigChanged: () => void;
@@ -45,7 +45,7 @@ declare const serializePluginForExtension: (plugin: RegisteredPlugin, state: Ser
45
45
  version: string;
46
46
  displayName: string;
47
47
  urlPatterns: string[];
48
- trustTier: string;
48
+ trustTier: TrustTier;
49
49
  iconSvg?: string;
50
50
  iconInactiveSvg?: string;
51
51
  tools: {
@@ -75,6 +75,11 @@ declare const parsePluginTabInfo: (wire: WirePluginTabInfo) => PluginTabInfo | n
75
75
  declare const parseTabMapping: (wire: WireTabMapping) => TabMapping;
76
76
  declare const handleTabSyncAll: (state: ServerState, params: Record<string, unknown> | undefined) => void;
77
77
  declare const handleTabStateChanged: (state: ServerState, params: Record<string, unknown> | undefined, id?: string | number) => void;
78
+ /**
79
+ * Build the full ConfigStateResult payload from current server state.
80
+ * Shared between config.getState responses and plugins.changed notifications.
81
+ */
82
+ declare const buildConfigStatePayload: (state: ServerState) => ConfigStateResult;
78
83
  declare const handleConfigGetState: (state: ServerState, id: string | number) => void;
79
84
  declare const handleConfigSetToolEnabled: (state: ServerState, params: Record<string, unknown> | undefined, id: string | number, callbacks: McpCallbacks) => void;
80
85
  declare const handleConfigSetAllToolsEnabled: (state: ServerState, params: Record<string, unknown> | undefined, id: string | number, callbacks: McpCallbacks) => void;
@@ -109,5 +114,5 @@ declare const handlePluginUpdateFromRegistry: (state: ServerState, params: Recor
109
114
  declare const handlePluginRemove: (state: ServerState, params: Record<string, unknown> | undefined, id: string | number, callbacks: McpCallbacks) => Promise<void>;
110
115
  declare const handlePluginCheckUpdates: (state: ServerState, id: string | number) => Promise<void>;
111
116
  export type { McpCallbacks, WireTabMapping, WirePluginTabInfo };
112
- export { sendToExtension, sendJsonRpcError, sendPluginManagementError, serializePluginForExtension, parsePluginTabInfo, parseTabMapping, VALID_LOG_LEVELS, handleTabSyncAll, handleTabStateChanged, handleConfigGetState, handleConfigSetToolEnabled, handleConfigSetAllToolsEnabled, handleConfigSetBrowserToolEnabled, handleConfigSetAllBrowserToolsEnabled, handlePluginSearch, handlePluginInstall, handlePluginUpdateFromRegistry, handlePluginRemove, handlePluginCheckUpdates, handleToolProgress, handlePluginLog, handleConfirmationResponse, rejectAllPendingConfirmations, };
117
+ export { buildConfigStatePayload, sendToExtension, sendJsonRpcError, sendPluginManagementError, serializePluginForExtension, parsePluginTabInfo, parseTabMapping, VALID_LOG_LEVELS, handleTabSyncAll, handleTabStateChanged, handleConfigGetState, handleConfigSetToolEnabled, handleConfigSetAllToolsEnabled, handleConfigSetBrowserToolEnabled, handleConfigSetAllBrowserToolsEnabled, handlePluginSearch, handlePluginInstall, handlePluginUpdateFromRegistry, handlePluginRemove, handlePluginCheckUpdates, handleToolProgress, handlePluginLog, handleConfirmationResponse, rejectAllPendingConfirmations, };
113
118
  //# sourceMappingURL=extension-handlers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extension-handlers.d.ts","sourceRoot":"","sources":["../src/extension-handlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extension-handlers.d.ts","sourceRoot":"","sources":["../src/extension-handlers.ts"],"names":[],"mappings":"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"}