@cicctencent/agent-core 0.1.18 → 0.1.19

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 (210) hide show
  1. package/README.md +70 -1
  2. package/dist/cjs/agent/engine.d.ts +23 -0
  3. package/dist/cjs/agent/engine.d.ts.map +1 -1
  4. package/dist/cjs/agent/engine.js +78 -5
  5. package/dist/cjs/agent/engine.js.map +1 -1
  6. package/dist/cjs/agent/history-manager.d.ts +66 -1
  7. package/dist/cjs/agent/history-manager.d.ts.map +1 -1
  8. package/dist/cjs/agent/history-manager.js +232 -0
  9. package/dist/cjs/agent/history-manager.js.map +1 -1
  10. package/dist/cjs/agent/llm-caller.d.ts.map +1 -1
  11. package/dist/cjs/agent/llm-caller.js +10 -4
  12. package/dist/cjs/agent/llm-caller.js.map +1 -1
  13. package/dist/cjs/agent/profile-loader.d.ts +56 -0
  14. package/dist/cjs/agent/profile-loader.d.ts.map +1 -0
  15. package/dist/cjs/agent/profile-loader.js +145 -0
  16. package/dist/cjs/agent/profile-loader.js.map +1 -0
  17. package/dist/cjs/agent/types.d.ts +32 -3
  18. package/dist/cjs/agent/types.d.ts.map +1 -1
  19. package/dist/cjs/agent/types.js.map +1 -1
  20. package/dist/cjs/context/types.d.ts +3 -3
  21. package/dist/cjs/context/types.d.ts.map +1 -1
  22. package/dist/cjs/index.d.ts +24 -2
  23. package/dist/cjs/index.d.ts.map +1 -1
  24. package/dist/cjs/index.js +37 -11
  25. package/dist/cjs/index.js.map +1 -1
  26. package/dist/cjs/kb/in-memory-kb.d.ts +29 -0
  27. package/dist/cjs/kb/in-memory-kb.d.ts.map +1 -0
  28. package/dist/cjs/kb/in-memory-kb.js +210 -0
  29. package/dist/cjs/kb/in-memory-kb.js.map +1 -0
  30. package/dist/cjs/kb/rag-middleware.d.ts +31 -0
  31. package/dist/cjs/kb/rag-middleware.d.ts.map +1 -0
  32. package/dist/cjs/kb/rag-middleware.js +94 -0
  33. package/dist/cjs/kb/rag-middleware.js.map +1 -0
  34. package/dist/cjs/kb/types.d.ts +80 -0
  35. package/dist/cjs/kb/types.d.ts.map +1 -0
  36. package/dist/cjs/kb/types.js +6 -0
  37. package/dist/cjs/kb/types.js.map +1 -0
  38. package/dist/cjs/llm/anthropic-provider.d.ts +7 -0
  39. package/dist/cjs/llm/anthropic-provider.d.ts.map +1 -1
  40. package/dist/cjs/llm/anthropic-provider.js +84 -9
  41. package/dist/cjs/llm/anthropic-provider.js.map +1 -1
  42. package/dist/cjs/llm/openai-provider.d.ts +9 -0
  43. package/dist/cjs/llm/openai-provider.d.ts.map +1 -1
  44. package/dist/cjs/llm/openai-provider.js +41 -1
  45. package/dist/cjs/llm/openai-provider.js.map +1 -1
  46. package/dist/cjs/llm/pricing.d.ts +26 -0
  47. package/dist/cjs/llm/pricing.d.ts.map +1 -0
  48. package/dist/cjs/llm/pricing.js +86 -0
  49. package/dist/cjs/llm/pricing.js.map +1 -0
  50. package/dist/cjs/llm/usage-tracker.d.ts +119 -0
  51. package/dist/cjs/llm/usage-tracker.d.ts.map +1 -0
  52. package/dist/cjs/llm/usage-tracker.js +105 -0
  53. package/dist/cjs/llm/usage-tracker.js.map +1 -0
  54. package/dist/cjs/memory/extractor.js +1 -1
  55. package/dist/cjs/memory/extractor.js.map +1 -1
  56. package/dist/cjs/memory/persona.js +1 -1
  57. package/dist/cjs/memory/persona.js.map +1 -1
  58. package/dist/cjs/memory/scene.js +1 -1
  59. package/dist/cjs/memory/scene.js.map +1 -1
  60. package/dist/cjs/middleware/types.d.ts +2 -4
  61. package/dist/cjs/middleware/types.d.ts.map +1 -1
  62. package/dist/cjs/middleware/workspace-notes.d.ts +36 -0
  63. package/dist/cjs/middleware/workspace-notes.d.ts.map +1 -0
  64. package/dist/cjs/middleware/workspace-notes.js +53 -0
  65. package/dist/cjs/middleware/workspace-notes.js.map +1 -0
  66. package/dist/cjs/observability/logger.d.ts +1 -0
  67. package/dist/cjs/observability/logger.d.ts.map +1 -1
  68. package/dist/cjs/observability/logger.js.map +1 -1
  69. package/dist/cjs/observability/trace.d.ts +45 -0
  70. package/dist/cjs/observability/trace.d.ts.map +1 -0
  71. package/dist/cjs/observability/trace.js +59 -0
  72. package/dist/cjs/observability/trace.js.map +1 -0
  73. package/dist/cjs/runtime/run-registry-interface.d.ts +42 -0
  74. package/dist/cjs/runtime/run-registry-interface.d.ts.map +1 -0
  75. package/dist/cjs/runtime/run-registry-interface.js +7 -0
  76. package/dist/cjs/runtime/run-registry-interface.js.map +1 -0
  77. package/dist/cjs/runtime/run-registry.d.ts +15 -2
  78. package/dist/cjs/runtime/run-registry.d.ts.map +1 -1
  79. package/dist/cjs/runtime/run-registry.js +43 -1
  80. package/dist/cjs/runtime/run-registry.js.map +1 -1
  81. package/dist/cjs/sandbox/code-sandbox.d.ts +42 -0
  82. package/dist/cjs/sandbox/code-sandbox.d.ts.map +1 -0
  83. package/dist/cjs/sandbox/code-sandbox.js +59 -0
  84. package/dist/cjs/sandbox/code-sandbox.js.map +1 -0
  85. package/dist/cjs/skill/router.d.ts +20 -1
  86. package/dist/cjs/skill/router.d.ts.map +1 -1
  87. package/dist/cjs/skill/router.js +39 -1
  88. package/dist/cjs/skill/router.js.map +1 -1
  89. package/dist/cjs/skill/types.d.ts +1 -1
  90. package/dist/cjs/skill/types.d.ts.map +1 -1
  91. package/dist/cjs/skill/vector-index.d.ts +42 -0
  92. package/dist/cjs/skill/vector-index.d.ts.map +1 -0
  93. package/dist/cjs/skill/vector-index.js +70 -0
  94. package/dist/cjs/skill/vector-index.js.map +1 -0
  95. package/dist/cjs/store/history-persistence.d.ts +36 -0
  96. package/dist/cjs/store/history-persistence.d.ts.map +1 -0
  97. package/dist/cjs/store/history-persistence.js +142 -0
  98. package/dist/cjs/store/history-persistence.js.map +1 -0
  99. package/dist/cjs/types.d.ts +40 -1
  100. package/dist/cjs/types.d.ts.map +1 -1
  101. package/dist/cjs/types.js +34 -0
  102. package/dist/cjs/types.js.map +1 -1
  103. package/dist/cjs/utils/token-counter.d.ts.map +1 -1
  104. package/dist/cjs/utils/token-counter.js +33 -1
  105. package/dist/cjs/utils/token-counter.js.map +1 -1
  106. package/dist/esm/agent/engine.d.ts +23 -0
  107. package/dist/esm/agent/engine.d.ts.map +1 -1
  108. package/dist/esm/agent/engine.js +78 -5
  109. package/dist/esm/agent/engine.js.map +1 -1
  110. package/dist/esm/agent/history-manager.d.ts +66 -1
  111. package/dist/esm/agent/history-manager.d.ts.map +1 -1
  112. package/dist/esm/agent/history-manager.js +232 -0
  113. package/dist/esm/agent/history-manager.js.map +1 -1
  114. package/dist/esm/agent/llm-caller.d.ts.map +1 -1
  115. package/dist/esm/agent/llm-caller.js +10 -4
  116. package/dist/esm/agent/llm-caller.js.map +1 -1
  117. package/dist/esm/agent/profile-loader.d.ts +56 -0
  118. package/dist/esm/agent/profile-loader.d.ts.map +1 -0
  119. package/dist/esm/agent/profile-loader.js +108 -0
  120. package/dist/esm/agent/profile-loader.js.map +1 -0
  121. package/dist/esm/agent/types.d.ts +32 -3
  122. package/dist/esm/agent/types.d.ts.map +1 -1
  123. package/dist/esm/agent/types.js.map +1 -1
  124. package/dist/esm/context/types.d.ts +3 -3
  125. package/dist/esm/context/types.d.ts.map +1 -1
  126. package/dist/esm/index.d.ts +24 -2
  127. package/dist/esm/index.d.ts.map +1 -1
  128. package/dist/esm/index.js +11 -0
  129. package/dist/esm/index.js.map +1 -1
  130. package/dist/esm/kb/in-memory-kb.d.ts +29 -0
  131. package/dist/esm/kb/in-memory-kb.d.ts.map +1 -0
  132. package/dist/esm/kb/in-memory-kb.js +206 -0
  133. package/dist/esm/kb/in-memory-kb.js.map +1 -0
  134. package/dist/esm/kb/rag-middleware.d.ts +31 -0
  135. package/dist/esm/kb/rag-middleware.d.ts.map +1 -0
  136. package/dist/esm/kb/rag-middleware.js +91 -0
  137. package/dist/esm/kb/rag-middleware.js.map +1 -0
  138. package/dist/esm/kb/types.d.ts +80 -0
  139. package/dist/esm/kb/types.d.ts.map +1 -0
  140. package/dist/esm/kb/types.js +5 -0
  141. package/dist/esm/kb/types.js.map +1 -0
  142. package/dist/esm/llm/anthropic-provider.d.ts +7 -0
  143. package/dist/esm/llm/anthropic-provider.d.ts.map +1 -1
  144. package/dist/esm/llm/anthropic-provider.js +84 -9
  145. package/dist/esm/llm/anthropic-provider.js.map +1 -1
  146. package/dist/esm/llm/openai-provider.d.ts +9 -0
  147. package/dist/esm/llm/openai-provider.d.ts.map +1 -1
  148. package/dist/esm/llm/openai-provider.js +41 -1
  149. package/dist/esm/llm/openai-provider.js.map +1 -1
  150. package/dist/esm/llm/pricing.d.ts +26 -0
  151. package/dist/esm/llm/pricing.d.ts.map +1 -0
  152. package/dist/esm/llm/pricing.js +81 -0
  153. package/dist/esm/llm/pricing.js.map +1 -0
  154. package/dist/esm/llm/usage-tracker.d.ts +119 -0
  155. package/dist/esm/llm/usage-tracker.d.ts.map +1 -0
  156. package/dist/esm/llm/usage-tracker.js +101 -0
  157. package/dist/esm/llm/usage-tracker.js.map +1 -0
  158. package/dist/esm/memory/extractor.js +1 -1
  159. package/dist/esm/memory/extractor.js.map +1 -1
  160. package/dist/esm/memory/persona.js +1 -1
  161. package/dist/esm/memory/persona.js.map +1 -1
  162. package/dist/esm/memory/scene.js +1 -1
  163. package/dist/esm/memory/scene.js.map +1 -1
  164. package/dist/esm/middleware/types.d.ts +2 -4
  165. package/dist/esm/middleware/types.d.ts.map +1 -1
  166. package/dist/esm/middleware/workspace-notes.d.ts +36 -0
  167. package/dist/esm/middleware/workspace-notes.d.ts.map +1 -0
  168. package/dist/esm/middleware/workspace-notes.js +49 -0
  169. package/dist/esm/middleware/workspace-notes.js.map +1 -0
  170. package/dist/esm/observability/logger.d.ts +1 -0
  171. package/dist/esm/observability/logger.d.ts.map +1 -1
  172. package/dist/esm/observability/logger.js.map +1 -1
  173. package/dist/esm/observability/trace.d.ts +45 -0
  174. package/dist/esm/observability/trace.d.ts.map +1 -0
  175. package/dist/esm/observability/trace.js +55 -0
  176. package/dist/esm/observability/trace.js.map +1 -0
  177. package/dist/esm/runtime/run-registry-interface.d.ts +42 -0
  178. package/dist/esm/runtime/run-registry-interface.d.ts.map +1 -0
  179. package/dist/esm/runtime/run-registry-interface.js +6 -0
  180. package/dist/esm/runtime/run-registry-interface.js.map +1 -0
  181. package/dist/esm/runtime/run-registry.d.ts +15 -2
  182. package/dist/esm/runtime/run-registry.d.ts.map +1 -1
  183. package/dist/esm/runtime/run-registry.js +43 -1
  184. package/dist/esm/runtime/run-registry.js.map +1 -1
  185. package/dist/esm/sandbox/code-sandbox.d.ts +42 -0
  186. package/dist/esm/sandbox/code-sandbox.d.ts.map +1 -0
  187. package/dist/esm/sandbox/code-sandbox.js +56 -0
  188. package/dist/esm/sandbox/code-sandbox.js.map +1 -0
  189. package/dist/esm/skill/router.d.ts +20 -1
  190. package/dist/esm/skill/router.d.ts.map +1 -1
  191. package/dist/esm/skill/router.js +37 -0
  192. package/dist/esm/skill/router.js.map +1 -1
  193. package/dist/esm/skill/types.d.ts +1 -1
  194. package/dist/esm/skill/types.d.ts.map +1 -1
  195. package/dist/esm/skill/vector-index.d.ts +42 -0
  196. package/dist/esm/skill/vector-index.d.ts.map +1 -0
  197. package/dist/esm/skill/vector-index.js +66 -0
  198. package/dist/esm/skill/vector-index.js.map +1 -0
  199. package/dist/esm/store/history-persistence.d.ts +36 -0
  200. package/dist/esm/store/history-persistence.d.ts.map +1 -0
  201. package/dist/esm/store/history-persistence.js +105 -0
  202. package/dist/esm/store/history-persistence.js.map +1 -0
  203. package/dist/esm/types.d.ts +40 -1
  204. package/dist/esm/types.d.ts.map +1 -1
  205. package/dist/esm/types.js +32 -1
  206. package/dist/esm/types.js.map +1 -1
  207. package/dist/esm/utils/token-counter.d.ts.map +1 -1
  208. package/dist/esm/utils/token-counter.js +33 -1
  209. package/dist/esm/utils/token-counter.js.map +1 -1
  210. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../src/agent/engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../src/agent/engine.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { Message } from '../types.js';
2
- import type { ToolResultStore } from './types.js';
2
+ import type { ToolResultStore, HistoryPersistence } from './types.js';
3
3
  /** 历史管理配置 */
4
4
  export interface HistoryManagerConfig {
5
5
  /** 消息历史上限(滑动窗口),默认 50 */
@@ -18,6 +18,8 @@ export interface HistoryManagerConfig {
18
18
  };
19
19
  /** 工具结果存储(可选) */
20
20
  toolResultStore?: ToolResultStore;
21
+ /** 会话历史持久化(可选,重启后恢复 Agent 上下文) */
22
+ persistence?: HistoryPersistence;
21
23
  }
22
24
  /**
23
25
  * 会话历史管理器
@@ -42,10 +44,50 @@ export declare class HistoryManager {
42
44
  getHistory(sessionId: string): Message[];
43
45
  /** 追加消息到会话历史(含自动压缩) */
44
46
  addHistory(sessionId: string, msg: Message): void;
47
+ /**
48
+ * 从持久化存储加载会话历史
49
+ * 加载后替换内存中的历史,并重建 token 计数
50
+ * 如果持久化未配置或文件不存在,返回 false
51
+ */
52
+ loadHistory(sessionId: string): Promise<boolean>;
45
53
  /** 清理指定会话的历史 */
46
54
  clearHistory(sessionId: string): void;
47
55
  /** 清理所有会话历史 */
48
56
  clearAll(): void;
57
+ /**
58
+ * 截断会话历史到指定位置(保留 [0, toIndex) 的消息)
59
+ *
60
+ * 用于消息编辑场景:用户编辑第 N 条消息后,截断历史到 N,
61
+ * 然后重新追加编辑后的消息并重新生成。
62
+ *
63
+ * @param sessionId 会话 ID
64
+ * @param toIndex 保留的消息数量(0 = 清空历史)
65
+ * @returns 被截断掉的消息数量
66
+ */
67
+ truncateHistory(sessionId: string, toIndex: number): number;
68
+ /**
69
+ * 从现有会话历史分叉创建新会话
70
+ *
71
+ * 复制源会话 [0, fromIndex) 的消息到新会话,
72
+ * 新会话可以独立追加消息而不影响源会话。
73
+ *
74
+ * 用于对话分支场景:用户从第 N 条消息分叉,创建新对话线。
75
+ *
76
+ * @param sourceSessionId 源会话 ID
77
+ * @param targetSessionId 目标会话 ID
78
+ * @param fromIndex 从源会话复制到哪个位置(不包含),默认全部
79
+ * @returns 新会话中的消息数量
80
+ */
81
+ forkHistory(sourceSessionId: string, targetSessionId: string, fromIndex?: number): number;
82
+ /**
83
+ * 获取会话历史的消息数量
84
+ */
85
+ getHistoryLength(sessionId: string): number;
86
+ /**
87
+ * 重写持久化文件(截断/分叉后历史已改变,需要全量重写)
88
+ * 先删除旧文件,再逐条追加
89
+ */
90
+ private rewritePersistence;
49
91
  /** 不应被 offload 的读取类工具(避免 offload → read → offload 无限链) */
50
92
  private static READ_THROUGH_TOOLS;
51
93
  /**
@@ -80,5 +122,28 @@ export declare class HistoryManager {
80
122
  static findToolNameForCallId(callId: string, history: Message[]): string;
81
123
  /** DJB2 哈希(用于生成短 nodeId) */
82
124
  static simpleHash(str: string): number;
125
+ /**
126
+ * 获取非破坏性投影后的历史消息列表
127
+ *
128
+ * 与 `compactHistorySmart()` 不同,此方法 **不修改原始历史**,
129
+ * 而是返回一个投影副本:
130
+ * - 保留最近的 N 条消息完整不变
131
+ * - 较早的消息对(assistant + tool)折叠为摘要标签
132
+ * - 原始历史可通过 `getHistory()` 完整获取
133
+ *
134
+ * @param sessionId 会话 ID
135
+ * @param tokenBudget token 预算(默认使用配置的 maxContextTokens)
136
+ * @returns 投影后的消息列表(新数组,不影响原始历史)
137
+ */
138
+ getProjectedHistory(sessionId: string, tokenBudget?: number): Message[];
139
+ /**
140
+ * 为折叠的消息生成摘要标签
141
+ *
142
+ * 将多条消息合并为一个 system 消息,包含:
143
+ * - 消息数量统计
144
+ * - 关键工具调用列表
145
+ * - 用户消息摘要
146
+ */
147
+ private generateCollapseSummary;
83
148
  }
84
149
  //# sourceMappingURL=history-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"history-manager.d.ts","sourceRoot":"","sources":["../../../src/agent/history-manager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAY,MAAM,aAAa,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAgB,MAAM,YAAY,CAAC;AAGhE,aAAa;AACb,MAAM,WAAW,oBAAoB;IACnC,yBAAyB;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc;IACd,aAAa,CAAC,EAAE;QACd,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,sBAAsB;QACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,+BAA+B;QAC/B,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,yBAAyB;QACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,iBAAiB;IACjB,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED;;;;;;;GAOG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAuB;IACrC,uCAAuC;IACvC,OAAO,CAAC,UAAU,CAAgC;IAClD,2CAA2C;IAC3C,OAAO,CAAC,aAAa,CAA6B;gBAEtC,MAAM,EAAE,oBAAoB;IAMxC,2BAA2B;IAC3B,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;IAMxD,wBAAwB;IACxB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,EAAE;IAIhD,4BAA4B;IAC5B,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,EAAE;IAIxC,uBAAuB;IACvB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI;IAiCjD,gBAAgB;IAChB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKrC,eAAe;IACf,QAAQ,IAAI,IAAI;IAOhB,0DAA0D;IAC1D,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAiD;IAElF;;;;;OAKG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM;IA6ChG;;;;;OAKG;IACH,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM;IAUpE,oCAAoC;IACpC,OAAO,CAAC,mBAAmB;IAqB3B,uBAAuB;IACvB,OAAO,CAAC,oBAAoB;IAuB5B,4BAA4B;IAC5B,OAAO,CAAC,oBAAoB;IAW5B,0BAA0B;IAC1B,OAAO,CAAC,uBAAuB;IA0B/B,iDAAiD;IACjD,OAAO,CAAC,wBAAwB;IAahC,oDAAoD;IACpD,OAAO,CAAC,mBAAmB;IAY3B,0CAA0C;IAC1C,OAAO,CAAC,cAAc;IAYtB,gCAAgC;IAChC,MAAM,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM;IAUxE,4BAA4B;IAC5B,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;CAOvC"}
1
+ {"version":3,"file":"history-manager.d.ts","sourceRoot":"","sources":["../../../src/agent/history-manager.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  // ============================================================
2
2
  // HistoryManager — 会话历史管理(滑动窗口 + 智能压缩)
3
3
  // ============================================================
4
+ import { extractTextFromContent } from "../types.js";
4
5
  import { countMessageTokens } from "../utils/token-counter.js";
5
6
  /**
6
7
  * 会话历史管理器
@@ -41,6 +42,12 @@ export class HistoryManager {
41
42
  }
42
43
  const history = this.historyMap.get(sessionId);
43
44
  history.push(msg);
45
+ // 异步持久化(不阻塞 Agent Loop)
46
+ if (this.config.persistence) {
47
+ this.config.persistence.save(sessionId, msg).catch(e => {
48
+ console.warn(`[HistoryManager] persistence.save failed for session ${sessionId}:`, e?.message || e);
49
+ });
50
+ }
44
51
  // 增量 token 计数
45
52
  const addedTokens = countMessageTokens([msg]);
46
53
  const currentTokens = (this.tokenCountMap.get(sessionId) || 0) + addedTokens;
@@ -63,16 +70,109 @@ export class HistoryManager {
63
70
  history.shift();
64
71
  }
65
72
  }
73
+ /**
74
+ * 从持久化存储加载会话历史
75
+ * 加载后替换内存中的历史,并重建 token 计数
76
+ * 如果持久化未配置或文件不存在,返回 false
77
+ */
78
+ async loadHistory(sessionId) {
79
+ if (!this.config.persistence)
80
+ return false;
81
+ const messages = await this.config.persistence.load(sessionId);
82
+ if (messages && messages.length > 0) {
83
+ this.setHistory(sessionId, messages);
84
+ return true;
85
+ }
86
+ return false;
87
+ }
66
88
  /** 清理指定会话的历史 */
67
89
  clearHistory(sessionId) {
68
90
  this.historyMap.delete(sessionId);
69
91
  this.tokenCountMap.delete(sessionId);
92
+ // 异步删除持久化文件
93
+ if (this.config.persistence) {
94
+ this.config.persistence.delete(sessionId).catch(() => { });
95
+ }
70
96
  }
71
97
  /** 清理所有会话历史 */
72
98
  clearAll() {
73
99
  this.historyMap.clear();
74
100
  this.tokenCountMap.clear();
75
101
  }
102
+ /**
103
+ * 截断会话历史到指定位置(保留 [0, toIndex) 的消息)
104
+ *
105
+ * 用于消息编辑场景:用户编辑第 N 条消息后,截断历史到 N,
106
+ * 然后重新追加编辑后的消息并重新生成。
107
+ *
108
+ * @param sessionId 会话 ID
109
+ * @param toIndex 保留的消息数量(0 = 清空历史)
110
+ * @returns 被截断掉的消息数量
111
+ */
112
+ truncateHistory(sessionId, toIndex) {
113
+ const history = this.historyMap.get(sessionId);
114
+ if (!history)
115
+ return 0;
116
+ const removed = Math.max(0, history.length - toIndex);
117
+ if (removed === 0)
118
+ return 0;
119
+ history.splice(toIndex);
120
+ this.tokenCountMap.set(sessionId, countMessageTokens(history));
121
+ // 持久化:重写整个文件(截断后历史已改变)
122
+ if (this.config.persistence) {
123
+ this.rewritePersistence(sessionId, history);
124
+ }
125
+ return removed;
126
+ }
127
+ /**
128
+ * 从现有会话历史分叉创建新会话
129
+ *
130
+ * 复制源会话 [0, fromIndex) 的消息到新会话,
131
+ * 新会话可以独立追加消息而不影响源会话。
132
+ *
133
+ * 用于对话分支场景:用户从第 N 条消息分叉,创建新对话线。
134
+ *
135
+ * @param sourceSessionId 源会话 ID
136
+ * @param targetSessionId 目标会话 ID
137
+ * @param fromIndex 从源会话复制到哪个位置(不包含),默认全部
138
+ * @returns 新会话中的消息数量
139
+ */
140
+ forkHistory(sourceSessionId, targetSessionId, fromIndex) {
141
+ const sourceHistory = this.historyMap.get(sourceSessionId);
142
+ if (!sourceHistory || sourceHistory.length === 0)
143
+ return 0;
144
+ const endIndex = fromIndex ?? sourceHistory.length;
145
+ const forkedMessages = sourceHistory.slice(0, endIndex);
146
+ this.setHistory(targetSessionId, forkedMessages);
147
+ // 持久化:将分叉的历史写入新会话文件
148
+ if (this.config.persistence) {
149
+ this.rewritePersistence(targetSessionId, forkedMessages);
150
+ }
151
+ return forkedMessages.length;
152
+ }
153
+ /**
154
+ * 获取会话历史的消息数量
155
+ */
156
+ getHistoryLength(sessionId) {
157
+ return this.historyMap.get(sessionId)?.length ?? 0;
158
+ }
159
+ /**
160
+ * 重写持久化文件(截断/分叉后历史已改变,需要全量重写)
161
+ * 先删除旧文件,再逐条追加
162
+ */
163
+ rewritePersistence(sessionId, messages) {
164
+ if (!this.config.persistence)
165
+ return;
166
+ // 异步执行,不阻塞 Agent Loop
167
+ (async () => {
168
+ await this.config.persistence.delete(sessionId);
169
+ for (const msg of messages) {
170
+ await this.config.persistence.save(sessionId, msg);
171
+ }
172
+ })().catch(e => {
173
+ console.warn(`[HistoryManager] rewritePersistence failed for session ${sessionId}:`, e?.message || e);
174
+ });
175
+ }
76
176
  // ---- 工具输出处理(智能截断 + 文件化)----
77
177
  /** 不应被 offload 的读取类工具(避免 offload → read → offload 无限链) */
78
178
  static READ_THROUGH_TOOLS = new Set(['read_offload', 'read_tool_result']);
@@ -178,11 +278,30 @@ export class HistoryManager {
178
278
  offloadBase64Content(history) {
179
279
  const base64Pattern = /[A-Za-z0-9+/]{200,}={0,2}/g;
180
280
  for (const msg of history) {
281
+ // tool 消息:字符串内容中的 base64 块
181
282
  if (msg.role === 'tool' && typeof msg.content === 'string' && msg.content.length > 500) {
182
283
  msg.content = msg.content.replace(base64Pattern, (match) => {
183
284
  return `[base64: ${match.length} chars]`;
184
285
  });
185
286
  }
287
+ // user/assistant 消息:ContentPart[] 中的 base64 图片
288
+ if (Array.isArray(msg.content)) {
289
+ let modified = false;
290
+ const newParts = msg.content.map(part => {
291
+ if (part.type === 'image' && part.source.startsWith('data:')) {
292
+ // base64 data URI → 替换为占位符文本
293
+ modified = true;
294
+ return {
295
+ type: 'text',
296
+ text: `[image: base64 data ${part.source.length} chars offloaded]`,
297
+ };
298
+ }
299
+ return part;
300
+ });
301
+ if (modified) {
302
+ msg.content = newParts;
303
+ }
304
+ }
186
305
  }
187
306
  }
188
307
  /** 压缩阶段 3: 非破坏性卸载大工具结果 */
@@ -212,6 +331,7 @@ export class HistoryManager {
212
331
  const headLen = this.config.contextBudget?.toolOutputHeadLength ?? Math.floor(maxResultLen * 0.4);
213
332
  const tailLen = this.config.contextBudget?.toolOutputTailLength ?? Math.floor(maxResultLen * 0.4);
214
333
  for (const msg of history) {
334
+ // 仅处理字符串内容(tool 消息始终为字符串)
215
335
  if (msg.role === 'tool' && typeof msg.content === 'string' && msg.content.length > maxResultLen) {
216
336
  msg.content = msg.content.slice(0, headLen)
217
337
  + `\n\n... [${msg.content.length - headLen - tailLen} characters truncated] ...\n\n`
@@ -263,5 +383,117 @@ export class HistoryManager {
263
383
  }
264
384
  return hash;
265
385
  }
386
+ // ---- 非破坏性上下文投影(Context Collapse)----
387
+ /**
388
+ * 获取非破坏性投影后的历史消息列表
389
+ *
390
+ * 与 `compactHistorySmart()` 不同,此方法 **不修改原始历史**,
391
+ * 而是返回一个投影副本:
392
+ * - 保留最近的 N 条消息完整不变
393
+ * - 较早的消息对(assistant + tool)折叠为摘要标签
394
+ * - 原始历史可通过 `getHistory()` 完整获取
395
+ *
396
+ * @param sessionId 会话 ID
397
+ * @param tokenBudget token 预算(默认使用配置的 maxContextTokens)
398
+ * @returns 投影后的消息列表(新数组,不影响原始历史)
399
+ */
400
+ getProjectedHistory(sessionId, tokenBudget) {
401
+ const original = this.historyMap.get(sessionId);
402
+ if (!original || original.length === 0)
403
+ return [];
404
+ const maxTokens = tokenBudget ?? this.config.contextBudget?.maxContextTokens ?? 100000;
405
+ const targetTokens = Math.floor(maxTokens * 0.7); // 给 system prompt + tools 留 30% 空间
406
+ // 深拷贝(避免修改原始历史)
407
+ const projected = original.map(msg => ({ ...msg }));
408
+ // 如果已经在预算内,直接返回副本
409
+ let currentTokens = countMessageTokens(projected);
410
+ if (currentTokens <= targetTokens)
411
+ return projected;
412
+ // 从最早的消息开始折叠,保留最近的消息完整
413
+ // 保留最近的 keepRecent 条消息不动
414
+ const keepRecent = Math.min(Math.floor(this.config.maxMessages * 0.5), projected.length);
415
+ const collapseEnd = projected.length - keepRecent;
416
+ if (collapseEnd <= 0) {
417
+ // 没有可折叠的旧消息,回退到破坏性压缩
418
+ this.compactHistorySmart(projected, targetTokens, sessionId);
419
+ return projected;
420
+ }
421
+ // 收集需要折叠的消息,生成摘要
422
+ const collapsedMessages = [];
423
+ for (let i = 0; i < collapseEnd; i++) {
424
+ collapsedMessages.push(projected[i]);
425
+ }
426
+ // 生成折叠摘要
427
+ const summary = this.generateCollapseSummary(collapsedMessages);
428
+ const collapsedTag = {
429
+ role: 'system',
430
+ content: summary,
431
+ };
432
+ // 构建投影:折叠摘要 + 最近的完整消息
433
+ const result = [collapsedTag, ...projected.slice(collapseEnd)];
434
+ // 检查投影后是否在预算内
435
+ currentTokens = countMessageTokens(result);
436
+ if (currentTokens > targetTokens) {
437
+ // 仍超预算:对投影结果应用轻量压缩(非破坏性,仅作用于投影副本)
438
+ this.offloadToolArguments(result);
439
+ if (countMessageTokens(result) > targetTokens) {
440
+ this.offloadBase64Content(result);
441
+ if (countMessageTokens(result) > targetTokens) {
442
+ this.truncateLargeToolResults(result);
443
+ }
444
+ }
445
+ }
446
+ return result;
447
+ }
448
+ /**
449
+ * 为折叠的消息生成摘要标签
450
+ *
451
+ * 将多条消息合并为一个 system 消息,包含:
452
+ * - 消息数量统计
453
+ * - 关键工具调用列表
454
+ * - 用户消息摘要
455
+ */
456
+ generateCollapseSummary(messages) {
457
+ let userCount = 0;
458
+ let assistantCount = 0;
459
+ let toolCount = 0;
460
+ const toolNames = [];
461
+ const userSnippets = [];
462
+ for (const msg of messages) {
463
+ if (msg.role === 'user') {
464
+ userCount++;
465
+ const text = extractTextFromContent(msg.content);
466
+ if (text) {
467
+ const snippet = text.slice(0, 80).replace(/\n/g, ' ').trim();
468
+ if (snippet)
469
+ userSnippets.push(snippet);
470
+ }
471
+ }
472
+ else if (msg.role === 'assistant') {
473
+ assistantCount++;
474
+ }
475
+ else if (msg.role === 'tool') {
476
+ toolCount++;
477
+ }
478
+ if (msg.tool_calls) {
479
+ for (const tc of msg.tool_calls) {
480
+ toolNames.push(tc.function.name);
481
+ }
482
+ }
483
+ }
484
+ const parts = [
485
+ `[Context Collapse: ${messages.length} messages collapsed`,
486
+ `(${userCount} user, ${assistantCount} assistant, ${toolCount} tool)`,
487
+ ];
488
+ if (toolNames.length > 0) {
489
+ const uniqueTools = [...new Set(toolNames)];
490
+ parts.push(`Tools used: ${uniqueTools.join(', ')}`);
491
+ }
492
+ if (userSnippets.length > 0) {
493
+ parts.push(`User topics: ${userSnippets.slice(0, 5).join(' | ')}`);
494
+ }
495
+ parts.push(']');
496
+ return parts.join(' ');
497
+ }
266
498
  }
267
499
  //# sourceMappingURL=history-manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"history-manager.js","sourceRoot":"","sources":["../../../src/agent/history-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"history-manager.js","sourceRoot":"","sources":["../../../src/agent/history-manager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"llm-caller.d.ts","sourceRoot":"","sources":["../../../src/agent/llm-caller.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAY,UAAU,EAAE,MAAM,aAAa,CAAC;AAC7E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,eAAe;AACf,MAAM,WAAW,eAAe;IAC9B,qBAAqB;IACrB,WAAW,EAAE,WAAW,CAAC;IACzB,0BAA0B;IAC1B,gBAAgB,CAAC,EAAE,WAAW,CAAC;IAC/B,WAAW;IACX,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,mBAAmB;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,4BAA4B;IAC5B,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IACxE,0BAA0B;IAC1B,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,UAAU,CAAC;IAC/E,2BAA2B;IAC3B,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAED,kBAAkB;AAClB,MAAM,WAAW,aAAa;IAC5B,4BAA4B;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,oBAAoB;IACpB,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAkB;gBAEpB,MAAM,EAAE,eAAe;IAInC,0BAA0B;IAC1B,cAAc,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI;IAI3C;;;;;OAKG;IACI,aAAa,CAClB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,OAAO,EAAE,EACnB,QAAQ,EAAE,cAAc,EAAE,EAC1B,WAAW,EAAE,WAAW,GACvB,cAAc,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI,CAAC;IAuE7C,mBAAmB;IACnB,OAAO,CAAC,qBAAqB;IAO7B,0BAA0B;YACX,gBAAgB;IAkH/B,wDAAwD;YACzC,QAAQ;CAkHxB"}
1
+ {"version":3,"file":"llm-caller.d.ts","sourceRoot":"","sources":["../../../src/agent/llm-caller.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAY,UAAU,EAAE,MAAM,aAAa,CAAC;AAC7E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,eAAe;AACf,MAAM,WAAW,eAAe;IAC9B,qBAAqB;IACrB,WAAW,EAAE,WAAW,CAAC;IACzB,0BAA0B;IAC1B,gBAAgB,CAAC,EAAE,WAAW,CAAC;IAC/B,WAAW;IACX,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,mBAAmB;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,4BAA4B;IAC5B,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IACxE,0BAA0B;IAC1B,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,UAAU,CAAC;IAC/E,2BAA2B;IAC3B,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAED,kBAAkB;AAClB,MAAM,WAAW,aAAa;IAC5B,4BAA4B;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,oBAAoB;IACpB,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAkB;gBAEpB,MAAM,EAAE,eAAe;IAInC,0BAA0B;IAC1B,cAAc,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI;IAI3C;;;;;OAKG;IACI,aAAa,CAClB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,OAAO,EAAE,EACnB,QAAQ,EAAE,cAAc,EAAE,EAC1B,WAAW,EAAE,WAAW,GACvB,cAAc,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI,CAAC;IAuE7C,mBAAmB;IACnB,OAAO,CAAC,qBAAqB;IAO7B,0BAA0B;YACX,gBAAgB;IAqH/B,wDAAwD;YACzC,QAAQ;CAqHxB"}
@@ -134,8 +134,11 @@ export class LLMCaller {
134
134
  yield this.config.createEvent(sessionId, { type: 'thinking', content: delta.reasoning_content });
135
135
  }
136
136
  if (delta.content) {
137
- contentParts.push(delta.content);
138
- yield this.config.createEvent(sessionId, { type: 'message', content: delta.content, delta: true });
137
+ const text = typeof delta.content === 'string' ? delta.content : '';
138
+ if (text) {
139
+ contentParts.push(text);
140
+ yield this.config.createEvent(sessionId, { type: 'message', content: text, delta: true });
141
+ }
139
142
  }
140
143
  if (delta.tool_calls) {
141
144
  for (const tc of delta.tool_calls) {
@@ -233,8 +236,11 @@ export class LLMCaller {
233
236
  yield this.config.createEvent(sessionId, { type: 'thinking', content: delta.reasoning_content });
234
237
  }
235
238
  if (delta.content) {
236
- contentParts.push(delta.content);
237
- yield this.config.createEvent(sessionId, { type: 'message', content: delta.content, delta: true });
239
+ const text = typeof delta.content === 'string' ? delta.content : '';
240
+ if (text) {
241
+ contentParts.push(text);
242
+ yield this.config.createEvent(sessionId, { type: 'message', content: text, delta: true });
243
+ }
238
244
  }
239
245
  if (delta.tool_calls) {
240
246
  for (const tc of delta.tool_calls) {