@cicctencent/agent-server 0.1.2 → 0.2.0

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 (48) hide show
  1. package/README.md +93 -16
  2. package/dist/cjs/agent/agent-server.d.ts.map +1 -1
  3. package/dist/cjs/agent/agent-server.js +50 -15
  4. package/dist/cjs/agent/agent-server.js.map +1 -1
  5. package/dist/cjs/service/cache.service.d.ts +69 -0
  6. package/dist/cjs/service/cache.service.d.ts.map +1 -0
  7. package/dist/cjs/service/cache.service.js +243 -0
  8. package/dist/cjs/service/cache.service.js.map +1 -0
  9. package/dist/cjs/service/engine-pool.d.ts +15 -2
  10. package/dist/cjs/service/engine-pool.d.ts.map +1 -1
  11. package/dist/cjs/service/engine-pool.js +15 -4
  12. package/dist/cjs/service/engine-pool.js.map +1 -1
  13. package/dist/cjs/spi/adapters.d.ts +55 -3
  14. package/dist/cjs/spi/adapters.d.ts.map +1 -1
  15. package/dist/cjs/spi/adapters.js +61 -5
  16. package/dist/cjs/spi/adapters.js.map +1 -1
  17. package/dist/cjs/spi/index.d.ts +84 -0
  18. package/dist/cjs/spi/index.d.ts.map +1 -1
  19. package/dist/cjs/spi/index.js +90 -6
  20. package/dist/cjs/spi/index.js.map +1 -1
  21. package/dist/cjs/spi/types.d.ts +7 -7
  22. package/dist/cjs/spi/types.d.ts.map +1 -1
  23. package/dist/cjs/types.d.ts +63 -8
  24. package/dist/cjs/types.d.ts.map +1 -1
  25. package/dist/esm/agent/agent-server.d.ts.map +1 -1
  26. package/dist/esm/agent/agent-server.js +50 -15
  27. package/dist/esm/agent/agent-server.js.map +1 -1
  28. package/dist/esm/service/cache.service.d.ts +69 -0
  29. package/dist/esm/service/cache.service.d.ts.map +1 -0
  30. package/dist/esm/service/cache.service.js +237 -0
  31. package/dist/esm/service/cache.service.js.map +1 -0
  32. package/dist/esm/service/engine-pool.d.ts +15 -2
  33. package/dist/esm/service/engine-pool.d.ts.map +1 -1
  34. package/dist/esm/service/engine-pool.js +15 -4
  35. package/dist/esm/service/engine-pool.js.map +1 -1
  36. package/dist/esm/spi/adapters.d.ts +55 -3
  37. package/dist/esm/spi/adapters.d.ts.map +1 -1
  38. package/dist/esm/spi/adapters.js +61 -5
  39. package/dist/esm/spi/adapters.js.map +1 -1
  40. package/dist/esm/spi/index.d.ts +84 -0
  41. package/dist/esm/spi/index.d.ts.map +1 -1
  42. package/dist/esm/spi/index.js +90 -6
  43. package/dist/esm/spi/index.js.map +1 -1
  44. package/dist/esm/spi/types.d.ts +7 -7
  45. package/dist/esm/spi/types.d.ts.map +1 -1
  46. package/dist/esm/types.d.ts +63 -8
  47. package/dist/esm/types.d.ts.map +1 -1
  48. package/package.json +1 -1
@@ -2,22 +2,106 @@
2
2
  // ============================================================
3
3
  // SPI 模块导出
4
4
  // ============================================================
5
+ /**
6
+ * # agent-server SPI (Service Provider Interface)
7
+ *
8
+ * ## 核心设计原则
9
+ *
10
+ * 1. **接口优先**:agent-server 核心只定义能力接口,不依赖具体实现
11
+ * 2. **参考实现可选**:提供常见框架的参考实现,业务层可选择使用或自己实现
12
+ * 3. **业务层自主**:完全控制实现细节,不受 agent-server 限制
13
+ *
14
+ * ## 使用方式
15
+ *
16
+ * ### 方式 1:直接使用参考实现(最简单)
17
+ *
18
+ * ```typescript
19
+ * import { KoaSSEAdapter, createAgentServer } from '@cicctencent/agent-server';
20
+ *
21
+ * const server = createAgentServer({ llmProvider: myProvider });
22
+ *
23
+ * // MidwayJS/Koa 项目
24
+ * @Get('/chat/stream')
25
+ * async chatStream(@Ctx() ctx: Context) {
26
+ * const adapter = new KoaSSEAdapter(ctx);
27
+ * await server.runAgentStream(adapter, { content: 'Hello' });
28
+ * }
29
+ * ```
30
+ *
31
+ * ### 方式 2:实现 SPI 接口(自定义存储)
32
+ *
33
+ * ```typescript
34
+ * import {
35
+ * createAgentServer,
36
+ * type ChatStoreProvider,
37
+ * type BaseThreadEntity,
38
+ * type BaseMessageEntity,
39
+ * } from '@cicctencent/agent-server';
40
+ *
41
+ * // 定义你的实体类型(可以自定义字段)
42
+ * interface MyThread extends BaseThreadEntity {
43
+ * userId: string;
44
+ * applicationId: number;
45
+ * }
46
+ *
47
+ * // 实现 ChatStoreProvider 接口
48
+ * class MyChatStore implements ChatStoreProvider<MyThread, MyMessage> {
49
+ * async getThreads(userId?: string): Promise<MyThread[]> {
50
+ * // 使用任意存储技术:TypeORM / Prisma / Mongoose / ...
51
+ * return this.database.query('SELECT * FROM threads WHERE userId = ?', [userId]);
52
+ * }
53
+ *
54
+ * // ... 实现其他方法
55
+ * }
56
+ *
57
+ * // 注入自定义实现
58
+ * const server = createAgentServer({
59
+ * llmProvider: myProvider,
60
+ * chatStoreProvider: new MyChatStore(),
61
+ * });
62
+ * ```
63
+ *
64
+ * ### 方式 3:只使用组件(不使用工厂)
65
+ *
66
+ * ```typescript
67
+ * import {
68
+ * KoaSSEAdapter,
69
+ * writeSSE,
70
+ * createBuiltinTools,
71
+ * MemoryService,
72
+ * } from '@cicctencent/agent-server';
73
+ *
74
+ * // 只使用需要的组件,不依赖 createAgentServer
75
+ * const tools = createBuiltinTools();
76
+ * const memoryService = new MemoryService('./data');
77
+ *
78
+ * @Get('/stream')
79
+ * async stream(@Ctx() ctx: Context) {
80
+ * const adapter = new KoaSSEAdapter(ctx);
81
+ * writeSSE(adapter, 'start', { message: 'Hello' });
82
+ * }
83
+ * ```
84
+ *
85
+ * ## 完整文档
86
+ *
87
+ * 详见 [README.md](./README.md)
88
+ */
5
89
  Object.defineProperty(exports, "__esModule", { value: true });
6
90
  exports.CustomSSEAdapter = exports.adaptRequest = exports.KoaRequestAdapter = exports.ExpressRequestAdapter = exports.adaptSSE = exports.NativeHttpSSEAdapter = exports.FastifySSEAdapter = exports.KoaSSEAdapter = exports.ExpressSSEAdapter = exports.createInMemoryStorage = exports.createJsonFileStorage = exports.DatabaseListStorage = exports.InMemoryListStorage = exports.InMemoryKVStorage = exports.JsonFileListStorage = exports.JsonFileKVStorage = void 0;
7
- // ---- 存储适配器 ----
91
+ // ---- 存储适配器(参考实现) ----
8
92
  var storage_ts_1 = require("./storage.js");
9
- // JSON 文件存储
93
+ // JSON 文件存储(默认实现)
10
94
  Object.defineProperty(exports, "JsonFileKVStorage", { enumerable: true, get: function () { return storage_ts_1.JsonFileKVStorage; } });
11
95
  Object.defineProperty(exports, "JsonFileListStorage", { enumerable: true, get: function () { return storage_ts_1.JsonFileListStorage; } });
12
- // 内存存储
96
+ // 内存存储(测试用)
13
97
  Object.defineProperty(exports, "InMemoryKVStorage", { enumerable: true, get: function () { return storage_ts_1.InMemoryKVStorage; } });
14
98
  Object.defineProperty(exports, "InMemoryListStorage", { enumerable: true, get: function () { return storage_ts_1.InMemoryListStorage; } });
15
- // 数据库存储基类
99
+ // 数据库存储基类(业务层继承)
16
100
  Object.defineProperty(exports, "DatabaseListStorage", { enumerable: true, get: function () { return storage_ts_1.DatabaseListStorage; } });
17
101
  // 工厂函数
18
102
  Object.defineProperty(exports, "createJsonFileStorage", { enumerable: true, get: function () { return storage_ts_1.createJsonFileStorage; } });
19
103
  Object.defineProperty(exports, "createInMemoryStorage", { enumerable: true, get: function () { return storage_ts_1.createInMemoryStorage; } });
20
- // ---- 框架适配器 ----
104
+ // ---- 框架适配器(参考实现) ----
21
105
  var adapters_ts_1 = require("./adapters.js");
22
106
  // SSE 适配器
23
107
  Object.defineProperty(exports, "ExpressSSEAdapter", { enumerable: true, get: function () { return adapters_ts_1.ExpressSSEAdapter; } });
@@ -29,7 +113,7 @@ Object.defineProperty(exports, "adaptSSE", { enumerable: true, get: function ()
29
113
  Object.defineProperty(exports, "ExpressRequestAdapter", { enumerable: true, get: function () { return adapters_ts_1.ExpressRequestAdapter; } });
30
114
  Object.defineProperty(exports, "KoaRequestAdapter", { enumerable: true, get: function () { return adapters_ts_1.KoaRequestAdapter; } });
31
115
  Object.defineProperty(exports, "adaptRequest", { enumerable: true, get: function () { return adapters_ts_1.adaptRequest; } });
32
- // 自定义适配器示例
116
+ // 自定义适配器基类
33
117
  Object.defineProperty(exports, "CustomSSEAdapter", { enumerable: true, get: function () { return adapters_ts_1.CustomSSEAdapter; } });
34
118
  // ============================================================
35
119
  // SPI 使用指南
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/spi/index.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,WAAW;AACX,+DAA+D;;;AAgC/D,kBAAkB;AAClB,2CAYsB;AAXpB,YAAY;AACZ,+GAAA,iBAAiB,OAAA;AACjB,iHAAA,mBAAmB,OAAA;AACnB,OAAO;AACP,+GAAA,iBAAiB,OAAA;AACjB,iHAAA,mBAAmB,OAAA;AACnB,UAAU;AACV,iHAAA,mBAAmB,OAAA;AACnB,OAAO;AACP,mHAAA,qBAAqB,OAAA;AACrB,mHAAA,qBAAqB,OAAA;AAGvB,kBAAkB;AAClB,6CAauB;AAZrB,UAAU;AACV,gHAAA,iBAAiB,OAAA;AACjB,4GAAA,aAAa,OAAA;AACb,gHAAA,iBAAiB,OAAA;AACjB,mHAAA,oBAAoB,OAAA;AACpB,uGAAA,QAAQ,OAAA;AACR,QAAQ;AACR,oHAAA,qBAAqB,OAAA;AACrB,gHAAA,iBAAiB,OAAA;AACjB,2GAAA,YAAY,OAAA;AACZ,WAAW;AACX,+GAAA,gBAAgB,OAAA;AAGlB,+DAA+D;AAC/D,WAAW;AACX,+DAA+D;AAE/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyGG"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/spi/index.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,WAAW;AACX,+DAA+D;AAC/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmFG;;;AAsCH,wBAAwB;AACxB,2CAesB;AAdpB,kBAAkB;AAClB,+GAAA,iBAAiB,OAAA;AACjB,iHAAA,mBAAmB,OAAA;AAEnB,YAAY;AACZ,+GAAA,iBAAiB,OAAA;AACjB,iHAAA,mBAAmB,OAAA;AAEnB,iBAAiB;AACjB,iHAAA,mBAAmB,OAAA;AAEnB,OAAO;AACP,mHAAA,qBAAqB,OAAA;AACrB,mHAAA,qBAAqB,OAAA;AAGvB,wBAAwB;AACxB,6CAeuB;AAdrB,UAAU;AACV,gHAAA,iBAAiB,OAAA;AACjB,4GAAA,aAAa,OAAA;AACb,gHAAA,iBAAiB,OAAA;AACjB,mHAAA,oBAAoB,OAAA;AACpB,uGAAA,QAAQ,OAAA;AAER,QAAQ;AACR,oHAAA,qBAAqB,OAAA;AACrB,gHAAA,iBAAiB,OAAA;AACjB,2GAAA,YAAY,OAAA;AAEZ,WAAW;AACX,+GAAA,gBAAgB,OAAA;AAGlB,+DAA+D;AAC/D,WAAW;AACX,+DAA+D;AAE/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyGG"}
@@ -157,14 +157,14 @@ export interface ChatStoreProvider<TThread extends BaseThreadEntity = BaseThread
157
157
  * Agent Profile 存储提供者
158
158
  */
159
159
  export interface AgentProfileProvider<TProfile extends BaseAgentProfileEntity = BaseAgentProfileEntity> {
160
- listProfiles(): TProfile[];
161
- getProfile(id: number | string): TProfile | undefined;
162
- getDefaultProfile(): TProfile | undefined;
163
- createProfile(data: Partial<TProfile>): TProfile;
164
- updateProfile(id: number | string, data: Partial<TProfile>): TProfile | undefined;
165
- deleteProfile(id: number | string): boolean;
160
+ listProfiles(): TProfile[] | Promise<TProfile[]>;
161
+ getProfile(id: number | string): TProfile | undefined | Promise<TProfile | undefined>;
162
+ getDefaultProfile(): TProfile | undefined | Promise<TProfile | undefined>;
163
+ createProfile(data: Partial<TProfile>): TProfile | Promise<TProfile>;
164
+ updateProfile(id: number | string, data: Partial<TProfile>): TProfile | undefined | Promise<TProfile | undefined>;
165
+ deleteProfile(id: number | string): boolean | Promise<boolean>;
166
166
  /** 扩展:设置默认 Profile */
167
- setDefaultProfile?(id: number | string): void;
167
+ setDefaultProfile?(id: number | string): void | Promise<void>;
168
168
  /** 获取底层存储 */
169
169
  getStorage?(): ListStorageAdapter<TProfile>;
170
170
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/spi/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/spi/types.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { AgentEngine, LLMProvider, Middleware, RegisteredTool, ToolRegistry, SkillManager, ContextManager, ContentPart, Message, ProxySettings } from '@cicctencent/agent-core';
1
+ import type { AgentEngine, LLMProvider, Middleware, RegisteredTool, ToolRegistry, SkillManager, ContextManager, ContentPart, Message, ProxySettings, AgentEventPreset } from '@cicctencent/agent-core';
2
2
  export interface ThreadEntity {
3
3
  id: number;
4
4
  workspaceId?: number;
@@ -363,12 +363,47 @@ export interface ConnectorServiceProvider {
363
363
  }
364
364
  /** Agent Profile 服务提供者 */
365
365
  export interface AgentProfileProvider {
366
- listProfiles(): AgentProfileEntity[];
367
- getProfile(id: number): AgentProfileEntity | undefined;
368
- getDefaultProfile(): AgentProfileEntity | undefined;
369
- createProfile(data: Partial<AgentProfileEntity>): AgentProfileEntity;
370
- updateProfile(id: number, data: Partial<AgentProfileEntity>): AgentProfileEntity | undefined;
371
- deleteProfile(id: number): boolean;
366
+ listProfiles(): AgentProfileEntity[] | Promise<AgentProfileEntity[]>;
367
+ getProfile(id: number): AgentProfileEntity | undefined | Promise<AgentProfileEntity | undefined>;
368
+ getDefaultProfile(): AgentProfileEntity | undefined | Promise<AgentProfileEntity | undefined>;
369
+ createProfile(data: Partial<AgentProfileEntity>): AgentProfileEntity | Promise<AgentProfileEntity>;
370
+ updateProfile(id: number, data: Partial<AgentProfileEntity>): AgentProfileEntity | undefined | Promise<AgentProfileEntity | undefined>;
371
+ deleteProfile(id: number): boolean | Promise<boolean>;
372
+ }
373
+ /**
374
+ * 缓存配置。
375
+ *
376
+ * agent-server 在多进程部署时,对 Settings / Profile / Engine 做本地 TTL 缓存。
377
+ * - TTL 到期自动过期,下次请求重新从 Provider(DB)加载
378
+ * - 主动失效通过 `AgentServer.invalidateProfileCache()` / `invalidateSettingsCache()` 触发
379
+ * - 跨进程失效通过 `CacheInvalidationNotifier` 实现(如 Redis pub/sub)
380
+ */
381
+ export interface CacheConfig {
382
+ /** Engine 缓存 TTL(ms),默认 5 分钟。设为 0 禁用缓存 */
383
+ engineTTL?: number;
384
+ /** Engine 缓存最大数量,默认 10 */
385
+ engineMaxSize?: number;
386
+ /** Profile 缓存 TTL(ms),默认 60 秒。设为 0 禁用缓存(每次直接查 Provider) */
387
+ profileTTL?: number;
388
+ /** Settings 缓存 TTL(ms),默认 60 秒。设为 0 禁用缓存 */
389
+ settingsTTL?: number;
390
+ }
391
+ /** 缓存失效范围 */
392
+ export type CacheInvalidationScope = 'profile' | 'settings' | 'all';
393
+ /**
394
+ * 跨进程缓存失效通知者。
395
+ *
396
+ * 多进程/多实例部署时,一个进程更新了配置后,需通知其他进程清除本地缓存。
397
+ * 上层应用可用 Redis pub/sub、MQ 等实现 `notifyInvalidate` + `onInvalidate`。
398
+ *
399
+ * agent-server 会在本地缓存失效后自动调用 `notifyInvalidate` 广播通知;
400
+ * 收到 `onInvalidate` 回调后会清除本地对应缓存。
401
+ */
402
+ export interface CacheInvalidationNotifier {
403
+ /** 广播缓存失效通知给其他进程 */
404
+ notifyInvalidate(scope: CacheInvalidationScope, key?: number | string): void;
405
+ /** 订阅缓存失效通知(agent-server 注册回调,收到通知后清除本地缓存) */
406
+ onInvalidate(handler: (scope: CacheInvalidationScope, key?: number | string) => void): () => void;
372
407
  }
373
408
  export interface AgentServerOptions {
374
409
  /** LLM Provider(必选) */
@@ -398,6 +433,22 @@ export interface AgentServerOptions {
398
433
  toolTimeout?: number;
399
434
  llmTimeout?: number;
400
435
  basePrompt?: string;
436
+ /** SSE 事件映射预设,默认 'sse'。BI 项目使用 'bi' 输出前端兼容格式 */
437
+ sseEventPreset?: AgentEventPreset;
438
+ /**
439
+ * 缓存配置。
440
+ *
441
+ * 上层 Web 项目通常多进程部署,agent-server 需对 Settings / Profile 等配置做 TTL 缓存以减少 DB 压力,
442
+ * 同时支持主动失效。EnginePool 的 TTL 也通过此配置调整。
443
+ */
444
+ cache?: CacheConfig;
445
+ /**
446
+ * 跨进程缓存失效通知者。
447
+ *
448
+ * 多进程部署时,一个进程更新了 Profile / Settings 后,需通过此接口通知其他进程清除本地缓存。
449
+ * 上层可用 Redis pub/sub、MQ 等实现。未提供时仅当前进程生效。
450
+ */
451
+ cacheInvalidationNotifier?: CacheInvalidationNotifier;
401
452
  onInit?: (server: AgentServer) => void;
402
453
  }
403
454
  /**
@@ -436,7 +487,7 @@ export interface AgentServer {
436
487
  /** 重连 Agent SSE 流 */
437
488
  reconnectAgentStream(res: SSEResponse, threadId: number): Promise<void>;
438
489
  /** 获取引擎 */
439
- getEngineForProfile(profileId?: number, profileOverride?: AgentProfileEntity, skipCache?: boolean): AgentEngine;
490
+ getEngineForProfile(profileId?: number, profileOverride?: AgentProfileEntity, skipCache?: boolean): AgentEngine | Promise<AgentEngine>;
440
491
  /** 获取主引擎 */
441
492
  getEngine(): AgentEngine | null;
442
493
  /** 中止指定会话的 Agent 执行 */
@@ -449,6 +500,10 @@ export interface AgentServer {
449
500
  refreshLLMConfig(): void;
450
501
  /** 刷新 Agent 引擎配置 */
451
502
  refreshAgentConfig(): void;
503
+ /** 清除 Profile 缓存。指定 profileId 时仅清除该 profile,不指定时清除全部。同时失效对应 Engine 缓存。 */
504
+ invalidateProfileCache(profileId?: number): void;
505
+ /** 清除 Settings 缓存 */
506
+ invalidateSettingsCache(): void;
452
507
  /** 重新同步 MCP 工具 */
453
508
  refreshMCPTools(): Promise<{
454
509
  connected: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,WAAW,EACX,WAAW,EACX,UAAU,EACV,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,cAAc,EAEd,WAAW,EACX,OAAO,EAEP,aAAa,EACb,gBAAgB,EACjB,MAAM,yBAAyB,CAAC;AAMjC,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAC1C,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,WAAW,GAAG,WAAW,GAAG,OAAO,CAAC;IAC5D,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,aAAa,EAAE;QACb,YAAY,EAAE,OAAO,CAAC;KACvB,CAAC;IACF,WAAW,CAAC,EAAE;QACZ,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,aAAa,CAAC,EAAE;YACd,aAAa,CAAC,EAAE,MAAM,CAAC;YACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;YAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;SAC3B,CAAC;QACF,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QACnC,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,WAAW,CAAC,EAAE;YACZ,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,aAAa,CAAC,EAAE,MAAM,CAAC;SACxB,CAAC;QACF,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,iBAAiB,CAAC,EAAE,SAAS,GAAG,YAAY,CAAC;QAC7C,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACrC,CAAC;IACF,cAAc,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,gBAAgB,GAAG,YAAY,CAAC;AAC1F,MAAM,MAAM,mBAAmB,GAAG,cAAc,GAAG,WAAW,GAAG,OAAO,CAAC;AAEzE,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE;YACzB,IAAI,EAAE,MAAM,CAAC;YACb,WAAW,EAAE,MAAM,CAAC;YACpB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;SACjB,CAAC,CAAC;QACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACrD,KAAK,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;IAC1D,IAAI,CAAC,EAAE;QAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACxF,QAAQ,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,WAAW,GAAG,OAAO,CAAC;AAElE,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAClC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IACjC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,SAAS,GAAG,YAAY,GAAG,QAAQ,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE;QAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9F,WAAW,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACjC,aAAa,CAAC,EAAE;QACd,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACtC,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,QAAQ,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAMD,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,YAAY,GAAG,eAAe,GAAG,UAAU,GAAG,KAAK,GAAG,OAAO,GAAG,UAAU,CAAC;AAErH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,cAAc,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACxE,aAAa,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IACnE,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7F,wBAAwB,CAAC,CAAC,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACvH;AAMD,cAAc;AACd,MAAM,WAAW,gBAAgB;IAC/B,WAAW,IAAI,cAAc,CAAC;IAC9B,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,cAAc,CAAC;IACjE,aAAa,CAAC,IAAI,cAAc,CAAC;CAClC;AAED,cAAc;AACd,MAAM,WAAW,iBAAiB;IAChC,UAAU,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE,CAAC;IACjD,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAAC;IAChD,YAAY,CAAC,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,GAAG,KAAK,CAAA;KAAE,GAAG,YAAY,CAAC;IACrG,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,YAAY,GAAG,SAAS,CAAC;IAChF,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;IAClC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,KAAK,EAAE,aAAa,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAC1I,UAAU,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,GAAG,CAAA;KAAE,GAAG,aAAa,CAAC;IAChH,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,GAAG,CAAA;KAAE,GAAG,aAAa,GAAG,SAAS,CAAC;IAC/G,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;IACrD,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,EAAE,CAAC;CACjE;AAED,iBAAiB;AACjB,MAAM,WAAW,qBAAqB;IACpC,kBAAkB,CAChB,OAAO,EAAE,kBAAkB,EAC3B,KAAK,EAAE,YAAY,EACnB,MAAM,CAAC,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,kBAAkB,EAAE,EAClC,qBAAqB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,cAAc,EAAE,MAAM,EAAE,CAAC;QAAC,cAAc,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,GAC7F,MAAM,CAAC;IACV,qBAAqB,CACnB,OAAO,EAAE,kBAAkB,EAC3B,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,YAAY,EACpB,MAAM,CAAC,EAAE,MAAM,GACd,MAAM,CAAC;IACV,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,MAAM,CAAC;CAC1E;AAED,cAAc;AACd,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,mBAAmB,CAAC;IACrD,cAAc,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;CAC7E;AAED,gBAAgB;AAChB,MAAM,WAAW,kBAAkB;IACjC,WAAW,IAAI,eAAe,EAAE,CAAC;IACjC,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,eAAe,GAAG,SAAS,CAAC;IAC5D,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,gBAAgB,CAAA;KAAE,GAAG,eAAe,CAAC;IAC3G,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,GAAG,SAAS,CAAC;IAC/F,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC3C,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,eAAe,GAAG,SAAS,CAAC;IACjF,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtG,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,iBAAiB,EAAE,CAAC;IACzD,mBAAmB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IAC7G,aAAa,IAAI,IAAI,CAAC;IACtB,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IACtD,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAChD;AAED,kBAAkB;AAClB,MAAM,WAAW,oBAAoB;IACnC,UAAU,IAAI,SAAS,EAAE,CAAC;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACvC,YAAY,CAAC,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,OAAO,CAAC;QAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,KAAK,CAAC,SAAS,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACrN,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,IAAI,CAAC;IAC3D,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;IACjC,YAAY,IAAI;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACnC;AAED,eAAe;AACf,MAAM,WAAW,wBAAwB;IACvC,cAAc,IAAI,eAAe,EAAE,CAAC;IACpC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAAC;IACtD,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,eAAe,GAAG,SAAS,CAAC;IAC3E,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAClE,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,gBAAgB,IAAI,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACtE,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IACvE,wBAAwB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;CACxF;AAED,0BAA0B;AAC1B,MAAM,WAAW,oBAAoB;IACnC,YAAY,IAAI,kBAAkB,EAAE,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;IACrE,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAAC;IACjG,iBAAiB,IAAI,kBAAkB,GAAG,SAAS,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAAC;IAC9F,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACnG,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB,GAAG,SAAS,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAAC;IACvI,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACvD;AAMD;;;;;;;GAOG;AACH,MAAM,WAAW,WAAW;IAC1B,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0BAA0B;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,aAAa;AACb,MAAM,MAAM,sBAAsB,GAAG,SAAS,GAAG,UAAU,GAAG,KAAK,CAAC;AAEpE;;;;;;;;GAQG;AACH,MAAM,WAAW,yBAAyB;IACxC,oBAAoB;IACpB,gBAAgB,CAAC,KAAK,EAAE,sBAAsB,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC7E,8CAA8C;IAC9C,YAAY,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,sBAAsB,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;CACnG;AAMD,MAAM,WAAW,kBAAkB;IACjC,uBAAuB;IACvB,WAAW,EAAE,WAAW,CAAC;IAEzB,sBAAsB;IACtB,gBAAgB,CAAC,EAAE,WAAW,CAAC;IAG/B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C,wBAAwB,CAAC,EAAE,wBAAwB,CAAC;IACpD,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAG5C,kCAAkC;IAClC,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACzB,sBAAsB;IACtB,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAG9B,gBAAgB;IAChB,UAAU,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAGjC,UAAU,CAAC,EAAE,UAAU,EAAE,CAAC;IAG1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IAGvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,gDAAgD;IAChD,cAAc,CAAC,EAAE,gBAAgB,CAAC;IAGlC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;IAEpB;;;;;OAKG;IACH,yBAAyB,CAAC,EAAE,yBAAyB,CAAC;IAGtD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;CACxC;AAMD;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,kBAAkB;IAClB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW;IACX,GAAG,IAAI,IAAI,CAAC;IACZ,gBAAgB;IAChB,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,YAAY;IACZ,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACtD,kBAAkB;IAClB,YAAY,CAAC,IAAI,IAAI,CAAC;IACtB,2BAA2B;IAC3B,MAAM,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,0BAA0B;IAC1B,IAAI,CAAC,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC;CACxB;AAMD,MAAM,WAAW,WAAW;IAC1B,iBAAiB;IACjB,WAAW,EAAE,WAAW,CAAC;IAEzB,gBAAgB;IAChB,YAAY,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI,CAAC;IACzC,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnC,iBAAiB;IACjB,kBAAkB,CAAC,EAAE,EAAE,UAAU,GAAG,IAAI,CAAC;IACzC,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAEzC,qBAAqB;IACrB,cAAc,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9F,qBAAqB;IACrB,oBAAoB,CAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExE,WAAW;IACX,mBAAmB,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,kBAAkB,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEvI,YAAY;IACZ,SAAS,IAAI,WAAW,GAAG,IAAI,CAAC;IAEhC,uBAAuB;IACvB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAE/C,iCAAiC;IACjC,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAExD,cAAc;IACd,eAAe,IAAI,IAAI,CAAC;IAExB,gBAAgB;IAChB,gBAAgB,IAAI,IAAI,CAAC;IAEzB,oBAAoB;IACpB,kBAAkB,IAAI,IAAI,CAAC;IAI3B,0EAA0E;IAC1E,sBAAsB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjD,qBAAqB;IACrB,uBAAuB,IAAI,IAAI,CAAC;IAEhC,kBAAkB;IAClB,eAAe,IAAI,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IAEnF,iBAAiB;IACjB,kBAAkB,IAAI,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAErF,iBAAiB;IACjB,eAAe,IAAI,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAE7G,kBAAkB;IAClB,wBAAwB,IAAI,aAAa,CAAC,UAAU,CAAC,CAAC;IAEtD,aAAa;IACb,aAAa,CAAC,MAAM,CAAC,EAAE;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,GAAG,CAAC;IAER,sBAAsB;IACtB,gBAAgB,IAAI,OAAO,CAAC;IAE5B,sBAAsB;IACtB,yBAAyB,IAAI,MAAM,CAAC;IAEpC,aAAa;IACb,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG;QAChC,YAAY,EAAE,OAAO,CAAC;QACtB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;IAEF,iBAAiB;IACjB,QAAQ,CAAC,SAAS,EAAE;QAClB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;QAC5B,SAAS,CAAC,EAAE,iBAAiB,CAAC;QAC9B,aAAa,CAAC,EAAE,qBAAqB,CAAC;QACtC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;QAC1C,UAAU,CAAC,EAAE,kBAAkB,CAAC;QAChC,YAAY,CAAC,EAAE,oBAAoB,CAAC;QACpC,gBAAgB,CAAC,EAAE,wBAAwB,CAAC;QAC5C,YAAY,CAAC,EAAE,oBAAoB,CAAC;KACrC,CAAC;CACH;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,WAAW,CAAC;IACpB,YAAY,EAAE,YAAY,CAAC;IAC3B,YAAY,EAAE,YAAY,CAAC;IAC3B,cAAc,EAAE,cAAc,CAAC;IAC/B,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,GAAG,WAAW,EAAE,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAMD,MAAM,WAAW,yBAAyB;IACxC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"agent-server.d.ts","sourceRoot":"","sources":["../../../src/agent/agent-server.ts"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EACV,WAAW,EACX,kBAAkB,EAKnB,MAAM,aAAa,CAAC;AAarB;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,WAAW,CAgV1E"}
1
+ {"version":3,"file":"agent-server.d.ts","sourceRoot":"","sources":["../../../src/agent/agent-server.ts"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EACV,WAAW,EACX,kBAAkB,EAMnB,MAAM,aAAa,CAAC;AAcrB;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,WAAW,CAqX1E"}
@@ -12,17 +12,41 @@ import { getRunRegistry } from "../service/run-registry.js";
12
12
  import { writeSSE } from "../sse/sse-handler.js";
13
13
  import { LocalShellExecutor, LocalFileSystemExecutor } from "../tool/local-executors.js";
14
14
  import { registerAdapter } from "../connectors/index.js";
15
+ import { CachedSettingsProvider, CachedAgentProfileProvider } from "../service/cache.service.js";
15
16
  /**
16
17
  * 创建 AgentServer 实例
17
18
  */
18
19
  export function createAgentServer(options) {
19
20
  const dataDir = options.dataDir;
21
+ // ---- 缓存配置 ----
22
+ const cacheConfig = options.cache ?? {};
23
+ const profileTTL = cacheConfig.profileTTL ?? 60_000;
24
+ const settingsTTL = cacheConfig.settingsTTL ?? 60_000;
20
25
  // ---- 初始化 SPI 提供者 ----
21
- const settingsProvider = options.settingsProvider ?? new DefaultSettingsProvider(dataDir);
26
+ const rawSettingsProvider = options.settingsProvider ?? new DefaultSettingsProvider(dataDir);
27
+ const rawAgentProfileProvider = options.agentProfileProvider ?? new DefaultAgentProfileProvider(dataDir);
28
+ // 用 TTL 缓存包装(TTL=0 时缓存禁用,每次直接查 Provider)
29
+ const settingsProvider = new CachedSettingsProvider(rawSettingsProvider, settingsTTL);
30
+ const agentProfileProvider = new CachedAgentProfileProvider(rawAgentProfileProvider, profileTTL);
22
31
  const chatStoreProvider = options.chatStoreProvider ?? new DefaultChatStoreProvider(dataDir);
23
- const agentProfileProvider = options.agentProfileProvider ?? new DefaultAgentProfileProvider(dataDir);
24
32
  const promptBuilder = options.promptBuilder ?? new DefaultPromptBuilder();
25
33
  const memoryService = getMemoryService(dataDir);
34
+ // ---- 初始化 EnginePool(支持外部配置 TTL / maxSize) ----
35
+ const pool = getEnginePool({ ttl: cacheConfig.engineTTL, maxSize: cacheConfig.engineMaxSize });
36
+ // ---- 跨进程缓存失效通知 ----
37
+ const invalidationNotifier = options.cacheInvalidationNotifier;
38
+ if (invalidationNotifier) {
39
+ invalidationNotifier.onInvalidate((scope, key) => {
40
+ if (scope === 'profile' || scope === 'all') {
41
+ agentProfileProvider.invalidate(key != null ? Number(key) : undefined);
42
+ pool.clear(); // Profile 变更时清除所有 Engine 缓存
43
+ }
44
+ if (scope === 'settings' || scope === 'all') {
45
+ settingsProvider.invalidate();
46
+ pool.clear(); // Settings 变更时清除所有 Engine 缓存
47
+ }
48
+ });
49
+ }
26
50
  // ---- 注册自定义连接器 ----
27
51
  if (options.connectors) {
28
52
  for (const adapter of options.connectors) {
@@ -85,19 +109,18 @@ export function createAgentServer(options) {
85
109
  .build().engine;
86
110
  return { engine, toolRegistry, skillManager, contextManager, llmProvider };
87
111
  }
88
- function getEngineForProfile(profileId, profileOverride, skipCache = false) {
112
+ async function getEngineForProfile(profileId, profileOverride, skipCache = false) {
89
113
  const numericProfileId = profileId != null ? Number(profileId) : undefined;
90
114
  if (numericProfileId !== undefined && (isNaN(numericProfileId) || numericProfileId <= 0)) {
91
115
  return getEngineForProfile(undefined, profileOverride, skipCache);
92
116
  }
93
- const pool = getEnginePool();
94
117
  if (!skipCache) {
95
118
  const cached = pool.get(numericProfileId);
96
119
  if (cached)
97
120
  return cached;
98
121
  }
99
122
  const { toolRegistry: baseRegistry, skillManager: baseSkillManager, contextManager: ctxManager } = getAgentSystem();
100
- const profile = profileOverride || (numericProfileId ? agentProfileProvider.getProfile(numericProfileId) : agentProfileProvider.getDefaultProfile());
123
+ const profile = profileOverride || (numericProfileId ? await agentProfileProvider.getProfile(numericProfileId) : await agentProfileProvider.getDefaultProfile());
101
124
  if (!profile)
102
125
  return engine;
103
126
  const isDefaultAgent = profile.isDefault === true || profile.agentType === 'default';
@@ -168,7 +191,7 @@ export function createAgentServer(options) {
168
191
  res.flushHeaders();
169
192
  const rawProfileId = params.agentProfileId;
170
193
  const requestedAgentProfileId = rawProfileId != null && rawProfileId !== '' ? Number(rawProfileId) : undefined;
171
- const engineInstance = getEngineForProfile(requestedAgentProfileId);
194
+ const engineInstance = await getEngineForProfile(requestedAgentProfileId);
172
195
  const sessionId = params.threadId || `session_${Date.now()}`;
173
196
  const traceId = params.traceId || `trace_${Date.now()}_${Math.random().toString(36).slice(2, 8)}`;
174
197
  const threadIdNum = Number(sessionId);
@@ -187,7 +210,7 @@ export function createAgentServer(options) {
187
210
  }
188
211
  try {
189
212
  if (!isNaN(threadIdNum)) {
190
- const history = chatStoreProvider.buildThreadHistory(threadIdNum);
213
+ const history = await chatStoreProvider.buildThreadHistory(threadIdNum);
191
214
  if (history.length > 0)
192
215
  engineInstance.setHistory(sessionId, history);
193
216
  }
@@ -231,14 +254,14 @@ export function createAgentServer(options) {
231
254
  if (run.messageId)
232
255
  registry.addEvent(threadIdNum, 'message-id', { messageId: run.messageId });
233
256
  let lastFlushedLen = 0;
234
- const flushToDB = () => {
257
+ const flushToDB = async () => {
235
258
  if (!run.messageId || isNaN(threadIdNum))
236
259
  return;
237
260
  if (run.fullContent.length === lastFlushedLen && run.status === 'running')
238
261
  return;
239
262
  lastFlushedLen = run.fullContent.length;
240
263
  try {
241
- chatStoreProvider.updateMessage(threadIdNum, run.messageId, {
264
+ await chatStoreProvider.updateMessage(threadIdNum, run.messageId, {
242
265
  content: run.fullContent,
243
266
  meta: { status: 'streaming', reasoning: run.reasoningText || undefined, toolCalls: run.toolCalls.length > 0 ? run.toolCalls.map(tc => ({ ...tc })) : undefined, widgets: run.widgets.length > 0 ? [...run.widgets] : undefined, artifacts: run.artifacts.length > 0 ? [...run.artifacts] : undefined },
244
267
  });
@@ -247,7 +270,7 @@ export function createAgentServer(options) {
247
270
  console.warn('[AgentServer] DB flush failed:', err?.message);
248
271
  }
249
272
  };
250
- const dbFlushTimer = setInterval(flushToDB, DB_FLUSH_INTERVAL);
273
+ const dbFlushTimer = setInterval(() => flushToDB().catch(() => { }), DB_FLUSH_INTERVAL);
251
274
  if (dbFlushTimer && typeof dbFlushTimer === 'object' && 'unref' in dbFlushTimer)
252
275
  dbFlushTimer.unref();
253
276
  const eventAdapterState = createAgentEventCollectorState();
@@ -269,13 +292,13 @@ export function createAgentServer(options) {
269
292
  registry.addEvent(threadIdNum, mapped.event, doneData);
270
293
  }
271
294
  if (run.fullContent.length - lastFlushedLen >= DB_FLUSH_CHARS)
272
- flushToDB();
295
+ flushToDB().catch(() => { });
273
296
  }
274
297
  registry.finishRun(threadIdNum, 'done');
275
298
  logEvent({ event: 'agent.stream.done', sessionId, data: { threadId: threadIdNum, steps: run.stepCount, toolCalls: run.toolCallCount } });
276
299
  if (run.messageId && !isNaN(threadIdNum)) {
277
300
  try {
278
- chatStoreProvider.updateMessage(threadIdNum, run.messageId, { content: run.fullContent, meta: { reasoning: run.reasoningText || undefined, toolCalls: run.toolCalls.length > 0 ? run.toolCalls.map(tc => ({ ...tc })) : undefined, widgets: run.widgets.length > 0 ? [...run.widgets] : undefined, artifacts: run.artifacts.length > 0 ? [...run.artifacts] : undefined } });
301
+ await chatStoreProvider.updateMessage(threadIdNum, run.messageId, { content: run.fullContent, meta: { reasoning: run.reasoningText || undefined, toolCalls: run.toolCalls.length > 0 ? run.toolCalls.map(tc => ({ ...tc })) : undefined, widgets: run.widgets.length > 0 ? [...run.widgets] : undefined, artifacts: run.artifacts.length > 0 ? [...run.artifacts] : undefined } });
279
302
  }
280
303
  catch { }
281
304
  }
@@ -285,7 +308,7 @@ export function createAgentServer(options) {
285
308
  logEvent({ event: 'agent.stream.error', level: 'error', traceId, sessionId, data: { threadId: threadIdNum, error: err.message || 'Agent stream failed' } });
286
309
  if (run.messageId && !isNaN(threadIdNum)) {
287
310
  try {
288
- chatStoreProvider.updateMessage(threadIdNum, run.messageId, { content: run.fullContent || `Error: ${err.message}`, meta: { status: 'error', error: err.message } });
311
+ await chatStoreProvider.updateMessage(threadIdNum, run.messageId, { content: run.fullContent || `Error: ${err.message}`, meta: { status: 'error', error: err.message } });
289
312
  }
290
313
  catch { }
291
314
  }
@@ -377,10 +400,22 @@ export function createAgentServer(options) {
377
400
  engine.abort(String(threadId)); registry.finishRun(threadId, 'error', 'Aborted by user'); return true; },
378
401
  steerAgent(sessionId, message) { if (!engine)
379
402
  return false; return engine.steer(sessionId, message); },
380
- clearEnginePool() { getEnginePool().clear(); },
381
- refreshLLMConfig() { getEnginePool().clear(); console.log('[AgentServer] LLM config refreshed — engine pool cleared'); },
403
+ clearEnginePool() { pool.clear(); },
404
+ refreshLLMConfig() { pool.clear(); console.log('[AgentServer] LLM config refreshed — engine pool cleared'); },
382
405
  refreshAgentConfig() { if (!engine)
383
406
  return; const settings = settingsProvider.getSettings(); const securityGuard = new SecurityGuard(); const config = { llmProvider, toolRegistry: toolRegistry, contextManager: contextManager, skillManager: skillManager, securityGuard, maxIterations: settings.agentConfig?.maxIterations || 15, maxMessages: settings.agentConfig?.maxMessages || 50, toolTimeout: settings.agentConfig?.toolTimeout || 30000, llmTimeout: 120000, basePrompt: settings.agentConfig?.basePrompt || 'You are a helpful AI assistant with access to tools. Use tools when needed to accomplish tasks. Always explain your actions clearly. Respond in the same language as the user.', historyPersistence, usageTracker, middleware: [...registeredMiddlewares] }; engine.destroy(); engine = new AgentRuntimeBuilder().withLLMProvider(llmProvider).withTools(toolRegistry).withSkills(skillManager).withConfig(config).build().engine; console.log('[AgentServer] Agent engine refreshed'); },
407
+ invalidateProfileCache(profileId) {
408
+ agentProfileProvider.invalidate(profileId);
409
+ pool.clear(); // Profile 变更时清除所有 Engine 缓存
410
+ if (invalidationNotifier)
411
+ invalidationNotifier.notifyInvalidate('profile', profileId);
412
+ },
413
+ invalidateSettingsCache() {
414
+ settingsProvider.invalidate();
415
+ pool.clear(); // Settings 变更时清除所有 Engine 缓存
416
+ if (invalidationNotifier)
417
+ invalidationNotifier.notifyInvalidate('settings');
418
+ },
384
419
  async refreshMCPTools() { return { connected: 0, tools: 0, errors: ['MCP sync not configured'] }; },
385
420
  getRegisteredTools() { const { toolRegistry: reg } = getAgentSystem(); return reg.getDefinitions().map(d => { const tool = reg.get(d.function.name); return { name: d.function.name, description: d.function.description, category: tool?.category || 'builtin' }; }); },
386
421
  getLoadedSkills() { const { skillManager: sm } = getAgentSystem(); return sm.getAll().map(s => ({ id: s.id, name: s.name, description: s.description, tags: s.tags, content: s.content })); },