@cicctencent/agent-core 0.1.6 → 0.1.8
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/README.md +4 -3
- package/dist/cjs/a2a/client.d.ts +47 -0
- package/dist/cjs/a2a/client.d.ts.map +1 -0
- package/dist/cjs/a2a/client.js +178 -0
- package/dist/cjs/a2a/client.js.map +1 -0
- package/dist/cjs/a2a/index.d.ts +3 -0
- package/dist/cjs/a2a/index.d.ts.map +1 -0
- package/dist/cjs/a2a/index.js +9 -0
- package/dist/cjs/a2a/index.js.map +1 -0
- package/dist/cjs/a2a/types.d.ts +149 -0
- package/dist/cjs/a2a/types.d.ts.map +1 -0
- package/dist/cjs/a2a/types.js +8 -0
- package/dist/cjs/a2a/types.js.map +1 -0
- package/dist/cjs/index.d.ts +22 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +52 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/middleware/audit-log.d.ts +22 -0
- package/dist/cjs/middleware/audit-log.d.ts.map +1 -0
- package/dist/cjs/middleware/audit-log.js +104 -0
- package/dist/cjs/middleware/audit-log.js.map +1 -0
- package/dist/cjs/middleware/timing.d.ts +25 -0
- package/dist/cjs/middleware/timing.d.ts.map +1 -0
- package/dist/cjs/middleware/timing.js +62 -0
- package/dist/cjs/middleware/timing.js.map +1 -0
- package/dist/cjs/middleware/tool-guard.d.ts +15 -0
- package/dist/cjs/middleware/tool-guard.d.ts.map +1 -0
- package/dist/cjs/middleware/tool-guard.js +31 -0
- package/dist/cjs/middleware/tool-guard.js.map +1 -0
- package/dist/cjs/observability/logger.d.ts +16 -0
- package/dist/cjs/observability/logger.d.ts.map +1 -0
- package/dist/cjs/observability/logger.js +35 -0
- package/dist/cjs/observability/logger.js.map +1 -0
- package/dist/cjs/pool/engine-pool.d.ts +22 -0
- package/dist/cjs/pool/engine-pool.d.ts.map +1 -0
- package/dist/cjs/pool/engine-pool.js +75 -0
- package/dist/cjs/pool/engine-pool.js.map +1 -0
- package/dist/cjs/runtime/run-registry.d.ts +104 -0
- package/dist/cjs/runtime/run-registry.d.ts.map +1 -0
- package/dist/cjs/runtime/run-registry.js +261 -0
- package/dist/cjs/runtime/run-registry.js.map +1 -0
- package/dist/cjs/sandbox/types.d.ts +1 -1
- package/dist/cjs/sandbox/types.d.ts.map +1 -1
- package/dist/cjs/security/guard.js +2 -2
- package/dist/cjs/security/guard.js.map +1 -1
- package/dist/cjs/security/permission.d.ts +39 -0
- package/dist/cjs/security/permission.d.ts.map +1 -0
- package/dist/cjs/security/permission.js +111 -0
- package/dist/cjs/security/permission.js.map +1 -0
- package/dist/cjs/security/risk.d.ts +28 -0
- package/dist/cjs/security/risk.d.ts.map +1 -0
- package/dist/cjs/security/risk.js +148 -0
- package/dist/cjs/security/risk.js.map +1 -0
- package/dist/cjs/security/types.d.ts +1 -1
- package/dist/cjs/security/types.d.ts.map +1 -1
- package/dist/cjs/store/file-tool-result-store.d.ts +27 -0
- package/dist/cjs/store/file-tool-result-store.d.ts.map +1 -0
- package/dist/cjs/store/file-tool-result-store.js +166 -0
- package/dist/cjs/store/file-tool-result-store.js.map +1 -0
- package/dist/cjs/store/json-store.d.ts +54 -0
- package/dist/cjs/store/json-store.d.ts.map +1 -0
- package/dist/cjs/store/json-store.js +274 -0
- package/dist/cjs/store/json-store.js.map +1 -0
- package/dist/cjs/utils/data-dir.d.ts +27 -0
- package/dist/cjs/utils/data-dir.d.ts.map +1 -0
- package/dist/cjs/utils/data-dir.js +122 -0
- package/dist/cjs/utils/data-dir.js.map +1 -0
- package/dist/cjs/utils/event-collector.d.ts +13 -0
- package/dist/cjs/utils/event-collector.d.ts.map +1 -0
- package/dist/cjs/utils/event-collector.js +33 -0
- package/dist/cjs/utils/event-collector.js.map +1 -0
- package/dist/esm/a2a/client.d.ts +47 -0
- package/dist/esm/a2a/client.d.ts.map +1 -0
- package/dist/esm/a2a/client.js +174 -0
- package/dist/esm/a2a/client.js.map +1 -0
- package/dist/esm/a2a/index.d.ts +3 -0
- package/dist/esm/a2a/index.d.ts.map +1 -0
- package/dist/esm/a2a/index.js +5 -0
- package/dist/esm/a2a/index.js.map +1 -0
- package/dist/esm/a2a/types.d.ts +149 -0
- package/dist/esm/a2a/types.d.ts.map +1 -0
- package/dist/esm/a2a/types.js +7 -0
- package/dist/esm/a2a/types.js.map +1 -0
- package/dist/esm/index.d.ts +22 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +20 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/middleware/audit-log.d.ts +22 -0
- package/dist/esm/middleware/audit-log.d.ts.map +1 -0
- package/dist/esm/middleware/audit-log.js +67 -0
- package/dist/esm/middleware/audit-log.js.map +1 -0
- package/dist/esm/middleware/timing.d.ts +25 -0
- package/dist/esm/middleware/timing.d.ts.map +1 -0
- package/dist/esm/middleware/timing.js +58 -0
- package/dist/esm/middleware/timing.js.map +1 -0
- package/dist/esm/middleware/tool-guard.d.ts +15 -0
- package/dist/esm/middleware/tool-guard.d.ts.map +1 -0
- package/dist/esm/middleware/tool-guard.js +27 -0
- package/dist/esm/middleware/tool-guard.js.map +1 -0
- package/dist/esm/observability/logger.d.ts +16 -0
- package/dist/esm/observability/logger.d.ts.map +1 -0
- package/dist/esm/observability/logger.js +31 -0
- package/dist/esm/observability/logger.js.map +1 -0
- package/dist/esm/pool/engine-pool.d.ts +22 -0
- package/dist/esm/pool/engine-pool.d.ts.map +1 -0
- package/dist/esm/pool/engine-pool.js +71 -0
- package/dist/esm/pool/engine-pool.js.map +1 -0
- package/dist/esm/runtime/run-registry.d.ts +104 -0
- package/dist/esm/runtime/run-registry.d.ts.map +1 -0
- package/dist/esm/runtime/run-registry.js +256 -0
- package/dist/esm/runtime/run-registry.js.map +1 -0
- package/dist/esm/sandbox/types.d.ts +1 -1
- package/dist/esm/sandbox/types.d.ts.map +1 -1
- package/dist/esm/security/guard.js +2 -2
- package/dist/esm/security/guard.js.map +1 -1
- package/dist/esm/security/permission.d.ts +39 -0
- package/dist/esm/security/permission.d.ts.map +1 -0
- package/dist/esm/security/permission.js +102 -0
- package/dist/esm/security/permission.js.map +1 -0
- package/dist/esm/security/risk.d.ts +28 -0
- package/dist/esm/security/risk.d.ts.map +1 -0
- package/dist/esm/security/risk.js +142 -0
- package/dist/esm/security/risk.js.map +1 -0
- package/dist/esm/security/types.d.ts +1 -1
- package/dist/esm/security/types.d.ts.map +1 -1
- package/dist/esm/store/file-tool-result-store.d.ts +27 -0
- package/dist/esm/store/file-tool-result-store.d.ts.map +1 -0
- package/dist/esm/store/file-tool-result-store.js +129 -0
- package/dist/esm/store/file-tool-result-store.js.map +1 -0
- package/dist/esm/store/json-store.d.ts +54 -0
- package/dist/esm/store/json-store.d.ts.map +1 -0
- package/dist/esm/store/json-store.js +236 -0
- package/dist/esm/store/json-store.js.map +1 -0
- package/dist/esm/utils/data-dir.d.ts +27 -0
- package/dist/esm/utils/data-dir.d.ts.map +1 -0
- package/dist/esm/utils/data-dir.js +80 -0
- package/dist/esm/utils/data-dir.js.map +1 -0
- package/dist/esm/utils/event-collector.d.ts +13 -0
- package/dist/esm/utils/event-collector.d.ts.map +1 -0
- package/dist/esm/utils/event-collector.js +30 -0
- package/dist/esm/utils/event-collector.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
// ============================================================
|
|
2
|
+
// A2AClient — 轻量 A2A 协议客户端
|
|
3
|
+
// 支持 Agent 发现、同步/流式任务、取消等核心方法
|
|
4
|
+
// ============================================================
|
|
5
|
+
/** JSON-RPC 请求 ID 自增计数器 */
|
|
6
|
+
let rpcIdCounter = 0;
|
|
7
|
+
function nextRpcId() {
|
|
8
|
+
return `a2a_${++rpcIdCounter}_${Date.now()}`;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* 轻量 A2A 协议客户端
|
|
12
|
+
*
|
|
13
|
+
* 用法:
|
|
14
|
+
* const client = new A2AClient();
|
|
15
|
+
* const card = await client.discoverAgent('https://example.com');
|
|
16
|
+
* const task = await client.sendTask(card.url, { message: ... });
|
|
17
|
+
*/
|
|
18
|
+
export class A2AClient {
|
|
19
|
+
timeout;
|
|
20
|
+
fetchFn;
|
|
21
|
+
headers;
|
|
22
|
+
constructor(options = {}) {
|
|
23
|
+
this.timeout = options.timeout ?? 300_000;
|
|
24
|
+
this.fetchFn = options.fetch ?? globalThis.fetch.bind(globalThis);
|
|
25
|
+
this.headers = options.headers ?? {};
|
|
26
|
+
}
|
|
27
|
+
// ---- Agent 发现 ----
|
|
28
|
+
/**
|
|
29
|
+
* 通过 base URL 发现远程 Agent
|
|
30
|
+
* 自动请求 /.well-known/agent.json 并返回 AgentCard
|
|
31
|
+
*/
|
|
32
|
+
async discoverAgent(baseUrl) {
|
|
33
|
+
const url = this.resolveAgentCardUrl(baseUrl);
|
|
34
|
+
const res = await this.fetchWithTimeout(url, { method: 'GET' });
|
|
35
|
+
if (!res.ok) {
|
|
36
|
+
throw new Error(`A2A discover failed: HTTP ${res.status} from ${url}`);
|
|
37
|
+
}
|
|
38
|
+
const card = (await res.json());
|
|
39
|
+
if (!card.name || !card.url) {
|
|
40
|
+
throw new Error(`Invalid Agent Card from ${url}: missing name or url`);
|
|
41
|
+
}
|
|
42
|
+
return card;
|
|
43
|
+
}
|
|
44
|
+
// ---- 任务操作 ----
|
|
45
|
+
/** 同步发送任务(tasks/send),等待完成后返回完整 Task */
|
|
46
|
+
async sendTask(agentUrl, params) {
|
|
47
|
+
const response = await this.jsonRpcCall(agentUrl, 'tasks/send', params);
|
|
48
|
+
if (response.error) {
|
|
49
|
+
throw new Error(`A2A tasks/send error [${response.error.code}]: ${response.error.message}`);
|
|
50
|
+
}
|
|
51
|
+
return response.result;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* 流式发送任务(tasks/sendSubscribe),通过回调逐步接收事件
|
|
55
|
+
* 返回所有收集到的事件列表
|
|
56
|
+
*/
|
|
57
|
+
async sendTaskStreaming(agentUrl, params, onEvent) {
|
|
58
|
+
const request = {
|
|
59
|
+
jsonrpc: '2.0',
|
|
60
|
+
id: nextRpcId(),
|
|
61
|
+
method: 'tasks/sendSubscribe',
|
|
62
|
+
params: params,
|
|
63
|
+
};
|
|
64
|
+
const res = await this.fetchWithTimeout(agentUrl, {
|
|
65
|
+
method: 'POST',
|
|
66
|
+
headers: { 'Content-Type': 'application/json', ...this.headers },
|
|
67
|
+
body: JSON.stringify(request),
|
|
68
|
+
});
|
|
69
|
+
if (!res.ok) {
|
|
70
|
+
throw new Error(`A2A streaming failed: HTTP ${res.status}`);
|
|
71
|
+
}
|
|
72
|
+
const events = [];
|
|
73
|
+
const body = res.body;
|
|
74
|
+
if (!body) {
|
|
75
|
+
throw new Error('A2A streaming: empty response body');
|
|
76
|
+
}
|
|
77
|
+
// SSE 解析:逐行读取 data: 前缀的 JSON 事件
|
|
78
|
+
const reader = body.getReader();
|
|
79
|
+
const decoder = new TextDecoder();
|
|
80
|
+
let buffer = '';
|
|
81
|
+
try {
|
|
82
|
+
while (true) {
|
|
83
|
+
const { done, value } = await reader.read();
|
|
84
|
+
if (done)
|
|
85
|
+
break;
|
|
86
|
+
buffer += decoder.decode(value, { stream: true });
|
|
87
|
+
const lines = buffer.split('\n');
|
|
88
|
+
buffer = lines.pop() || ''; // 最后一行可能不完整
|
|
89
|
+
for (const line of lines) {
|
|
90
|
+
const trimmed = line.trim();
|
|
91
|
+
if (!trimmed || trimmed.startsWith(':'))
|
|
92
|
+
continue; // 跳过注释和空行
|
|
93
|
+
if (trimmed.startsWith('data:')) {
|
|
94
|
+
const jsonStr = trimmed.slice(5).trim();
|
|
95
|
+
if (!jsonStr || jsonStr === '[DONE]')
|
|
96
|
+
continue;
|
|
97
|
+
try {
|
|
98
|
+
const event = JSON.parse(jsonStr);
|
|
99
|
+
events.push(event);
|
|
100
|
+
onEvent?.(event);
|
|
101
|
+
}
|
|
102
|
+
catch {
|
|
103
|
+
// 跳过非 JSON 行
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
finally {
|
|
110
|
+
reader.releaseLock();
|
|
111
|
+
}
|
|
112
|
+
return events;
|
|
113
|
+
}
|
|
114
|
+
/** 查询任务状态(tasks/get) */
|
|
115
|
+
async getTask(agentUrl, taskId, historyLength) {
|
|
116
|
+
const params = { id: taskId };
|
|
117
|
+
if (historyLength !== undefined)
|
|
118
|
+
params.historyLength = historyLength;
|
|
119
|
+
const response = await this.jsonRpcCall(agentUrl, 'tasks/get', params);
|
|
120
|
+
if (response.error) {
|
|
121
|
+
throw new Error(`A2A tasks/get error [${response.error.code}]: ${response.error.message}`);
|
|
122
|
+
}
|
|
123
|
+
return response.result;
|
|
124
|
+
}
|
|
125
|
+
/** 取消任务(tasks/cancel) */
|
|
126
|
+
async cancelTask(agentUrl, taskId) {
|
|
127
|
+
const params = { id: taskId };
|
|
128
|
+
const response = await this.jsonRpcCall(agentUrl, 'tasks/cancel', params);
|
|
129
|
+
if (response.error) {
|
|
130
|
+
throw new Error(`A2A tasks/cancel error [${response.error.code}]: ${response.error.message}`);
|
|
131
|
+
}
|
|
132
|
+
return response.result;
|
|
133
|
+
}
|
|
134
|
+
// ---- 内部方法 ----
|
|
135
|
+
/** 解析 Agent Card URL */
|
|
136
|
+
resolveAgentCardUrl(baseUrl) {
|
|
137
|
+
const trimmed = baseUrl.replace(/\/+$/, '');
|
|
138
|
+
if (trimmed.includes('/.well-known/agent.json'))
|
|
139
|
+
return trimmed;
|
|
140
|
+
if (trimmed.endsWith('/a2a'))
|
|
141
|
+
return `${trimmed}/.well-known/agent.json`;
|
|
142
|
+
return `${trimmed}/.well-known/agent.json`;
|
|
143
|
+
}
|
|
144
|
+
/** 发送 JSON-RPC 请求 */
|
|
145
|
+
async jsonRpcCall(url, method, params) {
|
|
146
|
+
const request = {
|
|
147
|
+
jsonrpc: '2.0',
|
|
148
|
+
id: nextRpcId(),
|
|
149
|
+
method,
|
|
150
|
+
params,
|
|
151
|
+
};
|
|
152
|
+
const res = await this.fetchWithTimeout(url, {
|
|
153
|
+
method: 'POST',
|
|
154
|
+
headers: { 'Content-Type': 'application/json', ...this.headers },
|
|
155
|
+
body: JSON.stringify(request),
|
|
156
|
+
});
|
|
157
|
+
if (!res.ok) {
|
|
158
|
+
throw new Error(`A2A JSON-RPC ${method} failed: HTTP ${res.status}`);
|
|
159
|
+
}
|
|
160
|
+
return (await res.json());
|
|
161
|
+
}
|
|
162
|
+
/** 带超时的 fetch */
|
|
163
|
+
async fetchWithTimeout(url, init) {
|
|
164
|
+
const controller = new AbortController();
|
|
165
|
+
const timer = setTimeout(() => controller.abort(), this.timeout);
|
|
166
|
+
try {
|
|
167
|
+
return await this.fetchFn(url, { ...init, signal: controller.signal });
|
|
168
|
+
}
|
|
169
|
+
finally {
|
|
170
|
+
clearTimeout(timer);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/a2a/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export type { A2AAgentCard, A2AAgentSkill, A2AAgentCapabilities, A2ATextPart, A2AFilePart, A2ADataPart, A2APart, A2AMessage, A2ATaskState, A2ATaskStatus, A2AArtifact, A2ATask, A2ATaskStatusUpdateEvent, A2ATaskArtifactUpdateEvent, A2ATaskEvent, A2AJsonRpcRequest, A2AJsonRpcResponse, A2AJsonRpcError, A2ASendTaskParams, A2ASendSubscribeParams, A2AGetTaskParams, A2ACancelTaskParams, A2ARemoteAgentConfig, } from './types.ts';
|
|
2
|
+
export { A2AClient } from './client.ts';
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/a2a/index.ts"],"names":[],"mappings":"AAIA,YAAY,EACV,YAAY,EACZ,aAAa,EACb,oBAAoB,EACpB,WAAW,EACX,WAAW,EACX,WAAW,EACX,OAAO,EACP,UAAU,EACV,YAAY,EACZ,aAAa,EACb,WAAW,EACX,OAAO,EACP,wBAAwB,EACxB,0BAA0B,EAC1B,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/a2a/index.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,aAAa;AACb,+DAA+D;AA4B/D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
/** Agent 技能描述 */
|
|
2
|
+
export interface A2AAgentSkill {
|
|
3
|
+
id: string;
|
|
4
|
+
name: string;
|
|
5
|
+
description: string;
|
|
6
|
+
tags?: string[];
|
|
7
|
+
examples?: string[];
|
|
8
|
+
inputModes?: string[];
|
|
9
|
+
outputModes?: string[];
|
|
10
|
+
}
|
|
11
|
+
/** Agent 能力声明 */
|
|
12
|
+
export interface A2AAgentCapabilities {
|
|
13
|
+
streaming: boolean;
|
|
14
|
+
pushNotifications: boolean;
|
|
15
|
+
stateTransitionHistory?: boolean;
|
|
16
|
+
}
|
|
17
|
+
/** Agent Card — 通过 /.well-known/agent.json 发布 */
|
|
18
|
+
export interface A2AAgentCard {
|
|
19
|
+
name: string;
|
|
20
|
+
description: string;
|
|
21
|
+
url: string;
|
|
22
|
+
version: string;
|
|
23
|
+
provider?: {
|
|
24
|
+
organization: string;
|
|
25
|
+
url?: string;
|
|
26
|
+
};
|
|
27
|
+
capabilities: A2AAgentCapabilities;
|
|
28
|
+
skills: A2AAgentSkill[];
|
|
29
|
+
defaultInputModes: string[];
|
|
30
|
+
defaultOutputModes: string[];
|
|
31
|
+
supportsAuthenticatedExtendedCard?: boolean;
|
|
32
|
+
}
|
|
33
|
+
export interface A2ATextPart {
|
|
34
|
+
kind: 'text';
|
|
35
|
+
text: string;
|
|
36
|
+
}
|
|
37
|
+
export interface A2AFilePart {
|
|
38
|
+
kind: 'file';
|
|
39
|
+
file: {
|
|
40
|
+
name?: string;
|
|
41
|
+
mimeType?: string;
|
|
42
|
+
bytes?: string;
|
|
43
|
+
uri?: string;
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
export interface A2ADataPart {
|
|
47
|
+
kind: 'data';
|
|
48
|
+
data: Record<string, unknown>;
|
|
49
|
+
}
|
|
50
|
+
export type A2APart = A2ATextPart | A2AFilePart | A2ADataPart;
|
|
51
|
+
export interface A2AMessage {
|
|
52
|
+
kind: 'message';
|
|
53
|
+
role: 'user' | 'agent';
|
|
54
|
+
messageId: string;
|
|
55
|
+
parts: A2APart[];
|
|
56
|
+
taskId?: string;
|
|
57
|
+
contextId?: string;
|
|
58
|
+
referenceTaskIds?: string[];
|
|
59
|
+
metadata?: Record<string, unknown>;
|
|
60
|
+
}
|
|
61
|
+
export type A2ATaskState = 'submitted' | 'working' | 'input-required' | 'completed' | 'failed' | 'canceled' | 'unknown';
|
|
62
|
+
export interface A2ATaskStatus {
|
|
63
|
+
state: A2ATaskState;
|
|
64
|
+
message?: A2AMessage;
|
|
65
|
+
timestamp?: string;
|
|
66
|
+
}
|
|
67
|
+
export interface A2AArtifact {
|
|
68
|
+
artifactId: string;
|
|
69
|
+
name?: string;
|
|
70
|
+
description?: string;
|
|
71
|
+
parts: A2APart[];
|
|
72
|
+
metadata?: Record<string, unknown>;
|
|
73
|
+
}
|
|
74
|
+
export interface A2ATask {
|
|
75
|
+
id: string;
|
|
76
|
+
contextId: string;
|
|
77
|
+
status: A2ATaskStatus;
|
|
78
|
+
artifacts?: A2AArtifact[];
|
|
79
|
+
history?: A2AMessage[];
|
|
80
|
+
metadata?: Record<string, unknown>;
|
|
81
|
+
}
|
|
82
|
+
export interface A2ATaskStatusUpdateEvent {
|
|
83
|
+
kind: 'status-update';
|
|
84
|
+
taskId: string;
|
|
85
|
+
contextId: string;
|
|
86
|
+
status: A2ATaskStatus;
|
|
87
|
+
final: boolean;
|
|
88
|
+
metadata?: Record<string, unknown>;
|
|
89
|
+
}
|
|
90
|
+
export interface A2ATaskArtifactUpdateEvent {
|
|
91
|
+
kind: 'artifact-update';
|
|
92
|
+
taskId: string;
|
|
93
|
+
contextId: string;
|
|
94
|
+
artifact: A2AArtifact;
|
|
95
|
+
metadata?: Record<string, unknown>;
|
|
96
|
+
}
|
|
97
|
+
export type A2ATaskEvent = A2ATaskStatusUpdateEvent | A2ATaskArtifactUpdateEvent;
|
|
98
|
+
export interface A2AJsonRpcRequest {
|
|
99
|
+
jsonrpc: '2.0';
|
|
100
|
+
id: string;
|
|
101
|
+
method: string;
|
|
102
|
+
params?: Record<string, unknown>;
|
|
103
|
+
}
|
|
104
|
+
export interface A2AJsonRpcError {
|
|
105
|
+
code: number;
|
|
106
|
+
message: string;
|
|
107
|
+
data?: unknown;
|
|
108
|
+
}
|
|
109
|
+
export interface A2AJsonRpcResponse {
|
|
110
|
+
jsonrpc: '2.0';
|
|
111
|
+
id: string;
|
|
112
|
+
result?: unknown;
|
|
113
|
+
error?: A2AJsonRpcError;
|
|
114
|
+
}
|
|
115
|
+
/** tasks/send 参数 */
|
|
116
|
+
export interface A2ASendTaskParams {
|
|
117
|
+
id: string;
|
|
118
|
+
contextId?: string;
|
|
119
|
+
message: A2AMessage;
|
|
120
|
+
acceptedOutputModes?: string[];
|
|
121
|
+
pushNotificationConfig?: {
|
|
122
|
+
url: string;
|
|
123
|
+
token?: string;
|
|
124
|
+
};
|
|
125
|
+
metadata?: Record<string, unknown>;
|
|
126
|
+
}
|
|
127
|
+
/** tasks/sendSubscribe 参数(同 tasks/send,但返回 SSE 流) */
|
|
128
|
+
export type A2ASendSubscribeParams = A2ASendTaskParams;
|
|
129
|
+
/** tasks/get 参数 */
|
|
130
|
+
export interface A2AGetTaskParams {
|
|
131
|
+
id: string;
|
|
132
|
+
historyLength?: number;
|
|
133
|
+
}
|
|
134
|
+
/** tasks/cancel 参数 */
|
|
135
|
+
export interface A2ACancelTaskParams {
|
|
136
|
+
id: string;
|
|
137
|
+
}
|
|
138
|
+
/** 存储在 data/a2a-remotes.json 中的远程 Agent 配置 */
|
|
139
|
+
export interface A2ARemoteAgentConfig {
|
|
140
|
+
id: string;
|
|
141
|
+
name: string;
|
|
142
|
+
url: string;
|
|
143
|
+
agentCardUrl: string;
|
|
144
|
+
enabled: boolean;
|
|
145
|
+
discoveredAt?: string;
|
|
146
|
+
lastCheckedAt?: string;
|
|
147
|
+
card?: A2AAgentCard;
|
|
148
|
+
}
|
|
149
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/a2a/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
// ============================================================
|
|
2
|
+
// A2A (Agent-to-Agent) 协议核心类型定义
|
|
3
|
+
// 基于 A2A Protocol v1.x(Linux Foundation / Google)
|
|
4
|
+
// JSON-RPC 2.0 over HTTP(S)
|
|
5
|
+
// ============================================================
|
|
6
|
+
export {};
|
|
7
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/a2a/types.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,gCAAgC;AAChC,kDAAkD;AAClD,4BAA4B;AAC5B,+DAA+D"}
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -34,8 +34,25 @@ export type { ProxyMode, ProxyCategoryConfig, ProxySettings, } from './mcp/proxy
|
|
|
34
34
|
export type { MCPClient, MCPServerConfig, MCPTransport, } from './mcp/types.ts';
|
|
35
35
|
export { SecurityGuard } from './security/guard.ts';
|
|
36
36
|
export type { SanitizeResult, SecurityRule, SecurityPolicy, Severity, } from './security/types.ts';
|
|
37
|
+
export { assessToolRisk, isLowRiskTool, clearRiskCache, setToolSecurityPolicyProvider, } from './security/risk.ts';
|
|
38
|
+
export type { ToolRiskLevel, ToolRiskAssessment, ToolSecurityPolicy, ToolSecurityPolicyProvider, } from './security/risk.ts';
|
|
39
|
+
export { createPermissionRequest, listPermissionRequests, findApprovedPermission, decidePermissionRequest, configurePermissionManager, InMemoryPermissionStore, } from './security/permission.ts';
|
|
40
|
+
export type { PermissionDecision, PermissionRequest, PermissionStore, } from './security/permission.ts';
|
|
37
41
|
export type { Sandbox, SandboxConfig, SandboxManager, ScriptLanguage, } from './sandbox/types.ts';
|
|
38
42
|
export { SANDBOX_BLOCKED_COMMANDS, SANDBOX_SAFE_ENV_KEYS, DEFAULT_SANDBOX_CONFIG } from './sandbox/types.ts';
|
|
43
|
+
export { logEvent, setLogTransport } from './observability/logger.ts';
|
|
44
|
+
export type { LogLevel, ObservabilityEvent, LogTransport, } from './observability/logger.ts';
|
|
45
|
+
export { EnginePool } from './pool/engine-pool.ts';
|
|
46
|
+
export { RunRegistry, InMemoryRunStateStore } from './runtime/run-registry.ts';
|
|
47
|
+
export type { BufferedEvent, RunToolCallRecord, EventSubscriber, RunStatus, ActiveRun, RunSnapshot, RunStateStore, } from './runtime/run-registry.ts';
|
|
48
|
+
export { JsonStore, JsonListStore } from './store/json-store.ts';
|
|
49
|
+
export type { JsonStoreOptions } from './store/json-store.ts';
|
|
50
|
+
export { FileToolResultStore } from './store/file-tool-result-store.ts';
|
|
51
|
+
export type { FileToolResultStoreOptions } from './store/file-tool-result-store.ts';
|
|
52
|
+
export { TimingMiddleware } from './middleware/timing.ts';
|
|
53
|
+
export type { TimingReport } from './middleware/timing.ts';
|
|
54
|
+
export { ToolGuardMiddleware } from './middleware/tool-guard.ts';
|
|
55
|
+
export { AuditLogMiddleware } from './middleware/audit-log.ts';
|
|
39
56
|
export type { Hook, HookEvent, HookContext, HookResult, } from './hooks/types.ts';
|
|
40
57
|
export type { Middleware, MiddlewareContext, } from './middleware/types.ts';
|
|
41
58
|
export type { MemoryEntry, MemoryLayer, MemoryServiceLike, } from './memory/types.ts';
|
|
@@ -51,4 +68,9 @@ export { MemoryRecallEngine, formatRecallForPrompt } from './memory/recall.ts';
|
|
|
51
68
|
export type { RecallResult, ScoredMemoryEntry, RecallOptions } from './memory/recall.ts';
|
|
52
69
|
export { MemoryPipeline } from './memory/pipeline.ts';
|
|
53
70
|
export type { PipelineOptions, PipelineResult } from './memory/pipeline.ts';
|
|
71
|
+
export { getDataPath, getProjectDataPath, ensureDataDir, ensureProjectDataDir, expandEnvVars, setAppName, getAppName, } from './utils/data-dir.ts';
|
|
72
|
+
export { collectEngineOutput } from './utils/event-collector.ts';
|
|
73
|
+
export type { EngineRunResult } from './utils/event-collector.ts';
|
|
74
|
+
export { A2AClient, } from './a2a/index.ts';
|
|
75
|
+
export type { A2AAgentCard, A2AAgentSkill, A2AAgentCapabilities, A2APart, A2ATextPart, A2AFilePart, A2ADataPart, A2AMessage, A2ATaskState, A2ATaskStatus, A2AArtifact, A2ATask, A2ATaskStatusUpdateEvent, A2ATaskArtifactUpdateEvent, A2ATaskEvent, A2AJsonRpcRequest, A2AJsonRpcResponse, A2AJsonRpcError, A2ASendTaskParams, A2ASendSubscribeParams, A2AGetTaskParams, A2ACancelTaskParams, A2ARemoteAgentConfig, } from './a2a/index.ts';
|
|
54
76
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/index.js
CHANGED
|
@@ -29,11 +29,31 @@ export { HttpMCPClient } from "./mcp/http-client.js";
|
|
|
29
29
|
export { resolveProxyAgentForCategory, resolveProxyUrlForCategory, getSystemProxyUrl, clearSystemProxyCache, getWindowsSystemProxy, DEFAULT_PROXY_SETTINGS, } from "./mcp/proxy-agent.js";
|
|
30
30
|
// ---- Security ----
|
|
31
31
|
export { SecurityGuard } from "./security/guard.js";
|
|
32
|
+
export { assessToolRisk, isLowRiskTool, clearRiskCache, setToolSecurityPolicyProvider, } from "./security/risk.js";
|
|
33
|
+
export { createPermissionRequest, listPermissionRequests, findApprovedPermission, decidePermissionRequest, configurePermissionManager, InMemoryPermissionStore, } from "./security/permission.js";
|
|
32
34
|
export { SANDBOX_BLOCKED_COMMANDS, SANDBOX_SAFE_ENV_KEYS, DEFAULT_SANDBOX_CONFIG } from "./sandbox/types.js";
|
|
35
|
+
// ---- Observability ----
|
|
36
|
+
export { logEvent, setLogTransport } from "./observability/logger.js";
|
|
37
|
+
// ---- Pool ----
|
|
38
|
+
export { EnginePool } from "./pool/engine-pool.js";
|
|
39
|
+
// ---- Runtime ----
|
|
40
|
+
export { RunRegistry, InMemoryRunStateStore } from "./runtime/run-registry.js";
|
|
41
|
+
// ---- Store ----
|
|
42
|
+
export { JsonStore, JsonListStore } from "./store/json-store.js";
|
|
43
|
+
export { FileToolResultStore } from "./store/file-tool-result-store.js";
|
|
44
|
+
// ---- Middleware (builtin) ----
|
|
45
|
+
export { TimingMiddleware } from "./middleware/timing.js";
|
|
46
|
+
export { ToolGuardMiddleware } from "./middleware/tool-guard.js";
|
|
47
|
+
export { AuditLogMiddleware } from "./middleware/audit-log.js";
|
|
33
48
|
export { MemoryExtractor } from "./memory/extractor.js";
|
|
34
49
|
export { SceneAggregator } from "./memory/scene.js";
|
|
35
50
|
export { PersonaGenerator } from "./memory/persona.js";
|
|
36
51
|
export { MemoryCheckpoint, getMemoryCheckpoint, resetMemoryCheckpoint } from "./memory/checkpoint.js";
|
|
37
52
|
export { MemoryRecallEngine, formatRecallForPrompt } from "./memory/recall.js";
|
|
38
53
|
export { MemoryPipeline } from "./memory/pipeline.js";
|
|
54
|
+
// ---- Utils ----
|
|
55
|
+
export { getDataPath, getProjectDataPath, ensureDataDir, ensureProjectDataDir, expandEnvVars, setAppName, getAppName, } from "./utils/data-dir.js";
|
|
56
|
+
export { collectEngineOutput } from "./utils/event-collector.js";
|
|
57
|
+
// ---- A2A (Agent-to-Agent Protocol) ----
|
|
58
|
+
export { A2AClient, } from "./a2a/index.js";
|
|
39
59
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,YAAY;AACZ,+DAA+D;AAwB/D,yBAAyB;AACzB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACL,iCAAiC,EACjC,uBAAuB,EACvB,gCAAgC,EAChC,2BAA2B,EAC3B,kBAAkB,EAClB,2BAA2B,EAC3B,+BAA+B,EAC/B,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,0BAA0B,EAC1B,gCAAgC,GACjC,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAY7D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGxE,oBAAoB;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAO3D,kBAAkB;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAUhD,iBAAiB;AACjB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAgBxD,gBAAgB;AAChB,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3G,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EACL,4BAA4B,EAC5B,0BAA0B,EAC1B,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAY9B,qBAAqB;AACrB,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { Middleware, MiddlewareContext } from '../middleware/types.ts';
|
|
2
|
+
import type { HookContext, HookResult } from '../hooks/types.ts';
|
|
3
|
+
/**
|
|
4
|
+
* 记录每轮迭代和工具调用的审计日志
|
|
5
|
+
* - before/after: 记录迭代开始/结束 + 消息数量
|
|
6
|
+
* - onToolBefore/onToolAfter: 记录工具调用名称、参数、耗时
|
|
7
|
+
*/
|
|
8
|
+
export declare class AuditLogMiddleware implements Middleware {
|
|
9
|
+
name: string;
|
|
10
|
+
private logger;
|
|
11
|
+
/**
|
|
12
|
+
* @param logger 自定义日志输出函数,默认写入文件 data/logs/audit-YYYY-MM-DD.log
|
|
13
|
+
* 传入 'console' 字符串则输出到 console.log
|
|
14
|
+
* 也可传入自定义函数
|
|
15
|
+
*/
|
|
16
|
+
constructor(logger?: ((msg: string) => void) | 'console' | string);
|
|
17
|
+
before(ctx: MiddlewareContext): Promise<void>;
|
|
18
|
+
after(ctx: MiddlewareContext): Promise<void>;
|
|
19
|
+
onToolBefore(ctx: HookContext): Promise<HookResult | void>;
|
|
20
|
+
onToolAfter(ctx: HookContext): Promise<HookResult | void>;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=audit-log.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audit-log.d.ts","sourceRoot":"","sources":["../../../src/middleware/audit-log.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AA2BjE;;;;GAIG;AACH,qBAAa,kBAAmB,YAAW,UAAU;IACnD,IAAI,SAAe;IAEnB,OAAO,CAAC,MAAM,CAAwB;IAEtC;;;;OAIG;gBACS,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,GAAG,MAAM;IAY3D,MAAM,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7C,KAAK,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C,YAAY,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAI1D,WAAW,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;CAIhE"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
// ============================================================
|
|
2
|
+
// AuditLogMiddleware — 审计日志中间件
|
|
3
|
+
// ============================================================
|
|
4
|
+
import * as fs from 'fs';
|
|
5
|
+
import * as path from 'path';
|
|
6
|
+
/**
|
|
7
|
+
* 文件审计日志器 — 以 JSONL 格式追加写入日志文件
|
|
8
|
+
* 默认路径:{logDir}/audit-YYYY-MM-DD.log
|
|
9
|
+
*/
|
|
10
|
+
function createFileAuditLogger(logDir) {
|
|
11
|
+
const dir = logDir || path.join(process.cwd(), 'data', 'logs');
|
|
12
|
+
if (!fs.existsSync(dir)) {
|
|
13
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
14
|
+
}
|
|
15
|
+
return (msg) => {
|
|
16
|
+
const now = new Date();
|
|
17
|
+
const dateStr = now.toISOString().slice(0, 10);
|
|
18
|
+
const logFile = path.join(dir, `audit-${dateStr}.log`);
|
|
19
|
+
const entry = JSON.stringify({
|
|
20
|
+
ts: now.toISOString(),
|
|
21
|
+
msg,
|
|
22
|
+
}) + '\n';
|
|
23
|
+
fs.appendFileSync(logFile, entry, 'utf-8');
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* 记录每轮迭代和工具调用的审计日志
|
|
28
|
+
* - before/after: 记录迭代开始/结束 + 消息数量
|
|
29
|
+
* - onToolBefore/onToolAfter: 记录工具调用名称、参数、耗时
|
|
30
|
+
*/
|
|
31
|
+
export class AuditLogMiddleware {
|
|
32
|
+
name = 'audit-log';
|
|
33
|
+
logger;
|
|
34
|
+
/**
|
|
35
|
+
* @param logger 自定义日志输出函数,默认写入文件 data/logs/audit-YYYY-MM-DD.log
|
|
36
|
+
* 传入 'console' 字符串则输出到 console.log
|
|
37
|
+
* 也可传入自定义函数
|
|
38
|
+
*/
|
|
39
|
+
constructor(logger) {
|
|
40
|
+
if (logger === 'console') {
|
|
41
|
+
this.logger = (msg) => console.log(`[Audit] ${msg}`);
|
|
42
|
+
}
|
|
43
|
+
else if (typeof logger === 'function') {
|
|
44
|
+
this.logger = logger;
|
|
45
|
+
}
|
|
46
|
+
else if (typeof logger === 'string') {
|
|
47
|
+
this.logger = createFileAuditLogger(logger);
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
this.logger = createFileAuditLogger();
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
async before(ctx) {
|
|
54
|
+
this.logger(`Session=${ctx.sessionId} Iter=${ctx.iteration} START | messages=${ctx.messages.length} tools=${ctx.toolCount}`);
|
|
55
|
+
}
|
|
56
|
+
async after(ctx) {
|
|
57
|
+
this.logger(`Session=${ctx.sessionId} Iter=${ctx.iteration} END | messages=${ctx.messages.length}`);
|
|
58
|
+
}
|
|
59
|
+
async onToolBefore(ctx) {
|
|
60
|
+
this.logger(`Tool CALL: ${ctx.tool} | args=${JSON.stringify(ctx.args || {}).slice(0, 200)}`);
|
|
61
|
+
}
|
|
62
|
+
async onToolAfter(ctx) {
|
|
63
|
+
const output = ctx.result ? String(ctx.result).slice(0, 200) : '(empty)';
|
|
64
|
+
this.logger(`Tool DONE: ${ctx.tool} | output=${output}`);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=audit-log.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audit-log.js","sourceRoot":"","sources":["../../../src/middleware/audit-log.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { Middleware, MiddlewareContext } from '../middleware/types.ts';
|
|
2
|
+
import type { HookContext, HookResult } from '../hooks/types.ts';
|
|
3
|
+
export interface TimingReport {
|
|
4
|
+
type: 'iteration' | 'tool';
|
|
5
|
+
sessionId?: string;
|
|
6
|
+
iteration?: number;
|
|
7
|
+
toolName?: string;
|
|
8
|
+
elapsedMs: number;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* 统计每轮迭代和每次工具调用的耗时
|
|
12
|
+
* 可通过 onReport 回调获取汇总数据(如写入监控)
|
|
13
|
+
*/
|
|
14
|
+
export declare class TimingMiddleware implements Middleware {
|
|
15
|
+
name: string;
|
|
16
|
+
private iterStarts;
|
|
17
|
+
private toolTimings;
|
|
18
|
+
private onReport?;
|
|
19
|
+
constructor(onReport?: (report: TimingReport) => void);
|
|
20
|
+
before(ctx: MiddlewareContext): Promise<void>;
|
|
21
|
+
after(ctx: MiddlewareContext): Promise<void>;
|
|
22
|
+
onToolBefore(ctx: HookContext): Promise<HookResult | void>;
|
|
23
|
+
onToolAfter(ctx: HookContext): Promise<HookResult | void>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=timing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timing.d.ts","sourceRoot":"","sources":["../../../src/middleware/timing.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEjE,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,WAAW,GAAG,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAOD;;;GAGG;AACH,qBAAa,gBAAiB,YAAW,UAAU;IACjD,IAAI,SAAY;IAEhB,OAAO,CAAC,UAAU,CAA6B;IAC/C,OAAO,CAAC,WAAW,CAAiC;IACpD,OAAO,CAAC,QAAQ,CAAC,CAAiC;gBAEtC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI;IAI/C,MAAM,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7C,KAAK,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB5C,YAAY,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAM1D,WAAW,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;CAgBhE"}
|