@tencent-ai/agent-sdk 0.2.2 → 0.3.0

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 (43) hide show
  1. package/cli/CHANGELOG.md +18 -0
  2. package/cli/dist/codebuddy.js +3 -3
  3. package/cli/package.json +1 -1
  4. package/cli/product.cloudhosted.json +2 -2
  5. package/cli/product.internal.json +2 -2
  6. package/cli/product.ioa.json +2 -2
  7. package/cli/product.json +2 -2
  8. package/cli/product.selfhosted.json +2 -2
  9. package/lib/acp/index.d.ts +7 -11
  10. package/lib/acp/index.d.ts.map +1 -1
  11. package/lib/acp/index.js +7 -14
  12. package/lib/acp/index.js.map +1 -1
  13. package/lib/acp/tool-converter.d.ts +98 -53
  14. package/lib/acp/tool-converter.d.ts.map +1 -1
  15. package/lib/acp/tool-converter.js +574 -387
  16. package/lib/acp/tool-converter.js.map +1 -1
  17. package/lib/index.d.ts +0 -2
  18. package/lib/index.d.ts.map +1 -1
  19. package/lib/index.js +1 -4
  20. package/lib/index.js.map +1 -1
  21. package/lib/query.d.ts +0 -25
  22. package/lib/query.d.ts.map +1 -1
  23. package/lib/query.js +38 -167
  24. package/lib/query.js.map +1 -1
  25. package/lib/session.d.ts +17 -4
  26. package/lib/session.d.ts.map +1 -1
  27. package/lib/session.js +152 -14
  28. package/lib/session.js.map +1 -1
  29. package/lib/transport/index.d.ts +7 -0
  30. package/lib/transport/index.d.ts.map +1 -1
  31. package/lib/transport/index.js.map +1 -1
  32. package/lib/transport/process-transport.d.ts +30 -0
  33. package/lib/transport/process-transport.d.ts.map +1 -1
  34. package/lib/transport/process-transport.js +177 -1
  35. package/lib/transport/process-transport.js.map +1 -1
  36. package/lib/types.d.ts +36 -0
  37. package/lib/types.d.ts.map +1 -1
  38. package/lib/types.js.map +1 -1
  39. package/package.json +2 -1
  40. package/lib/acp/acp-client.d.ts +0 -62
  41. package/lib/acp/acp-client.d.ts.map +0 -1
  42. package/lib/acp/acp-client.js +0 -256
  43. package/lib/acp/acp-client.js.map +0 -1
package/lib/session.js CHANGED
@@ -13,6 +13,7 @@ const transport_1 = require("./transport");
13
13
  const connect_1 = require("./connect");
14
14
  const types_1 = require("./types");
15
15
  const errors_1 = require("./errors");
16
+ const tool_converter_1 = require("./acp/tool-converter");
16
17
  /**
17
18
  * Create a new session for multi-turn conversations.
18
19
  */
@@ -48,16 +49,30 @@ async function prompt(message, options) {
48
49
  */
49
50
  class SessionImpl {
50
51
  constructor(options, resumeSessionId) {
52
+ var _a, _b;
51
53
  this.options = options;
52
54
  this.initialized = false;
53
55
  this.closed = false;
54
56
  this.messageIterator = null;
55
57
  this.hookCallbacks = new Map();
56
58
  this.connectPromise = null;
57
- this.messageSent = false;
58
- this.historyRequested = false;
59
- this.resumeSessionId = resumeSessionId;
60
- // Build transport options
59
+ // Session lock tracking
60
+ this.lockedSessionId = null;
61
+ // Session lock for resume - prevent concurrent resume of same session
62
+ if (resumeSessionId) {
63
+ if (!(0, connect_1.acquireSessionLock)(resumeSessionId)) {
64
+ throw new Error(`Session ${resumeSessionId} is already in use`);
65
+ }
66
+ this.lockedSessionId = resumeSessionId;
67
+ }
68
+ // Validate sessionId format
69
+ if (options.sessionId) {
70
+ const sessionIdPattern = /^[a-zA-Z0-9][a-zA-Z0-9\-_:]*$/;
71
+ if (!sessionIdPattern.test(options.sessionId)) {
72
+ throw new Error(`Invalid session ID format: "${options.sessionId}". Session IDs support numbers, letters, hyphens, underscores, and colons, but must start with a letter or number.`);
73
+ }
74
+ }
75
+ // Build transport options (transport handles SDK MCP server extraction)
61
76
  const transportOptions = {
62
77
  executablePath: options.pathToCodebuddyCode,
63
78
  cwd: options.cwd,
@@ -65,6 +80,7 @@ class SessionImpl {
65
80
  model: options.model,
66
81
  mcpServers: options.mcpServers,
67
82
  strictMcpConfig: options.strictMcpConfig,
83
+ sessionId: options.sessionId,
68
84
  resume: resumeSessionId,
69
85
  // Tool options
70
86
  allowedTools: options.allowedTools,
@@ -98,8 +114,9 @@ class SessionImpl {
98
114
  // Ignore connection errors - they'll be reported when send/stream is called
99
115
  });
100
116
  }
101
- this._sessionId = resumeSessionId !== null && resumeSessionId !== void 0 ? resumeSessionId : '';
117
+ this._sessionId = (_a = resumeSessionId !== null && resumeSessionId !== void 0 ? resumeSessionId : options.sessionId) !== null && _a !== void 0 ? _a : '';
102
118
  this.abortController = new AbortController();
119
+ this._currentPermissionMode = (_b = options.permissionMode) !== null && _b !== void 0 ? _b : 'default';
103
120
  this.registerHooks(options.hooks);
104
121
  }
105
122
  /**
@@ -121,7 +138,6 @@ class SessionImpl {
121
138
  if (!this.initialized) {
122
139
  await this.initialize();
123
140
  }
124
- this.messageSent = true;
125
141
  this.transport.sendUserMessage(message);
126
142
  }
127
143
  /**
@@ -138,14 +154,9 @@ class SessionImpl {
138
154
  if (!this.initialized) {
139
155
  await this.initialize();
140
156
  }
141
- // In resume mode, if stream() is called without send() first,
142
- // send an empty message to trigger CLI to return history
143
- if (this.resumeSessionId && !this.messageSent && !this.historyRequested) {
144
- this.historyRequested = true;
145
- // Send empty message to signal "get history only" mode
146
- // CLI will detect empty prompt and call renderHistory()
147
- this.transport.sendUserMessage('');
148
- }
157
+ // Note: In resume mode, CLI automatically triggers history return
158
+ // when started with --resume flag (see cli-executor.ts:103-118)
159
+ // No need to send empty message from SDK side
149
160
  // Reuse the same iterator across multiple receive() calls
150
161
  if (!this.messageIterator) {
151
162
  this.messageIterator = this.transport.messages();
@@ -190,6 +201,11 @@ class SessionImpl {
190
201
  return;
191
202
  }
192
203
  this.closed = true;
204
+ // Release session lock if held
205
+ if (this.lockedSessionId) {
206
+ (0, connect_1.releaseSessionLock)(this.lockedSessionId);
207
+ this.lockedSessionId = null;
208
+ }
193
209
  this.transport.close();
194
210
  }
195
211
  /**
@@ -198,6 +214,31 @@ class SessionImpl {
198
214
  async [Symbol.asyncDispose]() {
199
215
  this.close();
200
216
  }
217
+ // ============= Permission Mode Methods =============
218
+ /**
219
+ * Set the permission mode for the session.
220
+ */
221
+ async setPermissionMode(mode) {
222
+ if (this.closed) {
223
+ throw new Error('Session is closed');
224
+ }
225
+ if (!this.initialized) {
226
+ await this.initialize();
227
+ }
228
+ const request = {
229
+ subtype: 'set_permission_mode',
230
+ session_id: this._sessionId || undefined,
231
+ mode,
232
+ };
233
+ await this.transport.sendControlRequest(request);
234
+ this._currentPermissionMode = mode;
235
+ }
236
+ /**
237
+ * Get the current permission mode of the session.
238
+ */
239
+ getPermissionMode() {
240
+ return this._currentPermissionMode;
241
+ }
201
242
  // ============= Connection Methods =============
202
243
  /**
203
244
  * Explicitly connect and initialize the session.
@@ -227,11 +268,15 @@ class SessionImpl {
227
268
  const appendSystemPrompt = typeof this.options.systemPrompt === 'object'
228
269
  ? this.options.systemPrompt.append
229
270
  : undefined;
271
+ // Get SDK MCP server names from transport
272
+ const sdkMcpServerNames = this.transport.sdkMcpServerNames;
230
273
  const initRequest = {
231
274
  subtype: 'initialize',
232
275
  hooks: this.buildHooksConfig(),
233
276
  systemPrompt,
234
277
  appendSystemPrompt,
278
+ // Include SDK MCP server names from transport
279
+ sdkMcpServers: sdkMcpServerNames.length > 0 ? sdkMcpServerNames : undefined,
235
280
  // Declare SDK capabilities for tool enablement
236
281
  capabilities: {
237
282
  // SDK supports handling AskUserQuestion via canUseTool callback
@@ -249,6 +294,7 @@ class SessionImpl {
249
294
  else if (subtype === 'can_use_tool') {
250
295
  await this.handlePermissionRequest(request);
251
296
  }
297
+ // Note: mcp_message is handled at the transport level
252
298
  }
253
299
  async handlePermissionRequest(request) {
254
300
  const permRequest = request.request;
@@ -350,6 +396,98 @@ class SessionImpl {
350
396
  }
351
397
  this.transport.sendControlResponse(request.request_id, response);
352
398
  }
399
+ // ============= ACP Support =============
400
+ /**
401
+ * Create an ACP (Agent Client Protocol) stream interface.
402
+ * Returns readable and writable streams compatible with official ACP SDK.
403
+ */
404
+ acpStream() {
405
+ // Use a reference to this for use in closures
406
+ const session = this;
407
+ const readable = new ReadableStream({
408
+ async start(controller) {
409
+ try {
410
+ if (!session.initialized) {
411
+ await session.initialize();
412
+ }
413
+ // Initialize message iterator immediately
414
+ if (!session.messageIterator) {
415
+ session.messageIterator = session.transport.messages();
416
+ }
417
+ // Start background message processing loop
418
+ (async () => {
419
+ try {
420
+ while (true) {
421
+ const { value: message, done } = await session.messageIterator.next();
422
+ if (done || session.closed) {
423
+ controller.close();
424
+ return;
425
+ }
426
+ // Handle control requests (don't enqueue, process internally)
427
+ if ((0, types_1.isControlRequest)(message)) {
428
+ await session.handleControlRequest(message);
429
+ continue; // Skip to next message
430
+ }
431
+ // Process and enqueue messages
432
+ if ((0, types_1.isMessage)(message)) {
433
+ // Convert SDK message to ACP format
434
+ const acpMessages = tool_converter_1.AcpTransformer.sdkToAcp(message);
435
+ for (const acpMessage of acpMessages) {
436
+ controller.enqueue(acpMessage);
437
+ }
438
+ }
439
+ }
440
+ }
441
+ catch (error) {
442
+ controller.error(error);
443
+ }
444
+ })();
445
+ }
446
+ catch (error) {
447
+ controller.error(error);
448
+ }
449
+ },
450
+ cancel() {
451
+ // Called when the readable stream is cancelled by the consumer
452
+ // The messageIterator will be cleaned up when session.close() is called
453
+ },
454
+ });
455
+ // Create writable stream for sending messages
456
+ const writable = new WritableStream({
457
+ write: async (acpMessage) => {
458
+ if (this.closed) {
459
+ throw new Error('Session is closed');
460
+ }
461
+ // Convert ACP message to SDK format
462
+ let sdkMessage = tool_converter_1.AcpTransformer.acpToSdk(acpMessage);
463
+ // Override sessionId with this session's ID
464
+ if (sdkMessage && 'type' in sdkMessage && sdkMessage.type === 'user') {
465
+ const userMsg = sdkMessage;
466
+ userMsg.session_id = this._sessionId || 'unknown';
467
+ sdkMessage = userMsg;
468
+ }
469
+ if (sdkMessage) {
470
+ if (!this.initialized) {
471
+ await this.initialize();
472
+ }
473
+ if ('type' in sdkMessage && sdkMessage.type === 'user') {
474
+ this.transport.sendUserMessage(sdkMessage);
475
+ }
476
+ else if ('type' in sdkMessage && sdkMessage.type === 'control_request') {
477
+ const controlRequest = sdkMessage;
478
+ this.transport.sendControlRequestNoWait(controlRequest.request);
479
+ }
480
+ }
481
+ },
482
+ close: () => {
483
+ // Don't close the session when writable stream closes
484
+ },
485
+ abort: () => {
486
+ this.close();
487
+ },
488
+ });
489
+ return { readable, writable };
490
+ }
353
491
  }
354
492
  exports.SessionImpl = SessionImpl;
355
493
  //# sourceMappingURL=session.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AA0BH,sCAEC;AAKD,sCAEC;AAKD,wBAmBC;AAzDD,2CAA4F;AAC5F,uCAAkD;AAiBlD,mCAAsD;AACtD,qCAA0C;AAE1C;;GAEG;AACH,SAAgB,aAAa,CAAC,OAAuB;IACjD,OAAO,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAC,SAAiB,EAAE,OAAuB;IACpE,OAAO,IAAI,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;AAC/C,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,MAAM,CACxB,OAAe,EACf,OAAuB;IAEvB,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IAEvC,IAAI,CAAC;QACD,MAAM,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE5B,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YACvC,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACxB,OAAO,GAAG,CAAC;YACf,CAAC;QACL,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAClD,CAAC;YAAS,CAAC;QACP,OAAO,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAa,WAAW;IAgBpB,YACY,OAAuB,EAC/B,eAAwB;QADhB,YAAO,GAAP,OAAO,CAAgB;QAd3B,gBAAW,GAAG,KAAK,CAAC;QACpB,WAAM,GAAG,KAAK,CAAC;QACf,oBAAe,GAAmE,IAAI,CAAC;QAEvF,kBAAa,GAAgI,IAAI,GAAG,EAAE,CAAC;QAEvJ,mBAAc,GAAyB,IAAI,CAAC;QAI5C,gBAAW,GAAG,KAAK,CAAC;QACpB,qBAAgB,GAAG,KAAK,CAAC;QAM7B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,0BAA0B;QAC1B,MAAM,gBAAgB,GAA4B;YAC9C,cAAc,EAAE,OAAO,CAAC,mBAAmB;YAC3C,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,MAAM,EAAE,eAAe;YACvB,eAAe;YACf,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,kBAAkB;YAClB,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,YAAY;YACZ,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC7B,CAAC;QAEF,yCAAyC;QACzC,MAAM,SAAS,GAAG,IAAA,+BAAqB,EAAC;YACpC,cAAc,EAAE,OAAO,CAAC,mBAAmB;YAC3C,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,KAAK,EAAE,OAAO,CAAC,KAAK;SACvB,CAAC,CAAC;QAEH,IAAI,SAAS,EAAE,CAAC;YACZ,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;YACrC,2CAA2C;YAC3C,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;YACxC,kEAAkE;YAClE,IAAI,SAAS,CAAC,cAAc,EAAE,CAAC;gBAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YAC5B,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,SAAS,GAAG,IAAA,2BAAe,EAAC,gBAAgB,CAAC,CAAC;YACnD,6DAA6D;YAC7D,6CAA6C;YAC7C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;gBACtD,4EAA4E;YAChF,CAAC,CAAC,CAAC;QACP,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,EAAE,CAAC;QACxC,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QAC7C,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QACT,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,oFAAoF,CAAC,CAAC;QAC1G,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,OAA6B;QACpC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACzC,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACpB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC5B,CAAC;QAED,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,CAAC,MAAM;QACT,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,OAAO;QACX,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACpB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC5B,CAAC;QAED,8DAA8D;QAC9D,yDAAyD;QACzD,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC7B,uDAAuD;YACvD,wDAAwD;YACxD,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACvC,CAAC;QAED,0DAA0D;QAC1D,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YACxB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QACrD,CAAC;QAED,OAAO,IAAI,EAAE,CAAC;YACV,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;YAEnE,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBACtB,MAAM;YACV,CAAC;YAED,0BAA0B;YAC1B,IAAI,IAAA,wBAAgB,EAAC,OAAO,CAAC,EAAE,CAAC;gBAC5B,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAyB,CAAC,CAAC;gBAC3D,SAAS;YACb,CAAC;YAED,iBAAiB;YACjB,IAAI,IAAA,iBAAS,EAAC,OAAO,CAAC,EAAE,CAAC;gBACrB,wCAAwC;gBACxC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,YAAY,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;oBACpE,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;gBACzC,CAAC;gBAED,4CAA4C;gBAC5C,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC5B,IAAI,OAAO,CAAC,QAAQ,IAAI,QAAQ,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACzF,MAAM,IAAI,uBAAc,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;oBAC9D,CAAC;oBACD,MAAM,OAAO,CAAC;oBACd,MAAM;gBACV,CAAC;gBAED,MAAM,OAAO,CAAC;gBAEd,sCAAsC;gBACtC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC3B,MAAM;gBACV,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK;QACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,OAAO;QACX,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;QACvB,IAAI,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;IAED,iDAAiD;IAEjD;;;;;;;OAOG;IACH,KAAK,CAAC,OAAO;QACT,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QAC/B,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;IAC5B,CAAC;IAED,8CAA8C;IAEtC,KAAK,CAAC,UAAU;QACpB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,OAAO;QACX,CAAC;QAED,mDAAmD;QACnD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,MAAM,IAAI,CAAC,cAAc,CAAC;QAC9B,CAAC;QAED,6BAA6B;QAC7B,MAAM,YAAY,GAAG,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,KAAK,QAAQ;YAC9D,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY;YAC3B,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,kBAAkB,GAAG,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,KAAK,QAAQ;YACpE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM;YAClC,CAAC,CAAC,SAAS,CAAC;QAEhB,MAAM,WAAW,GAA6B;YAC1C,OAAO,EAAE,YAAY;YACrB,KAAK,EAAE,IAAI,CAAC,gBAAgB,EAAE;YAC9B,YAAY;YACZ,kBAAkB;YAClB,+CAA+C;YAC/C,YAAY,EAAE;gBACV,gEAAgE;gBAChE,eAAe,EAAE,IAAI;aACxB;SACJ,CAAC;QAEF,MAAM,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;QAErD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC5B,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,OAAuB;QACtD,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;QAEpC,IAAI,OAAO,KAAK,eAAe,EAAE,CAAC;YAC9B,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAC3C,CAAC;aAAM,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;QAChD,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,uBAAuB,CAAC,OAAuB;QACzD,MAAM,WAAW,GAAG,OAAO,CAAC,OAAmC,CAAC;QAChE,MAAM,EACF,SAAS,EACT,KAAK,EACL,WAAW,EACX,QAAQ,EACR,sBAAsB,EACtB,YAAY,EACZ,eAAe,GAClB,GAAG,WAAW,CAAC;QAEhB,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;QAE3C,sDAAsD;QACtD,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,UAAU,EAAE;gBACnD,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,gCAAgC;gBACxC,WAAW;aACd,CAAC,CAAC;YACH,OAAO;QACX,CAAC;QAED,IAAI,CAAC;YACD,MAAM,MAAM,GAAqB,MAAM,UAAU,CAC7C,SAAS,EACT,KAAK,EACL;gBACI,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM;gBACnC,WAAW,EAAE,sBAAwD;gBACrE,WAAW,EAAE,YAAY;gBACzB,cAAc,EAAE,eAAe;gBAC/B,SAAS,EAAE,WAAW;gBACtB,OAAO,EAAE,QAAQ;aACpB,CACJ,CAAC;YAEF,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;gBAC9B,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,UAAU,EAAE;oBACnD,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,MAAM,CAAC,YAAY;oBACjC,WAAW;iBACd,CAAC,CAAC;YACP,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,UAAU,EAAE;oBACnD,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,MAAM,CAAC,OAAO;oBACtB,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,WAAW;iBACd,CAAC,CAAC;YACP,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,UAAU,EAAE;gBACnD,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC9D,WAAW;aACd,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED,2CAA2C;IAEnC,aAAa,CACjB,KAAyD;QAEzD,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAO;QACX,CAAC;QAED,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAE7B,wEAAwE;QACxE,KAAK,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACpD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACZ,SAAS;YACb,CAAC;YAED,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE;gBACvC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE;oBACtC,MAAM,UAAU,GAAG,QAAQ,KAAK,IAAI,YAAY,IAAI,SAAS,EAAE,CAAC;oBAChE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;gBAC7C,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAEO,gBAAgB;QACpB,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YACxB,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,MAAM,MAAM,GAAsC,EAAE,CAAC;QAErD,KAAK,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YACnE,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACZ,SAAS;YACb,CAAC;YAED,MAAM,SAAS,GAAG,KAAkB,CAAC;YACrC,MAAM,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;gBACzD,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,eAAe,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,CAChD,QAAQ,KAAK,IAAI,YAAY,IAAI,SAAS,EAAE,CAC/C;gBACD,OAAO,EAAE,OAAO,CAAC,OAAO;aAC3B,CAAC,CAAC,CAAC;QACR,CAAC;QAED,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/D,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,OAAuB;QACpD,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,OAAqC,CAAC;QAC1F,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAErD,IAAI,QAAQ,GAAmB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAElD,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,CAAC;gBACD,QAAQ,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC;YAC3F,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,QAAQ,GAAG;oBACP,QAAQ,EAAE,KAAK;oBACf,UAAU,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBACrE,CAAC;YACN,CAAC;QACL,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,UAAU,EAAE,QAAmC,CAAC,CAAC;IAChG,CAAC;CACJ;AAxXD,kCAwXC"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
@@ -53,6 +53,11 @@ export interface Transport {
53
53
  * Close the transport.
54
54
  */
55
55
  close(): void;
56
+ /**
57
+ * Get the list of SDK MCP server names.
58
+ * Used by Query/Session to include in initialize request.
59
+ */
60
+ readonly sdkMcpServerNames: string[];
56
61
  }
57
62
  /**
58
63
  * Options for creating transports.
@@ -96,6 +101,8 @@ export interface ProcessTransportOptions extends TransportOptions {
96
101
  settingSources?: string[];
97
102
  /** Continue conversation (--continue) */
98
103
  continue?: boolean;
104
+ /** Custom session ID (--session-id) */
105
+ sessionId?: string;
99
106
  /** Resume session ID (--resume) */
100
107
  resume?: string;
101
108
  /** Fork session (--fork-session) */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transport/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transport/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transport/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAyIH,0CAEC;AAnID,2DAAuD;AA8HvD;;GAEG;AACH,SAAgB,eAAe,CAAC,UAAmC,EAAE;IACjE,OAAO,IAAI,oCAAgB,CAAC,OAAO,CAAC,CAAC;AACzC,CAAC;AAED,6BAA6B;AAC7B,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transport/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAiJH,0CAEC;AA3ID,2DAAuD;AAsIvD;;GAEG;AACH,SAAgB,eAAe,CAAC,UAAmC,EAAE;IACjE,OAAO,IAAI,oCAAgB,CAAC,OAAO,CAAC,CAAC;AACzC,CAAC;AAED,6BAA6B;AAC7B,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA"}
@@ -17,7 +17,16 @@ export declare class ProcessTransport implements Transport {
17
17
  private requestIdCounter;
18
18
  private closed;
19
19
  private connectPromise;
20
+ private sdkMcpTransports;
21
+ private sdkMcpServerInstances;
22
+ private pendingMcpResponses;
23
+ private _sdkMcpServerNames;
20
24
  constructor(options?: ProcessTransportOptions);
25
+ /**
26
+ * Get the list of SDK MCP server names.
27
+ * Used by Query/Session to include in initialize request.
28
+ */
29
+ get sdkMcpServerNames(): string[];
21
30
  /**
22
31
  * Connect the transport - start CLI process in advance.
23
32
  * This allows reducing latency for the first message by
@@ -75,5 +84,26 @@ export declare class ProcessTransport implements Transport {
75
84
  private handleProcessError;
76
85
  private handleProcessExit;
77
86
  private writeLine;
87
+ /**
88
+ * Extract SDK MCP servers from the mcpServers config.
89
+ * SDK servers are identified by having type: 'sdk'.
90
+ */
91
+ private extractMcpServers;
92
+ /**
93
+ * Connect an SDK MCP server.
94
+ */
95
+ private connectSdkMcpServer;
96
+ /**
97
+ * Send an MCP message from server to CLI.
98
+ */
99
+ private sendMcpServerMessageToCli;
100
+ /**
101
+ * Handle MCP message control request from CLI.
102
+ */
103
+ private handleMcpMessageRequest;
104
+ /**
105
+ * Handle MCP request and wait for response from MCP server.
106
+ */
107
+ private handleMcpControlRequest;
78
108
  }
79
109
  //# sourceMappingURL=process-transport.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"process-transport.d.ts","sourceRoot":"","sources":["../../src/transport/process-transport.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,KAAK,EACR,OAAO,EACP,WAAW,EACX,cAAc,EACd,qBAAqB,EAGxB,MAAM,UAAU,CAAC;AAoBlB;;GAEG;AACH,qBAAa,gBAAiB,YAAW,SAAS;IAC9C,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,EAAE,CAAmC;IAC7C,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,aAAa,CAAiD;IACtE,OAAO,CAAC,eAAe,CAA6C;IACpE,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,cAAc,CAA8B;gBAExC,OAAO,GAAE,uBAA4B;IAIjD;;;;;;OAMG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAoC9B;;;OAGG;IACH,OAAO,CAAC,SAAS;IA+GjB;;OAEG;IACH,KAAK,IAAI,IAAI;IAsEb;;OAEG;IACI,QAAQ,IAAI,cAAc,CAAC,OAAO,GAAG,cAAc,EAAE,IAAI,EAAE,OAAO,CAAC;IAU1E;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAuBpD;;OAEG;IACG,kBAAkB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChD,OAAO,EAAE,qBAAqB,EAC9B,SAAS,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,CAAC,CAAC;IAgCb;;;OAGG;IACH,wBAAwB,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI;IAgB9D;;OAEG;IACH,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAY/E;;OAEG;IACH,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAYhE;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,KAAK,IAAI,IAAI;IA+Bb,OAAO,CAAC,UAAU;IAwBlB,OAAO,CAAC,qBAAqB;IAiB7B,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,SAAS;CAOpB"}
1
+ {"version":3,"file":"process-transport.d.ts","sourceRoot":"","sources":["../../src/transport/process-transport.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,KAAK,EACR,OAAO,EACP,WAAW,EACX,cAAc,EACd,qBAAqB,EAKxB,MAAM,UAAU,CAAC;AA+BlB;;GAEG;AACH,qBAAa,gBAAiB,YAAW,SAAS;IAC9C,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,EAAE,CAAmC;IAC7C,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,aAAa,CAAiD;IACtE,OAAO,CAAC,eAAe,CAA6C;IACpE,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,cAAc,CAA8B;IAGpD,OAAO,CAAC,gBAAgB,CAAqD;IAC7E,OAAO,CAAC,qBAAqB,CAAqC;IAClE,OAAO,CAAC,mBAAmB,CAA8C;IACzE,OAAO,CAAC,kBAAkB,CAAgB;gBAE9B,OAAO,GAAE,uBAA4B;IAkBjD;;;OAGG;IACH,IAAI,iBAAiB,IAAI,MAAM,EAAE,CAEhC;IAED;;;;;;OAMG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAoC9B;;;OAGG;IACH,OAAO,CAAC,SAAS;IAkHjB;;OAEG;IACH,KAAK,IAAI,IAAI;IAsEb;;OAEG;IACI,QAAQ,IAAI,cAAc,CAAC,OAAO,GAAG,cAAc,EAAE,IAAI,EAAE,OAAO,CAAC;IAU1E;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAuBpD;;OAEG;IACG,kBAAkB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChD,OAAO,EAAE,qBAAqB,EAC9B,SAAS,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,CAAC,CAAC;IAgCb;;;OAGG;IACH,wBAAwB,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI;IAgB9D;;OAEG;IACH,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAY/E;;OAEG;IACH,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAYhE;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,KAAK,IAAI,IAAI;IA6Cb,OAAO,CAAC,UAAU;IAiClB,OAAO,CAAC,qBAAqB;IAiB7B,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,SAAS;IAUjB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IA6BzB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAc3B;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAgCjC;;OAEG;YACW,uBAAuB;IAyCrC;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAiClC"}
@@ -42,6 +42,7 @@ exports.ProcessTransport = void 0;
42
42
  const readline = __importStar(require("node:readline"));
43
43
  const node_child_process_1 = require("node:child_process");
44
44
  const utils_1 = require("../utils");
45
+ const sdk_control_server_transport_1 = require("../mcp/sdk-control-server-transport");
45
46
  function createDeferred() {
46
47
  let resolve;
47
48
  let reject;
@@ -63,7 +64,29 @@ class ProcessTransport {
63
64
  this.requestIdCounter = 0;
64
65
  this.closed = false;
65
66
  this.connectPromise = null;
66
- this.options = options;
67
+ // SDK MCP Server management
68
+ this.sdkMcpTransports = new Map();
69
+ this.sdkMcpServerInstances = new Map();
70
+ this.pendingMcpResponses = new Map();
71
+ this._sdkMcpServerNames = [];
72
+ // Extract SDK MCP servers from mcpServers config
73
+ const { sdkServers, regularServers } = this.extractMcpServers(options.mcpServers);
74
+ // Store options with regularServers (SDK servers handled separately)
75
+ this.options = {
76
+ ...options,
77
+ mcpServers: regularServers,
78
+ };
79
+ // Connect SDK MCP servers
80
+ for (const [name, server] of sdkServers) {
81
+ this.connectSdkMcpServer(name, server);
82
+ }
83
+ }
84
+ /**
85
+ * Get the list of SDK MCP server names.
86
+ * Used by Query/Session to include in initialize request.
87
+ */
88
+ get sdkMcpServerNames() {
89
+ return this._sdkMcpServerNames;
67
90
  }
68
91
  /**
69
92
  * Connect the transport - start CLI process in advance.
@@ -145,6 +168,9 @@ class ProcessTransport {
145
168
  args.push('--disallowedTools', opts.disallowedTools.join(','));
146
169
  }
147
170
  // Session options
171
+ if (opts.sessionId) {
172
+ args.push('--session-id', opts.sessionId);
173
+ }
148
174
  if (opts.continue) {
149
175
  args.push('--continue');
150
176
  }
@@ -404,6 +430,18 @@ class ProcessTransport {
404
430
  deferred.reject(new Error('Transport closed'));
405
431
  }
406
432
  this.pendingRequests.clear();
433
+ // Clean up SDK MCP resources
434
+ for (const [, pending] of this.pendingMcpResponses) {
435
+ pending.reject(new Error('Transport closed'));
436
+ }
437
+ this.pendingMcpResponses.clear();
438
+ for (const transport of this.sdkMcpTransports.values()) {
439
+ transport.close().catch(() => {
440
+ // Ignore errors during cleanup
441
+ });
442
+ }
443
+ this.sdkMcpTransports.clear();
444
+ this.sdkMcpServerInstances.clear();
407
445
  // Signal stream completion
408
446
  if (this.messageStream) {
409
447
  this.messageStream.done();
@@ -422,6 +460,14 @@ class ProcessTransport {
422
460
  this.handleControlResponse(message);
423
461
  return;
424
462
  }
463
+ // Handle mcp_message control requests internally (SDK MCP servers)
464
+ if (message.type === 'control_request') {
465
+ const controlRequest = message;
466
+ if (controlRequest.request.subtype === 'mcp_message') {
467
+ this.handleMcpMessageRequest(controlRequest);
468
+ return;
469
+ }
470
+ }
425
471
  // Enqueue messages and control requests for iteration
426
472
  if (this.messageStream) {
427
473
  this.messageStream.enqueue(message);
@@ -466,6 +512,136 @@ class ProcessTransport {
466
512
  const line = JSON.stringify(data) + '\n';
467
513
  this.process.stdin.write(line);
468
514
  }
515
+ // ============= SDK MCP Server Methods =============
516
+ /**
517
+ * Extract SDK MCP servers from the mcpServers config.
518
+ * SDK servers are identified by having type: 'sdk'.
519
+ */
520
+ extractMcpServers(mcpServers) {
521
+ if (!mcpServers) {
522
+ return { sdkServers: new Map(), regularServers: undefined };
523
+ }
524
+ const sdkServers = new Map();
525
+ const regularServers = {};
526
+ for (const [name, config] of Object.entries(mcpServers)) {
527
+ if (config && typeof config === 'object' && 'type' in config && config.type === 'sdk') {
528
+ // SDK MCP server
529
+ const sdkConfig = config;
530
+ sdkServers.set(name, sdkConfig.instance);
531
+ this._sdkMcpServerNames.push(name);
532
+ }
533
+ else {
534
+ // Regular MCP server (stdio, sse, http)
535
+ regularServers[name] = config;
536
+ }
537
+ }
538
+ return {
539
+ sdkServers,
540
+ regularServers: Object.keys(regularServers).length > 0 ? regularServers : undefined,
541
+ };
542
+ }
543
+ /**
544
+ * Connect an SDK MCP server.
545
+ */
546
+ connectSdkMcpServer(name, server) {
547
+ // Create custom transport that forwards to CLI
548
+ const sdkTransport = new sdk_control_server_transport_1.SdkControlServerTransport((message) => this.sendMcpServerMessageToCli(name, message));
549
+ // Store transport and server instance
550
+ this.sdkMcpTransports.set(name, sdkTransport);
551
+ this.sdkMcpServerInstances.set(name, server);
552
+ // Connect server to transport
553
+ server.connect(sdkTransport);
554
+ }
555
+ /**
556
+ * Send an MCP message from server to CLI.
557
+ */
558
+ sendMcpServerMessageToCli(serverName, message) {
559
+ // Check if this is a response to a pending request
560
+ if ('id' in message && message.id !== null && message.id !== undefined) {
561
+ const key = `${serverName}:${message.id}`;
562
+ const pending = this.pendingMcpResponses.get(key);
563
+ if (pending) {
564
+ // Resolve pending promise directly
565
+ pending.resolve(message);
566
+ this.pendingMcpResponses.delete(key);
567
+ return;
568
+ }
569
+ }
570
+ // Send as control_request to CLI
571
+ const requestId = `mcp_${Date.now()}_${Math.random().toString(36).slice(2, 11)}`;
572
+ const controlRequest = {
573
+ type: 'control_request',
574
+ request_id: requestId,
575
+ request: {
576
+ subtype: 'mcp_message',
577
+ server_name: serverName,
578
+ message,
579
+ },
580
+ };
581
+ // Write directly to transport (will be JSON.stringify'd by transport)
582
+ this.sendControlRequest(controlRequest.request).catch(() => {
583
+ // Ignore errors for notifications
584
+ });
585
+ }
586
+ /**
587
+ * Handle MCP message control request from CLI.
588
+ */
589
+ async handleMcpMessageRequest(request) {
590
+ const mcpRequest = request.request;
591
+ const { server_name, message } = mcpRequest;
592
+ const transport = this.sdkMcpTransports.get(server_name);
593
+ if (!transport) {
594
+ this.sendControlErrorResponse(request.request_id, `SDK MCP server not found: ${server_name}`);
595
+ return;
596
+ }
597
+ try {
598
+ // Check if this is a request (has method and id) or a notification
599
+ if ('method' in message && 'id' in message && message.id !== null) {
600
+ // Wait for response from MCP server
601
+ const response = await this.handleMcpControlRequest(server_name, message, transport);
602
+ this.sendControlResponse(request.request_id, {
603
+ mcp_response: response,
604
+ });
605
+ }
606
+ else {
607
+ // Notification - no response expected
608
+ transport.handleIncomingMessage(message);
609
+ this.sendControlResponse(request.request_id, {
610
+ mcp_response: { jsonrpc: '2.0', result: {}, id: 0 },
611
+ });
612
+ }
613
+ }
614
+ catch (error) {
615
+ this.sendControlErrorResponse(request.request_id, error instanceof Error ? error.message : String(error));
616
+ }
617
+ }
618
+ /**
619
+ * Handle MCP request and wait for response from MCP server.
620
+ */
621
+ handleMcpControlRequest(serverName, message, transport) {
622
+ const messageId = 'id' in message ? message.id : null;
623
+ const key = `${serverName}:${messageId}`;
624
+ return new Promise((resolve, reject) => {
625
+ const cleanup = () => {
626
+ this.pendingMcpResponses.delete(key);
627
+ };
628
+ const resolveAndCleanup = (response) => {
629
+ cleanup();
630
+ resolve(response);
631
+ };
632
+ const rejectAndCleanup = (error) => {
633
+ cleanup();
634
+ reject(error);
635
+ };
636
+ // Store pending response handler
637
+ this.pendingMcpResponses.set(key, {
638
+ resolve: resolveAndCleanup,
639
+ reject: rejectAndCleanup,
640
+ });
641
+ // Forward message to MCP server
642
+ transport.handleIncomingMessage(message);
643
+ });
644
+ }
469
645
  }
470
646
  exports.ProcessTransport = ProcessTransport;
471
647
  //# sourceMappingURL=process-transport.js.map