@cicctencent/agent-core 0.1.4 → 0.1.6
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/cjs/agent/engine.d.ts.map +1 -1
- package/dist/cjs/agent/engine.js +1 -0
- package/dist/cjs/agent/engine.js.map +1 -1
- package/dist/cjs/agent/tool-executor.d.ts +4 -0
- package/dist/cjs/agent/tool-executor.d.ts.map +1 -1
- package/dist/cjs/agent/tool-executor.js +13 -0
- package/dist/cjs/agent/tool-executor.js.map +1 -1
- package/dist/cjs/llm/anthropic-provider.js +1 -1
- package/dist/cjs/llm/anthropic-provider.js.map +1 -1
- package/dist/cjs/llm/openai-provider.js +1 -1
- package/dist/cjs/llm/openai-provider.js.map +1 -1
- package/dist/cjs/llm/types.d.ts +2 -3
- package/dist/cjs/llm/types.d.ts.map +1 -1
- package/dist/cjs/mcp/http-client.d.ts +1 -1
- package/dist/cjs/mcp/http-client.d.ts.map +1 -1
- package/dist/cjs/mcp/http-client.js +9 -10
- package/dist/cjs/mcp/http-client.js.map +1 -1
- package/dist/cjs/mcp/proxy-agent.d.ts +8 -6
- package/dist/cjs/mcp/proxy-agent.d.ts.map +1 -1
- package/dist/cjs/mcp/proxy-agent.js +17 -33
- package/dist/cjs/mcp/proxy-agent.js.map +1 -1
- package/dist/esm/agent/engine.d.ts.map +1 -1
- package/dist/esm/agent/engine.js +1 -0
- package/dist/esm/agent/engine.js.map +1 -1
- package/dist/esm/agent/tool-executor.d.ts +4 -0
- package/dist/esm/agent/tool-executor.d.ts.map +1 -1
- package/dist/esm/agent/tool-executor.js +13 -0
- package/dist/esm/agent/tool-executor.js.map +1 -1
- package/dist/esm/llm/anthropic-provider.js +1 -1
- package/dist/esm/llm/anthropic-provider.js.map +1 -1
- package/dist/esm/llm/openai-provider.js +1 -1
- package/dist/esm/llm/openai-provider.js.map +1 -1
- package/dist/esm/llm/types.d.ts +2 -3
- package/dist/esm/llm/types.d.ts.map +1 -1
- package/dist/esm/mcp/http-client.d.ts +1 -1
- package/dist/esm/mcp/http-client.d.ts.map +1 -1
- package/dist/esm/mcp/http-client.js +9 -10
- package/dist/esm/mcp/http-client.js.map +1 -1
- package/dist/esm/mcp/proxy-agent.d.ts +8 -6
- package/dist/esm/mcp/proxy-agent.d.ts.map +1 -1
- package/dist/esm/mcp/proxy-agent.js +17 -33
- package/dist/esm/mcp/proxy-agent.js.map +1 -1
- package/package.json +4 -7
|
@@ -6,7 +6,7 @@ import { resolveProxyAgentForCategory } from "./proxy-agent.js";
|
|
|
6
6
|
export class HttpMCPClient extends MCPClientBase {
|
|
7
7
|
endpoint = '';
|
|
8
8
|
sessionId;
|
|
9
|
-
|
|
9
|
+
proxyUrl;
|
|
10
10
|
/** 用户自定义请求头(如 Authorization) */
|
|
11
11
|
customHeaders;
|
|
12
12
|
/** 结构化鉴权配置 */
|
|
@@ -16,7 +16,7 @@ export class HttpMCPClient extends MCPClientBase {
|
|
|
16
16
|
throw new Error(`${config.transport} transport requires an "endpoint" URL in config`);
|
|
17
17
|
}
|
|
18
18
|
this.endpoint = config.endpoint;
|
|
19
|
-
this.
|
|
19
|
+
this.proxyUrl = resolveProxyAgentForCategory(config.proxyCategory, 'MCP:HTTP');
|
|
20
20
|
this.customHeaders = config.headers;
|
|
21
21
|
this.authConfig = config.auth;
|
|
22
22
|
}
|
|
@@ -25,10 +25,7 @@ export class HttpMCPClient extends MCPClientBase {
|
|
|
25
25
|
this.sessionId = undefined;
|
|
26
26
|
this.customHeaders = undefined;
|
|
27
27
|
this.authConfig = undefined;
|
|
28
|
-
|
|
29
|
-
this.dispatcher.close().catch(() => { });
|
|
30
|
-
}
|
|
31
|
-
this.dispatcher = undefined;
|
|
28
|
+
this.proxyUrl = undefined;
|
|
32
29
|
}
|
|
33
30
|
/** 根据 auth 配置生成鉴权请求头 */
|
|
34
31
|
buildAuthHeaders() {
|
|
@@ -67,14 +64,16 @@ export class HttpMCPClient extends MCPClientBase {
|
|
|
67
64
|
Object.assign(headers, this.customHeaders);
|
|
68
65
|
}
|
|
69
66
|
const body = JSON.stringify(request);
|
|
70
|
-
// 使用
|
|
71
|
-
|
|
67
|
+
// 使用 Node.js 22.17+ 内置 fetch,通过 proxy 选项支持代理
|
|
68
|
+
const fetchOptions = {
|
|
72
69
|
method: 'POST',
|
|
73
70
|
headers,
|
|
74
71
|
body,
|
|
75
72
|
signal: isNotification ? AbortSignal.timeout(10000) : undefined,
|
|
76
|
-
|
|
77
|
-
|
|
73
|
+
};
|
|
74
|
+
if (this.proxyUrl)
|
|
75
|
+
fetchOptions.proxy = this.proxyUrl;
|
|
76
|
+
fetch(this.endpoint, fetchOptions).then(async (res) => {
|
|
78
77
|
if (isNotification)
|
|
79
78
|
return;
|
|
80
79
|
// 捕获 session id
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../../src/mcp/http-client.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,yCAAyC;AACzC,+DAA+D;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,4BAA4B,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../../src/mcp/http-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { type Dispatcher } from 'undici';
|
|
2
1
|
/** 代理模式:system=系统代理, custom=自定义, direct=直连 */
|
|
3
2
|
export type ProxyMode = 'system' | 'custom' | 'direct';
|
|
4
3
|
/** 单分类代理配置 */
|
|
@@ -29,19 +28,22 @@ export declare function clearSystemProxyCache(): void;
|
|
|
29
28
|
*/
|
|
30
29
|
export declare function getSystemProxyUrl(): string | undefined;
|
|
31
30
|
/**
|
|
32
|
-
*
|
|
31
|
+
* 根据分类代理配置解析代理 URL
|
|
33
32
|
*
|
|
34
|
-
* - `mode='system'`:自动检测系统代理(环境变量 + Windows 注册表)
|
|
33
|
+
* - `mode='system'`:自动检测系统代理(环境变量 + macOS scutil + Windows 注册表)
|
|
35
34
|
* - `mode='custom'`:使用用户指定的代理 URL
|
|
36
35
|
* - `mode='direct'`:不走代理,返回 undefined
|
|
37
36
|
*
|
|
37
|
+
* 返回的 URL 可直接传给 Node.js 22.17+ 内置 fetch() 的 proxy 选项,
|
|
38
|
+
* 支持 http://、https://、socks4://、socks5:// 协议。
|
|
39
|
+
*
|
|
38
40
|
* @param category 分类代理配置
|
|
39
41
|
* @param label 日志标签(如 'LLM', 'MCP', 'Fetch')
|
|
40
|
-
* @returns
|
|
42
|
+
* @returns 代理 URL 字符串,无代理时返回 undefined
|
|
41
43
|
*/
|
|
42
|
-
export declare function resolveProxyAgentForCategory(category?: ProxyCategoryConfig, label?: string):
|
|
44
|
+
export declare function resolveProxyAgentForCategory(category?: ProxyCategoryConfig, label?: string): string | undefined;
|
|
43
45
|
/**
|
|
44
|
-
* 获取分类代理的有效 URL(用于 axios
|
|
46
|
+
* 获取分类代理的有效 URL(用于 axios 等 HTTP 客户端)
|
|
45
47
|
*
|
|
46
48
|
* @returns 代理 URL 字符串,无代理时返回 undefined
|
|
47
49
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy-agent.d.ts","sourceRoot":"","sources":["../../../src/mcp/proxy-agent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"proxy-agent.d.ts","sourceRoot":"","sources":["../../../src/mcp/proxy-agent.ts"],"names":[],"mappings":"AAQA,8CAA8C;AAC9C,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEvD,cAAc;AACd,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,SAAS,CAAC;IAChB,6BAA6B;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,qCAAqC;AACrC,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,mBAAmB,CAAC;IACzB,GAAG,EAAE,mBAAmB,CAAC;IACzB,KAAK,EAAE,mBAAmB,CAAC;CAC5B;AAED,uBAAuB;AACvB,eAAO,MAAM,sBAAsB,EAAE,aAIpC,CAAC;AAkDF;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,GAAG,SAAS,CAkC1D;AAED,yBAAyB;AACzB,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,GAAG,SAAS,CAStD;AAID;;;;;;;;;;;;;GAaG;AACH,wBAAgB,4BAA4B,CAC1C,QAAQ,CAAC,EAAE,mBAAmB,EAC9B,KAAK,SAAU,GACd,MAAM,GAAG,SAAS,CA8BpB;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,CAAC,EAAE,mBAAmB,GAAG,MAAM,GAAG,SAAS,CAY7F"}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
// ============================================================
|
|
2
2
|
// Proxy Agent — 通用 HTTP/HTTPS/SOCKS 代理解析工具
|
|
3
3
|
// ============================================================
|
|
4
|
-
import { ProxyAgent } from 'undici';
|
|
5
|
-
import { SocksProxyAgent } from 'socks-proxy-agent';
|
|
6
4
|
import { execSync } from 'child_process';
|
|
7
5
|
/** 默认代理设置:全部分类走系统代理 */
|
|
8
6
|
export const DEFAULT_PROXY_SETTINGS = {
|
|
@@ -110,41 +108,25 @@ export function getSystemProxyUrl() {
|
|
|
110
108
|
|| getMacOSSystemProxy()
|
|
111
109
|
|| getWindowsSystemProxy();
|
|
112
110
|
}
|
|
113
|
-
// ----
|
|
111
|
+
// ---- Proxy URL 解析 ----
|
|
114
112
|
/**
|
|
115
|
-
*
|
|
113
|
+
* 根据分类代理配置解析代理 URL
|
|
116
114
|
*
|
|
117
|
-
*
|
|
118
|
-
* - `http://proxy:8080` → undici ProxyAgent(HTTP 代理)
|
|
119
|
-
* - `https://proxy:8443` → undici ProxyAgent(HTTPS 代理)
|
|
120
|
-
* - `socks5://proxy:1080`→ SocksProxyAgent(SOCKS5)
|
|
121
|
-
* - `socks4://proxy:1080`→ SocksProxyAgent(SOCKS4)
|
|
122
|
-
*
|
|
123
|
-
* @returns dispatcher 实例,无代理时返回 undefined
|
|
124
|
-
*/
|
|
125
|
-
function createDispatcherFromUrl(proxyUrl, label = 'Proxy') {
|
|
126
|
-
if (proxyUrl.startsWith('socks')) {
|
|
127
|
-
console.debug(`[${label}] using SOCKS proxy: ${proxyUrl}`);
|
|
128
|
-
return new SocksProxyAgent(proxyUrl);
|
|
129
|
-
}
|
|
130
|
-
console.debug(`[${label}] using HTTP proxy: ${proxyUrl}`);
|
|
131
|
-
return new ProxyAgent(proxyUrl);
|
|
132
|
-
}
|
|
133
|
-
// ---- 新版分类代理解析 ----
|
|
134
|
-
/**
|
|
135
|
-
* 根据分类代理配置创建 dispatcher
|
|
136
|
-
*
|
|
137
|
-
* - `mode='system'`:自动检测系统代理(环境变量 + Windows 注册表)
|
|
115
|
+
* - `mode='system'`:自动检测系统代理(环境变量 + macOS scutil + Windows 注册表)
|
|
138
116
|
* - `mode='custom'`:使用用户指定的代理 URL
|
|
139
117
|
* - `mode='direct'`:不走代理,返回 undefined
|
|
140
118
|
*
|
|
119
|
+
* 返回的 URL 可直接传给 Node.js 22.17+ 内置 fetch() 的 proxy 选项,
|
|
120
|
+
* 支持 http://、https://、socks4://、socks5:// 协议。
|
|
121
|
+
*
|
|
141
122
|
* @param category 分类代理配置
|
|
142
123
|
* @param label 日志标签(如 'LLM', 'MCP', 'Fetch')
|
|
143
|
-
* @returns
|
|
124
|
+
* @returns 代理 URL 字符串,无代理时返回 undefined
|
|
144
125
|
*/
|
|
145
126
|
export function resolveProxyAgentForCategory(category, label = 'Proxy') {
|
|
146
127
|
if (!category)
|
|
147
128
|
return undefined;
|
|
129
|
+
let proxyUrl;
|
|
148
130
|
switch (category.mode) {
|
|
149
131
|
case 'direct':
|
|
150
132
|
console.debug(`[${label}] proxy mode: direct (no proxy)`);
|
|
@@ -154,20 +136,22 @@ export function resolveProxyAgentForCategory(category, label = 'Proxy') {
|
|
|
154
136
|
console.debug(`[${label}] proxy mode: custom but no URL configured, falling back to direct`);
|
|
155
137
|
return undefined;
|
|
156
138
|
}
|
|
157
|
-
|
|
139
|
+
proxyUrl = category.url;
|
|
140
|
+
break;
|
|
158
141
|
case 'system':
|
|
159
|
-
default:
|
|
160
|
-
|
|
161
|
-
if (!
|
|
142
|
+
default:
|
|
143
|
+
proxyUrl = getSystemProxyUrl();
|
|
144
|
+
if (!proxyUrl) {
|
|
162
145
|
console.debug(`[${label}] proxy mode: system, no system proxy detected`);
|
|
163
146
|
return undefined;
|
|
164
147
|
}
|
|
165
|
-
|
|
166
|
-
}
|
|
148
|
+
break;
|
|
167
149
|
}
|
|
150
|
+
console.debug(`[${label}] using proxy: ${proxyUrl}`);
|
|
151
|
+
return proxyUrl;
|
|
168
152
|
}
|
|
169
153
|
/**
|
|
170
|
-
* 获取分类代理的有效 URL(用于 axios
|
|
154
|
+
* 获取分类代理的有效 URL(用于 axios 等 HTTP 客户端)
|
|
171
155
|
*
|
|
172
156
|
* @returns 代理 URL 字符串,无代理时返回 undefined
|
|
173
157
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy-agent.js","sourceRoot":"","sources":["../../../src/mcp/proxy-agent.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,2CAA2C;AAC3C,+DAA+D;AAE/D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"proxy-agent.js","sourceRoot":"","sources":["../../../src/mcp/proxy-agent.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cicctencent/agent-core",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.6",
|
|
4
4
|
"description": "Core engine for AI agent — LLM orchestration, tool execution, MCP, skill routing, security, and memory pipeline.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/cjs/index.js",
|
|
@@ -27,17 +27,14 @@
|
|
|
27
27
|
"prepublishOnly": "npm run build"
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"js-tiktoken": "^1.0.21"
|
|
31
|
-
"socks-proxy-agent": "^10.0.0",
|
|
32
|
-
"undici": "^8.4.0"
|
|
30
|
+
"js-tiktoken": "^1.0.21"
|
|
33
31
|
},
|
|
34
32
|
"devDependencies": {
|
|
35
|
-
"@types/node": "^22.19.
|
|
33
|
+
"@types/node": "^22.19.21",
|
|
36
34
|
"typescript": "~5.8.3"
|
|
37
35
|
},
|
|
38
|
-
"peerDependencies": {},
|
|
39
36
|
"engines": {
|
|
40
|
-
"node": ">=
|
|
37
|
+
"node": ">=22.17.0"
|
|
41
38
|
},
|
|
42
39
|
"files": [
|
|
43
40
|
"dist/**/*",
|