@cicctencent/agent-core 0.1.15 → 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 (122) hide show
  1. package/README.md +1 -0
  2. package/dist/cjs/a2a/client.d.ts +32 -2
  3. package/dist/cjs/a2a/client.d.ts.map +1 -1
  4. package/dist/cjs/a2a/client.js +59 -10
  5. package/dist/cjs/a2a/client.js.map +1 -1
  6. package/dist/cjs/a2a/index.d.ts +4 -1
  7. package/dist/cjs/a2a/index.d.ts.map +1 -1
  8. package/dist/cjs/a2a/index.js +8 -1
  9. package/dist/cjs/a2a/index.js.map +1 -1
  10. package/dist/cjs/a2a/runner.d.ts +11 -0
  11. package/dist/cjs/a2a/runner.d.ts.map +1 -1
  12. package/dist/cjs/a2a/runner.js +157 -68
  13. package/dist/cjs/a2a/runner.js.map +1 -1
  14. package/dist/cjs/a2a/server.d.ts +50 -0
  15. package/dist/cjs/a2a/server.d.ts.map +1 -0
  16. package/dist/cjs/a2a/server.js +173 -0
  17. package/dist/cjs/a2a/server.js.map +1 -0
  18. package/dist/cjs/agent/history-manager.d.ts +8 -2
  19. package/dist/cjs/agent/history-manager.d.ts.map +1 -1
  20. package/dist/cjs/agent/history-manager.js +6 -6
  21. package/dist/cjs/agent/history-manager.js.map +1 -1
  22. package/dist/cjs/agent/runtime-builder.d.ts +83 -0
  23. package/dist/cjs/agent/runtime-builder.d.ts.map +1 -0
  24. package/dist/cjs/agent/runtime-builder.js +127 -0
  25. package/dist/cjs/agent/runtime-builder.js.map +1 -0
  26. package/dist/cjs/agent/types.d.ts +17 -0
  27. package/dist/cjs/agent/types.d.ts.map +1 -1
  28. package/dist/cjs/agent/types.js +43 -0
  29. package/dist/cjs/agent/types.js.map +1 -1
  30. package/dist/cjs/index.d.ts +13 -5
  31. package/dist/cjs/index.d.ts.map +1 -1
  32. package/dist/cjs/index.js +30 -6
  33. package/dist/cjs/index.js.map +1 -1
  34. package/dist/cjs/memory/types.d.ts +48 -0
  35. package/dist/cjs/memory/types.d.ts.map +1 -1
  36. package/dist/cjs/memory/types.js +52 -0
  37. package/dist/cjs/memory/types.js.map +1 -1
  38. package/dist/cjs/runtime/run-controller.d.ts +40 -0
  39. package/dist/cjs/runtime/run-controller.d.ts.map +1 -0
  40. package/dist/cjs/runtime/run-controller.js +93 -0
  41. package/dist/cjs/runtime/run-controller.js.map +1 -0
  42. package/dist/cjs/sandbox/local-sandbox.d.ts +59 -0
  43. package/dist/cjs/sandbox/local-sandbox.d.ts.map +1 -0
  44. package/dist/cjs/sandbox/local-sandbox.js +228 -0
  45. package/dist/cjs/sandbox/local-sandbox.js.map +1 -0
  46. package/dist/cjs/security/guard.d.ts +11 -0
  47. package/dist/cjs/security/guard.d.ts.map +1 -1
  48. package/dist/cjs/security/guard.js +46 -0
  49. package/dist/cjs/security/guard.js.map +1 -1
  50. package/dist/cjs/tool/builtin-tools.d.ts +22 -0
  51. package/dist/cjs/tool/builtin-tools.d.ts.map +1 -0
  52. package/dist/cjs/tool/builtin-tools.js +221 -0
  53. package/dist/cjs/tool/builtin-tools.js.map +1 -0
  54. package/dist/cjs/tool/registry.d.ts +76 -1
  55. package/dist/cjs/tool/registry.d.ts.map +1 -1
  56. package/dist/cjs/tool/registry.js +81 -0
  57. package/dist/cjs/tool/registry.js.map +1 -1
  58. package/dist/cjs/utils/event-adapter.d.ts +25 -0
  59. package/dist/cjs/utils/event-adapter.d.ts.map +1 -0
  60. package/dist/cjs/utils/event-adapter.js +93 -0
  61. package/dist/cjs/utils/event-adapter.js.map +1 -0
  62. package/dist/esm/a2a/client.d.ts +32 -2
  63. package/dist/esm/a2a/client.d.ts.map +1 -1
  64. package/dist/esm/a2a/client.js +58 -10
  65. package/dist/esm/a2a/client.js.map +1 -1
  66. package/dist/esm/a2a/index.d.ts +4 -1
  67. package/dist/esm/a2a/index.d.ts.map +1 -1
  68. package/dist/esm/a2a/index.js +2 -1
  69. package/dist/esm/a2a/index.js.map +1 -1
  70. package/dist/esm/a2a/runner.d.ts +11 -0
  71. package/dist/esm/a2a/runner.d.ts.map +1 -1
  72. package/dist/esm/a2a/runner.js +157 -68
  73. package/dist/esm/a2a/runner.js.map +1 -1
  74. package/dist/esm/a2a/server.d.ts +50 -0
  75. package/dist/esm/a2a/server.d.ts.map +1 -0
  76. package/dist/esm/a2a/server.js +165 -0
  77. package/dist/esm/a2a/server.js.map +1 -0
  78. package/dist/esm/agent/history-manager.d.ts +8 -2
  79. package/dist/esm/agent/history-manager.d.ts.map +1 -1
  80. package/dist/esm/agent/history-manager.js +6 -6
  81. package/dist/esm/agent/history-manager.js.map +1 -1
  82. package/dist/esm/agent/runtime-builder.d.ts +83 -0
  83. package/dist/esm/agent/runtime-builder.d.ts.map +1 -0
  84. package/dist/esm/agent/runtime-builder.js +120 -0
  85. package/dist/esm/agent/runtime-builder.js.map +1 -0
  86. package/dist/esm/agent/types.d.ts +17 -0
  87. package/dist/esm/agent/types.d.ts.map +1 -1
  88. package/dist/esm/agent/types.js +42 -1
  89. package/dist/esm/agent/types.js.map +1 -1
  90. package/dist/esm/index.d.ts +13 -5
  91. package/dist/esm/index.d.ts.map +1 -1
  92. package/dist/esm/index.js +6 -1
  93. package/dist/esm/index.js.map +1 -1
  94. package/dist/esm/memory/types.d.ts +48 -0
  95. package/dist/esm/memory/types.d.ts.map +1 -1
  96. package/dist/esm/memory/types.js +50 -1
  97. package/dist/esm/memory/types.js.map +1 -1
  98. package/dist/esm/runtime/run-controller.d.ts +40 -0
  99. package/dist/esm/runtime/run-controller.d.ts.map +1 -0
  100. package/dist/esm/runtime/run-controller.js +89 -0
  101. package/dist/esm/runtime/run-controller.js.map +1 -0
  102. package/dist/esm/sandbox/local-sandbox.d.ts +59 -0
  103. package/dist/esm/sandbox/local-sandbox.d.ts.map +1 -0
  104. package/dist/esm/sandbox/local-sandbox.js +188 -0
  105. package/dist/esm/sandbox/local-sandbox.js.map +1 -0
  106. package/dist/esm/security/guard.d.ts +11 -0
  107. package/dist/esm/security/guard.d.ts.map +1 -1
  108. package/dist/esm/security/guard.js +46 -0
  109. package/dist/esm/security/guard.js.map +1 -1
  110. package/dist/esm/tool/builtin-tools.d.ts +22 -0
  111. package/dist/esm/tool/builtin-tools.d.ts.map +1 -0
  112. package/dist/esm/tool/builtin-tools.js +214 -0
  113. package/dist/esm/tool/builtin-tools.js.map +1 -0
  114. package/dist/esm/tool/registry.d.ts +76 -1
  115. package/dist/esm/tool/registry.d.ts.map +1 -1
  116. package/dist/esm/tool/registry.js +81 -0
  117. package/dist/esm/tool/registry.js.map +1 -1
  118. package/dist/esm/utils/event-adapter.d.ts +25 -0
  119. package/dist/esm/utils/event-adapter.d.ts.map +1 -0
  120. package/dist/esm/utils/event-adapter.js +87 -0
  121. package/dist/esm/utils/event-adapter.js.map +1 -0
  122. package/package.json +1 -1
@@ -0,0 +1,165 @@
1
+ // ============================================================
2
+ // A2A Server Helpers — AgentEngine 到 A2A JSON-RPC/SSE 的协议适配
3
+ // ============================================================
4
+ import { extractTextFromMessage } from "./runner.js";
5
+ export class InMemoryA2ATaskStore {
6
+ tasks = new Map();
7
+ get(id) { return this.tasks.get(id); }
8
+ set(task) { this.tasks.set(task.id, task); }
9
+ delete(id) { this.tasks.delete(id); }
10
+ }
11
+ export function createA2AAgentCard(config) {
12
+ return {
13
+ name: config.name,
14
+ description: config.description,
15
+ url: config.url,
16
+ version: config.version || '1.0.0',
17
+ provider: config.provider,
18
+ capabilities: { streaming: config.streaming ?? true, pushNotifications: false, stateTransitionHistory: true },
19
+ skills: config.skills || [],
20
+ defaultInputModes: ['text/plain'],
21
+ defaultOutputModes: ['text/plain'],
22
+ };
23
+ }
24
+ export function createA2AMessage(text, role = 'agent', taskId, contextId) {
25
+ return { kind: 'message', role, messageId: crypto.randomUUID(), taskId, contextId, parts: [{ kind: 'text', text }] };
26
+ }
27
+ export function mapAgentEventToA2AEvent(event, task) {
28
+ switch (event.type) {
29
+ case 'thinking':
30
+ return {
31
+ kind: 'status-update',
32
+ taskId: task.id,
33
+ contextId: task.contextId,
34
+ status: { state: 'working', message: createA2AMessage(event.content || '', 'agent', task.id, task.contextId), timestamp: new Date().toISOString() },
35
+ final: false,
36
+ metadata: { source: 'thinking' },
37
+ };
38
+ case 'message':
39
+ return {
40
+ kind: 'status-update',
41
+ taskId: task.id,
42
+ contextId: task.contextId,
43
+ status: { state: 'working', message: createA2AMessage(event.content || '', 'agent', task.id, task.contextId), timestamp: new Date().toISOString() },
44
+ final: false,
45
+ metadata: { source: 'message' },
46
+ };
47
+ case 'tool_call':
48
+ return {
49
+ kind: 'status-update',
50
+ taskId: task.id,
51
+ contextId: task.contextId,
52
+ status: { state: 'working', message: createA2AMessage(`Calling tool: ${event.tool}`, 'agent', task.id, task.contextId), timestamp: new Date().toISOString() },
53
+ final: false,
54
+ metadata: { source: 'tool_call', tool: event.tool, callId: event.callId, args: event.args },
55
+ };
56
+ case 'done':
57
+ return {
58
+ kind: 'status-update',
59
+ taskId: task.id,
60
+ contextId: task.contextId,
61
+ status: { state: 'completed', message: createA2AMessage(event.content || '', 'agent', task.id, task.contextId), timestamp: new Date().toISOString() },
62
+ final: true,
63
+ };
64
+ case 'error':
65
+ return {
66
+ kind: 'status-update',
67
+ taskId: task.id,
68
+ contextId: task.contextId,
69
+ status: { state: 'failed', message: createA2AMessage(event.error || 'Agent failed', 'agent', task.id, task.contextId), timestamp: new Date().toISOString() },
70
+ final: true,
71
+ };
72
+ default:
73
+ return null;
74
+ }
75
+ }
76
+ export class A2AServerHandler {
77
+ options;
78
+ store;
79
+ constructor(options) {
80
+ this.options = options;
81
+ this.store = options.taskStore || new InMemoryA2ATaskStore();
82
+ }
83
+ async handleJsonRpc(request) {
84
+ try {
85
+ switch (request.method) {
86
+ case 'tasks/send':
87
+ return { jsonrpc: '2.0', id: request.id, result: await this.sendTask(request.params) };
88
+ case 'tasks/sendSubscribe':
89
+ return { jsonrpc: '2.0', id: request.id, stream: this.sendTaskStreaming(request.params) };
90
+ case 'tasks/get':
91
+ return { jsonrpc: '2.0', id: request.id, result: await this.getTask(request.params) };
92
+ case 'tasks/cancel':
93
+ return { jsonrpc: '2.0', id: request.id, result: await this.cancelTask(request.params) };
94
+ default:
95
+ return { jsonrpc: '2.0', id: request.id, error: { code: -32601, message: `Method not found: ${request.method}` } };
96
+ }
97
+ }
98
+ catch (err) {
99
+ return { jsonrpc: '2.0', id: request.id, error: { code: -32000, message: err?.message || String(err) } };
100
+ }
101
+ }
102
+ async sendTask(params) {
103
+ const task = this.createSubmittedTask(params);
104
+ await this.store.set(task);
105
+ const engine = await this.options.getEngine(params);
106
+ const message = extractTextFromMessage(params.message);
107
+ let finalText = '';
108
+ const overrides = await this.options.buildRunOptions?.(params, task);
109
+ for await (const event of engine.run({ sessionId: task.contextId, message, ...overrides })) {
110
+ if (event.type === 'message')
111
+ finalText += event.content || '';
112
+ if (event.type === 'done') {
113
+ finalText = event.content || finalText;
114
+ task.status = { state: 'completed', message: createA2AMessage(finalText, 'agent', task.id, task.contextId), timestamp: new Date().toISOString() };
115
+ }
116
+ else if (event.type === 'error') {
117
+ task.status = { state: 'failed', message: createA2AMessage(event.error, 'agent', task.id, task.contextId), timestamp: new Date().toISOString() };
118
+ }
119
+ else {
120
+ task.status = { state: 'working', timestamp: new Date().toISOString() };
121
+ }
122
+ await this.store.set(task);
123
+ }
124
+ return task;
125
+ }
126
+ async *sendTaskStreaming(params) {
127
+ const task = this.createSubmittedTask(params);
128
+ await this.store.set(task);
129
+ const engine = await this.options.getEngine(params);
130
+ const message = extractTextFromMessage(params.message);
131
+ const overrides = await this.options.buildRunOptions?.(params, task);
132
+ for await (const event of engine.run({ sessionId: task.contextId, message, ...overrides })) {
133
+ const mapped = mapAgentEventToA2AEvent(event, task);
134
+ if (!mapped)
135
+ continue;
136
+ if (mapped.kind === 'status-update')
137
+ task.status = mapped.status;
138
+ await this.store.set(task);
139
+ yield mapped;
140
+ }
141
+ }
142
+ async getTask(params) {
143
+ const task = await this.store.get(params.id);
144
+ if (!task)
145
+ throw new Error(`Task not found: ${params.id}`);
146
+ return task;
147
+ }
148
+ async cancelTask(params) {
149
+ const task = await this.getTask(params);
150
+ task.status = { state: 'canceled', timestamp: new Date().toISOString() };
151
+ await this.store.set(task);
152
+ return task;
153
+ }
154
+ createSubmittedTask(params) {
155
+ const contextId = params.contextId || crypto.randomUUID();
156
+ return {
157
+ id: params.id || crypto.randomUUID(),
158
+ contextId,
159
+ status: { state: 'submitted', message: params.message, timestamp: new Date().toISOString() },
160
+ history: [params.message],
161
+ metadata: params.metadata,
162
+ };
163
+ }
164
+ }
165
+ //# 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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"}
@@ -9,6 +9,12 @@ export interface HistoryManagerConfig {
9
9
  maxToolOutput?: number;
10
10
  compactThreshold?: number;
11
11
  maxContextTokens?: number;
12
+ /** 工具输出截断时保留的头部字符数 */
13
+ toolOutputHeadLength?: number;
14
+ /** 工具输出截断时保留的尾部字符数(结论通常在尾部) */
15
+ toolOutputTailLength?: number;
16
+ /** 历史消息总字符预算,超过此值触发压缩 */
17
+ historyCharBudget?: number;
12
18
  };
13
19
  /** 工具结果存储(可选) */
14
20
  toolResultStore?: ToolResultStore;
@@ -64,11 +70,11 @@ export declare class HistoryManager {
64
70
  private offloadBase64Content;
65
71
  /** 压缩阶段 3: 非破坏性卸载大工具结果 */
66
72
  private offloadLargeToolResults;
67
- /** 压缩阶段 4: 截断大工具结果 */
73
+ /** 压缩阶段 4: 截断大工具结果(支持配置 head/tail 长度,结论通常在尾部) */
68
74
  private truncateLargeToolResults;
69
75
  /** Level 2: 成对裁剪历史(移除最早的 assistant + 关联 tool 消息) */
70
76
  private compactHistoryPairs;
71
- /** 截断工具输出(保留首尾,中间省略) */
77
+ /** 截断工具输出(保留首尾,中间省略,支持配置 head/tail 长度) */
72
78
  private truncateOutput;
73
79
  /** 根据 tool_call_id 从历史中查找工具名 */
74
80
  static findToolNameForCallId(callId: string, history: Message[]): string;
@@ -1 +1 @@
1
- {"version":3,"file":"history-manager.d.ts","sourceRoot":"","sources":["../../../src/agent/history-manager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAY,MAAM,aAAa,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAgB,MAAM,YAAY,CAAC;AAGhE,aAAa;AACb,MAAM,WAAW,oBAAoB;IACnC,yBAAyB;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc;IACd,aAAa,CAAC,EAAE;QACd,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,CAAC;IACF,iBAAiB;IACjB,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED;;;;;;;GAOG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAuB;IACrC,uCAAuC;IACvC,OAAO,CAAC,UAAU,CAAgC;IAClD,2CAA2C;IAC3C,OAAO,CAAC,aAAa,CAA6B;gBAEtC,MAAM,EAAE,oBAAoB;IAMxC,2BAA2B;IAC3B,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;IAMxD,wBAAwB;IACxB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,EAAE;IAIhD,4BAA4B;IAC5B,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,EAAE;IAIxC,uBAAuB;IACvB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI;IAiCjD,gBAAgB;IAChB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKrC,eAAe;IACf,QAAQ,IAAI,IAAI;IAOhB,0DAA0D;IAC1D,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAiD;IAElF;;;;;OAKG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM;IA6ChG;;;;;OAKG;IACH,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM;IAUpE,oCAAoC;IACpC,OAAO,CAAC,mBAAmB;IAqB3B,uBAAuB;IACvB,OAAO,CAAC,oBAAoB;IAuB5B,4BAA4B;IAC5B,OAAO,CAAC,oBAAoB;IAW5B,0BAA0B;IAC1B,OAAO,CAAC,uBAAuB;IA0B/B,sBAAsB;IACtB,OAAO,CAAC,wBAAwB;IAahC,oDAAoD;IACpD,OAAO,CAAC,mBAAmB;IAY3B,wBAAwB;IACxB,OAAO,CAAC,cAAc;IAYtB,gCAAgC;IAChC,MAAM,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM;IAUxE,4BAA4B;IAC5B,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;CAOvC"}
1
+ {"version":3,"file":"history-manager.d.ts","sourceRoot":"","sources":["../../../src/agent/history-manager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAY,MAAM,aAAa,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAgB,MAAM,YAAY,CAAC;AAGhE,aAAa;AACb,MAAM,WAAW,oBAAoB;IACnC,yBAAyB;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc;IACd,aAAa,CAAC,EAAE;QACd,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,sBAAsB;QACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,+BAA+B;QAC/B,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,yBAAyB;QACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,iBAAiB;IACjB,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED;;;;;;;GAOG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAuB;IACrC,uCAAuC;IACvC,OAAO,CAAC,UAAU,CAAgC;IAClD,2CAA2C;IAC3C,OAAO,CAAC,aAAa,CAA6B;gBAEtC,MAAM,EAAE,oBAAoB;IAMxC,2BAA2B;IAC3B,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;IAMxD,wBAAwB;IACxB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,EAAE;IAIhD,4BAA4B;IAC5B,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,EAAE;IAIxC,uBAAuB;IACvB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI;IAiCjD,gBAAgB;IAChB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKrC,eAAe;IACf,QAAQ,IAAI,IAAI;IAOhB,0DAA0D;IAC1D,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAiD;IAElF;;;;;OAKG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM;IA6ChG;;;;;OAKG;IACH,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM;IAUpE,oCAAoC;IACpC,OAAO,CAAC,mBAAmB;IAqB3B,uBAAuB;IACvB,OAAO,CAAC,oBAAoB;IAuB5B,4BAA4B;IAC5B,OAAO,CAAC,oBAAoB;IAW5B,0BAA0B;IAC1B,OAAO,CAAC,uBAAuB;IA0B/B,iDAAiD;IACjD,OAAO,CAAC,wBAAwB;IAahC,oDAAoD;IACpD,OAAO,CAAC,mBAAmB;IAY3B,0CAA0C;IAC1C,OAAO,CAAC,cAAc;IAYtB,gCAAgC;IAChC,MAAM,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM;IAUxE,4BAA4B;IAC5B,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;CAOvC"}
@@ -206,13 +206,13 @@ export class HistoryManager {
206
206
  `(${msg.content.length} chars offloaded, use read_offload(node_id="${nodeId}") to retrieve) [/offload]`);
207
207
  }
208
208
  }
209
- /** 压缩阶段 4: 截断大工具结果 */
209
+ /** 压缩阶段 4: 截断大工具结果(支持配置 head/tail 长度,结论通常在尾部) */
210
210
  truncateLargeToolResults(history) {
211
211
  const maxResultLen = this.config.contextBudget?.maxToolOutput ?? 8000;
212
+ const headLen = this.config.contextBudget?.toolOutputHeadLength ?? Math.floor(maxResultLen * 0.4);
213
+ const tailLen = this.config.contextBudget?.toolOutputTailLength ?? Math.floor(maxResultLen * 0.4);
212
214
  for (const msg of history) {
213
215
  if (msg.role === 'tool' && typeof msg.content === 'string' && msg.content.length > maxResultLen) {
214
- const headLen = Math.floor(maxResultLen * 0.4);
215
- const tailLen = Math.floor(maxResultLen * 0.4);
216
216
  msg.content = msg.content.slice(0, headLen)
217
217
  + `\n\n... [${msg.content.length - headLen - tailLen} characters truncated] ...\n\n`
218
218
  + msg.content.slice(-tailLen);
@@ -232,13 +232,13 @@ export class HistoryManager {
232
232
  }
233
233
  }
234
234
  }
235
- /** 截断工具输出(保留首尾,中间省略) */
235
+ /** 截断工具输出(保留首尾,中间省略,支持配置 head/tail 长度) */
236
236
  truncateOutput(output) {
237
237
  const max = this.config.contextBudget?.maxToolOutput ?? 8000;
238
238
  if (output.length <= max)
239
239
  return output;
240
- const headLen = Math.floor(max * 0.4);
241
- const tailLen = Math.floor(max * 0.4);
240
+ const headLen = this.config.contextBudget?.toolOutputHeadLength ?? Math.floor(max * 0.4);
241
+ const tailLen = this.config.contextBudget?.toolOutputTailLength ?? Math.floor(max * 0.4);
242
242
  return output.slice(0, headLen)
243
243
  + `\n\n... [${output.length - headLen - tailLen} characters omitted] ...\n\n`
244
244
  + output.slice(-tailLen);
@@ -1 +1 @@
1
- {"version":3,"file":"history-manager.js","sourceRoot":"","sources":["../../../src/agent/history-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"history-manager.js","sourceRoot":"","sources":["../../../src/agent/history-manager.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,120 @@
1
+ // ============================================================
2
+ // AgentRuntimeBuilder — AgentEngine/Tool/Skill/Profile 的通用装配器
3
+ // ============================================================
4
+ import { AgentEngine } from "./engine.js";
5
+ import { ContextManager } from "../context/manager.js";
6
+ import { SecurityGuard } from "../security/guard.js";
7
+ import { SkillManager } from "../skill/manager.js";
8
+ import { SkillRouter } from "../skill/router.js";
9
+ import { ToolRegistry } from "../tool/registry.js";
10
+ export function buildResourceScope(options) {
11
+ const profile = options.profile;
12
+ const registry = options.baseToolRegistry.clone();
13
+ const selected = new Set(profile?.selectedTools || []);
14
+ const disabled = new Set(profile?.disabledTools || []);
15
+ registry.listNames().forEach(name => {
16
+ const tool = registry.get(name);
17
+ if (!tool)
18
+ return;
19
+ const selectedRejected = selected.size > 0 && !selected.has(name) && tool.category !== 'builtin';
20
+ const disabledRejected = disabled.has(name);
21
+ const customRejected = options.includeTool ? !options.includeTool(tool, profile) : false;
22
+ if (selectedRejected || disabledRejected || customRejected)
23
+ registry.unregister(name);
24
+ });
25
+ let scopedSkillManager;
26
+ if (options.baseSkillManager) {
27
+ scopedSkillManager = new SkillManager();
28
+ const selectedSkills = new Set(profile?.selectedSkills || []);
29
+ for (const skill of options.baseSkillManager.getAll()) {
30
+ const includeBySelection = selectedSkills.size === 0 || selectedSkills.has(skill.id);
31
+ const includeByCallback = options.includeSkill ? options.includeSkill(skill.id, profile) : true;
32
+ if (includeBySelection && includeByCallback)
33
+ scopedSkillManager.register(skill);
34
+ }
35
+ }
36
+ const missingSkillRequirements = validateSkillRequirements(scopedSkillManager, registry);
37
+ return { toolRegistry: registry, skillManager: scopedSkillManager, missingSkillRequirements };
38
+ }
39
+ export function validateSkillRequirements(skillManager, toolRegistry) {
40
+ if (!skillManager)
41
+ return [];
42
+ const registeredNames = new Set(toolRegistry.listNames());
43
+ return skillManager.getAll()
44
+ .map(skill => ({ skillId: skill.id, missingTools: (skill.requires || []).filter(name => !registeredNames.has(name)) }))
45
+ .filter(item => item.missingTools.length > 0);
46
+ }
47
+ export function createAgentRuntime(options) {
48
+ const baseToolRegistry = options.toolRegistry || new ToolRegistry();
49
+ if (options.tools?.length)
50
+ baseToolRegistry.registerAll(options.tools);
51
+ const scope = buildResourceScope({
52
+ baseToolRegistry,
53
+ baseSkillManager: options.skills,
54
+ profile: options.profile,
55
+ });
56
+ const contextManager = options.contextManager || new ContextManager();
57
+ const securityGuard = options.securityGuard || new SecurityGuard();
58
+ const skillRouter = scope.skillManager && scope.skillManager.getAll().length > 0 ? new SkillRouter(scope.skillManager) : undefined;
59
+ const basePrompt = typeof options.basePrompt === 'function' ? options.basePrompt(scope) : options.basePrompt;
60
+ const config = {
61
+ llmProvider: options.llmProvider,
62
+ fallbackProvider: options.fallbackProvider,
63
+ toolRegistry: scope.toolRegistry,
64
+ skillManager: scope.skillManager,
65
+ skillRouter,
66
+ contextManager,
67
+ securityGuard,
68
+ basePrompt,
69
+ maxIterations: options.profile?.maxIterations,
70
+ maxMessages: options.profile?.maxMessages,
71
+ toolTimeout: options.profile?.toolTimeout,
72
+ middleware: options.middleware,
73
+ hooks: options.hooks,
74
+ ...options.config,
75
+ };
76
+ const engine = new AgentEngine(config);
77
+ return { engine, toolRegistry: scope.toolRegistry, skillManager: scope.skillManager, contextManager, securityGuard, scope };
78
+ }
79
+ export class AgentRuntimeBuilder {
80
+ options = {};
81
+ withLLMProvider(llmProvider, fallbackProvider) {
82
+ this.options.llmProvider = llmProvider;
83
+ this.options.fallbackProvider = fallbackProvider;
84
+ return this;
85
+ }
86
+ withTools(tools) {
87
+ if (tools instanceof ToolRegistry)
88
+ this.options.toolRegistry = tools;
89
+ else
90
+ this.options.tools = tools;
91
+ return this;
92
+ }
93
+ withSkills(skills) {
94
+ this.options.skills = skills;
95
+ return this;
96
+ }
97
+ withProfile(profile) {
98
+ this.options.profile = profile;
99
+ return this;
100
+ }
101
+ withPrompt(basePrompt) {
102
+ this.options.basePrompt = basePrompt;
103
+ return this;
104
+ }
105
+ withResourcePolicy(policy) {
106
+ this.options.includeTool = policy.includeTool;
107
+ this.options.includeSkill = policy.includeSkill;
108
+ return this;
109
+ }
110
+ withConfig(config) {
111
+ this.options.config = { ...(this.options.config || {}), ...config };
112
+ return this;
113
+ }
114
+ build() {
115
+ if (!this.options.llmProvider)
116
+ throw new Error('AgentRuntimeBuilder: llmProvider is required');
117
+ return createAgentRuntime(this.options);
118
+ }
119
+ }
120
+ //# 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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"}
@@ -84,6 +84,12 @@ export interface AgentConfig {
84
84
  compactThreshold?: number;
85
85
  /** 上下文总 token 预算,超过此值触发智能压缩,默认 100000 */
86
86
  maxContextTokens?: number;
87
+ /** 工具输出截断时保留的头部字符数,默认 maxToolOutput * 0.4 */
88
+ toolOutputHeadLength?: number;
89
+ /** 工具输出截断时保留的尾部字符数,默认 maxToolOutput * 0.4(结论通常在尾部) */
90
+ toolOutputTailLength?: number;
91
+ /** 历史消息总字符预算,超过此值触发压缩,默认不限制(由 token 预算控制) */
92
+ historyCharBudget?: number;
87
93
  };
88
94
  /** 全局禁止的工具名列表(从 LLM 视野中移除) */
89
95
  deniedTools?: string[];
@@ -106,6 +112,17 @@ export interface AgentConfig {
106
112
  /** 产出型工具名列表(有这些工具调用时不触发数据获取循环检测,默认 ['delegate_task', 'create_presentation', 'create_document', 'create_pdf', 'show_widget', 'save_artifact']) */
107
113
  outputTools?: string[];
108
114
  }
115
+ /**
116
+ * AgentConfig 预设工厂
117
+ *
118
+ * 提供常见场景的配置预设,降低使用方初始化成本。
119
+ *
120
+ * @example
121
+ * const config = createAgentConfig('chat', { llmProvider, toolRegistry, contextManager });
122
+ * const config = createAgentConfig('data-analyst', { llmProvider, toolRegistry, contextManager, maxIterations: 20 });
123
+ */
124
+ export type AgentConfigPreset = 'chat' | 'data-analyst' | 'code-assistant' | 'researcher';
125
+ export declare function createAgentConfig(preset: AgentConfigPreset, overrides: AgentConfig): AgentConfig;
109
126
  /** AgentEngine.run() 入参 */
110
127
  export interface RunOptions {
111
128
  /** 会话 ID(同一会话共享上下文) */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/agent/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/agent/types.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,46 @@
1
1
  // ============================================================
2
2
  // Agent Engine 类型定义
3
3
  // ============================================================
4
- export {};
4
+ export function createAgentConfig(preset, overrides) {
5
+ const presets = {
6
+ 'chat': {
7
+ maxIterations: 8,
8
+ maxMessages: 30,
9
+ toolTimeout: 15000,
10
+ llmTimeout: 60000,
11
+ basePrompt: 'You are a helpful AI assistant. Respond in the same language as the user.',
12
+ contextBudget: { maxToolOutput: 4000 },
13
+ },
14
+ 'data-analyst': {
15
+ maxIterations: 20,
16
+ maxMessages: 60,
17
+ toolTimeout: 60000,
18
+ llmTimeout: 120000,
19
+ basePrompt: 'You are a data analysis expert. Use tools to query, analyze, and visualize data. Always provide clear insights.',
20
+ contextBudget: { maxToolOutput: 12000, toolOutputTailLength: 2000 },
21
+ },
22
+ 'code-assistant': {
23
+ maxIterations: 15,
24
+ maxMessages: 50,
25
+ toolTimeout: 30000,
26
+ llmTimeout: 120000,
27
+ basePrompt: 'You are a coding assistant. Write clean, efficient code and explain your reasoning.',
28
+ contextBudget: { maxToolOutput: 8000 },
29
+ },
30
+ 'researcher': {
31
+ maxIterations: 25,
32
+ maxMessages: 80,
33
+ toolTimeout: 60000,
34
+ llmTimeout: 180000,
35
+ basePrompt: 'You are a research assistant. Thoroughly investigate topics using available tools and provide well-sourced findings.',
36
+ contextBudget: { maxToolOutput: 15000, toolOutputTailLength: 3000 },
37
+ },
38
+ };
39
+ const presetConfig = presets[preset];
40
+ return {
41
+ ...presetConfig,
42
+ ...overrides,
43
+ contextBudget: { ...presetConfig.contextBudget, ...overrides.contextBudget },
44
+ };
45
+ }
5
46
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/agent/types.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,oBAAoB;AACpB,+DAA+D"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/agent/types.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,oBAAoB;AACpB,+DAA+D;AAoI/D,MAAM,UAAU,iBAAiB,CAC/B,MAAyB,EACzB,SAAsB;IAEtB,MAAM,OAAO,GAAoD;QAC/D,MAAM,EAAE;YACN,aAAa,EAAE,CAAC;YAChB,WAAW,EAAE,EAAE;YACf,WAAW,EAAE,KAAK;YAClB,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,2EAA2E;YACvF,aAAa,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE;SACvC;QACD,cAAc,EAAE;YACd,aAAa,EAAE,EAAE;YACjB,WAAW,EAAE,EAAE;YACf,WAAW,EAAE,KAAK;YAClB,UAAU,EAAE,MAAM;YAClB,UAAU,EAAE,iHAAiH;YAC7H,aAAa,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,oBAAoB,EAAE,IAAI,EAAE;SACpE;QACD,gBAAgB,EAAE;YAChB,aAAa,EAAE,EAAE;YACjB,WAAW,EAAE,EAAE;YACf,WAAW,EAAE,KAAK;YAClB,UAAU,EAAE,MAAM;YAClB,UAAU,EAAE,qFAAqF;YACjG,aAAa,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE;SACvC;QACD,YAAY,EAAE;YACZ,aAAa,EAAE,EAAE;YACjB,WAAW,EAAE,EAAE;YACf,WAAW,EAAE,KAAK;YAClB,UAAU,EAAE,MAAM;YAClB,UAAU,EAAE,sHAAsH;YAClI,aAAa,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,oBAAoB,EAAE,IAAI,EAAE;SACpE;KACF,CAAC;IAEF,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACrC,OAAO;QACL,GAAG,YAAY;QACf,GAAG,SAAS;QACZ,aAAa,EAAE,EAAE,GAAG,YAAY,CAAC,aAAa,EAAE,GAAG,SAAS,CAAC,aAAa,EAAE;KAC7E,CAAC;AACJ,CAAC"}