@tencent-ai/agent-sdk 0.3.237-dev.cd99b52.202608040127 → 0.3.237-dev.fc41ac4.202608061734

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 (75) hide show
  1. package/cli/dist/codebuddy-headless.js +393 -417
  2. package/cli/package.json +4 -4
  3. package/cli/product.cloudhosted.json +6 -7
  4. package/cli/product.internal.json +6 -7
  5. package/cli/product.ioa.json +6 -7
  6. package/cli/product.json +10 -10
  7. package/cli/product.selfhosted.json +4 -5
  8. package/lib/_internal/query-controller.d.ts +2 -55
  9. package/lib/_internal/query-controller.d.ts.map +1 -1
  10. package/lib/_internal/query-controller.js +2 -478
  11. package/lib/_internal/query-controller.js.map +1 -1
  12. package/lib/index.d.ts +1 -17
  13. package/lib/index.d.ts.map +1 -1
  14. package/lib/index.js +1 -18
  15. package/lib/index.js.map +1 -1
  16. package/lib/mcp/index.d.ts +0 -4
  17. package/lib/mcp/index.d.ts.map +1 -1
  18. package/lib/mcp/index.js +1 -8
  19. package/lib/mcp/index.js.map +1 -1
  20. package/lib/query.d.ts +1 -14
  21. package/lib/query.d.ts.map +1 -1
  22. package/lib/query.js +28 -335
  23. package/lib/query.js.map +1 -1
  24. package/lib/session.d.ts +1 -8
  25. package/lib/session.d.ts.map +1 -1
  26. package/lib/session.js +11 -147
  27. package/lib/session.js.map +1 -1
  28. package/lib/transport/index.d.ts +3 -59
  29. package/lib/transport/index.d.ts.map +1 -1
  30. package/lib/transport/index.js.map +1 -1
  31. package/lib/transport/process-transport.d.ts +4 -81
  32. package/lib/transport/process-transport.d.ts.map +1 -1
  33. package/lib/transport/process-transport.js +15 -304
  34. package/lib/transport/process-transport.js.map +1 -1
  35. package/lib/types.d.ts +6 -805
  36. package/lib/types.d.ts.map +1 -1
  37. package/lib/types.js +1 -16
  38. package/lib/types.js.map +1 -1
  39. package/package.json +1 -1
  40. package/lib/_internal/boundary-invariants.d.ts +0 -24
  41. package/lib/_internal/boundary-invariants.d.ts.map +0 -1
  42. package/lib/_internal/boundary-invariants.js +0 -39
  43. package/lib/_internal/boundary-invariants.js.map +0 -1
  44. package/lib/_internal/remote-extensions-options.d.ts +0 -3
  45. package/lib/_internal/remote-extensions-options.d.ts.map +0 -1
  46. package/lib/_internal/remote-extensions-options.js +0 -37
  47. package/lib/_internal/remote-extensions-options.js.map +0 -1
  48. package/lib/_internal/session-mirror.d.ts +0 -53
  49. package/lib/_internal/session-mirror.d.ts.map +0 -1
  50. package/lib/_internal/session-mirror.js +0 -156
  51. package/lib/_internal/session-mirror.js.map +0 -1
  52. package/lib/_internal/session-store-runtime.d.ts +0 -52
  53. package/lib/_internal/session-store-runtime.d.ts.map +0 -1
  54. package/lib/_internal/session-store-runtime.js +0 -283
  55. package/lib/_internal/session-store-runtime.js.map +0 -1
  56. package/lib/in-memory-session-store.d.ts +0 -31
  57. package/lib/in-memory-session-store.d.ts.map +0 -1
  58. package/lib/in-memory-session-store.js +0 -127
  59. package/lib/in-memory-session-store.js.map +0 -1
  60. package/lib/mcp/delegated-redaction.d.ts +0 -47
  61. package/lib/mcp/delegated-redaction.d.ts.map +0 -1
  62. package/lib/mcp/delegated-redaction.js +0 -362
  63. package/lib/mcp/delegated-redaction.js.map +0 -1
  64. package/lib/mcp/managed-remote-mcp-bridge.d.ts +0 -49
  65. package/lib/mcp/managed-remote-mcp-bridge.d.ts.map +0 -1
  66. package/lib/mcp/managed-remote-mcp-bridge.js +0 -303
  67. package/lib/mcp/managed-remote-mcp-bridge.js.map +0 -1
  68. package/lib/remote-error-codes.d.ts +0 -8
  69. package/lib/remote-error-codes.d.ts.map +0 -1
  70. package/lib/remote-error-codes.js +0 -23
  71. package/lib/remote-error-codes.js.map +0 -1
  72. package/lib/session-store-protocol.d.ts +0 -19
  73. package/lib/session-store-protocol.d.ts.map +0 -1
  74. package/lib/session-store-protocol.js +0 -125
  75. package/lib/session-store-protocol.js.map +0 -1
@@ -41,10 +41,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
41
41
  exports.ProcessTransport = void 0;
42
42
  const node_child_process_1 = require("node:child_process");
43
43
  const readline = __importStar(require("node:readline"));
44
- const delegated_redaction_1 = require("../mcp/delegated-redaction");
45
- const managed_remote_mcp_bridge_1 = require("../mcp/managed-remote-mcp-bridge");
46
44
  const sdk_control_server_transport_1 = require("../mcp/sdk-control-server-transport");
47
- const remote_error_codes_1 = require("../remote-error-codes");
48
45
  const utils_1 = require("../utils");
49
46
  const version_1 = require("../version");
50
47
  function createDeferred() {
@@ -56,12 +53,6 @@ function createDeferred() {
56
53
  });
57
54
  return { promise, resolve, reject };
58
55
  }
59
- const ERROR_TERMINAL_CAUSES = new Set([
60
- 'processExitNonZero',
61
- 'processExitZeroBeforeResult',
62
- 'stdoutClosedUnexpectedly',
63
- 'spawnError',
64
- ]);
65
56
  /**
66
57
  * Resolve the runtime configuration for spawning CLI process.
67
58
  *
@@ -130,9 +121,6 @@ class ProcessTransport {
130
121
  this._stderrBuffer = '';
131
122
  this.readyPromise = null;
132
123
  this._isCliReady = false;
133
- this._sawRunStarted = false;
134
- this._sawResult = false;
135
- this._sawError = false;
136
124
  // Write queue for backpressure handling
137
125
  this._writeQueue = [];
138
126
  this._draining = false;
@@ -141,8 +129,6 @@ class ProcessTransport {
141
129
  this.sdkMcpServerInstances = new Map();
142
130
  this.pendingMcpResponses = new Map();
143
131
  this._sdkMcpServerNames = [];
144
- // 已注册的委托 server scoped key 集合,供 close 时统一注销,避免残留 pending / transport。
145
- this.registeredDelegatedScopedKeys = new Set();
146
132
  // Cached CLI version for UserAgent
147
133
  this._cliVersion = null;
148
134
  // Notification handlers by channel
@@ -164,17 +150,6 @@ class ProcessTransport {
164
150
  this.connectSdkMcpServer(name, server);
165
151
  }
166
152
  }
167
- // 接线 host-driven 委托 bridge:descriptor + transport 工厂齐备时,构造期即注册
168
- // scoped key → descriptor 到 ManagedRemoteMcpBridge。bridge 不会主动建 transport,
169
- // 真实 transport 在第一次 mcp_message 到达时按需懒建。
170
- // 缺 mcpTransportFactory 时只跳过注册(CLI 会因 bridge 未命中显式 fail-closed)。
171
- if (this.options.delegatedMcpServers && this.options.delegatedMcpServers.length > 0 && this.options.mcpTransportFactory) {
172
- this.registerDelegatedServers(this.options.delegatedMcpServers.map(d => ({
173
- serverName: d.serverName,
174
- transport: d.transport,
175
- capabilityId: d.capabilityId,
176
- })), this.options.mcpTransportFactory);
177
- }
178
153
  }
179
154
  /**
180
155
  * Get the list of SDK MCP server names.
@@ -370,9 +345,6 @@ class ProcessTransport {
370
345
  if (opts.forkSession) {
371
346
  args.push('--fork-session');
372
347
  }
373
- if (opts.sessionStoreMode) {
374
- args.push('--session-store-mode', opts.sessionStoreMode);
375
- }
376
348
  // MCP options
377
349
  if (opts.mcpServers) {
378
350
  if (typeof opts.mcpServers === 'string') {
@@ -386,41 +358,6 @@ class ProcessTransport {
386
358
  if (opts.strictMcpConfig) {
387
359
  args.push('--strict-mcp-config');
388
360
  }
389
- // FileSystem replacement: serialize explicit modules selection (handler stays in-process)
390
- if (opts.fileSystem) {
391
- args.push('--file-system-config', JSON.stringify(opts.fileSystem));
392
- }
393
- if (opts.search) {
394
- args.push('--search-config', JSON.stringify({}));
395
- }
396
- if (opts.environmentSnapshot) {
397
- args.push('--environment-snapshot-config', JSON.stringify({}));
398
- }
399
- if (opts.agentStateStore) {
400
- args.push('--agent-state-store-config', JSON.stringify({}));
401
- }
402
- // Channel replacement: pass empty descriptor to opt in; handler stays in-process
403
- if (opts.channel) {
404
- args.push('--channel-config', JSON.stringify({}));
405
- }
406
- // Exec replacement: serialize maxOutputBytes / capabilityId / remoteExecutionContextId
407
- // (handler stays in-process). Presence of --exec-config enables remote exec in cbc.
408
- if (opts.exec) {
409
- args.push('--exec-config', JSON.stringify({
410
- ...(opts.exec.maxOutputBytes ? { maxOutputBytes: opts.exec.maxOutputBytes } : {}),
411
- ...(opts.exec.capabilityId ? { capabilityId: opts.exec.capabilityId } : {}),
412
- ...(opts.exec.remoteExecutionContextId ? { remoteExecutionContextId: opts.exec.remoteExecutionContextId } : {}),
413
- }));
414
- }
415
- if (opts.remoteExtensions) {
416
- args.push('--remote-extensions');
417
- }
418
- // Local-execution deny list. Only emit when it actually denies something, so
419
- // that "unset" and "[]" (empty deny list) produce byte-identical argv/logs.
420
- const led = opts.localExecutionDeny;
421
- if (led === 'all' || (Array.isArray(led) && led.length > 0)) {
422
- args.push('--local-execution-deny', JSON.stringify(led));
423
- }
424
361
  // Settings
425
362
  // SDK default: don't load any filesystem settings for clean environment isolation
426
363
  // When settingSources is explicitly provided (including empty array), use it
@@ -516,9 +453,6 @@ class ProcessTransport {
516
453
  if (!env.CODEBUDDY_DISABLE_AUTO_MEMORY) {
517
454
  env.CODEBUDDY_DISABLE_AUTO_MEMORY = '1';
518
455
  }
519
- if (this.options.remoteExtensions) {
520
- env.CODEBUDDY_DISABLE_PRODUCT_CACHE = '1';
521
- }
522
456
  // Thinking configuration → MAX_THINKING_TOKENS env var
523
457
  this.applyThinkingEnv(env);
524
458
  // Build SDK UserAgent and inject via CODEBUDDY_CUSTOM_HEADERS
@@ -617,7 +551,7 @@ class ProcessTransport {
617
551
  /**
618
552
  * Send a user message to CLI.
619
553
  */
620
- sendUserMessage(content, traceId, parentSpanId, remoteContext) {
554
+ sendUserMessage(content, traceId, parentSpanId) {
621
555
  // Ensure transport is started
622
556
  this.start();
623
557
  let message;
@@ -632,21 +566,16 @@ class ProcessTransport {
632
566
  parent_tool_use_id: null,
633
567
  ...(traceId ? { trace_id: traceId } : {}),
634
568
  ...(parentSpanId ? { parent_span_id: parentSpanId } : {}),
635
- ...(remoteContext ? { remoteContext } : {}),
636
569
  };
637
570
  }
638
571
  else {
639
- const carrier = content;
640
- if (remoteContext && carrier.remoteContext?.contextId !== undefined
641
- && carrier.remoteContext.contextId !== remoteContext.contextId) {
642
- throw new remote_error_codes_1.RemoteProtocolError('REMOTE_CONTEXT_MISMATCH', 'user message remote context does not match this query');
572
+ message = content;
573
+ if (traceId && !message.trace_id) {
574
+ message.trace_id = traceId;
575
+ }
576
+ if (parentSpanId && !message.parent_span_id) {
577
+ message.parent_span_id = parentSpanId;
643
578
  }
644
- message = {
645
- ...content,
646
- ...(traceId && !content.trace_id ? { trace_id: traceId } : {}),
647
- ...(parentSpanId && !content.parent_span_id ? { parent_span_id: parentSpanId } : {}),
648
- ...(remoteContext ? { remoteContext } : {}),
649
- };
650
579
  }
651
580
  this.writeLine(message);
652
581
  }
@@ -712,14 +641,13 @@ class ProcessTransport {
712
641
  /**
713
642
  * Send a control error response.
714
643
  */
715
- sendControlErrorResponse(requestId, error, code) {
644
+ sendControlErrorResponse(requestId, error) {
716
645
  const controlResponse = {
717
646
  type: 'control_response',
718
647
  response: {
719
648
  subtype: 'error',
720
649
  request_id: requestId,
721
650
  error,
722
- ...(code ? { code } : {}),
723
651
  },
724
652
  };
725
653
  this.writeLine(controlResponse);
@@ -742,15 +670,6 @@ class ProcessTransport {
742
670
  }
743
671
  handlers.add(handler);
744
672
  }
745
- /**
746
- * 向消息流注入一条 SDK 侧合成的消息(如 mirror_error 帧)。
747
- * 流未建立或已结束时静默丢弃——此时没有消费者,合成帧无处投递。
748
- */
749
- enqueueMessage(message) {
750
- if (this.messageStream && !this.messageStream.isFinished) {
751
- this.messageStream.enqueue(message);
752
- }
753
- }
754
673
  /**
755
674
  * Remove a notification handler for a specific channel.
756
675
  */
@@ -764,16 +683,9 @@ class ProcessTransport {
764
683
  }
765
684
  }
766
685
  /**
767
- * 关闭 transport。
768
- *
769
- * cause 标明终止原因:仅在异常类原因(进程非零退出、退出前未输出 result、
770
- * stdout 意外关闭、spawn 失败)下才合成一条 error 帧;正常结束与主动关闭均不合成,
771
- * 避免将成功的 run 误报为失败。
772
- *
773
- * 已有调用点(例如上层 Session.close())不传 cause 时按主动关闭处理,
774
- * 与"手动关闭不产生虚假 error"的既有行为保持一致。
686
+ * Close the transport.
775
687
  */
776
- close(cause = 'explicitClose') {
688
+ close() {
777
689
  if (this.closed) {
778
690
  return;
779
691
  }
@@ -819,47 +731,11 @@ class ProcessTransport {
819
731
  }
820
732
  this.sdkMcpTransports.clear();
821
733
  this.sdkMcpServerInstances.clear();
822
- // 注销远程委托 server:reject 在途 pending 并关闭真实 transport
823
- this.unregisterAllDelegatedServers();
824
- // 仅在 CLI 未输出终止信号时才合成 error 帧:
825
- // sawResult / sawError 表示 consumer 已经收到权威的终止信号,
826
- // explicitClose 属于用户主动关闭,均不应被视为失败。
827
- const shouldSynthesize = this.messageStream !== null
828
- && !this.messageStream.isFinished
829
- && !this._sawResult
830
- && !this._sawError
831
- && ERROR_TERMINAL_CAUSES.has(cause);
832
- if (shouldSynthesize) {
833
- const syntheticError = {
834
- type: 'error',
835
- error: this._closeReason ?? `Transport closed: ${cause}`,
836
- ...(this._sessionId ? { session_id: this._sessionId } : {}),
837
- ...(this._currentRunId ? { run_id: this._currentRunId } : {}),
838
- uuid: this.randomUuid(),
839
- };
840
- this.messageStream.enqueue(syntheticError);
841
- }
842
734
  // Signal stream completion
843
735
  if (this.messageStream) {
844
736
  this.messageStream.done();
845
737
  }
846
738
  }
847
- /**
848
- * 为合成帧生成 uuid。旧 Node 运行时可能未内置 WebCrypto,
849
- * crypto.randomUUID 不可用时降级为"时间戳 + 随机串"的形式。
850
- */
851
- randomUuid() {
852
- try {
853
- const c = globalThis.crypto;
854
- if (c?.randomUUID) {
855
- return c.randomUUID();
856
- }
857
- }
858
- catch {
859
- // fall through
860
- }
861
- return `syn-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 10)}`;
862
- }
863
739
  // ============= Private Methods =============
864
740
  handleLine(line) {
865
741
  const trimmed = line.trim();
@@ -891,43 +767,6 @@ class ProcessTransport {
891
767
  }
892
768
  return;
893
769
  }
894
- // 更新终止态追踪字段:session_id / run_id 用于合成 error 帧时填充上下文,
895
- // sawResult / sawError 用于 close() 判断是否需要合成补偿帧。
896
- // 必须在 enqueue 之前更新,否则 consumer 收到首帧后立即退出循环时字段仍为空。
897
- const framed = message;
898
- if (framed.session_id && !this._sessionId) {
899
- this._sessionId = framed.session_id;
900
- }
901
- const isRunStartedFrame = framed.type === 'system' && framed.subtype === 'run_started';
902
- if (isRunStartedFrame && framed.run_id) {
903
- // run_started 是权威的 run 起点:明确切换到新 run,并重置本 run 的累计状态。
904
- // 这样即便未来在同一 transport 内跑多个 run,每次 run 的终止态判断都不会串扰。
905
- if (this._currentRunId !== framed.run_id) {
906
- this._sawResult = false;
907
- this._sawError = false;
908
- }
909
- this._currentRunId = framed.run_id;
910
- this._sawRunStarted = true;
911
- }
912
- else if (framed.run_id && !this._sawRunStarted) {
913
- // 未启用 --emit-run-lifecycle 时的回退路径:从任意帧的 run_id 推断当前 run。
914
- // 一旦见过 run_started,就以其为准,不再被其他帧的 run_id 覆写。
915
- //
916
- // 检测到 run_id 变化时,同步重置本 run 的累计终止态(sawResult / sawError),
917
- // 与 run_started 分支的处理对齐,避免旧 run 的终止信号污染新 run 的判定,
918
- // 导致 close(cause) 误认为新 run 已正常结束而不合成补偿 error。
919
- if (this._currentRunId && this._currentRunId !== framed.run_id) {
920
- this._sawResult = false;
921
- this._sawError = false;
922
- }
923
- this._currentRunId = framed.run_id;
924
- }
925
- if (framed.type === 'result') {
926
- this._sawResult = true;
927
- }
928
- else if (framed.type === 'error') {
929
- this._sawError = true;
930
- }
931
770
  // Only regular messages are enqueued for consumer iteration
932
771
  if (this.messageStream) {
933
772
  this.messageStream.enqueue(message);
@@ -958,10 +797,7 @@ class ProcessTransport {
958
797
  }
959
798
  this.pendingRequests.delete(response.request_id);
960
799
  if (response.subtype === 'error') {
961
- const error = (0, remote_error_codes_1.isRemoteErrorCode)(response.code)
962
- ? new remote_error_codes_1.RemoteProtocolError(response.code, response.error)
963
- : Object.assign(new Error(response.error), response.code ? { code: response.code } : {});
964
- pending.reject(error);
800
+ pending.reject(new Error(response.error));
965
801
  }
966
802
  else {
967
803
  pending.resolve(response.response ?? {});
@@ -972,27 +808,21 @@ class ProcessTransport {
972
808
  // Otherwise use a generic message — no setTimeout needed since
973
809
  // exit fires synchronously before close in Node.js child_process.
974
810
  this.setCloseReason('CLI process stdout closed unexpectedly');
975
- this.close('stdoutClosedUnexpectedly');
811
+ this.close();
976
812
  }
977
813
  handleError(error) {
978
814
  this.setCloseReason(`CLI I/O error: ${error.message}`);
979
- this.close('stdoutClosedUnexpectedly');
815
+ this.close();
980
816
  }
981
817
  handleProcessError(error) {
982
818
  this.setCloseReason(`CLI process spawn error: ${error.message}`);
983
- this.close('spawnError');
819
+ this.close();
984
820
  }
985
821
  handleProcessExit(code) {
986
822
  const stderr = this._stderrBuffer.trim();
987
823
  const stderrSuffix = stderr ? ` | stderr: ${stderr.slice(-500)}` : '';
988
824
  this.setCloseReason(`CLI process exited with code ${code}${stderrSuffix}`);
989
- // 退出码为 0 且已观察到 result → 正常结束;
990
- // 退出码为 0 但未观察到 result → CLI 在输出终止信号前提前退出,按异常处理以便下游归因;
991
- // 退出码非 0 → 一律按异常处理。
992
- const cause = code === 0
993
- ? (this._sawResult ? 'sawResult' : 'processExitZeroBeforeResult')
994
- : 'processExitNonZero';
995
- this.close(cause);
825
+ this.close();
996
826
  }
997
827
  setCloseReason(reason) {
998
828
  if (!this._closeReason) {
@@ -1122,28 +952,6 @@ class ProcessTransport {
1122
952
  const { server_name, message } = mcpRequest;
1123
953
  const transport = this.sdkMcpTransports.get(server_name);
1124
954
  if (!transport) {
1125
- // in-process 未命中:尝试远程委托 bridge 回退(control ack 仍在本方法包装,不进 bridge)
1126
- const scopedKey = this.resolveDelegatedScopedKey(server_name);
1127
- if (this.managedRemoteMcpBridge && scopedKey && this.managedRemoteMcpBridge.isRegistered(scopedKey)) {
1128
- try {
1129
- const anyMsg = message;
1130
- const isRequest = 'id' in anyMsg && anyMsg.id !== null && anyMsg.id !== undefined;
1131
- const result = await this.managedRemoteMcpBridge.handleMcpMessage(scopedKey, message);
1132
- if (isRequest) {
1133
- this.sendControlResponse(request.request_id, { mcp_response: result });
1134
- }
1135
- else {
1136
- // notification:回 id-less sentinel 释放 CLI control pending
1137
- this.sendControlResponse(request.request_id, {
1138
- mcp_response: { jsonrpc: '2.0', result: {} },
1139
- });
1140
- }
1141
- }
1142
- catch (error) {
1143
- this.sendControlErrorResponse(request.request_id, error instanceof Error ? error.message : String(error));
1144
- }
1145
- return;
1146
- }
1147
955
  this.sendControlErrorResponse(request.request_id, `SDK MCP server not found: ${server_name}`);
1148
956
  return;
1149
957
  }
@@ -1170,103 +978,6 @@ class ProcessTransport {
1170
978
  this.sendControlErrorResponse(request.request_id, error instanceof Error ? error.message : String(error));
1171
979
  }
1172
980
  }
1173
- /**
1174
- * 注册远程委托 server(宿主驱动)。
1175
- *
1176
- * 首次调用时懒构造 ManagedRemoteMcpBridge:createTransport 由受管层注入(解析真实
1177
- * endpoint/token),redactResponse 接线为 redactDelegatedResponse(响应离开宿主回到 CLI
1178
- * 之前先脱敏)。随后对每个 descriptor 用与路由一致的 resolveDelegatedScopedKey 生成 scoped
1179
- * key 并注册,key 记入集合供 close 统一注销。
1180
- *
1181
- * 接线现状:ProcessTransport 构造期在 `delegatedMcpServers` + `mcpTransportFactory` 齐备时
1182
- * 自动调用本方法(host-driven v1 必做)。`unregisterAllDelegatedServers` 已接入
1183
- * close 兜底,control connection 关闭时统一释放 transport 与 pending。
1184
- */
1185
- registerDelegatedServers(descriptors, createTransport) {
1186
- if (!this.managedRemoteMcpBridge) {
1187
- // 审计出口:有 stderr 回调则写入(仅非 secret 的结构化事件),否则忽略。
1188
- const onAudit = (event) => {
1189
- this.options.stderr?.(`[mcp-delegation-audit] ${JSON.stringify(event)}\n`);
1190
- };
1191
- this.managedRemoteMcpBridge = new managed_remote_mcp_bridge_1.ManagedRemoteMcpBridge({
1192
- createTransport,
1193
- requestTimeoutMs: this.options.requestTimeoutMs ?? 30000,
1194
- // 组合脱敏:先做 schema fail-close 筛查(剔除含凭证形参的 tool),再做值级脱敏;
1195
- // 被拒 tool 经 onAudit 上报,不抛异常。
1196
- redactResponse: (scopedKey, message) => {
1197
- const { message: safe, rejected } = (0, delegated_redaction_1.redactAndScreenDelegatedResponse)(message);
1198
- if (rejected.length > 0) {
1199
- onAudit({ type: 'delegated_tool_schema_rejected', scopedKey, rejected });
1200
- }
1201
- return safe;
1202
- },
1203
- onAudit,
1204
- });
1205
- }
1206
- for (const descriptor of descriptors) {
1207
- const scopedKey = this.resolveDelegatedScopedKey(descriptor.serverName);
1208
- if (!scopedKey) {
1209
- continue;
1210
- }
1211
- this.managedRemoteMcpBridge.registerDelegatedServer(scopedKey, {
1212
- transport: descriptor.transport,
1213
- capabilityId: descriptor.capabilityId,
1214
- });
1215
- this.registeredDelegatedScopedKeys.add(scopedKey);
1216
- }
1217
- }
1218
- /**
1219
- * 注销所有已注册的委托 server(reject 在途 pending、关闭真实 transport)。
1220
- * 由 close 调用;单个注销失败不阻塞其他。
1221
- */
1222
- unregisterAllDelegatedServers() {
1223
- if (!this.managedRemoteMcpBridge) {
1224
- return;
1225
- }
1226
- for (const scopedKey of this.registeredDelegatedScopedKeys) {
1227
- this.managedRemoteMcpBridge.unregisterDelegatedServer(scopedKey).catch(() => {
1228
- // 清理阶段忽略单个注销错误
1229
- });
1230
- }
1231
- this.registeredDelegatedScopedKeys.clear();
1232
- }
1233
- /**
1234
- * 组合远程委托 server 的 scoped key。
1235
- *
1236
- * 完整 scoped key 语义是 control connection / tenant / user / session / run + serverName。
1237
- * 本 transport 从 ProcessTransportOptions 拿到 controlConnectionId /
1238
- * tenantId / userId / sessionId / runId,按字符集校验后用分隔符 `::` 拼接,缺失维度直接跳过
1239
- * (不写空段,避免 `::` 退化成空字符串导致跨 scope 撞 key)。所有维度都缺时才退化为裸
1240
- * serverName——这是最后兜底,部署方应至少注入 controlConnectionId / sessionId 之一。
1241
- * 注册与路由必须复用这同一组合逻辑,两侧的 key 才能一致。
1242
- */
1243
- resolveDelegatedScopedKey(serverName) {
1244
- const segments = [];
1245
- const push = (v, label) => {
1246
- if (typeof v === 'string' && v.length > 0) {
1247
- if (!/^[A-Za-z0-9_.:-]+$/.test(v)) {
1248
- // 非法字符:跳过该维度并记审计,避免拼出含分隔符冲突的 scoped key。
1249
- this.options.stderr?.(`[mcp-delegation-audit] scoped key segment "${label}" has invalid chars, skipped\n`);
1250
- return;
1251
- }
1252
- segments.push(v);
1253
- }
1254
- };
1255
- push(this.options.controlConnectionId, 'controlConnectionId');
1256
- push(this.options.tenantId, 'tenantId');
1257
- push(this.options.userId, 'userId');
1258
- push(this.options.sessionId, 'sessionId');
1259
- push(this.options.runId, 'runId');
1260
- push(serverName, 'serverName');
1261
- if (segments.length === 0) {
1262
- return undefined;
1263
- }
1264
- if (segments.length === 1) {
1265
- // 仅 serverName 可用:兜底返回裸 serverName(部署方未注入 scope 维度的退化场景)。
1266
- return serverName;
1267
- }
1268
- return segments.join('::');
1269
- }
1270
981
  /**
1271
982
  * Handle MCP request and wait for response from MCP server.
1272
983
  */
@@ -1 +1 @@
1
- {"version":3,"file":"process-transport.js","sourceRoot":"","sources":["../../src/transport/process-transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"process-transport.js","sourceRoot":"","sources":["../../src/transport/process-transport.ts"],"names":[],"mappings":"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"}