@cicctencent/agent-core 0.1.16 → 0.1.17

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 (74) hide show
  1. package/README.md +1 -0
  2. package/dist/cjs/a2a/index.d.ts +2 -0
  3. package/dist/cjs/a2a/index.d.ts.map +1 -1
  4. package/dist/cjs/a2a/index.js +7 -1
  5. package/dist/cjs/a2a/index.js.map +1 -1
  6. package/dist/cjs/a2a/server.d.ts +50 -0
  7. package/dist/cjs/a2a/server.d.ts.map +1 -0
  8. package/dist/cjs/a2a/server.js +173 -0
  9. package/dist/cjs/a2a/server.js.map +1 -0
  10. package/dist/cjs/agent/runtime-builder.d.ts +83 -0
  11. package/dist/cjs/agent/runtime-builder.d.ts.map +1 -0
  12. package/dist/cjs/agent/runtime-builder.js +127 -0
  13. package/dist/cjs/agent/runtime-builder.js.map +1 -0
  14. package/dist/cjs/index.d.ts +8 -2
  15. package/dist/cjs/index.d.ts.map +1 -1
  16. package/dist/cjs/index.js +21 -2
  17. package/dist/cjs/index.js.map +1 -1
  18. package/dist/cjs/runtime/run-controller.d.ts +40 -0
  19. package/dist/cjs/runtime/run-controller.d.ts.map +1 -0
  20. package/dist/cjs/runtime/run-controller.js +93 -0
  21. package/dist/cjs/runtime/run-controller.js.map +1 -0
  22. package/dist/cjs/sandbox/local-sandbox.d.ts +59 -0
  23. package/dist/cjs/sandbox/local-sandbox.d.ts.map +1 -0
  24. package/dist/cjs/sandbox/local-sandbox.js +228 -0
  25. package/dist/cjs/sandbox/local-sandbox.js.map +1 -0
  26. package/dist/cjs/tool/builtin-tools.d.ts +22 -0
  27. package/dist/cjs/tool/builtin-tools.d.ts.map +1 -0
  28. package/dist/cjs/tool/builtin-tools.js +221 -0
  29. package/dist/cjs/tool/builtin-tools.js.map +1 -0
  30. package/dist/cjs/tool/registry.d.ts +25 -0
  31. package/dist/cjs/tool/registry.d.ts.map +1 -1
  32. package/dist/cjs/tool/registry.js +53 -0
  33. package/dist/cjs/tool/registry.js.map +1 -1
  34. package/dist/cjs/utils/event-adapter.d.ts +25 -0
  35. package/dist/cjs/utils/event-adapter.d.ts.map +1 -0
  36. package/dist/cjs/utils/event-adapter.js +93 -0
  37. package/dist/cjs/utils/event-adapter.js.map +1 -0
  38. package/dist/esm/a2a/index.d.ts +2 -0
  39. package/dist/esm/a2a/index.d.ts.map +1 -1
  40. package/dist/esm/a2a/index.js +1 -0
  41. package/dist/esm/a2a/index.js.map +1 -1
  42. package/dist/esm/a2a/server.d.ts +50 -0
  43. package/dist/esm/a2a/server.d.ts.map +1 -0
  44. package/dist/esm/a2a/server.js +165 -0
  45. package/dist/esm/a2a/server.js.map +1 -0
  46. package/dist/esm/agent/runtime-builder.d.ts +83 -0
  47. package/dist/esm/agent/runtime-builder.d.ts.map +1 -0
  48. package/dist/esm/agent/runtime-builder.js +120 -0
  49. package/dist/esm/agent/runtime-builder.js.map +1 -0
  50. package/dist/esm/index.d.ts +8 -2
  51. package/dist/esm/index.d.ts.map +1 -1
  52. package/dist/esm/index.js +4 -1
  53. package/dist/esm/index.js.map +1 -1
  54. package/dist/esm/runtime/run-controller.d.ts +40 -0
  55. package/dist/esm/runtime/run-controller.d.ts.map +1 -0
  56. package/dist/esm/runtime/run-controller.js +89 -0
  57. package/dist/esm/runtime/run-controller.js.map +1 -0
  58. package/dist/esm/sandbox/local-sandbox.d.ts +59 -0
  59. package/dist/esm/sandbox/local-sandbox.d.ts.map +1 -0
  60. package/dist/esm/sandbox/local-sandbox.js +188 -0
  61. package/dist/esm/sandbox/local-sandbox.js.map +1 -0
  62. package/dist/esm/tool/builtin-tools.d.ts +22 -0
  63. package/dist/esm/tool/builtin-tools.d.ts.map +1 -0
  64. package/dist/esm/tool/builtin-tools.js +214 -0
  65. package/dist/esm/tool/builtin-tools.js.map +1 -0
  66. package/dist/esm/tool/registry.d.ts +25 -0
  67. package/dist/esm/tool/registry.d.ts.map +1 -1
  68. package/dist/esm/tool/registry.js +53 -0
  69. package/dist/esm/tool/registry.js.map +1 -1
  70. package/dist/esm/utils/event-adapter.d.ts +25 -0
  71. package/dist/esm/utils/event-adapter.d.ts.map +1 -0
  72. package/dist/esm/utils/event-adapter.js +87 -0
  73. package/dist/esm/utils/event-adapter.js.map +1 -0
  74. package/package.json +1 -1
package/README.md CHANGED
@@ -8,6 +8,7 @@ AI Agent 核心引擎,提供 ReAct 循环编排、多 LLM 供应商抽象、
8
8
 
9
9
  - [完整 API 文档](./docs/API.md) — 所有模块的接口说明和使用示例
10
10
  - [v0.2 升级指南](./docs/UPGRADE_v0.2.md) — 新增 12 个下沉模块的集成指南
11
+ - [Runtime 下沉与迁移指南](./docs/RUNTIME_AND_MIGRATION.md) — Runtime Builder、RunController、默认沙箱、A2A Server Helper 与使用方迁移边界
11
12
 
12
13
  ## 快速开始
13
14
 
@@ -3,4 +3,6 @@ export { A2AClient, buildAuthHeaders } from './client.js';
3
3
  export type { AuthConfig, A2AClientOptions } from './client.js';
4
4
  export { createA2ARemoteRunner, extractTextFromMessage } from './runner.js';
5
5
  export type { A2ARemoteRunnerConfig } from './runner.js';
6
+ export { A2AServerHandler, InMemoryA2ATaskStore, createA2AAgentCard, createA2AMessage, mapAgentEventToA2AEvent, } from './server.js';
7
+ export type { A2AHandlerResponse, A2AServerAgentConfig, A2AServerHandlerOptions, A2AStreamingJsonRpcResponse, A2ATaskStore, } from './server.js';
6
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +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,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1D,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEhE,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAC5E,YAAY,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC"}
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,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1D,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEhE,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAC5E,YAAY,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEzD,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,2BAA2B,EAC3B,YAAY,GACb,MAAM,aAAa,CAAC"}
@@ -3,11 +3,17 @@
3
3
  // A2A 模块统一导出
4
4
  // ============================================================
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.extractTextFromMessage = exports.createA2ARemoteRunner = exports.buildAuthHeaders = exports.A2AClient = void 0;
6
+ exports.mapAgentEventToA2AEvent = exports.createA2AMessage = exports.createA2AAgentCard = exports.InMemoryA2ATaskStore = exports.A2AServerHandler = exports.extractTextFromMessage = exports.createA2ARemoteRunner = exports.buildAuthHeaders = exports.A2AClient = void 0;
7
7
  var client_ts_1 = require("./client.js");
8
8
  Object.defineProperty(exports, "A2AClient", { enumerable: true, get: function () { return client_ts_1.A2AClient; } });
9
9
  Object.defineProperty(exports, "buildAuthHeaders", { enumerable: true, get: function () { return client_ts_1.buildAuthHeaders; } });
10
10
  var runner_ts_1 = require("./runner.js");
11
11
  Object.defineProperty(exports, "createA2ARemoteRunner", { enumerable: true, get: function () { return runner_ts_1.createA2ARemoteRunner; } });
12
12
  Object.defineProperty(exports, "extractTextFromMessage", { enumerable: true, get: function () { return runner_ts_1.extractTextFromMessage; } });
13
+ var server_ts_1 = require("./server.js");
14
+ Object.defineProperty(exports, "A2AServerHandler", { enumerable: true, get: function () { return server_ts_1.A2AServerHandler; } });
15
+ Object.defineProperty(exports, "InMemoryA2ATaskStore", { enumerable: true, get: function () { return server_ts_1.InMemoryA2ATaskStore; } });
16
+ Object.defineProperty(exports, "createA2AAgentCard", { enumerable: true, get: function () { return server_ts_1.createA2AAgentCard; } });
17
+ Object.defineProperty(exports, "createA2AMessage", { enumerable: true, get: function () { return server_ts_1.createA2AMessage; } });
18
+ Object.defineProperty(exports, "mapAgentEventToA2AEvent", { enumerable: true, get: function () { return server_ts_1.mapAgentEventToA2AEvent; } });
13
19
  //# sourceMappingURL=index.js.map
@@ -1 +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,yCAA0D;AAAjD,sGAAA,SAAS,OAAA;AAAE,6GAAA,gBAAgB,OAAA;AAGpC,yCAA4E;AAAnE,kHAAA,qBAAqB,OAAA;AAAE,mHAAA,sBAAsB,OAAA"}
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,yCAA0D;AAAjD,sGAAA,SAAS,OAAA;AAAE,6GAAA,gBAAgB,OAAA;AAGpC,yCAA4E;AAAnE,kHAAA,qBAAqB,OAAA;AAAE,mHAAA,sBAAsB,OAAA;AAGtD,yCAMqB;AALnB,6GAAA,gBAAgB,OAAA;AAChB,iHAAA,oBAAoB,OAAA;AACpB,+GAAA,kBAAkB,OAAA;AAClB,6GAAA,gBAAgB,OAAA;AAChB,oHAAA,uBAAuB,OAAA"}
@@ -0,0 +1,50 @@
1
+ import type { AgentEngine } from '../agent/engine.js';
2
+ import type { RunOptions } from '../agent/types.js';
3
+ import type { AgentEvent } from '../types.js';
4
+ import type { A2AAgentCard, A2AAgentSkill, A2AJsonRpcRequest, A2AJsonRpcResponse, A2ASendTaskParams, A2AGetTaskParams, A2ACancelTaskParams, A2ATask, A2ATaskEvent, A2AMessage } from './types.js';
5
+ export interface A2AServerAgentConfig {
6
+ name: string;
7
+ description: string;
8
+ url: string;
9
+ version?: string;
10
+ skills?: A2AAgentSkill[];
11
+ provider?: A2AAgentCard['provider'];
12
+ streaming?: boolean;
13
+ }
14
+ export interface A2ATaskStore {
15
+ get(id: string): A2ATask | undefined | Promise<A2ATask | undefined>;
16
+ set(task: A2ATask): void | Promise<void>;
17
+ delete?(id: string): void | Promise<void>;
18
+ }
19
+ export interface A2AServerHandlerOptions {
20
+ getEngine: (params: A2ASendTaskParams) => AgentEngine | Promise<AgentEngine>;
21
+ buildRunOptions?: (params: A2ASendTaskParams, task: A2ATask) => Partial<RunOptions> | Promise<Partial<RunOptions>>;
22
+ taskStore?: A2ATaskStore;
23
+ }
24
+ export interface A2AStreamingJsonRpcResponse {
25
+ jsonrpc: '2.0';
26
+ id: string;
27
+ stream: AsyncGenerator<A2ATaskEvent>;
28
+ }
29
+ export type A2AHandlerResponse = A2AJsonRpcResponse | A2AStreamingJsonRpcResponse;
30
+ export declare class InMemoryA2ATaskStore implements A2ATaskStore {
31
+ private tasks;
32
+ get(id: string): A2ATask | undefined;
33
+ set(task: A2ATask): void;
34
+ delete(id: string): void;
35
+ }
36
+ export declare function createA2AAgentCard(config: A2AServerAgentConfig): A2AAgentCard;
37
+ export declare function createA2AMessage(text: string, role?: 'user' | 'agent', taskId?: string, contextId?: string): A2AMessage;
38
+ export declare function mapAgentEventToA2AEvent(event: AgentEvent, task: A2ATask): A2ATaskEvent | null;
39
+ export declare class A2AServerHandler {
40
+ private readonly options;
41
+ private store;
42
+ constructor(options: A2AServerHandlerOptions);
43
+ handleJsonRpc(request: A2AJsonRpcRequest): Promise<A2AHandlerResponse>;
44
+ sendTask(params: A2ASendTaskParams): Promise<A2ATask>;
45
+ sendTaskStreaming(params: A2ASendTaskParams): AsyncGenerator<A2ATaskEvent>;
46
+ getTask(params: A2AGetTaskParams): Promise<A2ATask>;
47
+ cancelTask(params: A2ACancelTaskParams): Promise<A2ATask>;
48
+ private createSubmittedTask;
49
+ }
50
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/a2a/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,173 @@
1
+ "use strict";
2
+ // ============================================================
3
+ // A2A Server Helpers — AgentEngine 到 A2A JSON-RPC/SSE 的协议适配
4
+ // ============================================================
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.A2AServerHandler = exports.InMemoryA2ATaskStore = void 0;
7
+ exports.createA2AAgentCard = createA2AAgentCard;
8
+ exports.createA2AMessage = createA2AMessage;
9
+ exports.mapAgentEventToA2AEvent = mapAgentEventToA2AEvent;
10
+ const runner_ts_1 = require("./runner.js");
11
+ class InMemoryA2ATaskStore {
12
+ tasks = new Map();
13
+ get(id) { return this.tasks.get(id); }
14
+ set(task) { this.tasks.set(task.id, task); }
15
+ delete(id) { this.tasks.delete(id); }
16
+ }
17
+ exports.InMemoryA2ATaskStore = InMemoryA2ATaskStore;
18
+ function createA2AAgentCard(config) {
19
+ return {
20
+ name: config.name,
21
+ description: config.description,
22
+ url: config.url,
23
+ version: config.version || '1.0.0',
24
+ provider: config.provider,
25
+ capabilities: { streaming: config.streaming ?? true, pushNotifications: false, stateTransitionHistory: true },
26
+ skills: config.skills || [],
27
+ defaultInputModes: ['text/plain'],
28
+ defaultOutputModes: ['text/plain'],
29
+ };
30
+ }
31
+ function createA2AMessage(text, role = 'agent', taskId, contextId) {
32
+ return { kind: 'message', role, messageId: crypto.randomUUID(), taskId, contextId, parts: [{ kind: 'text', text }] };
33
+ }
34
+ function mapAgentEventToA2AEvent(event, task) {
35
+ switch (event.type) {
36
+ case 'thinking':
37
+ return {
38
+ kind: 'status-update',
39
+ taskId: task.id,
40
+ contextId: task.contextId,
41
+ status: { state: 'working', message: createA2AMessage(event.content || '', 'agent', task.id, task.contextId), timestamp: new Date().toISOString() },
42
+ final: false,
43
+ metadata: { source: 'thinking' },
44
+ };
45
+ case 'message':
46
+ return {
47
+ kind: 'status-update',
48
+ taskId: task.id,
49
+ contextId: task.contextId,
50
+ status: { state: 'working', message: createA2AMessage(event.content || '', 'agent', task.id, task.contextId), timestamp: new Date().toISOString() },
51
+ final: false,
52
+ metadata: { source: 'message' },
53
+ };
54
+ case 'tool_call':
55
+ return {
56
+ kind: 'status-update',
57
+ taskId: task.id,
58
+ contextId: task.contextId,
59
+ status: { state: 'working', message: createA2AMessage(`Calling tool: ${event.tool}`, 'agent', task.id, task.contextId), timestamp: new Date().toISOString() },
60
+ final: false,
61
+ metadata: { source: 'tool_call', tool: event.tool, callId: event.callId, args: event.args },
62
+ };
63
+ case 'done':
64
+ return {
65
+ kind: 'status-update',
66
+ taskId: task.id,
67
+ contextId: task.contextId,
68
+ status: { state: 'completed', message: createA2AMessage(event.content || '', 'agent', task.id, task.contextId), timestamp: new Date().toISOString() },
69
+ final: true,
70
+ };
71
+ case 'error':
72
+ return {
73
+ kind: 'status-update',
74
+ taskId: task.id,
75
+ contextId: task.contextId,
76
+ status: { state: 'failed', message: createA2AMessage(event.error || 'Agent failed', 'agent', task.id, task.contextId), timestamp: new Date().toISOString() },
77
+ final: true,
78
+ };
79
+ default:
80
+ return null;
81
+ }
82
+ }
83
+ class A2AServerHandler {
84
+ options;
85
+ store;
86
+ constructor(options) {
87
+ this.options = options;
88
+ this.store = options.taskStore || new InMemoryA2ATaskStore();
89
+ }
90
+ async handleJsonRpc(request) {
91
+ try {
92
+ switch (request.method) {
93
+ case 'tasks/send':
94
+ return { jsonrpc: '2.0', id: request.id, result: await this.sendTask(request.params) };
95
+ case 'tasks/sendSubscribe':
96
+ return { jsonrpc: '2.0', id: request.id, stream: this.sendTaskStreaming(request.params) };
97
+ case 'tasks/get':
98
+ return { jsonrpc: '2.0', id: request.id, result: await this.getTask(request.params) };
99
+ case 'tasks/cancel':
100
+ return { jsonrpc: '2.0', id: request.id, result: await this.cancelTask(request.params) };
101
+ default:
102
+ return { jsonrpc: '2.0', id: request.id, error: { code: -32601, message: `Method not found: ${request.method}` } };
103
+ }
104
+ }
105
+ catch (err) {
106
+ return { jsonrpc: '2.0', id: request.id, error: { code: -32000, message: err?.message || String(err) } };
107
+ }
108
+ }
109
+ async sendTask(params) {
110
+ const task = this.createSubmittedTask(params);
111
+ await this.store.set(task);
112
+ const engine = await this.options.getEngine(params);
113
+ const message = (0, runner_ts_1.extractTextFromMessage)(params.message);
114
+ let finalText = '';
115
+ const overrides = await this.options.buildRunOptions?.(params, task);
116
+ for await (const event of engine.run({ sessionId: task.contextId, message, ...overrides })) {
117
+ if (event.type === 'message')
118
+ finalText += event.content || '';
119
+ if (event.type === 'done') {
120
+ finalText = event.content || finalText;
121
+ task.status = { state: 'completed', message: createA2AMessage(finalText, 'agent', task.id, task.contextId), timestamp: new Date().toISOString() };
122
+ }
123
+ else if (event.type === 'error') {
124
+ task.status = { state: 'failed', message: createA2AMessage(event.error, 'agent', task.id, task.contextId), timestamp: new Date().toISOString() };
125
+ }
126
+ else {
127
+ task.status = { state: 'working', timestamp: new Date().toISOString() };
128
+ }
129
+ await this.store.set(task);
130
+ }
131
+ return task;
132
+ }
133
+ async *sendTaskStreaming(params) {
134
+ const task = this.createSubmittedTask(params);
135
+ await this.store.set(task);
136
+ const engine = await this.options.getEngine(params);
137
+ const message = (0, runner_ts_1.extractTextFromMessage)(params.message);
138
+ const overrides = await this.options.buildRunOptions?.(params, task);
139
+ for await (const event of engine.run({ sessionId: task.contextId, message, ...overrides })) {
140
+ const mapped = mapAgentEventToA2AEvent(event, task);
141
+ if (!mapped)
142
+ continue;
143
+ if (mapped.kind === 'status-update')
144
+ task.status = mapped.status;
145
+ await this.store.set(task);
146
+ yield mapped;
147
+ }
148
+ }
149
+ async getTask(params) {
150
+ const task = await this.store.get(params.id);
151
+ if (!task)
152
+ throw new Error(`Task not found: ${params.id}`);
153
+ return task;
154
+ }
155
+ async cancelTask(params) {
156
+ const task = await this.getTask(params);
157
+ task.status = { state: 'canceled', timestamp: new Date().toISOString() };
158
+ await this.store.set(task);
159
+ return task;
160
+ }
161
+ createSubmittedTask(params) {
162
+ const contextId = params.contextId || crypto.randomUUID();
163
+ return {
164
+ id: params.id || crypto.randomUUID(),
165
+ contextId,
166
+ status: { state: 'submitted', message: params.message, timestamp: new Date().toISOString() },
167
+ history: [params.message],
168
+ metadata: params.metadata,
169
+ };
170
+ }
171
+ }
172
+ exports.A2AServerHandler = A2AServerHandler;
173
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/a2a/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,83 @@
1
+ import { AgentEngine } from './engine.js';
2
+ import type { AgentConfig } from './types.js';
3
+ import type { LLMProvider } from '../llm/types.js';
4
+ import { ContextManager } from '../context/manager.js';
5
+ import { SecurityGuard } from '../security/guard.js';
6
+ import { SkillManager } from '../skill/manager.js';
7
+ import { ToolRegistry } from '../tool/registry.js';
8
+ import type { RegisteredTool } from '../tool/types.js';
9
+ import type { Middleware } from '../middleware/types.js';
10
+ import type { Hook } from '../hooks/types.js';
11
+ export interface AgentProfileLike {
12
+ id?: string | number;
13
+ name?: string;
14
+ description?: string;
15
+ isDefault?: boolean;
16
+ agentType?: 'default' | 'specialist' | 'remote' | string;
17
+ selectedTools?: string[];
18
+ disabledTools?: string[];
19
+ selectedSkills?: string[];
20
+ alwaysInjectSkills?: string[];
21
+ maxIterations?: number;
22
+ maxMessages?: number;
23
+ toolTimeout?: number;
24
+ model?: string;
25
+ metadata?: Record<string, unknown>;
26
+ }
27
+ export interface ResourceScopeOptions {
28
+ baseToolRegistry: ToolRegistry;
29
+ baseSkillManager?: SkillManager;
30
+ profile?: AgentProfileLike;
31
+ includeTool?: (tool: RegisteredTool, profile?: AgentProfileLike) => boolean;
32
+ includeSkill?: (skillId: string, profile?: AgentProfileLike) => boolean;
33
+ }
34
+ export interface ResourceScope {
35
+ toolRegistry: ToolRegistry;
36
+ skillManager?: SkillManager;
37
+ missingSkillRequirements: Array<{
38
+ skillId: string;
39
+ missingTools: string[];
40
+ }>;
41
+ }
42
+ export interface AgentRuntimeOptions {
43
+ llmProvider: LLMProvider;
44
+ fallbackProvider?: LLMProvider;
45
+ tools?: RegisteredTool[];
46
+ toolRegistry?: ToolRegistry;
47
+ skills?: SkillManager;
48
+ contextManager?: ContextManager;
49
+ securityGuard?: SecurityGuard;
50
+ middleware?: Middleware[];
51
+ hooks?: Hook[];
52
+ profile?: AgentProfileLike;
53
+ basePrompt?: string | ((scope: ResourceScope) => string);
54
+ includeTool?: (tool: RegisteredTool, profile?: AgentProfileLike) => boolean;
55
+ includeSkill?: (skillId: string, profile?: AgentProfileLike) => boolean;
56
+ config?: Partial<AgentConfig>;
57
+ }
58
+ export interface AgentRuntime {
59
+ engine: AgentEngine;
60
+ toolRegistry: ToolRegistry;
61
+ skillManager?: SkillManager;
62
+ contextManager: ContextManager;
63
+ securityGuard: SecurityGuard;
64
+ scope: ResourceScope;
65
+ }
66
+ export declare function buildResourceScope(options: ResourceScopeOptions): ResourceScope;
67
+ export declare function validateSkillRequirements(skillManager: SkillManager | undefined, toolRegistry: ToolRegistry): Array<{
68
+ skillId: string;
69
+ missingTools: string[];
70
+ }>;
71
+ export declare function createAgentRuntime(options: AgentRuntimeOptions): AgentRuntime;
72
+ export declare class AgentRuntimeBuilder {
73
+ private options;
74
+ withLLMProvider(llmProvider: LLMProvider, fallbackProvider?: LLMProvider): this;
75
+ withTools(tools: RegisteredTool[] | ToolRegistry): this;
76
+ withSkills(skills: SkillManager): this;
77
+ withProfile(profile: AgentProfileLike): this;
78
+ withPrompt(basePrompt: AgentRuntimeOptions['basePrompt']): this;
79
+ withResourcePolicy(policy: Pick<AgentRuntimeOptions, 'includeTool' | 'includeSkill'>): this;
80
+ withConfig(config: Partial<AgentConfig>): this;
81
+ build(): AgentRuntime;
82
+ }
83
+ //# sourceMappingURL=runtime-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-builder.d.ts","sourceRoot":"","sources":["../../../src/agent/runtime-builder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+ // ============================================================
3
+ // AgentRuntimeBuilder — AgentEngine/Tool/Skill/Profile 的通用装配器
4
+ // ============================================================
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AgentRuntimeBuilder = void 0;
7
+ exports.buildResourceScope = buildResourceScope;
8
+ exports.validateSkillRequirements = validateSkillRequirements;
9
+ exports.createAgentRuntime = createAgentRuntime;
10
+ const engine_ts_1 = require("./engine.js");
11
+ const manager_ts_1 = require("../context/manager.js");
12
+ const guard_ts_1 = require("../security/guard.js");
13
+ const manager_ts_2 = require("../skill/manager.js");
14
+ const router_ts_1 = require("../skill/router.js");
15
+ const registry_ts_1 = require("../tool/registry.js");
16
+ function buildResourceScope(options) {
17
+ const profile = options.profile;
18
+ const registry = options.baseToolRegistry.clone();
19
+ const selected = new Set(profile?.selectedTools || []);
20
+ const disabled = new Set(profile?.disabledTools || []);
21
+ registry.listNames().forEach(name => {
22
+ const tool = registry.get(name);
23
+ if (!tool)
24
+ return;
25
+ const selectedRejected = selected.size > 0 && !selected.has(name) && tool.category !== 'builtin';
26
+ const disabledRejected = disabled.has(name);
27
+ const customRejected = options.includeTool ? !options.includeTool(tool, profile) : false;
28
+ if (selectedRejected || disabledRejected || customRejected)
29
+ registry.unregister(name);
30
+ });
31
+ let scopedSkillManager;
32
+ if (options.baseSkillManager) {
33
+ scopedSkillManager = new manager_ts_2.SkillManager();
34
+ const selectedSkills = new Set(profile?.selectedSkills || []);
35
+ for (const skill of options.baseSkillManager.getAll()) {
36
+ const includeBySelection = selectedSkills.size === 0 || selectedSkills.has(skill.id);
37
+ const includeByCallback = options.includeSkill ? options.includeSkill(skill.id, profile) : true;
38
+ if (includeBySelection && includeByCallback)
39
+ scopedSkillManager.register(skill);
40
+ }
41
+ }
42
+ const missingSkillRequirements = validateSkillRequirements(scopedSkillManager, registry);
43
+ return { toolRegistry: registry, skillManager: scopedSkillManager, missingSkillRequirements };
44
+ }
45
+ function validateSkillRequirements(skillManager, toolRegistry) {
46
+ if (!skillManager)
47
+ return [];
48
+ const registeredNames = new Set(toolRegistry.listNames());
49
+ return skillManager.getAll()
50
+ .map(skill => ({ skillId: skill.id, missingTools: (skill.requires || []).filter(name => !registeredNames.has(name)) }))
51
+ .filter(item => item.missingTools.length > 0);
52
+ }
53
+ function createAgentRuntime(options) {
54
+ const baseToolRegistry = options.toolRegistry || new registry_ts_1.ToolRegistry();
55
+ if (options.tools?.length)
56
+ baseToolRegistry.registerAll(options.tools);
57
+ const scope = buildResourceScope({
58
+ baseToolRegistry,
59
+ baseSkillManager: options.skills,
60
+ profile: options.profile,
61
+ });
62
+ const contextManager = options.contextManager || new manager_ts_1.ContextManager();
63
+ const securityGuard = options.securityGuard || new guard_ts_1.SecurityGuard();
64
+ const skillRouter = scope.skillManager && scope.skillManager.getAll().length > 0 ? new router_ts_1.SkillRouter(scope.skillManager) : undefined;
65
+ const basePrompt = typeof options.basePrompt === 'function' ? options.basePrompt(scope) : options.basePrompt;
66
+ const config = {
67
+ llmProvider: options.llmProvider,
68
+ fallbackProvider: options.fallbackProvider,
69
+ toolRegistry: scope.toolRegistry,
70
+ skillManager: scope.skillManager,
71
+ skillRouter,
72
+ contextManager,
73
+ securityGuard,
74
+ basePrompt,
75
+ maxIterations: options.profile?.maxIterations,
76
+ maxMessages: options.profile?.maxMessages,
77
+ toolTimeout: options.profile?.toolTimeout,
78
+ middleware: options.middleware,
79
+ hooks: options.hooks,
80
+ ...options.config,
81
+ };
82
+ const engine = new engine_ts_1.AgentEngine(config);
83
+ return { engine, toolRegistry: scope.toolRegistry, skillManager: scope.skillManager, contextManager, securityGuard, scope };
84
+ }
85
+ class AgentRuntimeBuilder {
86
+ options = {};
87
+ withLLMProvider(llmProvider, fallbackProvider) {
88
+ this.options.llmProvider = llmProvider;
89
+ this.options.fallbackProvider = fallbackProvider;
90
+ return this;
91
+ }
92
+ withTools(tools) {
93
+ if (tools instanceof registry_ts_1.ToolRegistry)
94
+ this.options.toolRegistry = tools;
95
+ else
96
+ this.options.tools = tools;
97
+ return this;
98
+ }
99
+ withSkills(skills) {
100
+ this.options.skills = skills;
101
+ return this;
102
+ }
103
+ withProfile(profile) {
104
+ this.options.profile = profile;
105
+ return this;
106
+ }
107
+ withPrompt(basePrompt) {
108
+ this.options.basePrompt = basePrompt;
109
+ return this;
110
+ }
111
+ withResourcePolicy(policy) {
112
+ this.options.includeTool = policy.includeTool;
113
+ this.options.includeSkill = policy.includeSkill;
114
+ return this;
115
+ }
116
+ withConfig(config) {
117
+ this.options.config = { ...(this.options.config || {}), ...config };
118
+ return this;
119
+ }
120
+ build() {
121
+ if (!this.options.llmProvider)
122
+ throw new Error('AgentRuntimeBuilder: llmProvider is required');
123
+ return createAgentRuntime(this.options);
124
+ }
125
+ }
126
+ exports.AgentRuntimeBuilder = AgentRuntimeBuilder;
127
+ //# sourceMappingURL=runtime-builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-builder.js","sourceRoot":"","sources":["../../../src/agent/runtime-builder.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,8 @@ export { ToolRegistry } from './tool/registry.js';
23
23
  export type { DefineToolOptions, FlatToolOptions } from './tool/registry.js';
24
24
  export { createDelegateTool } from './tool/delegate.js';
25
25
  export type { SubAgentRunner } from './tool/delegate.js';
26
+ export { createBuiltinTools, createFileSystemTools, createShellTools, createSkillLoaderTool, createToolDocTool } from './tool/builtin-tools.js';
27
+ export type { BuiltinToolOptions, ToolResultStoreLike } from './tool/builtin-tools.js';
26
28
  export type { ToolDefinition, ToolExecutor, ToolContext, SubAgentEventEmitter, WidgetEventEmitter, ArtifactEventEmitter, ArtifactData, RegisteredTool, ToolCategory, ShellExecutor, FileSystemExecutor, } from './tool/types.js';
27
29
  export { registerMCPTools, MCP_TOOL_PREFIX, buildMCPToolName, sanitizeForToolName } from './mcp/client.js';
28
30
  export { createMCPClient, registerTransport } from './mcp/factory.js';
@@ -45,6 +47,8 @@ export { logEvent, setLogTransport } from './observability/logger.js';
45
47
  export type { LogLevel, ObservabilityEvent, LogTransport, } from './observability/logger.js';
46
48
  export { EnginePool } from './pool/engine-pool.js';
47
49
  export { RunRegistry, InMemoryRunStateStore } from './runtime/run-registry.js';
50
+ export { RunController } from './runtime/run-controller.js';
51
+ export type { RunControllerOptions, RunControllerResult, RunEngineOptions, RunPersistenceAdapter } from './runtime/run-controller.js';
48
52
  export type { BufferedEvent, RunToolCallRecord, EventSubscriber, RunStatus, ActiveRun, RunSnapshot, RunStateStore, } from './runtime/run-registry.js';
49
53
  export { JsonStore, JsonListStore } from './store/json-store.js';
50
54
  export type { JsonStoreOptions } from './store/json-store.js';
@@ -73,7 +77,9 @@ export type { PipelineOptions, PipelineResult } from './memory/pipeline.js';
73
77
  export { getDataPath, getProjectDataPath, ensureDataDir, ensureProjectDataDir, expandEnvVars, setAppName, getAppName, } from './utils/data-dir.js';
74
78
  export { collectEngineOutput } from './utils/event-collector.js';
75
79
  export type { EngineRunResult } from './utils/event-collector.js';
76
- export { A2AClient, buildAuthHeaders, createA2ARemoteRunner, extractTextFromMessage, } from './a2a/index.js';
77
- export type { A2ARemoteRunnerConfig, AuthConfig, A2AClientOptions, } from './a2a/index.js';
80
+ export { createAgentEventCollectorState, defaultResolveToolDisplayName, mapAgentEvent, mapAgentEventStream } from './utils/event-adapter.js';
81
+ export type { AgentEventAdapterOptions, AgentEventCollectorState, AgentEventPreset, MappedAgentEvent } from './utils/event-adapter.js';
82
+ export { A2AClient, A2AServerHandler, InMemoryA2ATaskStore, buildAuthHeaders, createA2AAgentCard, createA2AMessage, createA2ARemoteRunner, extractTextFromMessage, mapAgentEventToA2AEvent, } from './a2a/index.js';
83
+ export type { A2ARemoteRunnerConfig, A2AHandlerResponse, A2AServerAgentConfig, A2AServerHandlerOptions, A2AStreamingJsonRpcResponse, A2ATaskStore, AuthConfig, A2AClientOptions, } from './a2a/index.js';
78
84
  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.js';
79
85
  //# sourceMappingURL=index.d.ts.map
@@ -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":"AAKA,YAAY,EACV,OAAO,EACP,WAAW,EACX,QAAQ,EACR,UAAU,EACV,SAAS,EACT,aAAa,EACb,aAAa,EACb,eAAe,EACf,YAAY,EACZ,SAAS,EACT,UAAU,EACV,aAAa,EACb,UAAU,EACV,WAAW,EACX,WAAW,EACX,cAAc,EACd,UAAU,EACV,cAAc,GACf,MAAM,YAAY,CAAC;AAGpB,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;AAC7B,YAAY,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,YAAY,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC/K,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAG/H,YAAY,EACV,WAAW,EACX,WAAW,EACX,SAAS,EACT,UAAU,EACV,YAAY,EACZ,SAAS,GACV,MAAM,gBAAgB,CAAC;AACxB,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;AACxE,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,YAAY,EACV,mBAAmB,EACnB,OAAO,EACP,YAAY,GACb,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,YAAY,EACV,KAAK,EACL,aAAa,EACb,WAAW,EACX,WAAW,EACX,aAAa,EACb,SAAS,GACV,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,YAAY,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAChJ,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACvF,YAAY,EACV,cAAc,EACd,YAAY,EACZ,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,aAAa,EACb,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3G,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACtE,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,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;AAC9B,YAAY,EACV,SAAS,EACT,mBAAmB,EACnB,aAAa,GACd,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,SAAS,EACT,eAAe,EACf,YAAY,GACb,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EACV,cAAc,EACd,YAAY,EACZ,cAAc,EACd,QAAQ,GACT,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,cAAc,EACd,aAAa,EACb,cAAc,EACd,6BAA6B,GAC9B,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,GAChB,MAAM,0BAA0B,CAAC;AAGlC,YAAY,EACV,OAAO,EACP,aAAa,EACb,cAAc,EACd,cAAc,GACf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAG7G,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACtE,YAAY,EACV,QAAQ,EACR,kBAAkB,EAClB,YAAY,GACb,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGnD,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACtI,YAAY,EACV,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,SAAS,EACT,SAAS,EACT,WAAW,EACX,aAAa,GACd,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACjE,YAAY,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,YAAY,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAGpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAG/D,YAAY,EACV,IAAI,EACJ,SAAS,EACT,WAAW,EACX,UAAU,GACX,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EACV,UAAU,EACV,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAG/B,YAAY,EACV,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,YAAY,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACtG,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC/E,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAG5E,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,aAAa,EACb,UAAU,EACV,UAAU,GACX,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,YAAY,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,8BAA8B,EAAE,6BAA6B,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC7I,YAAY,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAGvI,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,2BAA2B,EAC3B,YAAY,EACZ,UAAU,EACV,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,YAAY,EACZ,aAAa,EACb,oBAAoB,EACpB,OAAO,EACP,WAAW,EACX,WAAW,EACX,WAAW,EACX,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,gBAAgB,CAAC"}