knight-agent 1.1.0 → 1.1.1

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 (173) hide show
  1. package/Host.d.ts +3 -11
  2. package/Host.d.ts.map +1 -1
  3. package/Host.js +4 -5
  4. package/Host.js.map +1 -1
  5. package/base/AbstractAgent.d.ts +1 -99
  6. package/base/AbstractAgent.d.ts.map +1 -1
  7. package/base/AbstractAgent.js +94 -20
  8. package/base/AbstractAgent.js.map +1 -1
  9. package/base/AbstractLLM.d.ts +43 -0
  10. package/base/AbstractLLM.d.ts.map +1 -0
  11. package/base/AbstractLLM.js +121 -0
  12. package/base/AbstractLLM.js.map +1 -0
  13. package/base/AbstractModule.d.ts +1 -0
  14. package/base/AbstractModule.d.ts.map +1 -1
  15. package/base/AbstractModule.js +3 -0
  16. package/base/AbstractModule.js.map +1 -1
  17. package/base/AbstractObject.d.ts +6 -4
  18. package/base/AbstractObject.d.ts.map +1 -1
  19. package/base/AbstractObject.js +6 -2
  20. package/base/AbstractObject.js.map +1 -1
  21. package/base/index.d.ts +1 -4
  22. package/base/index.d.ts.map +1 -1
  23. package/base/index.js +1 -4
  24. package/base/index.js.map +1 -1
  25. package/index.d.ts +0 -2
  26. package/index.d.ts.map +1 -1
  27. package/index.js +0 -7
  28. package/index.js.map +1 -1
  29. package/module/AgentModule/Agent.d.ts +1 -54
  30. package/module/AgentModule/Agent.d.ts.map +1 -1
  31. package/module/AgentModule/Agent.js +22 -207
  32. package/module/AgentModule/Agent.js.map +1 -1
  33. package/module/AgentModule/AgentModule.d.ts +1 -25
  34. package/module/AgentModule/AgentModule.d.ts.map +1 -1
  35. package/module/AgentModule/AgentModule.js +78 -63
  36. package/module/AgentModule/AgentModule.js.map +1 -1
  37. package/module/AgentModule/index.d.ts +1 -1
  38. package/module/AgentModule/index.d.ts.map +1 -1
  39. package/module/AgentModule/index.js +2 -15
  40. package/module/AgentModule/index.js.map +1 -1
  41. package/module/LLMModule/ClaudeLLM.d.ts +23 -0
  42. package/module/LLMModule/ClaudeLLM.d.ts.map +1 -0
  43. package/module/LLMModule/ClaudeLLM.js +138 -0
  44. package/module/LLMModule/ClaudeLLM.js.map +1 -0
  45. package/module/LLMModule/DeepSeekLLM.d.ts +24 -0
  46. package/module/LLMModule/DeepSeekLLM.d.ts.map +1 -0
  47. package/module/LLMModule/DeepSeekLLM.js +136 -0
  48. package/module/LLMModule/DeepSeekLLM.js.map +1 -0
  49. package/module/LLMModule/GeminiLLM.d.ts +23 -0
  50. package/module/LLMModule/GeminiLLM.d.ts.map +1 -0
  51. package/module/LLMModule/GeminiLLM.js +168 -0
  52. package/module/LLMModule/GeminiLLM.js.map +1 -0
  53. package/module/LLMModule/LLMModule.d.ts +33 -0
  54. package/module/LLMModule/LLMModule.d.ts.map +1 -0
  55. package/module/LLMModule/LLMModule.js +92 -0
  56. package/module/LLMModule/LLMModule.js.map +1 -0
  57. package/module/LLMModule/OpenAILLM.d.ts +23 -0
  58. package/module/LLMModule/OpenAILLM.d.ts.map +1 -0
  59. package/module/LLMModule/OpenAILLM.js +145 -0
  60. package/module/LLMModule/OpenAILLM.js.map +1 -0
  61. package/module/LLMModule/QWenLLM.d.ts +23 -0
  62. package/module/LLMModule/QWenLLM.d.ts.map +1 -0
  63. package/module/LLMModule/QWenLLM.js +137 -0
  64. package/module/LLMModule/QWenLLM.js.map +1 -0
  65. package/module/LLMModule/index.d.ts +7 -0
  66. package/module/LLMModule/index.d.ts.map +1 -0
  67. package/module/{SkillModule → LLMModule}/index.js +6 -1
  68. package/module/LLMModule/index.js.map +1 -0
  69. package/module/index.d.ts +1 -4
  70. package/module/index.d.ts.map +1 -1
  71. package/module/index.js +1 -4
  72. package/module/index.js.map +1 -1
  73. package/package.json +1 -1
  74. package/utility/AgentUtility.d.ts +38 -0
  75. package/utility/AgentUtility.d.ts.map +1 -0
  76. package/{base/AbstractTool.js → utility/AgentUtility.js} +1 -1
  77. package/utility/AgentUtility.js.map +1 -0
  78. package/utility/LLMUtility.d.ts +1328 -0
  79. package/utility/LLMUtility.d.ts.map +1 -0
  80. package/utility/LLMUtility.js +114 -0
  81. package/utility/LLMUtility.js.map +1 -0
  82. package/utility/index.d.ts +2 -1
  83. package/utility/index.d.ts.map +1 -1
  84. package/utility/index.js +2 -1
  85. package/utility/index.js.map +1 -1
  86. package/base/AbstractDialog.d.ts +0 -54
  87. package/base/AbstractDialog.d.ts.map +0 -1
  88. package/base/AbstractDialog.js +0 -86
  89. package/base/AbstractDialog.js.map +0 -1
  90. package/base/AbstractReason.d.ts +0 -44
  91. package/base/AbstractReason.d.ts.map +0 -1
  92. package/base/AbstractReason.js +0 -23
  93. package/base/AbstractReason.js.map +0 -1
  94. package/base/AbstractSkill.d.ts +0 -25
  95. package/base/AbstractSkill.d.ts.map +0 -1
  96. package/base/AbstractSkill.js +0 -3
  97. package/base/AbstractSkill.js.map +0 -1
  98. package/base/AbstractTool.d.ts +0 -34
  99. package/base/AbstractTool.d.ts.map +0 -1
  100. package/base/AbstractTool.js.map +0 -1
  101. package/docs/ARCHITECTURE.md +0 -601
  102. package/docs/README.md +0 -562
  103. package/module/AgentModule/Memory.d.ts +0 -55
  104. package/module/AgentModule/Memory.d.ts.map +0 -1
  105. package/module/AgentModule/Memory.js +0 -288
  106. package/module/AgentModule/Memory.js.map +0 -1
  107. package/module/DialogModule/Dialog.d.ts +0 -14
  108. package/module/DialogModule/Dialog.d.ts.map +0 -1
  109. package/module/DialogModule/Dialog.js +0 -27
  110. package/module/DialogModule/Dialog.js.map +0 -1
  111. package/module/DialogModule/DialogModule.d.ts +0 -39
  112. package/module/DialogModule/DialogModule.d.ts.map +0 -1
  113. package/module/DialogModule/DialogModule.js +0 -118
  114. package/module/DialogModule/DialogModule.js.map +0 -1
  115. package/module/DialogModule/index.d.ts +0 -3
  116. package/module/DialogModule/index.d.ts.map +0 -1
  117. package/module/DialogModule/index.js +0 -19
  118. package/module/DialogModule/index.js.map +0 -1
  119. package/module/ReasonModule/ChainReason.d.ts +0 -11
  120. package/module/ReasonModule/ChainReason.d.ts.map +0 -1
  121. package/module/ReasonModule/ChainReason.js +0 -34
  122. package/module/ReasonModule/ChainReason.js.map +0 -1
  123. package/module/ReasonModule/CommanderReason.d.ts +0 -15
  124. package/module/ReasonModule/CommanderReason.d.ts.map +0 -1
  125. package/module/ReasonModule/CommanderReason.js +0 -151
  126. package/module/ReasonModule/CommanderReason.js.map +0 -1
  127. package/module/ReasonModule/CompetitiveReason.d.ts +0 -13
  128. package/module/ReasonModule/CompetitiveReason.d.ts.map +0 -1
  129. package/module/ReasonModule/CompetitiveReason.js +0 -133
  130. package/module/ReasonModule/CompetitiveReason.js.map +0 -1
  131. package/module/ReasonModule/PlanReason.d.ts +0 -25
  132. package/module/ReasonModule/PlanReason.d.ts.map +0 -1
  133. package/module/ReasonModule/PlanReason.js +0 -133
  134. package/module/ReasonModule/PlanReason.js.map +0 -1
  135. package/module/ReasonModule/ReasonModule.d.ts +0 -41
  136. package/module/ReasonModule/ReasonModule.d.ts.map +0 -1
  137. package/module/ReasonModule/ReasonModule.js +0 -83
  138. package/module/ReasonModule/ReasonModule.js.map +0 -1
  139. package/module/ReasonModule/ReflectReason.d.ts +0 -15
  140. package/module/ReasonModule/ReflectReason.d.ts.map +0 -1
  141. package/module/ReasonModule/ReflectReason.js +0 -86
  142. package/module/ReasonModule/ReflectReason.js.map +0 -1
  143. package/module/ReasonModule/TreeReason.d.ts +0 -16
  144. package/module/ReasonModule/TreeReason.d.ts.map +0 -1
  145. package/module/ReasonModule/TreeReason.js +0 -139
  146. package/module/ReasonModule/TreeReason.js.map +0 -1
  147. package/module/ReasonModule/index.d.ts +0 -8
  148. package/module/ReasonModule/index.d.ts.map +0 -1
  149. package/module/ReasonModule/index.js +0 -24
  150. package/module/ReasonModule/index.js.map +0 -1
  151. package/module/SkillModule/SkillModule.d.ts +0 -42
  152. package/module/SkillModule/SkillModule.d.ts.map +0 -1
  153. package/module/SkillModule/SkillModule.js +0 -134
  154. package/module/SkillModule/SkillModule.js.map +0 -1
  155. package/module/SkillModule/index.d.ts +0 -2
  156. package/module/SkillModule/index.d.ts.map +0 -1
  157. package/module/SkillModule/index.js.map +0 -1
  158. package/module/ToolModule/ToolModule.d.ts +0 -57
  159. package/module/ToolModule/ToolModule.d.ts.map +0 -1
  160. package/module/ToolModule/ToolModule.js +0 -220
  161. package/module/ToolModule/ToolModule.js.map +0 -1
  162. package/module/ToolModule/ToolRAG.d.ts +0 -38
  163. package/module/ToolModule/ToolRAG.d.ts.map +0 -1
  164. package/module/ToolModule/ToolRAG.js +0 -124
  165. package/module/ToolModule/ToolRAG.js.map +0 -1
  166. package/module/ToolModule/index.d.ts +0 -3
  167. package/module/ToolModule/index.d.ts.map +0 -1
  168. package/module/ToolModule/index.js +0 -19
  169. package/module/ToolModule/index.js.map +0 -1
  170. package/utility/OpenAIUtility.d.ts +0 -333
  171. package/utility/OpenAIUtility.d.ts.map +0 -1
  172. package/utility/OpenAIUtility.js +0 -95
  173. package/utility/OpenAIUtility.js.map +0 -1
package/Host.d.ts CHANGED
@@ -1,19 +1,11 @@
1
- import { AgentModule, ToolModule, ReasonModule, DialogModule, SkillModule } from "./module";
1
+ import { LLMModule } from "./module";
2
2
  /** 实例类 */
3
3
  export declare class Host {
4
4
  /** 单例模式 */
5
5
  private static instance;
6
6
  static get Instance(): Host;
7
- /** 智能体管理模块 */
8
- readonly agentModule: AgentModule;
9
- /** 工具管理模块 */
10
- readonly toolModule: ToolModule;
11
- /** 推理管理模块 */
12
- readonly reasonModule: ReasonModule;
13
- /** 对话管理模块 */
14
- readonly dialogModule: DialogModule;
15
- /** 技能管理模块 */
16
- readonly skillModule: SkillModule;
7
+ /** 大模型管理模块 */
8
+ readonly llmModule: LLMModule;
17
9
  /** 构造函数 */
18
10
  private constructor();
19
11
  }
package/Host.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Host.d.ts","sourceRoot":"","sources":["../src/Host.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5F,UAAU;AACV,qBAAa,IAAI;IAEb,WAAW;IACX,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAO;IAC9B,WAAkB,QAAQ,SAAuF;IAEjH,cAAc;IACd,SAAgB,WAAW,EAAE,WAAW,CAAC;IACzC,aAAa;IACb,SAAgB,UAAU,EAAE,UAAU,CAAC;IACvC,aAAa;IACb,SAAgB,YAAY,EAAE,YAAY,CAAC;IAC3C,aAAa;IACb,SAAgB,YAAY,EAAE,YAAY,CAAC;IAC3C,aAAa;IACb,SAAgB,WAAW,EAAE,WAAW,CAAC;IAEzC,WAAW;IACX,OAAO;CAQV;AACD,SAAS;;AACT,wBAA6B"}
1
+ {"version":3,"file":"Host.d.ts","sourceRoot":"","sources":["../src/Host.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,UAAU;AACV,qBAAa,IAAI;IAEb,WAAW;IACX,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAO;IAC9B,WAAkB,QAAQ,SAAuF;IAEjH,cAAc;IACd,SAAgB,SAAS,EAAE,SAAS,CAAC;IAIrC,WAAW;IACX,OAAO;CAKV;AACD,SAAS;;AACT,wBAA6B"}
package/Host.js CHANGED
@@ -8,13 +8,12 @@ class Host {
8
8
  Host.instance = new Host();
9
9
  } return Host.instance; }
10
10
  ;
11
+ // /** 智能体管理模块 */
12
+ // public readonly agentModule: AgentModule;
11
13
  /** 构造函数 */
12
14
  constructor() {
13
- this.agentModule = new module_1.AgentModule();
14
- this.toolModule = new module_1.ToolModule();
15
- this.reasonModule = new module_1.ReasonModule();
16
- this.dialogModule = new module_1.DialogModule();
17
- this.skillModule = new module_1.SkillModule();
15
+ this.llmModule = new module_1.LLMModule();
16
+ // this.agentModule = new AgentModule();
18
17
  }
19
18
  }
20
19
  exports.Host = Host;
package/Host.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Host.js","sourceRoot":"","sources":["../src/Host.ts"],"names":[],"mappings":";;;AAAA,qCAA4F;AAE5F,UAAU;AACV,MAAa,IAAI;IAIN,MAAM,KAAK,QAAQ,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;IAAC,CAAC,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAAA,CAAC;IAalH,WAAW;IACX;QAEI,IAAI,CAAC,WAAW,GAAG,IAAI,oBAAW,EAAE,CAAC;QACrC,IAAI,CAAC,UAAU,GAAG,IAAI,mBAAU,EAAE,CAAC;QACnC,IAAI,CAAC,YAAY,GAAG,IAAI,qBAAY,EAAE,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,IAAI,qBAAY,EAAE,CAAC;QACvC,IAAI,CAAC,WAAW,GAAG,IAAI,oBAAW,EAAE,CAAC;IACzC,CAAC;CACJ;AA1BD,oBA0BC;AACD,SAAS;AACT,kBAAe,IAAI,CAAC,QAAQ,CAAC"}
1
+ {"version":3,"file":"Host.js","sourceRoot":"","sources":["../src/Host.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AAErC,UAAU;AACV,MAAa,IAAI;IAIN,MAAM,KAAK,QAAQ,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;IAAC,CAAC,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAAA,CAAC;IAIlH,iBAAiB;IACjB,4CAA4C;IAE5C,WAAW;IACX;QAEI,IAAI,CAAC,SAAS,GAAG,IAAI,kBAAS,EAAE,CAAC;QACjC,wCAAwC;IAC5C,CAAC;CACJ;AAjBD,oBAiBC;AACD,SAAS;AACT,kBAAe,IAAI,CAAC,QAAQ,CAAC"}
@@ -1,100 +1,2 @@
1
- import { AbstractObject } from "./AbstractObject";
2
- import { ToolContext } from "./AbstractTool";
3
- import { NetworkUtility, OpenAIUtility } from "../utility";
4
- /** Agent.run() 的可选参数 */
5
- export interface AgentRunOptions {
6
- /** 允许使用的工具名列表(Skill 过滤后) */
7
- toolNames?: Array<string>;
8
- /** 工具执行上下文 */
9
- toolContext?: ToolContext;
10
- }
11
- /** 抽象智能体基类 */
12
- export declare abstract class AbstractAgent extends AbstractObject {
13
- /** 构造函数 */
14
- constructor();
15
- /** 对话轮次 */
16
- abstract get turnCount(): number;
17
- /** 发送用户消息(缓存→发送→缓存回复) */
18
- abstract sendUserMessage(content: string): Promise<NetworkUtility.HTTP.Response<OpenAIUtility.OpenAI.ChatResponse>>;
19
- /** 发送当前消息缓存到LLM(不添加用户消息) */
20
- abstract sendRequest(): Promise<NetworkUtility.HTTP.Response<OpenAIUtility.OpenAI.ChatResponse>>;
21
- /** 执行单个工具调用 */
22
- abstract executeTool(toolCall: OpenAIUtility.OpenAI.ToolResponse): Promise<string>;
23
- /** 添加工具执行结果到消息缓存 */
24
- abstract addToolResult(result: string, toolCallId: string): void;
25
- /** 添加助手消息到缓存(含 tool_calls) */
26
- abstract addAssistantMessage(content: string, toolCalls?: Array<OpenAIUtility.OpenAI.ToolResponse>): void;
27
- /** 设置 Agent 状态 */
28
- abstract setState(state: AgentState): void;
29
- /**
30
- * 运行 Agent 主循环
31
- * 1. 发送用户消息
32
- * 2. 检查响应
33
- * 3. 如果模型要求工具调用 → 执行工具 → 继续发送
34
- * 4. 返回最终结果
35
- */
36
- abstract run(input: string, options?: AgentRunOptions): Promise<AgentRunResult>;
37
- /** 导出当前状态为可序列化快照 */
38
- abstract snapshot(): AgentSnapshot;
39
- /** 从快照恢复状态(需先构造 Agent 再调用此方法) */
40
- abstract restore(snapshot: AgentSnapshot): void;
41
- }
42
- /** 智能体运行状态 */
43
- export declare enum AgentState {
44
- Idle = 0,
45
- Thinking = 1,
46
- Running = 2,
47
- WaitingTool = 3,
48
- Error = 4,
49
- Done = 5
50
- }
51
- /** 智能体单次运行结果 */
52
- export interface AgentRunResult {
53
- success: boolean;
54
- content: string;
55
- thinking?: string;
56
- toolCalls?: Array<OpenAIUtility.OpenAI.ToolResponse>;
57
- usage?: OpenAIUtility.OpenAI.Usage;
58
- finishReason?: string;
59
- }
60
- /** 智能体配置 */
61
- export interface AgentConfig {
62
- /** API端点地址 */
63
- address: string;
64
- /** API密钥 */
65
- apiKey: string;
66
- /** 模型名称 */
67
- model: string;
68
- /** 系统提示词 */
69
- systemPrompt?: string;
70
- /** DeepSeek思考模式开关(默认开启) */
71
- enableThinking?: boolean;
72
- /** 推理强度 */
73
- reasoningEffort?: "high" | "max";
74
- /** 采样温度(0~2) */
75
- temperature?: number;
76
- /** 最大输出token数 */
77
- maxTokens?: number;
78
- /** 最大对话轮次 */
79
- maxTurns?: number;
80
- }
81
- /** Agent 持久化快照(不含 apiKey/address 等敏感字段) */
82
- export interface AgentSnapshot {
83
- /** 快照格式版本 */
84
- version: number;
85
- /** 创建时间戳 */
86
- createdAt: number;
87
- /** 所属 Agent ID */
88
- agentId: string;
89
- /** 对话轮次 */
90
- turnCount: number;
91
- /** 完整消息历史 */
92
- messages: Array<OpenAIUtility.OpenAI.LLMMessage>;
93
- /** 推理草稿 */
94
- scratchpad: string;
95
- /** 工具结果缓存 */
96
- toolResults: Array<[string, string]>;
97
- /** 恢复所需配置(敏感字段已剥离) */
98
- config: Pick<AgentConfig, "model" | "systemPrompt" | "temperature" | "maxTokens" | "enableThinking" | "reasoningEffort" | "maxTurns">;
99
- }
1
+ export {};
100
2
  //# sourceMappingURL=AbstractAgent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractAgent.d.ts","sourceRoot":"","sources":["../../src/base/AbstractAgent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3D,wBAAwB;AACxB,MAAM,WAAW,eAAe;IAE5B,4BAA4B;IAC5B,SAAS,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC1B,cAAc;IACd,WAAW,CAAC,EAAE,WAAW,CAAC;CAC7B;AAED,cAAc;AACd,8BAAsB,aAAc,SAAQ,cAAc;IAGtD,WAAW;;IAKX,WAAW;IACX,aAAoB,SAAS,IAAI,MAAM,CAAC;IACxC,yBAAyB;aACT,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC1H,4BAA4B;aACZ,WAAW,IAAI,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACvG,eAAe;aACC,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IACzF,oBAAoB;aACJ,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IACvE,8BAA8B;aACd,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,IAAI;IAChH,kBAAkB;aACF,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IACjD;;;;;;OAMG;aACa,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IAEtF,oBAAoB;aACJ,QAAQ,IAAI,aAAa;IAEzC,iCAAiC;aACjB,OAAO,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI;CAEzD;AACD,cAAc;AACd,oBAAY,UAAU;IAElB,IAAI,IAAA;IACJ,QAAQ,IAAA;IACR,OAAO,IAAA;IACP,WAAW,IAAA;IACX,KAAK,IAAA;IACL,IAAI,IAAA;CACP;AACD,gBAAgB;AAChB,MAAM,WAAW,cAAc;IAE3B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACrD,KAAK,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,YAAY;AACZ,MAAM,WAAW,WAAW;IAExB,cAAc;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,WAAW;IACX,KAAK,EAAE,MAAM,CAAC;IACd,YAAY;IACZ,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2BAA2B;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW;IACX,eAAe,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACjC,gBAAgB;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,2CAA2C;AAC3C,MAAM,WAAW,aAAa;IAE1B,aAAa;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa;IACb,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACjD,WAAW;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa;IACb,WAAW,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACrC,sBAAsB;IACtB,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,OAAO,GAAG,cAAc,GAAG,aAAa,GAAG,WAAW,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,UAAU,CAAC,CAAC;CACzI"}
1
+ {"version":3,"file":"AbstractAgent.d.ts","sourceRoot":"","sources":["../../src/base/AbstractAgent.ts"],"names":[],"mappings":""}
@@ -1,23 +1,97 @@
1
1
  "use strict";
2
+ // import { AbstractObject } from "./AbstractObject";
3
+ // import { AbstractLLM } from "./AbstractLLM";
4
+ // import { AgentUtility, LLMUtility } from "../utility";
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AgentState = exports.AbstractAgent = void 0;
4
- const AbstractObject_1 = require("./AbstractObject");
5
- /** 抽象智能体基类 */
6
- class AbstractAgent extends AbstractObject_1.AbstractObject {
7
- /** 构造函数 */
8
- constructor() {
9
- super();
10
- }
11
- }
12
- exports.AbstractAgent = AbstractAgent;
13
- /** 智能体运行状态 */
14
- var AgentState;
15
- (function (AgentState) {
16
- AgentState[AgentState["Idle"] = 0] = "Idle";
17
- AgentState[AgentState["Thinking"] = 1] = "Thinking";
18
- AgentState[AgentState["Running"] = 2] = "Running";
19
- AgentState[AgentState["WaitingTool"] = 3] = "WaitingTool";
20
- AgentState[AgentState["Error"] = 4] = "Error";
21
- AgentState[AgentState["Done"] = 5] = "Done";
22
- })(AgentState || (exports.AgentState = AgentState = {}));
6
+ // /** 抽象智能体基类 管理对话会话与大模型交互 */
7
+ // export abstract class AbstractAgent extends AbstractObject
8
+ // {
9
+ // /** 大模型实例 */
10
+ // public readonly llm: AbstractLLM;
11
+ // /** 创建时间戳 */
12
+ // public readonly createdAt: number;
13
+ // /** 对话记录 */
14
+ // public readonly turns: AgentUtility.SessionData[];
15
+ // /** 是否活跃 */
16
+ // private _active: boolean;
17
+ // /** 构造函数 */
18
+ // public constructor(config: LLMUtility.Config, llm?: AbstractLLM)
19
+ // {
20
+ // super();
21
+ // this.llm = llm ?? this.host.llmModule.add(config);
22
+ // this.createdAt = Date.now();
23
+ // this.turns = [];
24
+ // this._active = true;
25
+ // }
26
+ // // #region 查询
27
+ // /** 是否活跃 */
28
+ // public get active(): boolean { return this._active; }
29
+ // /** 对话轮数 */
30
+ // public get turnCount(): number { return this.turns.length; }
31
+ // /** 累计用量 */
32
+ // public get totalUsage(): AgentUtility.Usage
33
+ // {
34
+ // const usage: AgentUtility.Usage = { input: 0, output: 0, total: 0 };
35
+ // for (const turn of this.turns)
36
+ // {
37
+ // usage.input += turn.usage.input ?? 0;
38
+ // usage.output += turn.usage.output ?? 0;
39
+ // usage.total += turn.usage.total ?? 0;
40
+ // }
41
+ // return usage;
42
+ // }
43
+ // // #endregion
44
+ // // #region 会话操作
45
+ // /** 清空对话记录 */
46
+ // public clear(): this
47
+ // {
48
+ // this.turns.length = 0;
49
+ // return this;
50
+ // }
51
+ // /** 关闭会话 */
52
+ // public close(): this
53
+ // {
54
+ // this._active = false;
55
+ // return this;
56
+ // }
57
+ // /**
58
+ // * 发送消息 — 派生类实现具体的推理逻辑
59
+ // * @param prompt 用户输入
60
+ // */
61
+ // public abstract send(prompt: string): Promise<LLMUtility.Response>;
62
+ // /**
63
+ // * 记录一轮对话
64
+ // * @param input 用户输入
65
+ // * @param output 智能体输出
66
+ // * @param usage 本轮 token 用量
67
+ // */
68
+ // public record(input: string, output: string, usage: AgentUtility.Usage): this
69
+ // {
70
+ // if (!this._active) { return this; }
71
+ // this.turns.push({ input, output, usage, timestamp: Date.now() });
72
+ // return this;
73
+ // }
74
+ // // #endregion
75
+ // // #region 快照
76
+ // /** 导出快照 — 包含对话记录与大模型快照 */
77
+ // public exportSnapshot(): AgentUtility.AgentSnapshot
78
+ // {
79
+ // return {
80
+ // id: this.id,
81
+ // llmSnapshot: this.llm.exportSnapshot(),
82
+ // turns: this.turns.slice(),
83
+ // createdAt: this.createdAt,
84
+ // exportAt: Date.now(),
85
+ // };
86
+ // }
87
+ // // #endregion
88
+ // // #region 生命周期
89
+ // public OnDestroy(): boolean
90
+ // {
91
+ // this._active = false;
92
+ // this.host.llmModule.remove(this.llm?.id);
93
+ // return super.OnDestroy();
94
+ // }
95
+ // // #endregion
96
+ // }
23
97
  //# sourceMappingURL=AbstractAgent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractAgent.js","sourceRoot":"","sources":["../../src/base/AbstractAgent.ts"],"names":[],"mappings":";;;AAAA,qDAAkD;AAalD,cAAc;AACd,MAAsB,aAAc,SAAQ,+BAAc;IAGtD,WAAW;IACX;QAEI,KAAK,EAAE,CAAC;IACZ,CAAC;CA8BJ;AArCD,sCAqCC;AACD,cAAc;AACd,IAAY,UAQX;AARD,WAAY,UAAU;IAElB,2CAAI,CAAA;IACJ,mDAAQ,CAAA;IACR,iDAAO,CAAA;IACP,yDAAW,CAAA;IACX,6CAAK,CAAA;IACL,2CAAI,CAAA;AACR,CAAC,EARW,UAAU,0BAAV,UAAU,QAQrB"}
1
+ {"version":3,"file":"AbstractAgent.js","sourceRoot":"","sources":["../../src/base/AbstractAgent.ts"],"names":[],"mappings":";AAAA,qDAAqD;AACrD,+CAA+C;AAC/C,yDAAyD;;AAEzD,gCAAgC;AAChC,6DAA6D;AAC7D,IAAI;AACJ,mBAAmB;AACnB,wCAAwC;AACxC,mBAAmB;AACnB,yCAAyC;AACzC,kBAAkB;AAClB,yDAAyD;AACzD,kBAAkB;AAClB,gCAAgC;AAEhC,kBAAkB;AAClB,uEAAuE;AACvE,QAAQ;AACR,mBAAmB;AACnB,6DAA6D;AAC7D,uCAAuC;AACvC,2BAA2B;AAC3B,+BAA+B;AAC/B,QAAQ;AAGR,oBAAoB;AAEpB,kBAAkB;AAClB,4DAA4D;AAE5D,kBAAkB;AAClB,mEAAmE;AAEnE,kBAAkB;AAClB,kDAAkD;AAClD,QAAQ;AACR,+EAA+E;AAC/E,yCAAyC;AACzC,YAAY;AACZ,oDAAoD;AACpD,sDAAsD;AACtD,oDAAoD;AACpD,YAAY;AACZ,wBAAwB;AACxB,QAAQ;AAER,oBAAoB;AAEpB,sBAAsB;AAEtB,oBAAoB;AACpB,2BAA2B;AAC3B,QAAQ;AACR,iCAAiC;AACjC,uBAAuB;AACvB,QAAQ;AAER,kBAAkB;AAClB,2BAA2B;AAC3B,QAAQ;AACR,gCAAgC;AAChC,uBAAuB;AACvB,QAAQ;AAER,UAAU;AACV,6BAA6B;AAC7B,4BAA4B;AAC5B,UAAU;AACV,0EAA0E;AAE1E,UAAU;AACV,gBAAgB;AAChB,2BAA2B;AAC3B,6BAA6B;AAC7B,kCAAkC;AAClC,UAAU;AACV,oFAAoF;AACpF,QAAQ;AACR,8CAA8C;AAC9C,4EAA4E;AAC5E,uBAAuB;AACvB,QAAQ;AAER,oBAAoB;AAEpB,oBAAoB;AAEpB,iCAAiC;AACjC,0DAA0D;AAC1D,QAAQ;AACR,mBAAmB;AACnB,2BAA2B;AAC3B,sDAAsD;AACtD,yCAAyC;AACzC,yCAAyC;AACzC,oCAAoC;AACpC,aAAa;AACb,QAAQ;AAER,oBAAoB;AAEpB,sBAAsB;AAEtB,kCAAkC;AAClC,QAAQ;AACR,gCAAgC;AAChC,oDAAoD;AACpD,oCAAoC;AACpC,QAAQ;AAER,oBAAoB;AACpB,IAAI"}
@@ -0,0 +1,43 @@
1
+ import { AbstractObject } from "./AbstractObject";
2
+ import { LLMUtility } from "../utility";
3
+ /** 抽象大模型基类 */
4
+ export declare abstract class AbstractLLM<T extends LLMUtility.Config = LLMUtility.Config, K extends LLMUtility.MessageData = LLMUtility.MessageData> extends AbstractObject {
5
+ /** 大模型配置 */
6
+ readonly config: T;
7
+ /** 消息缓存 */
8
+ readonly messages: LLMUtility.Message<K>;
9
+ /** 系统提示词 */
10
+ protected systemPrompt: string;
11
+ /** 构造函数 */
12
+ constructor(config: T);
13
+ /**
14
+ * 发送消息
15
+ * @param data 数据
16
+ * @return 响应数据
17
+ */
18
+ send(data: LLMUtility.SendData): Promise<LLMUtility.Response>;
19
+ /** 导出快照 — 序列化消息缓存与配置 */
20
+ exportSnapshot(): LLMUtility.Snapshot;
21
+ /** 添加系统消息到缓存 */
22
+ protected abstract addSystemMessage(text: string): void;
23
+ /** 添加用户消息到缓存 */
24
+ protected abstract addUserMessage(text: string): void;
25
+ /** 添加助手消息到缓存 */
26
+ protected abstract addAssistantMessage(content: string, toolCalls?: Array<LLMUtility.ToolCall>): void;
27
+ /** 添加工具结果消息到缓存 */
28
+ protected abstract addToolMessage(result: LLMUtility.ToolResult): void;
29
+ /** 消息级压缩 — 派生类可覆写以提供平台特定的 transform(工具输出截断、观察屏蔽等) */
30
+ protected abstract compactMessages(): void;
31
+ /** 发送 HTTP 请求并返回统一响应 — tools 由 send() 动态传入,不缓存 */
32
+ protected abstract request(tools: Array<LLMUtility.ToolDefinition>): Promise<LLMUtility.Response>;
33
+ /** 停止原因 */
34
+ protected abstract stopReason(reason: string): LLMUtility.FinishReason;
35
+ /** 处理响应逻辑 */
36
+ private handleResponse;
37
+ /** 累加 token 用量 */
38
+ private addUsage;
39
+ /** 执行工具调用 */
40
+ private executeTools;
41
+ OnDestroy(): boolean;
42
+ }
43
+ //# sourceMappingURL=AbstractLLM.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AbstractLLM.d.ts","sourceRoot":"","sources":["../../src/base/AbstractLLM.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAiB,MAAM,YAAY,CAAC;AAEvD,cAAc;AACd,8BAAsB,WAAW,CAAC,CAAC,SAAS,UAAU,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,SAAS,UAAU,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAE,SAAQ,cAAc;IAEhK,YAAY;IACZ,SAAgB,MAAM,EAAE,CAAC,CAAC;IAC1B,WAAW;IACX,SAAgB,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAChD,YAAY;IACZ,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC;IAE/B,WAAW;gBACQ,MAAM,EAAE,CAAC;IAQ5B;;;;OAIG;IACU,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC;IA2B1E,wBAAwB;IACjB,cAAc,IAAI,UAAU,CAAC,QAAQ;IAa5C,gBAAgB;IAChB,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IACvD,gBAAgB;IAChB,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IACrD,gBAAgB;IAChB,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,IAAI;IACrG,kBAAkB;IAClB,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,CAAC,UAAU,GAAG,IAAI;IACtE,qDAAqD;IACrD,SAAS,CAAC,QAAQ,CAAC,eAAe,IAAI,IAAI;IAC1C,kDAAkD;IAClD,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC;IACjG,WAAW;IACX,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC,YAAY;IAMtE,aAAa;YACC,cAAc;IAqB5B,kBAAkB;IAClB,OAAO,CAAC,QAAQ;IAQhB,aAAa;YACC,YAAY;IA4BnB,SAAS,IAAI,OAAO;CAM9B"}
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AbstractLLM = void 0;
4
+ const AbstractObject_1 = require("./AbstractObject");
5
+ const utility_1 = require("../utility");
6
+ /** 抽象大模型基类 */
7
+ class AbstractLLM extends AbstractObject_1.AbstractObject {
8
+ /** 构造函数 */
9
+ constructor(config) {
10
+ super();
11
+ this.config = config;
12
+ this.messages = new utility_1.LLMUtility.Message(this.config.maxMessageCache);
13
+ }
14
+ // #region 公开接口
15
+ /**
16
+ * 发送消息
17
+ * @param data 数据
18
+ * @return 响应数据
19
+ */
20
+ async send(data) {
21
+ // 指令判空
22
+ if (null == data || utility_1.StringUtility.empty(data.prompt)) {
23
+ return null;
24
+ }
25
+ // 添加系统消息
26
+ if (null == this.systemPrompt && this.messages.count === 0) {
27
+ this.addSystemMessage(data.skill);
28
+ this.systemPrompt = data.skill;
29
+ }
30
+ // 添加用户消息
31
+ this.addUserMessage(data.prompt);
32
+ // 消息压缩
33
+ this.compactMessages();
34
+ // 修剪缓存
35
+ this.messages.Trim();
36
+ // 用量累加器
37
+ const usageAcc = { input: 0, output: 0, total: 0 };
38
+ // 发起请求
39
+ let response = await this.request(data.tools || []);
40
+ // 累加用量
41
+ this.addUsage(usageAcc, response.usage);
42
+ // 添加助手消息
43
+ this.addAssistantMessage(response.content, response.toolCalls);
44
+ // 处理响应逻辑
45
+ response = await this.handleResponse(response, data.tools, usageAcc);
46
+ // 触发用量回调
47
+ data.onUsage?.(usageAcc);
48
+ return response;
49
+ }
50
+ /** 导出快照 — 序列化消息缓存与配置 */
51
+ exportSnapshot() {
52
+ return {
53
+ id: this.id,
54
+ config: this.config,
55
+ messages: this.messages.Export(),
56
+ timeStemp: Date.now(),
57
+ };
58
+ }
59
+ // #endregion
60
+ // #region 内部方法
61
+ /** 处理响应逻辑 */
62
+ async handleResponse(response, tools, usageAcc) {
63
+ let finishReason = response.finishReason || "";
64
+ let toolCalls = response.toolCalls || [];
65
+ const maxToolRounds = 100;
66
+ let toolRound = 0;
67
+ while (finishReason === "tool_calls" && 0 < toolCalls.length && 0 < tools.length) {
68
+ if (++toolRound > maxToolRounds)
69
+ break;
70
+ const results = await this.executeTools(toolCalls, tools);
71
+ if (!results?.length)
72
+ break;
73
+ for (const result of results) {
74
+ this.addToolMessage(result);
75
+ }
76
+ response = await this.request(tools);
77
+ this.addUsage(usageAcc, response.usage);
78
+ this.addAssistantMessage(response.content, response.toolCalls);
79
+ finishReason = response.finishReason || "";
80
+ toolCalls = response.toolCalls || [];
81
+ }
82
+ return response;
83
+ }
84
+ /** 累加 token 用量 */
85
+ addUsage(acc, usage) {
86
+ if (!usage)
87
+ return;
88
+ acc.input += usage.input ?? 0;
89
+ acc.output += usage.output ?? 0;
90
+ acc.total += usage.total ?? 0;
91
+ }
92
+ /** 执行工具调用 */
93
+ async executeTools(toolCalls, tools) {
94
+ const results = new Array;
95
+ for (const toolCall of toolCalls) {
96
+ const tool = tools.find(tool => toolCall.name == tool.name);
97
+ if (null == tool || null == tool.handler) {
98
+ results.push({ id: toolCall.id, name: toolCall.name, data: JSON.stringify({ error: `tool "${toolCall.name}" not available` }) });
99
+ continue;
100
+ }
101
+ try {
102
+ const raw = await tool.handler(toolCall.arguments);
103
+ const data = typeof raw === "string" ? raw : JSON.stringify(raw);
104
+ results.push({ id: toolCall.id, name: toolCall.name, data });
105
+ }
106
+ catch (e) {
107
+ const errMsg = e instanceof Error ? e.message : String(e);
108
+ results.push({ id: toolCall.id, name: toolCall.name, data: JSON.stringify({ error: errMsg }) });
109
+ }
110
+ }
111
+ return results;
112
+ }
113
+ // #endregion
114
+ OnDestroy() {
115
+ this.systemPrompt = null;
116
+ this.messages.Clear();
117
+ return super.OnDestroy();
118
+ }
119
+ }
120
+ exports.AbstractLLM = AbstractLLM;
121
+ //# sourceMappingURL=AbstractLLM.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AbstractLLM.js","sourceRoot":"","sources":["../../src/base/AbstractLLM.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,6 @@ import { AbstractObject } from "./AbstractObject";
3
3
  export declare abstract class AbstractModule extends AbstractObject {
4
4
  /** 构造函数 */
5
5
  constructor();
6
+ OnDestroy(): boolean;
6
7
  }
7
8
  //# sourceMappingURL=AbstractModule.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractModule.d.ts","sourceRoot":"","sources":["../../src/base/AbstractModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,aAAa;AACb,8BAAsB,cAAe,SAAQ,cAAc;IAEvD,WAAW;;CAMd"}
1
+ {"version":3,"file":"AbstractModule.d.ts","sourceRoot":"","sources":["../../src/base/AbstractModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,aAAa;AACb,8BAAsB,cAAe,SAAQ,cAAc;IAEvD,WAAW;;IAMJ,SAAS,IAAI,OAAO;CAI9B"}
@@ -8,6 +8,9 @@ class AbstractModule extends AbstractObject_1.AbstractObject {
8
8
  constructor() {
9
9
  super();
10
10
  }
11
+ OnDestroy() {
12
+ return super.OnDestroy();
13
+ }
11
14
  }
12
15
  exports.AbstractModule = AbstractModule;
13
16
  //# sourceMappingURL=AbstractModule.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractModule.js","sourceRoot":"","sources":["../../src/base/AbstractModule.ts"],"names":[],"mappings":";;;AAAA,qDAAkD;AAElD,aAAa;AACb,MAAsB,cAAe,SAAQ,+BAAc;IAEvD,WAAW;IACX;QAEI,KAAK,EAAE,CAAC;IACZ,CAAC;CAEJ;AARD,wCAQC"}
1
+ {"version":3,"file":"AbstractModule.js","sourceRoot":"","sources":["../../src/base/AbstractModule.ts"],"names":[],"mappings":";;;AAAA,qDAAkD;AAElD,aAAa;AACb,MAAsB,cAAe,SAAQ,+BAAc;IAEvD,WAAW;IACX;QAEI,KAAK,EAAE,CAAC;IACZ,CAAC;IAEM,SAAS;QAEZ,OAAO,KAAK,CAAC,SAAS,EAAE,CAAC;IAC7B,CAAC;CACJ;AAZD,wCAYC"}
@@ -5,14 +5,16 @@ export declare abstract class AbstractObject {
5
5
  /** 对象管理 */
6
6
  static readonly objects: ObjectUtility.MapPool<AbstractObject>;
7
7
  /** 对象ID */
8
- readonly id: string;
9
- /** 对象Key(类名) */
10
- readonly key: string;
8
+ id: string;
9
+ /** 对象类名 */
10
+ readonly className: string;
11
11
  /** 智能体管理器实例 */
12
12
  get host(): Host;
13
13
  /** 构造函数 */
14
14
  constructor();
15
+ /** 设置ID */
16
+ setId(id: string): void;
15
17
  /** 销毁 */
16
- OnDestroy(): void;
18
+ OnDestroy(): boolean;
17
19
  }
18
20
  //# sourceMappingURL=AbstractObject.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractObject.d.ts","sourceRoot":"","sources":["../../src/base/AbstractObject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAiB,MAAM,YAAY,CAAC;AAE1D,aAAa;AACb,8BAAsB,cAAc;IAEhC,WAAW;IACX,gBAAuB,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,cAAc,CAAC,CAA+C;IAEpH,WAAW;IACX,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,gBAAgB;IAChB,SAAgB,GAAG,EAAE,MAAM,CAAC;IAE5B,eAAe;IACf,IAAW,IAAI,IAAI,IAAI,CAA0B;IAEjD,WAAW;;IAQX,SAAS;IACF,SAAS,IAAI,IAAI;CAI3B"}
1
+ {"version":3,"file":"AbstractObject.d.ts","sourceRoot":"","sources":["../../src/base/AbstractObject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAiB,MAAM,YAAY,CAAC;AAE1D,aAAa;AACb,8BAAsB,cAAc;IAEhC,WAAW;IACX,gBAAuB,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,cAAc,CAAC,CAA+C;IAEpH,WAAW;IACJ,EAAE,EAAE,MAAM,CAAC;IAClB,WAAW;IACX,SAAgB,SAAS,EAAE,MAAM,CAAC;IAElC,eAAe;IACf,IAAW,IAAI,IAAI,IAAI,CAA0B;IAEjD,WAAW;;IAOX,WAAW;IACJ,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAK9B,SAAS;IACF,SAAS,IAAI,OAAO;CAI9B"}
@@ -11,12 +11,16 @@ class AbstractObject {
11
11
  /** 构造函数 */
12
12
  constructor() {
13
13
  this.id = utility_1.StringUtility.GetGUID();
14
- this.key = this.constructor.name;
14
+ this.className = this.constructor.name;
15
15
  AbstractObject.objects.Add(this.id, this);
16
16
  }
17
+ /** 设置ID */
18
+ setId(id) {
19
+ this.id = id;
20
+ }
17
21
  /** 销毁 */
18
22
  OnDestroy() {
19
- AbstractObject.objects.Remove(this.id);
23
+ return AbstractObject.objects.Remove(this.id);
20
24
  }
21
25
  }
22
26
  exports.AbstractObject = AbstractObject;
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractObject.js","sourceRoot":"","sources":["../../src/base/AbstractObject.ts"],"names":[],"mappings":";;;AAAA,kCAA+B;AAC/B,wCAA0D;AAE1D,aAAa;AACb,MAAsB,cAAc;IAUhC,eAAe;IACf,IAAW,IAAI,KAAW,OAAO,WAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAAA,CAAC;IAElD,WAAW;IACX;QAEI,IAAI,CAAC,EAAE,GAAG,uBAAa,CAAC,OAAO,EAAE,CAAC;QAClC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QACjC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,SAAS;IACF,SAAS;QAEZ,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC;;AAzBL,wCA0BC;AAxBG,WAAW;AACY,sBAAO,GAA0C,IAAI,uBAAa,CAAC,OAAO,EAAkB,CAAC"}
1
+ {"version":3,"file":"AbstractObject.js","sourceRoot":"","sources":["../../src/base/AbstractObject.ts"],"names":[],"mappings":";;;AAAA,kCAA+B;AAC/B,wCAA0D;AAE1D,aAAa;AACb,MAAsB,cAAc;IAUhC,eAAe;IACf,IAAW,IAAI,KAAW,OAAO,WAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAAA,CAAC;IAElD,WAAW;IACX;QAEI,IAAI,CAAC,EAAE,GAAG,uBAAa,CAAC,OAAO,EAAE,CAAC;QAClC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QACvC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;IACD,WAAW;IACJ,KAAK,CAAC,EAAU;QAEnB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACjB,CAAC;IAED,SAAS;IACF,SAAS;QAEZ,OAAO,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClD,CAAC;;AA9BL,wCA+BC;AA7BG,WAAW;AACY,sBAAO,GAA0C,IAAI,uBAAa,CAAC,OAAO,EAAkB,CAAC"}
package/base/index.d.ts CHANGED
@@ -1,8 +1,5 @@
1
1
  export * from "./AbstractObject";
2
2
  export * from "./AbstractModule";
3
+ export * from "./AbstractLLM";
3
4
  export * from "./AbstractAgent";
4
- export * from "./AbstractReason";
5
- export * from "./AbstractDialog";
6
- export * from "./AbstractTool";
7
- export * from "./AbstractSkill";
8
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC"}
package/base/index.js CHANGED
@@ -16,9 +16,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./AbstractObject"), exports);
18
18
  __exportStar(require("./AbstractModule"), exports);
19
+ __exportStar(require("./AbstractLLM"), exports);
19
20
  __exportStar(require("./AbstractAgent"), exports);
20
- __exportStar(require("./AbstractReason"), exports);
21
- __exportStar(require("./AbstractDialog"), exports);
22
- __exportStar(require("./AbstractTool"), exports);
23
- __exportStar(require("./AbstractSkill"), exports);
24
21
  //# sourceMappingURL=index.js.map
package/base/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,mDAAiC;AACjC,kDAAgC;AAChC,mDAAiC;AACjC,mDAAiC;AACjC,iDAA+B;AAC/B,kDAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,mDAAiC;AACjC,gDAA8B;AAC9B,kDAAgC"}
package/index.d.ts CHANGED
@@ -1,4 +1,2 @@
1
1
  export * from "./Host";
2
- export * from "./module";
3
- export { default } from "./Host";
4
2
  //# sourceMappingURL=index.d.ts.map
package/index.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC"}
package/index.js CHANGED
@@ -13,13 +13,6 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
13
13
  var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
- var __importDefault = (this && this.__importDefault) || function (mod) {
17
- return (mod && mod.__esModule) ? mod : { "default": mod };
18
- };
19
16
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.default = void 0;
21
17
  __exportStar(require("./Host"), exports);
22
- __exportStar(require("./module"), exports);
23
- var Host_1 = require("./Host");
24
- Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(Host_1).default; } });
25
18
  //# sourceMappingURL=index.js.map
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,2CAAyB;AACzB,+BAAiC;AAAxB,gHAAA,OAAO,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB"}