@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.
- package/cli/CHANGELOG.md +18 -0
- package/cli/dist/codebuddy.js +3 -3
- package/cli/package.json +1 -1
- package/cli/product.cloudhosted.json +2 -2
- package/cli/product.internal.json +2 -2
- package/cli/product.ioa.json +2 -2
- package/cli/product.json +2 -2
- package/cli/product.selfhosted.json +2 -2
- package/lib/acp/index.d.ts +7 -11
- package/lib/acp/index.d.ts.map +1 -1
- package/lib/acp/index.js +7 -14
- package/lib/acp/index.js.map +1 -1
- package/lib/acp/tool-converter.d.ts +98 -53
- package/lib/acp/tool-converter.d.ts.map +1 -1
- package/lib/acp/tool-converter.js +574 -387
- package/lib/acp/tool-converter.js.map +1 -1
- package/lib/index.d.ts +0 -2
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -4
- package/lib/index.js.map +1 -1
- package/lib/query.d.ts +0 -25
- package/lib/query.d.ts.map +1 -1
- package/lib/query.js +38 -167
- package/lib/query.js.map +1 -1
- package/lib/session.d.ts +17 -4
- package/lib/session.d.ts.map +1 -1
- package/lib/session.js +152 -14
- package/lib/session.js.map +1 -1
- package/lib/transport/index.d.ts +7 -0
- package/lib/transport/index.d.ts.map +1 -1
- package/lib/transport/index.js.map +1 -1
- package/lib/transport/process-transport.d.ts +30 -0
- package/lib/transport/process-transport.d.ts.map +1 -1
- package/lib/transport/process-transport.js +177 -1
- package/lib/transport/process-transport.js.map +1 -1
- package/lib/types.d.ts +36 -0
- package/lib/types.d.ts.map +1 -1
- package/lib/types.js.map +1 -1
- package/package.json +2 -1
- package/lib/acp/acp-client.d.ts +0 -62
- package/lib/acp/acp-client.d.ts.map +0 -1
- package/lib/acp/acp-client.js +0 -256
- 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
|
-
|
|
58
|
-
this.
|
|
59
|
-
|
|
60
|
-
|
|
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,
|
|
142
|
-
//
|
|
143
|
-
|
|
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
|
package/lib/session.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
|
package/lib/transport/index.d.ts
CHANGED
|
@@ -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":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACR,OAAO,EACP,WAAW,EACX,cAAc,EACd,qBAAqB,EACxB,MAAM,UAAU,CAAC;AAGlB;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB;;OAEG;IACH,KAAK,IAAI,IAAI,CAAC;IAEd;;;;;;OAMG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzB;;OAEG;IACH,QAAQ,IAAI,cAAc,CAAC,OAAO,GAAG,cAAc,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAEpE;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAAC;IAErD;;OAEG;IACH,kBAAkB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC1C,OAAO,EAAE,qBAAqB,EAC9B,SAAS,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,CAAC,CAAC,CAAC;IAEd;;;OAGG;IACH,wBAAwB,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAE/D;;OAEG;IACH,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAEhF;;OAEG;IACH,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjE;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC;IAEnB;;OAEG;IACH,KAAK,IAAI,IAAI,CAAC;
|
|
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;;;
|
|
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,
|
|
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
|
-
|
|
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
|