aws-runtime-bridge 1.9.0 → 1.9.2
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/dist/adapter/AcodeSdkAdapter.d.ts +2 -0
- package/dist/adapter/AcodeSdkAdapter.d.ts.map +1 -1
- package/dist/adapter/AcodeSdkAdapter.js +84 -18
- package/dist/adapter/AcodeSdkAdapter.test.js +275 -13
- package/dist/adapter/acode-tool-names.d.ts +16 -0
- package/dist/adapter/acode-tool-names.d.ts.map +1 -0
- package/dist/adapter/acode-tool-names.js +37 -0
- package/dist/adapter/acode-tool-names.test.d.ts +2 -0
- package/dist/adapter/acode-tool-names.test.d.ts.map +1 -0
- package/dist/adapter/acode-tool-names.test.js +28 -0
- package/dist/adapter/types.d.ts +22 -3
- package/dist/adapter/types.d.ts.map +1 -1
- package/dist/adapter/types.js +2 -1
- package/dist/config.d.ts +0 -4
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +0 -4
- package/dist/index.js +1 -1
- package/dist/routes/ai-sources.js +18 -14
- package/dist/routes/git.d.ts +10 -0
- package/dist/routes/git.d.ts.map +1 -1
- package/dist/routes/git.js +37 -3
- package/dist/routes/git.test.js +47 -1
- package/dist/routes/sessions.d.ts +1 -1
- package/dist/routes/sessions.d.ts.map +1 -1
- package/dist/routes/sessions.js +11 -4
- package/dist/routes/sessions.test.js +3 -0
- package/dist/routes/terminal.d.ts +28 -8
- package/dist/routes/terminal.d.ts.map +1 -1
- package/dist/routes/terminal.js +266 -44
- package/dist/routes/terminal.stop-options.test.d.ts +2 -0
- package/dist/routes/terminal.stop-options.test.d.ts.map +1 -0
- package/dist/routes/terminal.stop-options.test.js +39 -0
- package/dist/routes/terminal.test.js +87 -4
- package/dist/services/auto-register.d.ts.map +1 -1
- package/dist/services/auto-register.js +4 -5
- package/dist/services/mcp-launch-binding-queue.d.ts +5 -0
- package/dist/services/mcp-launch-binding-queue.d.ts.map +1 -1
- package/dist/services/mcp-launch-binding-queue.js +17 -0
- package/dist/services/mcp-launch-binding-queue.test.js +16 -1
- package/dist/services/session-output.d.ts +5 -0
- package/dist/services/session-output.d.ts.map +1 -1
- package/package/acode/dist/built-in-file-tools.d.ts +5 -1
- package/package/acode/dist/built-in-file-tools.d.ts.map +1 -1
- package/package/acode/dist/built-in-file-tools.js +14 -203
- package/package/acode/dist/builtins/commandArtifacts.d.ts +25 -0
- package/package/acode/dist/builtins/commandArtifacts.d.ts.map +1 -0
- package/package/acode/dist/builtins/commandArtifacts.js +77 -0
- package/package/acode/dist/builtins/commandOutputEvents.d.ts +21 -0
- package/package/acode/dist/builtins/commandOutputEvents.d.ts.map +1 -0
- package/package/acode/dist/builtins/commandOutputEvents.js +56 -0
- package/package/acode/dist/builtins/shellCommandPreparation.d.ts +15 -0
- package/package/acode/dist/builtins/shellCommandPreparation.d.ts.map +1 -0
- package/package/acode/dist/builtins/shellCommandPreparation.js +44 -0
- package/package/acode/dist/builtins/shellCommandResult.d.ts +30 -0
- package/package/acode/dist/builtins/shellCommandResult.d.ts.map +1 -0
- package/package/acode/dist/builtins/shellCommandResult.js +71 -0
- package/package/acode/dist/builtins/shellCommandRunner.d.ts +14 -0
- package/package/acode/dist/builtins/shellCommandRunner.d.ts.map +1 -0
- package/package/acode/dist/builtins/shellCommandRunner.js +114 -0
- package/package/acode/dist/builtins/shellOutputDecoder.d.ts +5 -0
- package/package/acode/dist/builtins/shellOutputDecoder.d.ts.map +1 -0
- package/package/acode/dist/builtins/shellOutputDecoder.js +30 -0
- package/package/acode/dist/mcpToolNames.d.ts +11 -0
- package/package/acode/dist/mcpToolNames.d.ts.map +1 -0
- package/package/acode/dist/mcpToolNames.js +17 -0
- package/package/acode/dist/runtime.d.ts +19 -0
- package/package/acode/dist/runtime.d.ts.map +1 -1
- package/package/acode/dist/runtime.js +233 -35
- package/package/acode/dist/types.d.ts +1 -1
- package/package/acode/dist/types.d.ts.map +1 -1
- package/package/acode/package.json +1 -1
- package/package/aws-client-agent-mcp/dist/agent-client.d.ts +20 -0
- package/package/aws-client-agent-mcp/dist/agent-client.d.ts.map +1 -1
- package/package/aws-client-agent-mcp/dist/agent-client.js +71 -2
- package/package/aws-client-agent-mcp/dist/agent-client.js.map +1 -1
- package/package/aws-client-agent-mcp/dist/constants.d.ts +4 -1
- package/package/aws-client-agent-mcp/dist/constants.d.ts.map +1 -1
- package/package/aws-client-agent-mcp/dist/constants.js +5 -1
- package/package/aws-client-agent-mcp/dist/constants.js.map +1 -1
- package/package/aws-client-agent-mcp/dist/http-client.d.ts +17 -1
- package/package/aws-client-agent-mcp/dist/http-client.d.ts.map +1 -1
- package/package/aws-client-agent-mcp/dist/http-client.js +124 -28
- package/package/aws-client-agent-mcp/dist/http-client.js.map +1 -1
- package/package/aws-client-agent-mcp/dist/http-client.test.js +108 -2
- package/package/aws-client-agent-mcp/dist/http-client.test.js.map +1 -1
- package/package/aws-client-agent-mcp/dist/mcp-server.d.ts +8 -3
- package/package/aws-client-agent-mcp/dist/mcp-server.d.ts.map +1 -1
- package/package/aws-client-agent-mcp/dist/mcp-server.js +63 -10
- package/package/aws-client-agent-mcp/dist/mcp-server.js.map +1 -1
- package/package/aws-client-agent-mcp/dist/mcp-server.test.js +47 -0
- package/package/aws-client-agent-mcp/dist/mcp-server.test.js.map +1 -1
- package/package/aws-client-agent-mcp/dist/mcp-tools.d.ts +1 -36
- package/package/aws-client-agent-mcp/dist/mcp-tools.d.ts.map +1 -1
- package/package/aws-client-agent-mcp/dist/mcp-tools.js +3 -169
- package/package/aws-client-agent-mcp/dist/mcp-tools.js.map +1 -1
- package/package/aws-client-agent-mcp/dist/mcp-tools.test.d.ts +2 -0
- package/package/aws-client-agent-mcp/dist/mcp-tools.test.d.ts.map +1 -0
- package/package/aws-client-agent-mcp/dist/mcp-tools.test.js +45 -0
- package/package/aws-client-agent-mcp/dist/mcp-tools.test.js.map +1 -0
- package/package/aws-client-agent-mcp/dist/memory-tools.d.ts +11 -0
- package/package/aws-client-agent-mcp/dist/memory-tools.d.ts.map +1 -0
- package/package/aws-client-agent-mcp/dist/memory-tools.js +144 -0
- package/package/aws-client-agent-mcp/dist/memory-tools.js.map +1 -0
- package/package/aws-client-agent-mcp/dist/runtime-launch-binding.d.ts.map +1 -1
- package/package/aws-client-agent-mcp/dist/runtime-launch-binding.js +79 -28
- package/package/aws-client-agent-mcp/dist/runtime-launch-binding.js.map +1 -1
- package/package/aws-client-agent-mcp/dist/runtime-launch-binding.test.js +35 -0
- package/package/aws-client-agent-mcp/dist/runtime-launch-binding.test.js.map +1 -1
- package/package/aws-client-agent-mcp/dist/types.d.ts +9 -0
- package/package/aws-client-agent-mcp/dist/types.d.ts.map +1 -1
- package/package/aws-client-agent-mcp/dist/types.js.map +1 -1
- package/package/aws-client-agent-mcp/dist/websocket-client.d.ts.map +1 -1
- package/package/aws-client-agent-mcp/dist/websocket-client.js +1 -0
- package/package/aws-client-agent-mcp/dist/websocket-client.js.map +1 -1
- package/package/aws-client-agent-mcp/dist/websocket-client.test.js +43 -3
- package/package/aws-client-agent-mcp/dist/websocket-client.test.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import assert from 'node:assert/strict';
|
|
2
2
|
import { afterEach, beforeEach, describe, it, mock } from 'node:test';
|
|
3
3
|
import { HttpClient } from './http-client.js';
|
|
4
|
-
describe('HttpClient', () => {
|
|
4
|
+
describe('HttpClient', { concurrency: false }, () => {
|
|
5
5
|
const originalFetch = global.fetch;
|
|
6
6
|
let fetchCalls = [];
|
|
7
7
|
beforeEach(() => {
|
|
@@ -129,7 +129,7 @@ describe('HttpClient', () => {
|
|
|
129
129
|
assert.equal(client.getMcpHttpUrl(), 'http://custom:3000/api/mcp/call');
|
|
130
130
|
});
|
|
131
131
|
});
|
|
132
|
-
describe('callTool', () => {
|
|
132
|
+
describe('callTool', { concurrency: false }, () => {
|
|
133
133
|
it('makes POST request with runtime token headers', async () => {
|
|
134
134
|
const config = {
|
|
135
135
|
serverUrl: 'ws://localhost:8080/ws/agent',
|
|
@@ -209,6 +209,7 @@ describe('HttpClient', () => {
|
|
|
209
209
|
heartbeatInterval: 15000,
|
|
210
210
|
reconnectInterval: 200,
|
|
211
211
|
maxReconnectAttempts: -1,
|
|
212
|
+
mcpRetryMaxAccumulatedMs: 0,
|
|
212
213
|
};
|
|
213
214
|
const client = new HttpClient(config);
|
|
214
215
|
global.fetch = async () => ({
|
|
@@ -224,6 +225,7 @@ describe('HttpClient', () => {
|
|
|
224
225
|
heartbeatInterval: 15000,
|
|
225
226
|
reconnectInterval: 200,
|
|
226
227
|
maxReconnectAttempts: -1,
|
|
228
|
+
mcpRetryMaxAccumulatedMs: 0,
|
|
227
229
|
};
|
|
228
230
|
const client = new HttpClient(config);
|
|
229
231
|
global.fetch = async () => ({
|
|
@@ -652,6 +654,7 @@ describe('HttpClient', () => {
|
|
|
652
654
|
heartbeatInterval: 15000,
|
|
653
655
|
reconnectInterval: 200,
|
|
654
656
|
maxReconnectAttempts: -1,
|
|
657
|
+
mcpRetryMaxAccumulatedMs: 0,
|
|
655
658
|
};
|
|
656
659
|
const client = new HttpClient(config);
|
|
657
660
|
global.fetch = async () => {
|
|
@@ -666,6 +669,7 @@ describe('HttpClient', () => {
|
|
|
666
669
|
reconnectInterval: 200,
|
|
667
670
|
maxReconnectAttempts: -1,
|
|
668
671
|
mcpHttpRequestTimeoutMs: 10,
|
|
672
|
+
mcpRetryMaxAccumulatedMs: 0,
|
|
669
673
|
};
|
|
670
674
|
const client = new HttpClient(config);
|
|
671
675
|
global.fetch = async (url, options) => {
|
|
@@ -686,6 +690,7 @@ describe('HttpClient', () => {
|
|
|
686
690
|
maxReconnectAttempts: -1,
|
|
687
691
|
runtimeAccessToken: 'runtime-token',
|
|
688
692
|
mcpHttpRequestTimeoutMs: 10,
|
|
693
|
+
mcpRetryMaxAccumulatedMs: 0,
|
|
689
694
|
};
|
|
690
695
|
const client = new HttpClient(config);
|
|
691
696
|
global.fetch = async (url, options) => {
|
|
@@ -698,6 +703,107 @@ describe('HttpClient', () => {
|
|
|
698
703
|
assert.equal(fetchCalls.length, 1);
|
|
699
704
|
assert.ok(fetchCalls[0][1].signal instanceof AbortSignal);
|
|
700
705
|
});
|
|
706
|
+
it('retries on 5xx response until deadline exhausted', async () => {
|
|
707
|
+
const config = {
|
|
708
|
+
serverUrl: 'ws://localhost:8080/ws/agent',
|
|
709
|
+
heartbeatInterval: 15000,
|
|
710
|
+
reconnectInterval: 200,
|
|
711
|
+
maxReconnectAttempts: -1,
|
|
712
|
+
mcpRetryIntervalMs: 1,
|
|
713
|
+
mcpRetryMaxAccumulatedMs: 20,
|
|
714
|
+
};
|
|
715
|
+
const client = new HttpClient(config);
|
|
716
|
+
global.fetch = async (url, options) => {
|
|
717
|
+
fetchCalls.push([url.toString(), options]);
|
|
718
|
+
return {
|
|
719
|
+
ok: false,
|
|
720
|
+
status: 503,
|
|
721
|
+
statusText: 'Service Unavailable',
|
|
722
|
+
};
|
|
723
|
+
};
|
|
724
|
+
await assert.rejects(() => client.callTool('test-tool', {}), /MCP tool test-tool call failed: 503 Service Unavailable/);
|
|
725
|
+
// Multiple fetch calls due to retries
|
|
726
|
+
assert.ok(fetchCalls.length > 1);
|
|
727
|
+
});
|
|
728
|
+
it('retries on network error until deadline exhausted', async () => {
|
|
729
|
+
const config = {
|
|
730
|
+
serverUrl: 'ws://localhost:8080/ws/agent',
|
|
731
|
+
heartbeatInterval: 15000,
|
|
732
|
+
reconnectInterval: 200,
|
|
733
|
+
maxReconnectAttempts: -1,
|
|
734
|
+
mcpRetryIntervalMs: 1,
|
|
735
|
+
mcpRetryMaxAccumulatedMs: 20,
|
|
736
|
+
};
|
|
737
|
+
const client = new HttpClient(config);
|
|
738
|
+
global.fetch = async (url, options) => {
|
|
739
|
+
fetchCalls.push([url.toString(), options]);
|
|
740
|
+
throw new Error('Network error');
|
|
741
|
+
};
|
|
742
|
+
await assert.rejects(() => client.callTool('test-tool', {}), /Network error/);
|
|
743
|
+
assert.ok(fetchCalls.length > 1);
|
|
744
|
+
});
|
|
745
|
+
it('retries on timeout until deadline exhausted', async () => {
|
|
746
|
+
const config = {
|
|
747
|
+
serverUrl: 'ws://localhost:8080/ws/agent',
|
|
748
|
+
heartbeatInterval: 15000,
|
|
749
|
+
reconnectInterval: 200,
|
|
750
|
+
maxReconnectAttempts: -1,
|
|
751
|
+
mcpHttpRequestTimeoutMs: 10,
|
|
752
|
+
mcpRetryIntervalMs: 1,
|
|
753
|
+
mcpRetryMaxAccumulatedMs: 30,
|
|
754
|
+
};
|
|
755
|
+
const client = new HttpClient(config);
|
|
756
|
+
global.fetch = async (url, options) => {
|
|
757
|
+
fetchCalls.push([url.toString(), options]);
|
|
758
|
+
return await new Promise((_resolve, reject) => {
|
|
759
|
+
options?.signal?.addEventListener('abort', () => reject(new Error('aborted by signal')), { once: true });
|
|
760
|
+
});
|
|
761
|
+
};
|
|
762
|
+
await assert.rejects(() => client.callTool('test-tool', {}), /MCP tool test-tool timed out after 10ms/);
|
|
763
|
+
// Multiple fetch calls due to retries
|
|
764
|
+
assert.ok(fetchCalls.length > 1);
|
|
765
|
+
});
|
|
766
|
+
it('does not retry on 404 client error', async () => {
|
|
767
|
+
const config = {
|
|
768
|
+
serverUrl: 'ws://localhost:8080/ws/agent',
|
|
769
|
+
heartbeatInterval: 15000,
|
|
770
|
+
reconnectInterval: 200,
|
|
771
|
+
maxReconnectAttempts: -1,
|
|
772
|
+
mcpRetryIntervalMs: 100,
|
|
773
|
+
mcpRetryMaxAccumulatedMs: 30000,
|
|
774
|
+
};
|
|
775
|
+
const client = new HttpClient(config);
|
|
776
|
+
global.fetch = async (url, options) => {
|
|
777
|
+
fetchCalls.push([url.toString(), options]);
|
|
778
|
+
return {
|
|
779
|
+
ok: false,
|
|
780
|
+
status: 404,
|
|
781
|
+
statusText: 'Not Found',
|
|
782
|
+
};
|
|
783
|
+
};
|
|
784
|
+
await assert.rejects(() => client.callTool('test-tool', {}), /MCP tool test-tool call failed: 404 Not Found/);
|
|
785
|
+
// Only 1 fetch call — no retry on 4xx
|
|
786
|
+
assert.equal(fetchCalls.length, 1);
|
|
787
|
+
});
|
|
788
|
+
it('does not retry on business error in response body', async () => {
|
|
789
|
+
const config = {
|
|
790
|
+
serverUrl: 'ws://localhost:8080/ws/agent',
|
|
791
|
+
heartbeatInterval: 15000,
|
|
792
|
+
reconnectInterval: 200,
|
|
793
|
+
maxReconnectAttempts: -1,
|
|
794
|
+
mcpRetryMaxAccumulatedMs: 0,
|
|
795
|
+
};
|
|
796
|
+
const client = new HttpClient(config);
|
|
797
|
+
global.fetch = async (url, options) => {
|
|
798
|
+
fetchCalls.push([url.toString(), options]);
|
|
799
|
+
return {
|
|
800
|
+
ok: true,
|
|
801
|
+
json: async () => ({ error: 'Tool execution failed' }),
|
|
802
|
+
};
|
|
803
|
+
};
|
|
804
|
+
await assert.rejects(() => client.callTool('test-tool', {}), /MCP tool test-tool failed: Tool execution failed/);
|
|
805
|
+
assert.equal(fetchCalls.length, 1);
|
|
806
|
+
});
|
|
701
807
|
});
|
|
702
808
|
});
|
|
703
809
|
//# sourceMappingURL=http-client.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-client.test.js","sourceRoot":"","sources":["../src/http-client.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"http-client.test.js","sourceRoot":"","sources":["../src/http-client.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -168,7 +168,7 @@ export declare class McpServer {
|
|
|
168
168
|
private handleIncomingMessage;
|
|
169
169
|
/**
|
|
170
170
|
* 判断消息是否应该进入本地缓冲区。
|
|
171
|
-
*
|
|
171
|
+
* 主流程:过滤结构异常消息 -> 过滤当前 Agent 自发消息 -> 过滤持久化流程线唤醒私信。
|
|
172
172
|
*/
|
|
173
173
|
private shouldBufferIncomingMessage;
|
|
174
174
|
/**
|
|
@@ -182,10 +182,10 @@ export declare class McpServer {
|
|
|
182
182
|
*/
|
|
183
183
|
private isPipelineTaskAssignedNotification;
|
|
184
184
|
/**
|
|
185
|
-
*
|
|
185
|
+
* 判断消息是否由当前 Agent 自己发送。
|
|
186
186
|
* 主流程:读取当前 Agent 状态 -> 比较 senderId -> 返回过滤结果。
|
|
187
187
|
*/
|
|
188
|
-
private
|
|
188
|
+
private isSelfSentMessage;
|
|
189
189
|
/**
|
|
190
190
|
* 安全读取当前 Agent ID。
|
|
191
191
|
* 测试替身或异常场景下如果 agentClient 未提供 getState,则返回 null,避免影响消息主流程。
|
|
@@ -193,6 +193,11 @@ export declare class McpServer {
|
|
|
193
193
|
private getCurrentAgentId;
|
|
194
194
|
start(): Promise<void>;
|
|
195
195
|
private autoRegister;
|
|
196
|
+
/**
|
|
197
|
+
* 在后台启动注册流程,不阻塞 MCP 工具暴露。
|
|
198
|
+
* 主流程:autoRegister 包含重试循环和降级模式逻辑,后台执行避免拖慢 MCP Server 就绪时间。
|
|
199
|
+
*/
|
|
200
|
+
private autoRegisterInBackground;
|
|
196
201
|
/**
|
|
197
202
|
* 内部方法:启动消息监听(不返回 MCP 响应)
|
|
198
203
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAuEH,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,qBAAqB,CAAU;IAEvC;;;OAGG;IACH,OAAO,CAAC,mBAAmB;;IAsC3B,OAAO,CAAC,aAAa;IA4CrB;;OAEG;YACW,cAAc;IA8B5B;;OAEG;YACW,eAAe;IA8G7B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAIlC;IAEF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAUtC;IAEH;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,8BAA8B;IAgB7C;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,uBAAuB;IAiCtC,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,qBAAqB;IAU7B,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,YAAY;IAIpB;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAI7B;;;OAGG;YACW,0BAA0B;IAuBxC;;;OAGG;YACW,0BAA0B;IAwBxC;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAsB1B;;;OAGG;YACW,yBAAyB;IAiBvC;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IA4B3B;;;OAGG;YACW,kBAAkB;IAiBhC;;;OAGG;YACW,gBAAgB;IAU9B;;;OAGG;YACW,kBAAkB;IAqChC;;;OAGG;YACW,kBAAkB;IAkBhC;;;OAGG;YACW,kBAAkB;IAuChC;;;OAGG;YACW,kBAAkB;IAQhC;;;OAGG;YACW,oBAAoB;IAqBlC;;;OAGG;YACW,0BAA0B;IASxC;;;OAGG;YACW,2BAA2B;YA6B3B,eAAe;YAWf,mBAAmB;YAOnB,yBAAyB;YA4BzB,iBAAiB;YAgBjB,+BAA+B;YAW/B,iBAAiB;IAiC/B;;;;OAIG;YACW,mCAAmC;IAkBjD,OAAO,CAAC,6BAA6B;IAwBrC,OAAO,CAAC,mCAAmC;IAO3C,OAAO,CAAC,mCAAmC;IAO3C;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAa/B,OAAO,CAAC,KAAK;IAOb;;;OAGG;YACW,8BAA8B;YAuD9B,gBAAgB;IAe9B;;;OAGG;YACW,6BAA6B;IAU3C;;;OAGG;YACW,+BAA+B;YAwC/B,kBAAkB;YAQlB,qBAAqB;YAUrB,sBAAsB;YAetB,sBAAsB;YAqBtB,uBAAuB;YASvB,wBAAwB;YAUxB,gBAAgB;YAYhB,mBAAmB;IAejC;;OAEG;YACW,qBAAqB;IAcnC;;;OAGG;IACH,OAAO,CAAC,2BAA2B;IA6BnC;;;OAGG;IACH,OAAO,CAAC,cAAc;IAMtB;;;OAGG;IACH,OAAO,CAAC,kCAAkC;IAS1C;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAazB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAcnB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YA0Bd,YAAY;IAgF1B;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAMhC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA+B9B,OAAO,CAAC,KAAK;CAGd"}
|
|
@@ -7,7 +7,7 @@ import { Server } from "@modelcontextprotocol/sdk/server/index.js";
|
|
|
7
7
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
8
8
|
import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
|
|
9
9
|
import { AgentClient } from "./agent-client.js";
|
|
10
|
-
import { MCP_SERVER_NAME, MCP_SERVER_VERSION, REGISTER_RETRY_INTERVAL_MS, } from "./constants.js";
|
|
10
|
+
import { MCP_SERVER_NAME, MCP_SERVER_VERSION, REGISTER_MAX_RETRIES, REGISTER_RETRY_INTERVAL_MS, DEGRADED_MODE_ENABLED, DEGRADED_MODE_RETRY_INTERVAL_MS, DEGRADED_MODE_MAX_RETRIES, } from "./constants.js";
|
|
11
11
|
import { logger } from "./logger.js";
|
|
12
12
|
import { MCP_TOOLS } from "./mcp-tools.js";
|
|
13
13
|
import { MessageBuffer } from "./message-buffer.js";
|
|
@@ -777,12 +777,12 @@ export class McpServer {
|
|
|
777
777
|
blockTimeoutMs: options.blockTimeoutMs,
|
|
778
778
|
includePipelineTasks: options.includePipelineTasks,
|
|
779
779
|
});
|
|
780
|
-
const filteredGroupMessages = unreadMessages.groupMessages.filter((message) => !this.isSelfSentGroupMessage(message));
|
|
781
780
|
if (unreadMessages.directMessages.length === 0 &&
|
|
782
781
|
unreadMessages.groupMessages.length === 0) {
|
|
783
782
|
return true;
|
|
784
783
|
}
|
|
785
|
-
const filteredDirectMessages = unreadMessages.directMessages.filter((message) =>
|
|
784
|
+
const filteredDirectMessages = unreadMessages.directMessages.filter((message) => this.shouldBufferIncomingMessage(message));
|
|
785
|
+
const filteredGroupMessages = unreadMessages.groupMessages.filter((message) => this.shouldBufferIncomingMessage(message));
|
|
786
786
|
filteredDirectMessages.forEach((message) => {
|
|
787
787
|
this.messageBuffer.push(message);
|
|
788
788
|
});
|
|
@@ -866,7 +866,6 @@ export class McpServer {
|
|
|
866
866
|
*/
|
|
867
867
|
async handleIncomingMessage(message) {
|
|
868
868
|
if (!this.shouldBufferIncomingMessage(message)) {
|
|
869
|
-
logger.info("[McpServer] 忽略当前 Agent 自己发送的群消息,避免 get_message 回环");
|
|
870
869
|
return undefined;
|
|
871
870
|
}
|
|
872
871
|
logger.info(`[McpServer] 收到消息: ${message.content?.substring(0, 50) || "(无内容)"}`);
|
|
@@ -875,13 +874,17 @@ export class McpServer {
|
|
|
875
874
|
}
|
|
876
875
|
/**
|
|
877
876
|
* 判断消息是否应该进入本地缓冲区。
|
|
878
|
-
*
|
|
877
|
+
* 主流程:过滤结构异常消息 -> 过滤当前 Agent 自发消息 -> 过滤持久化流程线唤醒私信。
|
|
879
878
|
*/
|
|
880
879
|
shouldBufferIncomingMessage(message) {
|
|
881
880
|
if (!message || typeof message !== "object") {
|
|
882
881
|
logger.warn("[McpServer] 忽略结构异常的消息,避免缓冲区污染");
|
|
883
882
|
return false;
|
|
884
883
|
}
|
|
884
|
+
if (this.isSelfSentMessage(message)) {
|
|
885
|
+
logger.info("[McpServer] 忽略当前 Agent 自己发送的消息,避免 poll_message/get_message 回环");
|
|
886
|
+
return false;
|
|
887
|
+
}
|
|
885
888
|
if (!this.isGroupMessage(message)) {
|
|
886
889
|
if (this.isPipelineTaskAssignedNotification(message)) {
|
|
887
890
|
logger.info("[McpServer] 忽略持久化 pipeline_task_assigned 私信,仅作为 poll_message 唤醒信号处理");
|
|
@@ -889,7 +892,7 @@ export class McpServer {
|
|
|
889
892
|
}
|
|
890
893
|
return true;
|
|
891
894
|
}
|
|
892
|
-
return
|
|
895
|
+
return true;
|
|
893
896
|
}
|
|
894
897
|
/**
|
|
895
898
|
* 判断是否为群消息。
|
|
@@ -909,10 +912,10 @@ export class McpServer {
|
|
|
909
912
|
prompt.includes("pipeline_task_assigned"));
|
|
910
913
|
}
|
|
911
914
|
/**
|
|
912
|
-
*
|
|
915
|
+
* 判断消息是否由当前 Agent 自己发送。
|
|
913
916
|
* 主流程:读取当前 Agent 状态 -> 比较 senderId -> 返回过滤结果。
|
|
914
917
|
*/
|
|
915
|
-
|
|
918
|
+
isSelfSentMessage(message) {
|
|
916
919
|
if (!message || typeof message !== "object") {
|
|
917
920
|
return false;
|
|
918
921
|
}
|
|
@@ -940,7 +943,13 @@ export class McpServer {
|
|
|
940
943
|
logger.info("[McpServer] MCP Server 已启动,等待连接...");
|
|
941
944
|
logger.info(`[McpServer] 可用工具: ${MCP_TOOLS.map((t) => t.name).join(", ")}`);
|
|
942
945
|
logger.info(`[McpServer] 工作目录: ${process.env.AWS_WORKSPACE_PATH || process.cwd()}`);
|
|
943
|
-
|
|
946
|
+
// 检查降级模式配置
|
|
947
|
+
if (DEGRADED_MODE_ENABLED) {
|
|
948
|
+
logger.info(`[McpServer] 降级模式已启用,注册失败时将以离线模式继续运行`);
|
|
949
|
+
}
|
|
950
|
+
// 后台注册:不阻塞 MCP 工具暴露,Agent 可立即接收工具调用
|
|
951
|
+
this.autoRegisterInBackground();
|
|
952
|
+
logger.info("[McpServer] MCP Server 已就绪,工具已可用");
|
|
944
953
|
}
|
|
945
954
|
async autoRegister() {
|
|
946
955
|
const agentConfig = this.agentClient.getAgentConfig();
|
|
@@ -967,16 +976,60 @@ export class McpServer {
|
|
|
967
976
|
catch (error) {
|
|
968
977
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
969
978
|
retryCount++;
|
|
970
|
-
|
|
979
|
+
// 检查是否达到最大重试次数
|
|
980
|
+
if (REGISTER_MAX_RETRIES > 0 && retryCount >= REGISTER_MAX_RETRIES) {
|
|
981
|
+
// 如果启用了降级模式,进入降级模式而不是抛出异常
|
|
982
|
+
if (DEGRADED_MODE_ENABLED) {
|
|
983
|
+
logger.warn(`[McpServer] 注册超过最大重试次数 (${REGISTER_MAX_RETRIES}次),进入降级模式`);
|
|
984
|
+
this.agentClient.enterDegradedMode();
|
|
985
|
+
// 启动消息监听(降级模式下仍可接收本地消息)
|
|
986
|
+
this.startListeningInternal();
|
|
987
|
+
logger.info("[McpServer] 降级模式:消息监听已启动");
|
|
988
|
+
// 启动后台重试注册
|
|
989
|
+
this.agentClient.retryRegistrationInBackground(DEGRADED_MODE_RETRY_INTERVAL_MS, DEGRADED_MODE_MAX_RETRIES);
|
|
990
|
+
// 报告 Agent 已启动(降级模式)
|
|
991
|
+
const statusReporter = this.agentClient.getStatusReporter();
|
|
992
|
+
if (statusReporter) {
|
|
993
|
+
statusReporter.reportWaitingInput();
|
|
994
|
+
}
|
|
995
|
+
await this.reportCombinedMemoryStats();
|
|
996
|
+
return;
|
|
997
|
+
}
|
|
998
|
+
// 未启用降级模式,抛出异常
|
|
999
|
+
throw new Error(`注册超过最大重试次数 (${REGISTER_MAX_RETRIES}次),放弃启动: ${errorMessage}`);
|
|
1000
|
+
}
|
|
1001
|
+
logger.warn(`[McpServer] 注册失败,等待重试... (${retryCount}/${REGISTER_MAX_RETRIES}): ${errorMessage}`);
|
|
971
1002
|
await this.delay(REGISTER_RETRY_INTERVAL_MS);
|
|
972
1003
|
}
|
|
973
1004
|
}
|
|
974
1005
|
}
|
|
1006
|
+
/**
|
|
1007
|
+
* 在后台启动注册流程,不阻塞 MCP 工具暴露。
|
|
1008
|
+
* 主流程:autoRegister 包含重试循环和降级模式逻辑,后台执行避免拖慢 MCP Server 就绪时间。
|
|
1009
|
+
*/
|
|
1010
|
+
autoRegisterInBackground() {
|
|
1011
|
+
this.autoRegister().catch((error) => {
|
|
1012
|
+
logger.error("[McpServer] 后台注册异常:", error);
|
|
1013
|
+
});
|
|
1014
|
+
}
|
|
975
1015
|
/**
|
|
976
1016
|
* 内部方法:启动消息监听(不返回 MCP 响应)
|
|
977
1017
|
*/
|
|
978
1018
|
startListeningInternal() {
|
|
979
1019
|
logger.info("[McpServer] startListeningInternal 被调用");
|
|
1020
|
+
// 降级模式下跳过 WebSocket 连接
|
|
1021
|
+
if (this.agentClient.isInDegradedMode()) {
|
|
1022
|
+
logger.info("[McpServer] 降级模式:跳过 WebSocket 连接,仅启动本地消息监听");
|
|
1023
|
+
this.agentClient.start(this.handleIncomingMessage.bind(this), {
|
|
1024
|
+
pollMode: false,
|
|
1025
|
+
profileHandler: (profile) => {
|
|
1026
|
+
// 收到 Profile 信息后,存储到消息缓冲区
|
|
1027
|
+
logger.info(`[McpServer] profileHandler 被调用,displayName: ${profile.displayName}`);
|
|
1028
|
+
this.messageBuffer.setProfileMessage(profile);
|
|
1029
|
+
},
|
|
1030
|
+
});
|
|
1031
|
+
return;
|
|
1032
|
+
}
|
|
980
1033
|
this.agentClient.start(this.handleIncomingMessage.bind(this), {
|
|
981
1034
|
pollMode: false,
|
|
982
1035
|
profileHandler: (profile) => {
|