@aigne/core 1.13.0 → 1.14.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 (195) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +13 -26
  3. package/README.zh.md +24 -37
  4. package/lib/cjs/agents/agent.d.ts +522 -15
  5. package/lib/cjs/agents/agent.js +357 -36
  6. package/lib/cjs/agents/ai-agent.d.ts +210 -52
  7. package/lib/cjs/agents/ai-agent.js +182 -24
  8. package/lib/cjs/agents/mcp-agent.d.ts +112 -0
  9. package/lib/cjs/agents/mcp-agent.js +79 -1
  10. package/lib/cjs/agents/team-agent.d.ts +99 -0
  11. package/lib/cjs/agents/team-agent.js +94 -0
  12. package/lib/cjs/agents/user-agent.d.ts +6 -4
  13. package/lib/cjs/agents/user-agent.js +16 -5
  14. package/lib/cjs/aigne/aigne.d.ts +263 -16
  15. package/lib/cjs/aigne/aigne.js +130 -20
  16. package/lib/cjs/aigne/context.d.ts +24 -8
  17. package/lib/cjs/aigne/context.js +8 -22
  18. package/lib/cjs/aigne/message-queue.d.ts +26 -4
  19. package/lib/cjs/aigne/message-queue.js +42 -7
  20. package/lib/cjs/aigne/usage.d.ts +9 -0
  21. package/lib/cjs/aigne/usage.js +3 -0
  22. package/lib/cjs/client/client.d.ts +81 -3
  23. package/lib/cjs/client/client.js +38 -0
  24. package/lib/cjs/client/index.d.ts +1 -0
  25. package/lib/cjs/client/index.js +17 -0
  26. package/lib/cjs/index.d.ts +0 -1
  27. package/lib/cjs/index.js +0 -1
  28. package/lib/cjs/loader/agent-js.d.ts +1 -1
  29. package/lib/cjs/loader/agent-js.js +2 -2
  30. package/lib/cjs/loader/agent-yaml.d.ts +3 -2
  31. package/lib/cjs/loader/agent-yaml.js +2 -1
  32. package/lib/cjs/loader/index.d.ts +4 -4
  33. package/lib/cjs/memory/default-memory.d.ts +16 -0
  34. package/lib/cjs/memory/default-memory.js +70 -0
  35. package/lib/cjs/memory/index.d.ts +3 -0
  36. package/lib/cjs/memory/index.js +19 -0
  37. package/lib/cjs/memory/memory.d.ts +89 -0
  38. package/lib/cjs/memory/memory.js +132 -0
  39. package/lib/cjs/memory/recorder.d.ts +86 -0
  40. package/lib/cjs/memory/recorder.js +50 -0
  41. package/lib/cjs/memory/retriever.d.ts +99 -0
  42. package/lib/cjs/memory/retriever.js +51 -0
  43. package/lib/cjs/models/bedrock-chat-model.d.ts +12 -3
  44. package/lib/cjs/models/bedrock-chat-model.js +54 -24
  45. package/lib/cjs/models/chat-model.d.ts +278 -1
  46. package/lib/cjs/models/chat-model.js +54 -0
  47. package/lib/cjs/models/claude-chat-model.d.ts +49 -3
  48. package/lib/cjs/models/claude-chat-model.js +34 -2
  49. package/lib/cjs/models/deepseek-chat-model.d.ts +16 -0
  50. package/lib/cjs/models/deepseek-chat-model.js +16 -0
  51. package/lib/cjs/models/gemini-chat-model.d.ts +14 -0
  52. package/lib/cjs/models/gemini-chat-model.js +14 -0
  53. package/lib/cjs/models/ollama-chat-model.d.ts +16 -0
  54. package/lib/cjs/models/ollama-chat-model.js +16 -0
  55. package/lib/cjs/models/open-router-chat-model.d.ts +16 -0
  56. package/lib/cjs/models/open-router-chat-model.js +16 -0
  57. package/lib/cjs/models/openai-chat-model.d.ts +67 -3
  58. package/lib/cjs/models/openai-chat-model.js +47 -2
  59. package/lib/cjs/models/xai-chat-model.d.ts +16 -0
  60. package/lib/cjs/models/xai-chat-model.js +16 -0
  61. package/lib/cjs/prompt/prompt-builder.d.ts +4 -4
  62. package/lib/cjs/prompt/prompt-builder.js +19 -18
  63. package/lib/cjs/prompt/prompts/memory-message-template.d.ts +1 -0
  64. package/lib/cjs/prompt/prompts/memory-message-template.js +10 -0
  65. package/lib/cjs/prompt/template.js +5 -1
  66. package/lib/cjs/server/error.d.ts +11 -0
  67. package/lib/cjs/server/error.js +11 -0
  68. package/lib/cjs/server/index.d.ts +2 -0
  69. package/lib/cjs/server/index.js +18 -0
  70. package/lib/cjs/server/server.d.ts +89 -8
  71. package/lib/cjs/server/server.js +58 -0
  72. package/lib/cjs/utils/fs.d.ts +2 -0
  73. package/lib/cjs/utils/fs.js +25 -0
  74. package/lib/cjs/utils/prompts.d.ts +1 -0
  75. package/lib/cjs/utils/prompts.js +11 -2
  76. package/lib/cjs/utils/type-utils.d.ts +1 -0
  77. package/lib/cjs/utils/type-utils.js +14 -0
  78. package/lib/dts/agents/agent.d.ts +522 -15
  79. package/lib/dts/agents/ai-agent.d.ts +210 -52
  80. package/lib/dts/agents/mcp-agent.d.ts +112 -0
  81. package/lib/dts/agents/team-agent.d.ts +99 -0
  82. package/lib/dts/agents/user-agent.d.ts +6 -4
  83. package/lib/dts/aigne/aigne.d.ts +263 -16
  84. package/lib/dts/aigne/context.d.ts +24 -8
  85. package/lib/dts/aigne/message-queue.d.ts +26 -4
  86. package/lib/dts/aigne/usage.d.ts +9 -0
  87. package/lib/dts/client/client.d.ts +81 -3
  88. package/lib/dts/client/index.d.ts +1 -0
  89. package/lib/dts/index.d.ts +0 -1
  90. package/lib/dts/loader/agent-js.d.ts +1 -1
  91. package/lib/dts/loader/agent-yaml.d.ts +3 -2
  92. package/lib/dts/loader/index.d.ts +4 -4
  93. package/lib/dts/memory/default-memory.d.ts +16 -0
  94. package/lib/dts/memory/index.d.ts +3 -0
  95. package/lib/dts/memory/memory.d.ts +89 -0
  96. package/lib/dts/memory/recorder.d.ts +86 -0
  97. package/lib/dts/memory/retriever.d.ts +99 -0
  98. package/lib/dts/models/bedrock-chat-model.d.ts +12 -3
  99. package/lib/dts/models/chat-model.d.ts +278 -1
  100. package/lib/dts/models/claude-chat-model.d.ts +49 -3
  101. package/lib/dts/models/deepseek-chat-model.d.ts +16 -0
  102. package/lib/dts/models/gemini-chat-model.d.ts +14 -0
  103. package/lib/dts/models/ollama-chat-model.d.ts +16 -0
  104. package/lib/dts/models/open-router-chat-model.d.ts +16 -0
  105. package/lib/dts/models/openai-chat-model.d.ts +67 -3
  106. package/lib/dts/models/xai-chat-model.d.ts +16 -0
  107. package/lib/dts/prompt/prompt-builder.d.ts +4 -4
  108. package/lib/dts/prompt/prompts/memory-message-template.d.ts +1 -0
  109. package/lib/dts/server/error.d.ts +11 -0
  110. package/lib/dts/server/index.d.ts +2 -0
  111. package/lib/dts/server/server.d.ts +89 -8
  112. package/lib/dts/utils/fs.d.ts +2 -0
  113. package/lib/dts/utils/prompts.d.ts +1 -0
  114. package/lib/dts/utils/type-utils.d.ts +1 -0
  115. package/lib/esm/agents/agent.d.ts +522 -15
  116. package/lib/esm/agents/agent.js +351 -35
  117. package/lib/esm/agents/ai-agent.d.ts +210 -52
  118. package/lib/esm/agents/ai-agent.js +183 -25
  119. package/lib/esm/agents/mcp-agent.d.ts +112 -0
  120. package/lib/esm/agents/mcp-agent.js +79 -1
  121. package/lib/esm/agents/team-agent.d.ts +99 -0
  122. package/lib/esm/agents/team-agent.js +94 -0
  123. package/lib/esm/agents/user-agent.d.ts +6 -4
  124. package/lib/esm/agents/user-agent.js +17 -6
  125. package/lib/esm/aigne/aigne.d.ts +263 -16
  126. package/lib/esm/aigne/aigne.js +132 -22
  127. package/lib/esm/aigne/context.d.ts +24 -8
  128. package/lib/esm/aigne/context.js +9 -22
  129. package/lib/esm/aigne/message-queue.d.ts +26 -4
  130. package/lib/esm/aigne/message-queue.js +42 -8
  131. package/lib/esm/aigne/usage.d.ts +9 -0
  132. package/lib/esm/aigne/usage.js +3 -0
  133. package/lib/esm/client/client.d.ts +81 -3
  134. package/lib/esm/client/client.js +38 -0
  135. package/lib/esm/client/index.d.ts +1 -0
  136. package/lib/esm/client/index.js +1 -0
  137. package/lib/esm/index.d.ts +0 -1
  138. package/lib/esm/index.js +0 -1
  139. package/lib/esm/loader/agent-js.d.ts +1 -1
  140. package/lib/esm/loader/agent-js.js +2 -2
  141. package/lib/esm/loader/agent-yaml.d.ts +3 -2
  142. package/lib/esm/loader/agent-yaml.js +2 -1
  143. package/lib/esm/loader/index.d.ts +4 -4
  144. package/lib/esm/memory/default-memory.d.ts +16 -0
  145. package/lib/esm/memory/default-memory.js +63 -0
  146. package/lib/esm/memory/index.d.ts +3 -0
  147. package/lib/esm/memory/index.js +3 -0
  148. package/lib/esm/memory/memory.d.ts +89 -0
  149. package/lib/esm/memory/memory.js +127 -0
  150. package/lib/esm/memory/recorder.d.ts +86 -0
  151. package/lib/esm/memory/recorder.js +46 -0
  152. package/lib/esm/memory/retriever.d.ts +99 -0
  153. package/lib/esm/memory/retriever.js +47 -0
  154. package/lib/esm/models/bedrock-chat-model.d.ts +12 -3
  155. package/lib/esm/models/bedrock-chat-model.js +56 -26
  156. package/lib/esm/models/chat-model.d.ts +278 -1
  157. package/lib/esm/models/chat-model.js +54 -0
  158. package/lib/esm/models/claude-chat-model.d.ts +49 -3
  159. package/lib/esm/models/claude-chat-model.js +35 -3
  160. package/lib/esm/models/deepseek-chat-model.d.ts +16 -0
  161. package/lib/esm/models/deepseek-chat-model.js +16 -0
  162. package/lib/esm/models/gemini-chat-model.d.ts +14 -0
  163. package/lib/esm/models/gemini-chat-model.js +14 -0
  164. package/lib/esm/models/ollama-chat-model.d.ts +16 -0
  165. package/lib/esm/models/ollama-chat-model.js +16 -0
  166. package/lib/esm/models/open-router-chat-model.d.ts +16 -0
  167. package/lib/esm/models/open-router-chat-model.js +16 -0
  168. package/lib/esm/models/openai-chat-model.d.ts +67 -3
  169. package/lib/esm/models/openai-chat-model.js +47 -2
  170. package/lib/esm/models/xai-chat-model.d.ts +16 -0
  171. package/lib/esm/models/xai-chat-model.js +16 -0
  172. package/lib/esm/prompt/prompt-builder.d.ts +4 -4
  173. package/lib/esm/prompt/prompt-builder.js +20 -19
  174. package/lib/esm/prompt/prompts/memory-message-template.d.ts +1 -0
  175. package/lib/esm/prompt/prompts/memory-message-template.js +7 -0
  176. package/lib/esm/prompt/template.js +5 -1
  177. package/lib/esm/server/error.d.ts +11 -0
  178. package/lib/esm/server/error.js +11 -0
  179. package/lib/esm/server/index.d.ts +2 -0
  180. package/lib/esm/server/index.js +2 -0
  181. package/lib/esm/server/server.d.ts +89 -8
  182. package/lib/esm/server/server.js +58 -0
  183. package/lib/esm/utils/fs.d.ts +2 -0
  184. package/lib/esm/utils/fs.js +21 -0
  185. package/lib/esm/utils/prompts.d.ts +1 -0
  186. package/lib/esm/utils/prompts.js +10 -2
  187. package/lib/esm/utils/type-utils.d.ts +1 -0
  188. package/lib/esm/utils/type-utils.js +13 -0
  189. package/package.json +14 -11
  190. package/lib/cjs/agents/memory.d.ts +0 -26
  191. package/lib/cjs/agents/memory.js +0 -45
  192. package/lib/dts/agents/memory.d.ts +0 -26
  193. package/lib/esm/agents/memory.d.ts +0 -26
  194. package/lib/esm/agents/memory.js +0 -41
  195. /package/{LICENSE → LICENSE.md} +0 -0
package/CHANGELOG.md CHANGED
@@ -22,6 +22,21 @@
22
22
  * rename @aigne/core-next to @aigne/core ([3a81009](https://github.com/AIGNE-io/aigne-framework/commit/3a8100962c81813217b687ae28e8de604419c622))
23
23
  * use text resource from MCP correctly ([8b9eba8](https://github.com/AIGNE-io/aigne-framework/commit/8b9eba83352ec096a2a5d4f410d4c4bde7420bce))
24
24
 
25
+ ## [1.14.0](https://github.com/AIGNE-io/aigne-framework/compare/core-v1.13.0...core-v1.14.0) (2025-05-12)
26
+
27
+
28
+ ### Features
29
+
30
+ * **docs:** use typedoc build and publish docs to gh-pages ([#100](https://github.com/AIGNE-io/aigne-framework/issues/100)) ([b9074c0](https://github.com/AIGNE-io/aigne-framework/commit/b9074c0148ea343ada92b5919a52b47537a1ad48))
31
+ * **memory:** allow agents to act as retrievers and recorders in memory ([#65](https://github.com/AIGNE-io/aigne-framework/issues/65)) ([2bafcbb](https://github.com/AIGNE-io/aigne-framework/commit/2bafcbb66a94fcf55dad8c21ede483eaf075c11d))
32
+ * optimize the stability of ci and example ([#113](https://github.com/AIGNE-io/aigne-framework/issues/113)) ([d16ed6c](https://github.com/AIGNE-io/aigne-framework/commit/d16ed6cb60faea19fb4f1c12e1f83d69563b153f))
33
+
34
+
35
+ ### Bug Fixes
36
+
37
+ * **core:** default catch tool's error and continue processing ([#115](https://github.com/AIGNE-io/aigne-framework/issues/115)) ([983b0de](https://github.com/AIGNE-io/aigne-framework/commit/983b0de491afb3f0904e145cb491d432b62f9312))
38
+ * **core:** handle response for UserAgent automatically in pub/sub mode ([#116](https://github.com/AIGNE-io/aigne-framework/issues/116)) ([b659714](https://github.com/AIGNE-io/aigne-framework/commit/b659714f2398ea042f21cb22eccc1014f181cd46))
39
+
25
40
  ## [1.13.0](https://github.com/AIGNE-io/aigne-framework/compare/core-v1.12.0...core-v1.13.0) (2025-04-30)
26
41
 
27
42
 
package/README.md CHANGED
@@ -6,7 +6,7 @@
6
6
  [![NPM Version](https://img.shields.io/npm/v/@aigne/core)](https://www.npmjs.com/package/@aigne/core)
7
7
  [![Elastic-2.0 licensed](https://img.shields.io/npm/l/@aigne/core)](https://github.com/AIGNE-io/aigne-framework/blob/main/LICENSE)
8
8
 
9
- **English** | [中文](README.zh.md)
9
+ **English** | [中文](./README.zh.md)
10
10
 
11
11
  Core library of [AIGNE Framework](https://github.com/AIGNE-io/aigne-framework) for building AI-powered applications.
12
12
 
@@ -16,7 +16,7 @@ Core library of [AIGNE Framework](https://github.com/AIGNE-io/aigne-framework) f
16
16
 
17
17
  ## Features
18
18
 
19
- - **Multiple AI Model Support**: Built-in support for OpenAI, Gemini, Claude, and other mainstream AI models, easily extensible to support additional models
19
+ - **Multiple AI Model Support**: Built-in support for OpenAI, Gemini, Claude, Nova, and other mainstream AI models, easily extensible to support additional models
20
20
  - **Agent System**: Powerful agent abstractions supporting AI agents, function agents, MCP agents, and more
21
21
  - **AIGNE Environment**: Flexible handling communication between agents and workflow execution
22
22
  - **Workflow Patterns**: Support for sequential, concurrent, routing, handoff, and other workflow patterns
@@ -25,14 +25,21 @@ Core library of [AIGNE Framework](https://github.com/AIGNE-io/aigne-framework) f
25
25
 
26
26
  ## Installation
27
27
 
28
+ ### Using npm
29
+
28
30
  ```bash
29
- # Using npm
30
31
  npm install @aigne/core
32
+ ```
33
+
34
+ ### Using yarn
31
35
 
32
- # Using yarn
36
+ ```bash
33
37
  yarn add @aigne/core
38
+ ```
39
+
40
+ ### Using pnpm
34
41
 
35
- # Using pnpm
42
+ ```bash
36
43
  pnpm add @aigne/core
37
44
  ```
38
45
 
@@ -54,7 +61,7 @@ const agent = AIAgent.from({
54
61
  instructions: "You are a helpful assistant.",
55
62
  });
56
63
 
57
- // Create AIGNE
64
+ // AIGNE: Main execution engine of AIGNE Framework.
58
65
  const aigne = new AIGNE({ model });
59
66
 
60
67
  // Use the AIGNE to invoke the agent
@@ -65,26 +72,6 @@ const response = await userAgent.invoke("Hello, can you help me write a short ar
65
72
  console.log(response);
66
73
  ```
67
74
 
68
- ## Module Structure
69
-
70
- - `agents/`: Agent implementations, including AI agents, function agents, MCP agents, etc.
71
- - `aigne/`: AIGNE is agents execution environment
72
- - `loader/`: Loader-related functionality
73
- - `models/`: Integration with various AI models
74
- - `prompt/`: Prompt handling functionality
75
- - `utils/`: Utility functions and helper methods
76
-
77
- ## Documentation
78
-
79
- For more detailed API documentation, please refer to:
80
-
81
- - [Agent API](../../docs/apis/agent-api.md)
82
- - [AI Agent API](../../docs/apis/ai-agent-api.md)
83
- - [Function Agent API](../../docs/apis/function-agent-api.md)
84
- - [MCP Agent API](../../docs/apis/mcp-agent-api.md)
85
- - [AIGNE API](../../docs/apis/aigne-api.md)
86
- - [Server/Client API](../../docs/apis/server-client-api.md)
87
-
88
75
  ## License
89
76
 
90
77
  Elastic-2.0
package/README.zh.md CHANGED
@@ -6,33 +6,40 @@
6
6
  [![NPM Version](https://img.shields.io/npm/v/@aigne/core)](https://www.npmjs.com/package/@aigne/core)
7
7
  [![Elastic-2.0 licensed](https://img.shields.io/npm/l/@aigne/core)](https://github.com/AIGNE-io/aigne-framework/blob/main/LICENSE)
8
8
 
9
- [English](README.md) | **中文**
9
+ [English](./README.md) | **中文**
10
10
 
11
- [AIGNE 框架](https://github.com/AIGNE-io/aigne-framework)的核心库,用于构建 AI 驱动的应用程序。
11
+ [AIGNE Framework](https://github.com/AIGNE-io/aigne-framework) 的核心库,用于构建 AI 驱动的应用程序。
12
12
 
13
13
  ## 简介
14
14
 
15
- `@aigne/core` 是 [AIGNE 框架](https://github.com/AIGNE-io/aigne-framework)的基础核心组件,提供了构建 AI 驱动应用程序所需的基本模块和工具。该包实现了框架的核心功能,包括代理系统、执行引擎、模型集成以及工作流模式支持等。
15
+ `@aigne/core` 是 [AIGNE Framework](https://github.com/AIGNE-io/aigne-framework) 的基础组件,提供构建 AI 驱动应用程序所需的核心模块和工具。该包实现了框架的核心功能,包括代理系统、aigne 环境、模型集成和工作流模式支持。
16
16
 
17
17
  ## 特性
18
18
 
19
- - **多种 AI 模型支持**:内置支持 OpenAI、Gemini、Claude 等主流 AI 模型,可轻松扩展支持其他模型
20
- - **代理系统**:强大的代理抽象,支持 AI 代理、函数代理、MCP 代理等多种类型
21
- - **执行引擎**:灵活的执行引擎,处理代理之间的通信和工作流执行
19
+ - **多 AI 模型支持**:内置支持 OpenAI、Gemini、Claude、Nova 等主流 AI 模型,可轻松扩展支持其他模型
20
+ - **代理系统**:强大的代理抽象,支持 AI 代理、功能代理、MCP 代理等
21
+ - **AIGNE 环境**:灵活处理代理之间的通信和工作流执行
22
22
  - **工作流模式**:支持顺序、并发、路由、交接等多种工作流模式
23
- - **MCP 协议集成**:通过模型上下文协议(Model Context Protocol)实现与外部系统的无缝集成
24
- - **TypeScript 支持**:完善的类型定义,提供良好的开发体验
23
+ - **MCP 协议集成**:通过模型上下文协议与外部系统无缝集成
24
+ - **TypeScript 支持**:全面的类型定义,提供出色的开发体验
25
25
 
26
26
  ## 安装
27
27
 
28
+ ### 使用 npm
29
+
28
30
  ```bash
29
- # 使用 npm
30
31
  npm install @aigne/core
32
+ ```
33
+
34
+ ### 使用 yarn
31
35
 
32
- # 使用 yarn
36
+ ```bash
33
37
  yarn add @aigne/core
38
+ ```
39
+
40
+ ### 使用 pnpm
34
41
 
35
- # 使用 pnpm
42
+ ```bash
36
43
  pnpm add @aigne/core
37
44
  ```
38
45
 
@@ -50,41 +57,21 @@ const model = new OpenAIChatModel({
50
57
 
51
58
  // 创建 AI 代理
52
59
  const agent = AIAgent.from({
53
- name: "助手",
54
- instructions: "你是一个有帮助的助手。",
60
+ name: "Assistant",
61
+ instructions: "You are a helpful assistant.",
55
62
  });
56
63
 
57
- // 创建执行引擎
64
+ // AIGNE: AIGNE Framework 的主要执行引擎
58
65
  const aigne = new AIGNE({ model });
59
66
 
60
- // 使用执行引擎调用代理
67
+ // 使用 AIGNE 调用代理
61
68
  const userAgent = await aigne.invoke(agent);
62
69
 
63
70
  // 向代理发送消息
64
- const response = await userAgent.invoke("你好,能帮我写一篇短文吗?");
71
+ const response = await userAgent.invoke("Hello, can you help me write a short article?");
65
72
  console.log(response);
66
73
  ```
67
74
 
68
- ## 模块结构
69
-
70
- - `agents/`: 代理相关的实现,包括 AI 代理、函数代理、MCP 代理等
71
- - `aigne/`: AIGNE 提供 Agents 执行环境
72
- - `loader/`: 加载器相关功能
73
- - `models/`: 各种 AI 模型的集成
74
- - `prompt/`: 提示词处理相关功能
75
- - `utils/`: 工具函数和辅助方法
76
-
77
- ## 文档
78
-
79
- 更多详细的 API 文档,请参考:
80
-
81
- - [Agent API](../../docs/apis/agent-api.zh.md)
82
- - [AI Agent API](../../docs/apis/ai-agent-api.zh.md)
83
- - [Function Agent API](../../docs/apis/function-agent-api.zh.md)
84
- - [MCP Agent API](../../docs/apis/mcp-agent-api.zh.md)
85
- - [AIGNE API](../../docs/apis/aigne-api.zh.md)
86
- - [服务器/客户端 API](../../docs/apis/server-client-api.zh.md)
87
-
88
- ## 协议
75
+ ## 许可证
89
76
 
90
77
  Elastic-2.0