@zooique/memora 2.0.0 → 3.0.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 (588) hide show
  1. package/CHANGELOG.md +1028 -0
  2. package/README.en.md +305 -0
  3. package/README.md +303 -148
  4. package/config.example.json +43 -0
  5. package/dist/agent/agent.d.ts +438 -295
  6. package/dist/agent/agent.d.ts.map +1 -1
  7. package/dist/agent/agent.js +1368 -836
  8. package/dist/agent/agent.js.map +1 -1
  9. package/dist/agent/assembler.d.ts +117 -39
  10. package/dist/agent/assembler.d.ts.map +1 -1
  11. package/dist/agent/assembler.js +574 -71
  12. package/dist/agent/assembler.js.map +1 -1
  13. package/dist/agent/budget.d.ts +131 -0
  14. package/dist/agent/budget.d.ts.map +1 -0
  15. package/dist/agent/budget.js +128 -0
  16. package/dist/agent/budget.js.map +1 -0
  17. package/dist/agent/builtinToolHandlers.d.ts +229 -17
  18. package/dist/agent/builtinToolHandlers.d.ts.map +1 -1
  19. package/dist/agent/builtinToolHandlers.js +758 -70
  20. package/dist/agent/builtinToolHandlers.js.map +1 -1
  21. package/dist/agent/builtinTools.d.ts +198 -7
  22. package/dist/agent/builtinTools.d.ts.map +1 -1
  23. package/dist/agent/builtinTools.js +646 -14
  24. package/dist/agent/builtinTools.js.map +1 -1
  25. package/dist/agent/compaction.d.ts +93 -0
  26. package/dist/agent/compaction.d.ts.map +1 -0
  27. package/dist/agent/compaction.js +192 -0
  28. package/dist/agent/compaction.js.map +1 -0
  29. package/dist/agent/constants.d.ts +139 -18
  30. package/dist/agent/constants.d.ts.map +1 -1
  31. package/dist/agent/constants.js +154 -18
  32. package/dist/agent/constants.js.map +1 -1
  33. package/dist/agent/contextManager.d.ts +126 -76
  34. package/dist/agent/contextManager.d.ts.map +1 -1
  35. package/dist/agent/contextManager.js +197 -135
  36. package/dist/agent/contextManager.js.map +1 -1
  37. package/dist/agent/contextPreparer.d.ts +78 -0
  38. package/dist/agent/contextPreparer.d.ts.map +1 -0
  39. package/dist/agent/contextPreparer.js +128 -0
  40. package/dist/agent/contextPreparer.js.map +1 -0
  41. package/dist/agent/duplicateInterceptor.d.ts +67 -0
  42. package/dist/agent/duplicateInterceptor.d.ts.map +1 -0
  43. package/dist/agent/duplicateInterceptor.js +82 -0
  44. package/dist/agent/duplicateInterceptor.js.map +1 -0
  45. package/dist/agent/guardRail.d.ts +166 -0
  46. package/dist/agent/guardRail.d.ts.map +1 -0
  47. package/dist/agent/guardRail.js +333 -0
  48. package/dist/agent/guardRail.js.map +1 -0
  49. package/dist/agent/loop.d.ts +718 -253
  50. package/dist/agent/loop.d.ts.map +1 -1
  51. package/dist/agent/loop.js +2215 -648
  52. package/dist/agent/loop.js.map +1 -1
  53. package/dist/agent/managers/archiveCoordinator.d.ts +21 -74
  54. package/dist/agent/managers/archiveCoordinator.d.ts.map +1 -1
  55. package/dist/agent/managers/archiveCoordinator.js +32 -105
  56. package/dist/agent/managers/archiveCoordinator.js.map +1 -1
  57. package/dist/agent/managers/chatLockManager.d.ts +20 -88
  58. package/dist/agent/managers/chatLockManager.d.ts.map +1 -1
  59. package/dist/agent/managers/chatLockManager.js +31 -103
  60. package/dist/agent/managers/chatLockManager.js.map +1 -1
  61. package/dist/agent/managers/dedupManager.d.ts +85 -0
  62. package/dist/agent/managers/dedupManager.d.ts.map +1 -0
  63. package/dist/agent/managers/dedupManager.js +248 -0
  64. package/dist/agent/managers/dedupManager.js.map +1 -0
  65. package/dist/agent/managers/goalConsistencyChecker.d.ts +42 -0
  66. package/dist/agent/managers/goalConsistencyChecker.d.ts.map +1 -0
  67. package/dist/agent/managers/goalConsistencyChecker.js +178 -0
  68. package/dist/agent/managers/goalConsistencyChecker.js.map +1 -0
  69. package/dist/agent/managers/llmCaller.d.ts +124 -0
  70. package/dist/agent/managers/llmCaller.d.ts.map +1 -0
  71. package/dist/agent/managers/llmCaller.js +417 -0
  72. package/dist/agent/managers/llmCaller.js.map +1 -0
  73. package/dist/agent/managers/llmJudgeHelper.d.ts +21 -0
  74. package/dist/agent/managers/llmJudgeHelper.d.ts.map +1 -0
  75. package/dist/agent/managers/llmJudgeHelper.js +32 -0
  76. package/dist/agent/managers/llmJudgeHelper.js.map +1 -0
  77. package/dist/agent/managers/loopMetrics.d.ts +58 -0
  78. package/dist/agent/managers/loopMetrics.d.ts.map +1 -0
  79. package/dist/agent/managers/loopMetrics.js +68 -0
  80. package/dist/agent/managers/loopMetrics.js.map +1 -0
  81. package/dist/agent/managers/memoryAdvisor.d.ts +27 -120
  82. package/dist/agent/managers/memoryAdvisor.d.ts.map +1 -1
  83. package/dist/agent/managers/memoryAdvisor.js +56 -192
  84. package/dist/agent/managers/memoryAdvisor.js.map +1 -1
  85. package/dist/agent/managers/memoryGovernance.d.ts +24 -0
  86. package/dist/agent/managers/memoryGovernance.d.ts.map +1 -0
  87. package/dist/agent/managers/memoryGovernance.js +46 -0
  88. package/dist/agent/managers/memoryGovernance.js.map +1 -0
  89. package/dist/agent/managers/memoryInspector.d.ts +59 -393
  90. package/dist/agent/managers/memoryInspector.d.ts.map +1 -1
  91. package/dist/agent/managers/memoryInspector.js +92 -736
  92. package/dist/agent/managers/memoryInspector.js.map +1 -1
  93. package/dist/agent/managers/roundSummaryGenerator.d.ts +56 -0
  94. package/dist/agent/managers/roundSummaryGenerator.d.ts.map +1 -0
  95. package/dist/agent/managers/roundSummaryGenerator.js +201 -0
  96. package/dist/agent/managers/roundSummaryGenerator.js.map +1 -0
  97. package/dist/agent/managers/sessionArchiver.d.ts +19 -63
  98. package/dist/agent/managers/sessionArchiver.d.ts.map +1 -1
  99. package/dist/agent/managers/sessionArchiver.js +83 -157
  100. package/dist/agent/managers/sessionArchiver.js.map +1 -1
  101. package/dist/agent/managers/sessionManager.d.ts +286 -57
  102. package/dist/agent/managers/sessionManager.d.ts.map +1 -1
  103. package/dist/agent/managers/sessionManager.js +846 -85
  104. package/dist/agent/managers/sessionManager.js.map +1 -1
  105. package/dist/agent/managers/sessionNamer.d.ts +35 -0
  106. package/dist/agent/managers/sessionNamer.d.ts.map +1 -0
  107. package/dist/agent/managers/sessionNamer.js +104 -0
  108. package/dist/agent/managers/sessionNamer.js.map +1 -0
  109. package/dist/agent/managers/streamAccumulator.d.ts +20 -0
  110. package/dist/agent/managers/streamAccumulator.d.ts.map +1 -0
  111. package/dist/agent/managers/streamAccumulator.js +15 -0
  112. package/dist/agent/managers/streamAccumulator.js.map +1 -0
  113. package/dist/agent/managers/textPolishManager.d.ts +8 -44
  114. package/dist/agent/managers/textPolishManager.d.ts.map +1 -1
  115. package/dist/agent/managers/textPolishManager.js +12 -47
  116. package/dist/agent/managers/textPolishManager.js.map +1 -1
  117. package/dist/agent/managers/toolCallHelpers.d.ts +105 -0
  118. package/dist/agent/managers/toolCallHelpers.d.ts.map +1 -0
  119. package/dist/agent/managers/toolCallHelpers.js +161 -0
  120. package/dist/agent/managers/toolCallHelpers.js.map +1 -0
  121. package/dist/agent/managers/workProjection.d.ts +57 -87
  122. package/dist/agent/managers/workProjection.d.ts.map +1 -1
  123. package/dist/agent/managers/workProjection.js +166 -246
  124. package/dist/agent/managers/workProjection.js.map +1 -1
  125. package/dist/agent/messageHistory.d.ts +134 -84
  126. package/dist/agent/messageHistory.d.ts.map +1 -1
  127. package/dist/agent/messageHistory.js +419 -133
  128. package/dist/agent/messageHistory.js.map +1 -1
  129. package/dist/agent/needsPlanning.d.ts +28 -0
  130. package/dist/agent/needsPlanning.d.ts.map +1 -0
  131. package/dist/agent/needsPlanning.js +68 -0
  132. package/dist/agent/needsPlanning.js.map +1 -0
  133. package/dist/agent/seed/index.d.ts +11 -0
  134. package/dist/agent/seed/index.d.ts.map +1 -0
  135. package/dist/agent/seed/index.js +10 -0
  136. package/dist/agent/seed/index.js.map +1 -0
  137. package/dist/agent/seed/orchestrator.d.ts +83 -0
  138. package/dist/agent/seed/orchestrator.d.ts.map +1 -0
  139. package/dist/agent/seed/orchestrator.js +260 -0
  140. package/dist/agent/seed/orchestrator.js.map +1 -0
  141. package/dist/agent/seed/prepare.d.ts +49 -0
  142. package/dist/agent/seed/prepare.d.ts.map +1 -0
  143. package/dist/agent/seed/prepare.js +107 -0
  144. package/dist/agent/seed/prepare.js.map +1 -0
  145. package/dist/agent/seed/types.d.ts +115 -0
  146. package/dist/agent/seed/types.d.ts.map +1 -0
  147. package/dist/agent/seed/types.js +15 -0
  148. package/dist/agent/seed/types.js.map +1 -0
  149. package/dist/agent/sessionStateMachine.d.ts +78 -0
  150. package/dist/agent/sessionStateMachine.d.ts.map +1 -0
  151. package/dist/agent/sessionStateMachine.js +182 -0
  152. package/dist/agent/sessionStateMachine.js.map +1 -0
  153. package/dist/agent/taskTableRenderer.d.ts +51 -0
  154. package/dist/agent/taskTableRenderer.d.ts.map +1 -0
  155. package/dist/agent/taskTableRenderer.js +115 -0
  156. package/dist/agent/taskTableRenderer.js.map +1 -0
  157. package/dist/agent/toolExecutor.d.ts +255 -9
  158. package/dist/agent/toolExecutor.d.ts.map +1 -1
  159. package/dist/agent/toolExecutor.js +956 -20
  160. package/dist/agent/toolExecutor.js.map +1 -1
  161. package/dist/agent/toolLedger.d.ts +120 -0
  162. package/dist/agent/toolLedger.d.ts.map +1 -0
  163. package/dist/agent/toolLedger.js +149 -0
  164. package/dist/agent/toolLedger.js.map +1 -0
  165. package/dist/agent/toolResultCache.d.ts +134 -0
  166. package/dist/agent/toolResultCache.d.ts.map +1 -0
  167. package/dist/agent/toolResultCache.js +243 -0
  168. package/dist/agent/toolResultCache.js.map +1 -0
  169. package/dist/agent/toolResultOffload.d.ts +59 -0
  170. package/dist/agent/toolResultOffload.d.ts.map +1 -0
  171. package/dist/agent/toolResultOffload.js +70 -0
  172. package/dist/agent/toolResultOffload.js.map +1 -0
  173. package/dist/agent/toolRunner.d.ts +59 -0
  174. package/dist/agent/toolRunner.d.ts.map +1 -0
  175. package/dist/agent/toolRunner.js +147 -0
  176. package/dist/agent/toolRunner.js.map +1 -0
  177. package/dist/agent/tracer.d.ts +99 -107
  178. package/dist/agent/tracer.d.ts.map +1 -1
  179. package/dist/agent/tracer.js +24 -69
  180. package/dist/agent/tracer.js.map +1 -1
  181. package/dist/agent/types.d.ts +512 -162
  182. package/dist/agent/types.d.ts.map +1 -1
  183. package/dist/agent/types.js +2 -51
  184. package/dist/agent/types.js.map +1 -1
  185. package/dist/code-exec/codeExecutionProvider.d.ts +16 -0
  186. package/dist/code-exec/codeExecutionProvider.d.ts.map +1 -0
  187. package/dist/code-exec/codeExecutionProvider.js +57 -0
  188. package/dist/code-exec/codeExecutionProvider.js.map +1 -0
  189. package/dist/code-exec/types.d.ts +37 -0
  190. package/dist/code-exec/types.d.ts.map +1 -0
  191. package/dist/code-exec/types.js +12 -0
  192. package/dist/code-exec/types.js.map +1 -0
  193. package/dist/config/expandEnvVars.d.ts +22 -0
  194. package/dist/config/expandEnvVars.d.ts.map +1 -0
  195. package/dist/config/expandEnvVars.js +38 -0
  196. package/dist/config/expandEnvVars.js.map +1 -0
  197. package/dist/config/loader.d.ts +59 -242
  198. package/dist/config/loader.d.ts.map +1 -1
  199. package/dist/config/loader.js +237 -194
  200. package/dist/config/loader.js.map +1 -1
  201. package/dist/index.d.ts +69 -74
  202. package/dist/index.d.ts.map +1 -1
  203. package/dist/index.js +93 -63
  204. package/dist/index.js.map +1 -1
  205. package/dist/llm/abortSignal.d.ts +2 -3
  206. package/dist/llm/abortSignal.d.ts.map +1 -1
  207. package/dist/llm/abortSignal.js +2 -3
  208. package/dist/llm/abortSignal.js.map +1 -1
  209. package/dist/llm/factory.d.ts +29 -25
  210. package/dist/llm/factory.d.ts.map +1 -1
  211. package/dist/llm/factory.js +34 -69
  212. package/dist/llm/factory.js.map +1 -1
  213. package/dist/llm/openaiCompatible.d.ts +25 -40
  214. package/dist/llm/openaiCompatible.d.ts.map +1 -1
  215. package/dist/llm/openaiCompatible.js +181 -129
  216. package/dist/llm/openaiCompatible.js.map +1 -1
  217. package/dist/llm/provider.d.ts +29 -42
  218. package/dist/llm/provider.d.ts.map +1 -1
  219. package/dist/llm/provider.js +11 -10
  220. package/dist/llm/provider.js.map +1 -1
  221. package/dist/llm/types.d.ts +54 -11
  222. package/dist/llm/types.d.ts.map +1 -1
  223. package/dist/llm/types.js +0 -5
  224. package/dist/llm/types.js.map +1 -1
  225. package/dist/logging/logger.d.ts +8 -29
  226. package/dist/logging/logger.d.ts.map +1 -1
  227. package/dist/logging/logger.js +43 -233
  228. package/dist/logging/logger.js.map +1 -1
  229. package/dist/logging/loggerInterface.d.ts +9 -8
  230. package/dist/logging/loggerInterface.d.ts.map +1 -1
  231. package/dist/memory/gcService.d.ts +164 -0
  232. package/dist/memory/gcService.d.ts.map +1 -0
  233. package/dist/memory/gcService.js +215 -0
  234. package/dist/memory/gcService.js.map +1 -0
  235. package/dist/memory/governance.d.ts +17 -0
  236. package/dist/memory/governance.d.ts.map +1 -0
  237. package/dist/memory/governance.js +17 -0
  238. package/dist/memory/governance.js.map +1 -0
  239. package/dist/memory/inMemoryRoundStore.d.ts +124 -0
  240. package/dist/memory/inMemoryRoundStore.d.ts.map +1 -0
  241. package/dist/memory/inMemoryRoundStore.js +216 -0
  242. package/dist/memory/inMemoryRoundStore.js.map +1 -0
  243. package/dist/memory/inMemorySessionStore.d.ts +92 -0
  244. package/dist/memory/inMemorySessionStore.d.ts.map +1 -0
  245. package/dist/memory/inMemorySessionStore.js +219 -0
  246. package/dist/memory/inMemorySessionStore.js.map +1 -0
  247. package/dist/memory/inMemorySessionViewLoader.d.ts +89 -0
  248. package/dist/memory/inMemorySessionViewLoader.d.ts.map +1 -0
  249. package/dist/memory/inMemorySessionViewLoader.js +183 -0
  250. package/dist/memory/inMemorySessionViewLoader.js.map +1 -0
  251. package/dist/memory/inMemoryStorage.d.ts +26 -141
  252. package/dist/memory/inMemoryStorage.d.ts.map +1 -1
  253. package/dist/memory/inMemoryStorage.js +48 -187
  254. package/dist/memory/inMemoryStorage.js.map +1 -1
  255. package/dist/memory/keywordsTouch.d.ts +20 -0
  256. package/dist/memory/keywordsTouch.d.ts.map +1 -0
  257. package/dist/memory/keywordsTouch.js +25 -0
  258. package/dist/memory/keywordsTouch.js.map +1 -0
  259. package/dist/memory/lockManager.d.ts +7 -2
  260. package/dist/memory/lockManager.d.ts.map +1 -1
  261. package/dist/memory/lockManager.js +35 -11
  262. package/dist/memory/lockManager.js.map +1 -1
  263. package/dist/memory/projectManager.d.ts +30 -128
  264. package/dist/memory/projectManager.d.ts.map +1 -1
  265. package/dist/memory/projectManager.js +39 -171
  266. package/dist/memory/projectManager.js.map +1 -1
  267. package/dist/memory/projectRegistry.d.ts +22 -37
  268. package/dist/memory/projectRegistry.d.ts.map +1 -1
  269. package/dist/memory/projectRegistry.js +78 -85
  270. package/dist/memory/projectRegistry.js.map +1 -1
  271. package/dist/memory/roundStore.d.ts +629 -0
  272. package/dist/memory/roundStore.d.ts.map +1 -0
  273. package/dist/memory/roundStore.js +116 -0
  274. package/dist/memory/roundStore.js.map +1 -0
  275. package/dist/memory/sessionStore.d.ts +70 -61
  276. package/dist/memory/sessionStore.d.ts.map +1 -1
  277. package/dist/memory/sessionStore.js +23 -1
  278. package/dist/memory/sessionStore.js.map +1 -1
  279. package/dist/memory/sessionViewLoader.d.ts +141 -0
  280. package/dist/memory/sessionViewLoader.d.ts.map +1 -0
  281. package/dist/memory/sessionViewLoader.js +65 -0
  282. package/dist/memory/sessionViewLoader.js.map +1 -0
  283. package/dist/memory/sourceValidation.d.ts +18 -9
  284. package/dist/memory/sourceValidation.d.ts.map +1 -1
  285. package/dist/memory/sourceValidation.js +35 -29
  286. package/dist/memory/sourceValidation.js.map +1 -1
  287. package/dist/memory/storageInterface.d.ts +45 -126
  288. package/dist/memory/storageInterface.d.ts.map +1 -1
  289. package/dist/memory/types.d.ts +82 -168
  290. package/dist/memory/types.d.ts.map +1 -1
  291. package/dist/memory/types.js +116 -79
  292. package/dist/memory/types.js.map +1 -1
  293. package/dist/project-search/projectSearchProvider.d.ts +29 -0
  294. package/dist/project-search/projectSearchProvider.d.ts.map +1 -0
  295. package/dist/project-search/projectSearchProvider.js +57 -0
  296. package/dist/project-search/projectSearchProvider.js.map +1 -0
  297. package/dist/project-search/terms.d.ts +14 -0
  298. package/dist/project-search/terms.d.ts.map +1 -0
  299. package/dist/project-search/terms.js +68 -0
  300. package/dist/project-search/terms.js.map +1 -0
  301. package/dist/project-search/types.d.ts +139 -0
  302. package/dist/project-search/types.d.ts.map +1 -0
  303. package/dist/project-search/types.js +8 -0
  304. package/dist/project-search/types.js.map +1 -0
  305. package/dist/role-pack/capabilityMap.d.ts +28 -0
  306. package/dist/role-pack/capabilityMap.d.ts.map +1 -0
  307. package/dist/role-pack/capabilityMap.js +56 -0
  308. package/dist/role-pack/capabilityMap.js.map +1 -0
  309. package/dist/role-pack/constants.d.ts +21 -0
  310. package/dist/role-pack/constants.d.ts.map +1 -0
  311. package/dist/role-pack/constants.js +21 -0
  312. package/dist/role-pack/constants.js.map +1 -0
  313. package/dist/role-pack/rolePackManager.d.ts +269 -0
  314. package/dist/role-pack/rolePackManager.d.ts.map +1 -0
  315. package/dist/role-pack/rolePackManager.js +1082 -0
  316. package/dist/role-pack/rolePackManager.js.map +1 -0
  317. package/dist/role-pack/strategyKeys.d.ts +100 -0
  318. package/dist/role-pack/strategyKeys.d.ts.map +1 -0
  319. package/dist/role-pack/strategyKeys.js +184 -0
  320. package/dist/role-pack/strategyKeys.js.map +1 -0
  321. package/dist/role-pack/strategyResolver.d.ts +109 -0
  322. package/dist/role-pack/strategyResolver.d.ts.map +1 -0
  323. package/dist/role-pack/strategyResolver.js +304 -0
  324. package/dist/role-pack/strategyResolver.js.map +1 -0
  325. package/dist/role-pack/types.d.ts +237 -0
  326. package/dist/role-pack/types.d.ts.map +1 -0
  327. package/dist/role-pack/types.js +8 -0
  328. package/dist/role-pack/types.js.map +1 -0
  329. package/dist/role-pack/validator.d.ts +38 -0
  330. package/dist/role-pack/validator.d.ts.map +1 -0
  331. package/dist/role-pack/validator.js +436 -0
  332. package/dist/role-pack/validator.js.map +1 -0
  333. package/dist/security/pathGuard.d.ts +69 -72
  334. package/dist/security/pathGuard.d.ts.map +1 -1
  335. package/dist/security/pathGuard.js +151 -131
  336. package/dist/security/pathGuard.js.map +1 -1
  337. package/dist/skill/skillLayer3.d.ts +91 -0
  338. package/dist/skill/skillLayer3.d.ts.map +1 -0
  339. package/dist/skill/skillLayer3.js +104 -0
  340. package/dist/skill/skillLayer3.js.map +1 -0
  341. package/dist/skill/skillManager.d.ts +127 -56
  342. package/dist/skill/skillManager.d.ts.map +1 -1
  343. package/dist/skill/skillManager.js +318 -163
  344. package/dist/skill/skillManager.js.map +1 -1
  345. package/dist/skill/skillScriptRunner.d.ts +97 -0
  346. package/dist/skill/skillScriptRunner.d.ts.map +1 -0
  347. package/dist/skill/skillScriptRunner.js +271 -0
  348. package/dist/skill/skillScriptRunner.js.map +1 -0
  349. package/dist/skill/types.d.ts +73 -17
  350. package/dist/skill/types.d.ts.map +1 -1
  351. package/dist/skill/types.js +5 -1
  352. package/dist/skill/types.js.map +1 -1
  353. package/dist/utils/array.d.ts +5 -6
  354. package/dist/utils/array.d.ts.map +1 -1
  355. package/dist/utils/array.js +6 -6
  356. package/dist/utils/array.js.map +1 -1
  357. package/dist/utils/atomicWrite.d.ts +8 -0
  358. package/dist/utils/atomicWrite.d.ts.map +1 -0
  359. package/dist/utils/atomicWrite.js +31 -0
  360. package/dist/utils/atomicWrite.js.map +1 -0
  361. package/dist/utils/backgroundTask.d.ts +38 -0
  362. package/dist/utils/backgroundTask.d.ts.map +1 -0
  363. package/dist/utils/backgroundTask.js +117 -0
  364. package/dist/utils/backgroundTask.js.map +1 -0
  365. package/dist/utils/configResourceManager.d.ts +79 -0
  366. package/dist/utils/configResourceManager.d.ts.map +1 -0
  367. package/dist/utils/configResourceManager.js +150 -0
  368. package/dist/utils/configResourceManager.js.map +1 -0
  369. package/dist/utils/errors.d.ts +48 -56
  370. package/dist/utils/errors.d.ts.map +1 -1
  371. package/dist/utils/errors.js +60 -58
  372. package/dist/utils/errors.js.map +1 -1
  373. package/dist/utils/eventEmitter.d.ts +141 -63
  374. package/dist/utils/eventEmitter.d.ts.map +1 -1
  375. package/dist/utils/eventEmitter.js +50 -35
  376. package/dist/utils/eventEmitter.js.map +1 -1
  377. package/dist/utils/fileSafe.d.ts +20 -0
  378. package/dist/utils/fileSafe.d.ts.map +1 -0
  379. package/dist/utils/fileSafe.js +56 -0
  380. package/dist/utils/fileSafe.js.map +1 -0
  381. package/dist/utils/frontmatter.d.ts +2 -3
  382. package/dist/utils/frontmatter.d.ts.map +1 -1
  383. package/dist/utils/frontmatter.js +6 -5
  384. package/dist/utils/frontmatter.js.map +1 -1
  385. package/dist/utils/hash.d.ts +12 -0
  386. package/dist/utils/hash.d.ts.map +1 -0
  387. package/dist/utils/hash.js +27 -0
  388. package/dist/utils/hash.js.map +1 -0
  389. package/dist/utils/http.d.ts +17 -0
  390. package/dist/utils/http.d.ts.map +1 -0
  391. package/dist/utils/http.js +29 -0
  392. package/dist/utils/http.js.map +1 -0
  393. package/dist/utils/json.d.ts +1 -1
  394. package/dist/utils/json.js +1 -1
  395. package/dist/utils/math.d.ts +34 -1
  396. package/dist/utils/math.d.ts.map +1 -1
  397. package/dist/utils/math.js +47 -14
  398. package/dist/utils/math.js.map +1 -1
  399. package/dist/utils/objects.d.ts +2 -3
  400. package/dist/utils/objects.d.ts.map +1 -1
  401. package/dist/utils/objects.js +2 -3
  402. package/dist/utils/objects.js.map +1 -1
  403. package/dist/utils/recallDefaults.d.ts +16 -0
  404. package/dist/utils/recallDefaults.d.ts.map +1 -0
  405. package/dist/utils/recallDefaults.js +16 -0
  406. package/dist/utils/recallDefaults.js.map +1 -0
  407. package/dist/utils/safeTimer.d.ts +8 -36
  408. package/dist/utils/safeTimer.d.ts.map +1 -1
  409. package/dist/utils/safeTimer.js +9 -37
  410. package/dist/utils/safeTimer.js.map +1 -1
  411. package/dist/utils/scanner.d.ts +97 -17
  412. package/dist/utils/scanner.d.ts.map +1 -1
  413. package/dist/utils/scanner.js +269 -47
  414. package/dist/utils/scanner.js.map +1 -1
  415. package/dist/utils/segmenter.d.ts +20 -29
  416. package/dist/utils/segmenter.d.ts.map +1 -1
  417. package/dist/utils/segmenter.js +230 -88
  418. package/dist/utils/segmenter.js.map +1 -1
  419. package/dist/utils/strings.d.ts +15 -32
  420. package/dist/utils/strings.d.ts.map +1 -1
  421. package/dist/utils/strings.js +25 -44
  422. package/dist/utils/strings.js.map +1 -1
  423. package/dist/utils/time.d.ts +37 -0
  424. package/dist/utils/time.d.ts.map +1 -1
  425. package/dist/utils/time.js +56 -0
  426. package/dist/utils/time.js.map +1 -1
  427. package/dist/utils/toError.d.ts +13 -1
  428. package/dist/utils/toError.d.ts.map +1 -1
  429. package/dist/utils/toError.js +18 -1
  430. package/dist/utils/toError.js.map +1 -1
  431. package/dist/web-fetch/fetchWebFetchProvider.d.ts +14 -0
  432. package/dist/web-fetch/fetchWebFetchProvider.d.ts.map +1 -0
  433. package/dist/web-fetch/fetchWebFetchProvider.js +69 -0
  434. package/dist/web-fetch/fetchWebFetchProvider.js.map +1 -0
  435. package/dist/web-fetch/types.d.ts +30 -0
  436. package/dist/web-fetch/types.d.ts.map +1 -0
  437. package/dist/web-fetch/types.js +7 -0
  438. package/dist/web-fetch/types.js.map +1 -0
  439. package/dist/web-fetch/webFetchProvider.d.ts +10 -0
  440. package/dist/web-fetch/webFetchProvider.d.ts.map +1 -0
  441. package/dist/web-fetch/webFetchProvider.js +28 -0
  442. package/dist/web-fetch/webFetchProvider.js.map +1 -0
  443. package/dist/web-search/fetchWebSearchProvider.d.ts +27 -0
  444. package/dist/web-search/fetchWebSearchProvider.d.ts.map +1 -0
  445. package/dist/web-search/fetchWebSearchProvider.js +199 -0
  446. package/dist/web-search/fetchWebSearchProvider.js.map +1 -0
  447. package/dist/web-search/types.d.ts +46 -0
  448. package/dist/web-search/types.d.ts.map +1 -0
  449. package/dist/web-search/types.js +2 -0
  450. package/dist/{persona → web-search}/types.js.map +1 -1
  451. package/dist/web-search/webSearchProvider.d.ts +10 -0
  452. package/dist/web-search/webSearchProvider.d.ts.map +1 -0
  453. package/dist/web-search/webSearchProvider.js +30 -0
  454. package/dist/web-search/webSearchProvider.js.map +1 -0
  455. package/docs/architecture/role-pack-authoring-guide.md +243 -0
  456. package/docs/architecture/role-pack-spec.md +767 -0
  457. package/docs/memora-api-reference.md +1175 -0
  458. package/docs/memora-/346/216/245/345/205/245/346/214/207/345/215/227.md +843 -0
  459. package/docs/role-pack-/345/274/200/346/224/276/351/224/256/346/214/207/345/215/227.md +148 -0
  460. package/package.json +105 -83
  461. package/role-packs/README.md +41 -0
  462. package/role-packs/memora/345/212/251/346/211/213/manifest.json +12 -0
  463. package/role-packs/memora/345/212/251/346/211/213/persona.md +12 -0
  464. package/role-packs/memora/345/212/251/346/211/213/rules.md +4 -0
  465. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/manifest.json +44 -0
  466. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/persona.md +46 -0
  467. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/rules.md +15 -0
  468. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/character-sheet.md +34 -0
  469. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/core-extractor.md +37 -0
  470. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/craft-review.md +69 -0
  471. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/dialogue-craft.md +45 -0
  472. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/emotion-wave.md +46 -0
  473. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/empathy-craft.md +79 -0
  474. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/foreshadow.md +29 -0
  475. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/hotspot-mapping.md +121 -0
  476. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/idea-lever.md +42 -0
  477. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/logline-craft.md +47 -0
  478. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/longform-guard.md +64 -0
  479. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/need-finder.md +40 -0
  480. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/outline-expand.md +46 -0
  481. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/pacing-hook.md +34 -0
  482. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/polish-method.md +113 -0
  483. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/pov-discipline.md +79 -0
  484. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/project-init/SKILL.md +112 -0
  485. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/project-init/scripts/init-novel-project.mjs +441 -0
  486. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/relationship-web.md +47 -0
  487. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/scene-craft.md +46 -0
  488. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/story-bible.md +60 -0
  489. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/story-structure.md +36 -0
  490. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/style-weaver.md +109 -0
  491. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/three-layer-check.md +27 -0
  492. package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/world-builder.md +41 -0
  493. package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/manifest.json +48 -0
  494. package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/persona.md +73 -0
  495. package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/rules.md +19 -0
  496. package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/skills/api-doc-writer.md +40 -0
  497. package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/skills/doc-planner.md +42 -0
  498. package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/skills/nutrient-search.md +28 -0
  499. package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/skills/seed-finder.md +28 -0
  500. package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/skills/ssot-audit.md +34 -0
  501. package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/skills/style-guide.md +40 -0
  502. package/dist/agent/guardrail.d.ts +0 -47
  503. package/dist/agent/guardrail.d.ts.map +0 -1
  504. package/dist/agent/guardrail.js +0 -51
  505. package/dist/agent/guardrail.js.map +0 -1
  506. package/dist/agent/managers/autoConfigRefiner.d.ts +0 -39
  507. package/dist/agent/managers/autoConfigRefiner.d.ts.map +0 -1
  508. package/dist/agent/managers/autoConfigRefiner.js +0 -150
  509. package/dist/agent/managers/autoConfigRefiner.js.map +0 -1
  510. package/dist/agent/managers/configManager.d.ts +0 -125
  511. package/dist/agent/managers/configManager.d.ts.map +0 -1
  512. package/dist/agent/managers/configManager.js +0 -194
  513. package/dist/agent/managers/configManager.js.map +0 -1
  514. package/dist/agent/managers/insightExtractor.d.ts +0 -139
  515. package/dist/agent/managers/insightExtractor.d.ts.map +0 -1
  516. package/dist/agent/managers/insightExtractor.js +0 -401
  517. package/dist/agent/managers/insightExtractor.js.map +0 -1
  518. package/dist/agent/managers/memoryDecayScheduler.d.ts +0 -198
  519. package/dist/agent/managers/memoryDecayScheduler.d.ts.map +0 -1
  520. package/dist/agent/managers/memoryDecayScheduler.js +0 -349
  521. package/dist/agent/managers/memoryDecayScheduler.js.map +0 -1
  522. package/dist/agent/managers/relationBuilder.d.ts +0 -131
  523. package/dist/agent/managers/relationBuilder.d.ts.map +0 -1
  524. package/dist/agent/managers/relationBuilder.js +0 -192
  525. package/dist/agent/managers/relationBuilder.js.map +0 -1
  526. package/dist/agent/personaMatcher.d.ts +0 -29
  527. package/dist/agent/personaMatcher.d.ts.map +0 -1
  528. package/dist/agent/personaMatcher.js +0 -60
  529. package/dist/agent/personaMatcher.js.map +0 -1
  530. package/dist/agent/userFactExtractor.d.ts +0 -25
  531. package/dist/agent/userFactExtractor.d.ts.map +0 -1
  532. package/dist/agent/userFactExtractor.js +0 -81
  533. package/dist/agent/userFactExtractor.js.map +0 -1
  534. package/dist/eval/evalRunner.d.ts +0 -94
  535. package/dist/eval/evalRunner.d.ts.map +0 -1
  536. package/dist/eval/evalRunner.js +0 -141
  537. package/dist/eval/evalRunner.js.map +0 -1
  538. package/dist/eval/evalTypes.d.ts +0 -148
  539. package/dist/eval/evalTypes.d.ts.map +0 -1
  540. package/dist/eval/evalTypes.js +0 -118
  541. package/dist/eval/evalTypes.js.map +0 -1
  542. package/dist/eval/scenarios.d.ts +0 -33
  543. package/dist/eval/scenarios.d.ts.map +0 -1
  544. package/dist/eval/scenarios.js +0 -109
  545. package/dist/eval/scenarios.js.map +0 -1
  546. package/dist/llm/embedding.d.ts +0 -67
  547. package/dist/llm/embedding.d.ts.map +0 -1
  548. package/dist/llm/embedding.js +0 -184
  549. package/dist/llm/embedding.js.map +0 -1
  550. package/dist/memory/hybridMerge.d.ts +0 -54
  551. package/dist/memory/hybridMerge.d.ts.map +0 -1
  552. package/dist/memory/hybridMerge.js +0 -36
  553. package/dist/memory/hybridMerge.js.map +0 -1
  554. package/dist/memory/inMemoryRelationStore.d.ts +0 -51
  555. package/dist/memory/inMemoryRelationStore.d.ts.map +0 -1
  556. package/dist/memory/inMemoryRelationStore.js +0 -65
  557. package/dist/memory/inMemoryRelationStore.js.map +0 -1
  558. package/dist/memory/loader.d.ts +0 -49
  559. package/dist/memory/loader.d.ts.map +0 -1
  560. package/dist/memory/loader.js +0 -93
  561. package/dist/memory/loader.js.map +0 -1
  562. package/dist/memory/recall.d.ts +0 -66
  563. package/dist/memory/recall.d.ts.map +0 -1
  564. package/dist/memory/recall.js +0 -142
  565. package/dist/memory/recall.js.map +0 -1
  566. package/dist/memory/relationStore.d.ts +0 -78
  567. package/dist/memory/relationStore.d.ts.map +0 -1
  568. package/dist/memory/relationStore.js +0 -2
  569. package/dist/memory/relationStore.js.map +0 -1
  570. package/dist/memory/store.d.ts +0 -50
  571. package/dist/memory/store.d.ts.map +0 -1
  572. package/dist/memory/store.js +0 -161
  573. package/dist/memory/store.js.map +0 -1
  574. package/dist/memory/userProfile.d.ts +0 -156
  575. package/dist/memory/userProfile.d.ts.map +0 -1
  576. package/dist/memory/userProfile.js +0 -320
  577. package/dist/memory/userProfile.js.map +0 -1
  578. package/dist/memory/vectorStore.d.ts +0 -185
  579. package/dist/memory/vectorStore.d.ts.map +0 -1
  580. package/dist/memory/vectorStore.js +0 -257
  581. package/dist/memory/vectorStore.js.map +0 -1
  582. package/dist/persona/personaManager.d.ts +0 -160
  583. package/dist/persona/personaManager.d.ts.map +0 -1
  584. package/dist/persona/personaManager.js +0 -414
  585. package/dist/persona/personaManager.js.map +0 -1
  586. package/dist/persona/types.d.ts +0 -32
  587. package/dist/persona/types.d.ts.map +0 -1
  588. package/dist/persona/types.js +0 -5
@@ -1 +1 @@
1
- {"version":3,"file":"assembler.js","sourceRoot":"","sources":["../../src/agent/assembler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assembler.js","sourceRoot":"","sources":["../../src/agent/assembler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,131 @@
1
+ /**
2
+ * 输出预留比例默认值(**预留比例**:`可用预算 = 窗口 × (1 − 该值) − 固定开销`)。
3
+ *
4
+ * ⚠️ 与 `constants.ts` 的 `CONTEXT_TOKENS_BUFFER_RATIO = 0.9` **不可直接比较**——两者基准不同、
5
+ * 语法相反(同属「给模型回答的预留」,但阶段与依据均不同):
6
+ * · 本常量(**装配线**):`computeContextBudget` 决定「装多少」,语义 = **预留 15%**(减法)。
7
+ * · `CONTEXT_TOKENS_BUFFER_RATIO`(**截断线**):`truncateMessages` 决定「超了砍到多少」,
8
+ * 语义 = **保留 90%**(乘法)。二者恰好互余纯属巧合,勿据此推导关联或试图统一。
9
+ */
10
+ export declare const DEFAULT_OUTPUT_RESERVE_RATIO = 0.15;
11
+ /** 完整对话层填充比例默认值(~90% 止,留 10% buffer 防抖) */
12
+ export declare const DEFAULT_DIALOGUE_FILL_RATIO = 0.9;
13
+ /** 顶级锚点倍数:仅当前用户输入(无「首个回答」预留——该预留属多 turn 编排需求) */
14
+ export declare const DEFAULT_ANCHOR_ANSWER_FACTOR = 1;
15
+ /** 最小可运行对话层余量(token):剩余预算低于此值判定「输入过大」装配前判负。
16
+ * 洞 3:触发输入本身过大是与软上限不同的失败原因,走独立装配前判负路径,不污染软上限统计。 */
17
+ export declare const MIN_RUNNABLE_DIALOGUE_TOKENS = 128;
18
+ /** 预算计算入参 */
19
+ export interface ContextBudgetInput {
20
+ /** 上下文窗口容量(token):唯一真理源 = 宿主在构造内核前经 resolveContextWindow(window) 解析注入的单一数字(per-LLM 窗口,缺失回退默认 120K)。内核预算路径只消费单一数字,不认 provider/用户双层来源 */
21
+ readonly windowTokens: number;
22
+ /** 固定开销(system+persona+rules+技能L1+工具schema,token) */
23
+ readonly fixedOverheadTokens: number;
24
+ /** 本轮用户输入 token 数(顶级锚点估算基准) */
25
+ readonly inputTokens: number;
26
+ /** 输出预留比例(默认 0.15 = 15%) */
27
+ readonly outputReserveRatio?: number;
28
+ /** 完整对话层填充比例(默认 0.9 = 90%,留 buffer 防抖) */
29
+ readonly dialogueFillRatio?: number;
30
+ }
31
+ /**
32
+ * 解析有效上下文窗口(SSOT 单源公式,宿主在构造内核 Agent 前调用)。
33
+ *
34
+ * 唯一真理源 = 用户 per-LLM 配置的上下文上限(宿主装配时传入);未配置 → 回退内核默认
35
+ * DEFAULT_MAX_CONTEXT_TOKENS(120_000)。内核预算路径只吃单一数字 maxContextTokens,
36
+ * 不认 provider/用户双来源、不施加全局封顶——用户对自己填写的参数负责。
37
+ */
38
+ export declare function resolveContextWindow(window?: number): number;
39
+ /** 预算计算结果 */
40
+ export interface ContextBudget {
41
+ /** 可用预算 = 窗口 × (1 − 输出预留) − 固定开销 */
42
+ readonly availableTokens: number;
43
+ /** 顶级锚点空间 = 本轮用户输入(独立划块,永不压缩) */
44
+ readonly anchorTokens: number;
45
+ /** 剩余预算 = 可用预算 − 顶级锚点空间 */
46
+ readonly remainingTokens: number;
47
+ /** 完整对话层预算 = 剩余预算 × 填充比例(从最近往回塞到 ~90% 止) */
48
+ readonly dialogueBudgetTokens: number;
49
+ }
50
+ /**
51
+ * 上下文占用快照(真实用量,供输入区指示器展示;与 `ContextBudget` 的「预算上限」互补)。
52
+ *
53
+ * 设计:各段为 prepare 期**实际占用** token,互斥分段拼满整个窗口容量 `totalTokens`:
54
+ * 角色包基础设定(system) | 完整对话 | 当前输入锚点 | 输出预留 | 剩余。
55
+ * 单一真理源 = 内核 prepare 计算(contextPreparer 经 loop.recordOccupancy 写入),
56
+ * 宿主/webview 只渲染、不重算。free 非负收敛(窗口过小/输入过大时各段归零,free 不出现负值)。
57
+ */
58
+ export interface ContextOccupancy {
59
+ /** 窗口总容量(token)= maxContextTokens(SSOT 容量来源,见 resolveContextWindow) */
60
+ readonly totalTokens: number;
61
+ /** 角色包/系统基础设定占用(system prompt:persona + rules + 技能 L1 + 工具 schema) */
62
+ readonly rolePackBaseTokens: number;
63
+ /** 完整对话层实际占用(最近轮次注入正文 token) */
64
+ readonly dialogueTokens: number;
65
+ /** 完整对话层注入的对话条数(user+assistant 消息总数;条数与 token 并存供宿主 hover 明细展示) */
66
+ readonly dialogueCount: number;
67
+ /** 当前输入锚点(本轮用户输入独立划块) */
68
+ readonly inputAnchorTokens: number;
69
+ /** 输出预留(窗口 × 输出预留比例,留给模型回答的容量,非已用) */
70
+ readonly outputReserveTokens: number;
71
+ /** 剩余可用(total − 各段,≥ 0 收敛) */
72
+ readonly freeTokens: number;
73
+ }
74
+ /** 上下文占用估算入参(各层 token/条数为已算好的实际值,本函数只做收敛 + 组装) */
75
+ export interface EstimateOccupancyInput {
76
+ /** 窗口总容量(token) */
77
+ readonly totalTokens: number;
78
+ /** 角色包/系统基础设定占用(system prompt 固定开销) */
79
+ readonly rolePackBaseTokens: number;
80
+ /** 完整对话层 token */
81
+ readonly dialogueTokens: number;
82
+ /** 完整对话层条数 */
83
+ readonly dialogueCount: number;
84
+ /** 当前输入锚点 token(运行时 = budget.anchorTokens;历史会话 = 0) */
85
+ readonly inputAnchorTokens: number;
86
+ /** 输出预留比例(默认 0.15) */
87
+ readonly outputReserveRatio?: number;
88
+ }
89
+ /**
90
+ * 组装上下文占用快照(SSOT 数值派生)。
91
+ *
92
+ * 纯函数:入参为各层已算好的 token/条数,本函数只做
93
+ * 输出预留 + 各段互斥拼满 + free 非负收敛,再组装为 `ContextOccupancy`。
94
+ * 运行时(contextPreparer)与宿主历史会话重算共用——占用组装逻辑单点定义,
95
+ * 宿主不另写一份(避免 free 收敛口径漂移)。
96
+ */
97
+ export declare function estimateOccupancy(input: EstimateOccupancyInput): ContextOccupancy;
98
+ /**
99
+ * 计算上下文预算(SSOT 数值派生)。
100
+ *
101
+ * 百分比是 cap 不是 quota:完整对话层无条件优先。
102
+ * 各级非负收敛(窗口过小/输入过大时归零,供装配前判负判定)。
103
+ */
104
+ export declare function computeContextBudget(input: ContextBudgetInput): ContextBudget;
105
+ /**
106
+ * 装配前判负(洞 3 独立路径):顶级锚点(本轮用户输入)划走后剩余预算低于
107
+ * 最小可运行阈值 → 该输入无法支撑至少一轮正文,装配前确定性拒绝/降级。
108
+ * 与软上限(摘要饱和)是不同失败原因:走独立路径,不占用软上限统计。
109
+ */
110
+ export declare function isInputTooLarge(budget: ContextBudget): boolean;
111
+ /** 完整对话层轮次派生结果 */
112
+ export interface DerivedDialogue {
113
+ /** 最近从后往前能塞进预算的轮数(不含显式补的第一条;动态轮数 = 该派生值) */
114
+ readonly recentRoundCount: number;
115
+ /** 是否显式补了第一条(第一条不在最近轮内时,次级锚点必然在场) */
116
+ readonly firstRoundIncluded: boolean;
117
+ /** 已占用 token(用于日志/诊断,不参与后续分配) */
118
+ readonly usedTokens: number;
119
+ }
120
+ /**
121
+ * 从最近往回塞到预算止,派生完整对话层的轮次集合(纯函数)。
122
+ *
123
+ * 规则(role-pack-spec §D):
124
+ * - 其余轮(问答闭环)正文:按预算从最近往回塞到 ~90% 止;
125
+ * - 会话第一条问答闭环:必然加载(默认在场)——若第一条不在最近轮内,显式补入(次级锚点,压缩可让位)。
126
+ *
127
+ * @param roundCosts 每轮 token 成本(原始轮序,最旧在前);由调用方估算
128
+ * @param budgetTokens 完整对话层预算(token)
129
+ */
130
+ export declare function deriveDialogueRounds(roundCosts: readonly number[], budgetTokens: number): DerivedDialogue;
131
+ //# sourceMappingURL=budget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"budget.d.ts","sourceRoot":"","sources":["../../src/agent/budget.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,128 @@
1
+ /**
2
+ * 上下文预算计算——动态预算装配(role-pack-spec §上下文预算装配 C)
3
+ *
4
+ * @module
5
+ *
6
+ * 预算公式(容量来源 × 分配偏好 → 派生轮数):
7
+ * 可用预算 = Provider窗口 − 固定开销(system+persona+rules+技能L1+工具schema) − 输出预留(15~20%)
8
+ * 顶级锚点空间 = 本轮用户输入(独立划块,永不压缩;仅含当前输入——「首个回答」预留属
9
+ * 多 turn 编排需求,不在本预算口径内)
10
+ * 剩余预算 = 可用预算 − 顶级锚点空间
11
+ * 完整对话层 = 剩余预算,从最近往回塞到 ~90% 止(先装,锚点不动;留 buffer 防抖)
12
+ * 动态轮数 = 完整对话层能装几轮(派生值,不显式声明)
13
+ *
14
+ * 注:本模块无记忆维度——记忆走纯工具召回(`search_memories`),prepare 不注入任何记忆、
15
+ * 预算无记忆分段(无记忆自动注入通道、无记忆层 cap 常量)。
16
+ *
17
+ * 纯函数、零依赖:token 估算由调用方(AgentLoop/ContextManager)提供,本模块只做数值派生。
18
+ * 装配前判负(洞 3)亦基于本模块的剩余预算阈值判定。
19
+ */
20
+ import { AGENT_CONSTANTS } from '../agent/constants.js';
21
+ /**
22
+ * 输出预留比例默认值(**预留比例**:`可用预算 = 窗口 × (1 − 该值) − 固定开销`)。
23
+ *
24
+ * ⚠️ 与 `constants.ts` 的 `CONTEXT_TOKENS_BUFFER_RATIO = 0.9` **不可直接比较**——两者基准不同、
25
+ * 语法相反(同属「给模型回答的预留」,但阶段与依据均不同):
26
+ * · 本常量(**装配线**):`computeContextBudget` 决定「装多少」,语义 = **预留 15%**(减法)。
27
+ * · `CONTEXT_TOKENS_BUFFER_RATIO`(**截断线**):`truncateMessages` 决定「超了砍到多少」,
28
+ * 语义 = **保留 90%**(乘法)。二者恰好互余纯属巧合,勿据此推导关联或试图统一。
29
+ */
30
+ export const DEFAULT_OUTPUT_RESERVE_RATIO = 0.15;
31
+ /** 完整对话层填充比例默认值(~90% 止,留 10% buffer 防抖) */
32
+ export const DEFAULT_DIALOGUE_FILL_RATIO = 0.9;
33
+ /** 顶级锚点倍数:仅当前用户输入(无「首个回答」预留——该预留属多 turn 编排需求) */
34
+ export const DEFAULT_ANCHOR_ANSWER_FACTOR = 1;
35
+ /** 最小可运行对话层余量(token):剩余预算低于此值判定「输入过大」装配前判负。
36
+ * 洞 3:触发输入本身过大是与软上限不同的失败原因,走独立装配前判负路径,不污染软上限统计。 */
37
+ export const MIN_RUNNABLE_DIALOGUE_TOKENS = 128;
38
+ /**
39
+ * 解析有效上下文窗口(SSOT 单源公式,宿主在构造内核 Agent 前调用)。
40
+ *
41
+ * 唯一真理源 = 用户 per-LLM 配置的上下文上限(宿主装配时传入);未配置 → 回退内核默认
42
+ * DEFAULT_MAX_CONTEXT_TOKENS(120_000)。内核预算路径只吃单一数字 maxContextTokens,
43
+ * 不认 provider/用户双来源、不施加全局封顶——用户对自己填写的参数负责。
44
+ */
45
+ export function resolveContextWindow(window) {
46
+ return window ?? AGENT_CONSTANTS.DEFAULT_MAX_CONTEXT_TOKENS;
47
+ }
48
+ /**
49
+ * 组装上下文占用快照(SSOT 数值派生)。
50
+ *
51
+ * 纯函数:入参为各层已算好的 token/条数,本函数只做
52
+ * 输出预留 + 各段互斥拼满 + free 非负收敛,再组装为 `ContextOccupancy`。
53
+ * 运行时(contextPreparer)与宿主历史会话重算共用——占用组装逻辑单点定义,
54
+ * 宿主不另写一份(避免 free 收敛口径漂移)。
55
+ */
56
+ export function estimateOccupancy(input) {
57
+ const outputReserveRatio = input.outputReserveRatio ?? DEFAULT_OUTPUT_RESERVE_RATIO;
58
+ const outputReserveTokens = Math.floor(input.totalTokens * outputReserveRatio);
59
+ const usedBeforeFree = input.rolePackBaseTokens + input.dialogueTokens + input.inputAnchorTokens + outputReserveTokens;
60
+ const freeTokens = Math.max(0, input.totalTokens - usedBeforeFree);
61
+ return {
62
+ totalTokens: input.totalTokens,
63
+ rolePackBaseTokens: input.rolePackBaseTokens,
64
+ dialogueTokens: input.dialogueTokens,
65
+ dialogueCount: input.dialogueCount,
66
+ inputAnchorTokens: input.inputAnchorTokens,
67
+ outputReserveTokens,
68
+ freeTokens,
69
+ };
70
+ }
71
+ /**
72
+ * 计算上下文预算(SSOT 数值派生)。
73
+ *
74
+ * 百分比是 cap 不是 quota:完整对话层无条件优先。
75
+ * 各级非负收敛(窗口过小/输入过大时归零,供装配前判负判定)。
76
+ */
77
+ export function computeContextBudget(input) {
78
+ const outputReserveRatio = input.outputReserveRatio ?? DEFAULT_OUTPUT_RESERVE_RATIO;
79
+ const dialogueFillRatio = input.dialogueFillRatio ?? DEFAULT_DIALOGUE_FILL_RATIO;
80
+ // 可用预算 = 窗口 × (1 − 输出预留) − 固定开销(固定开销不参与百分比分配)
81
+ const availableTokens = Math.max(0, Math.floor(input.windowTokens * (1 - outputReserveRatio)) - input.fixedOverheadTokens);
82
+ // 顶级锚点空间 = 本轮用户输入(独立划块;因子 1,仅当前输入,无首个回答预留)
83
+ const anchorTokens = input.inputTokens * DEFAULT_ANCHOR_ANSWER_FACTOR;
84
+ // 剩余预算 = 可用预算 − 顶级锚点空间(< 0 归零,供装配前判负判定「剩余不足」)
85
+ const remainingTokens = Math.max(0, availableTokens - anchorTokens);
86
+ // 完整对话层 = 剩余预算 × 填充比例(留 buffer 防抖)
87
+ const dialogueBudgetTokens = Math.floor(remainingTokens * dialogueFillRatio);
88
+ return {
89
+ availableTokens,
90
+ anchorTokens,
91
+ remainingTokens,
92
+ dialogueBudgetTokens,
93
+ };
94
+ }
95
+ /**
96
+ * 装配前判负(洞 3 独立路径):顶级锚点(本轮用户输入)划走后剩余预算低于
97
+ * 最小可运行阈值 → 该输入无法支撑至少一轮正文,装配前确定性拒绝/降级。
98
+ * 与软上限(摘要饱和)是不同失败原因:走独立路径,不占用软上限统计。
99
+ */
100
+ export function isInputTooLarge(budget) {
101
+ return budget.remainingTokens < MIN_RUNNABLE_DIALOGUE_TOKENS;
102
+ }
103
+ /**
104
+ * 从最近往回塞到预算止,派生完整对话层的轮次集合(纯函数)。
105
+ *
106
+ * 规则(role-pack-spec §D):
107
+ * - 其余轮(问答闭环)正文:按预算从最近往回塞到 ~90% 止;
108
+ * - 会话第一条问答闭环:必然加载(默认在场)——若第一条不在最近轮内,显式补入(次级锚点,压缩可让位)。
109
+ *
110
+ * @param roundCosts 每轮 token 成本(原始轮序,最旧在前);由调用方估算
111
+ * @param budgetTokens 完整对话层预算(token)
112
+ */
113
+ export function deriveDialogueRounds(roundCosts, budgetTokens) {
114
+ // 从最近往回塞到预算止(首轮未被排除时允许单轮超预算,保证至少有正文可注入)
115
+ let recentRoundCount = 0;
116
+ let usedTokens = 0;
117
+ for (let i = roundCosts.length - 1; i >= 0; i--) {
118
+ const cost = roundCosts[i] ?? 0;
119
+ if (recentRoundCount > 0 && usedTokens + cost > budgetTokens)
120
+ break;
121
+ recentRoundCount++;
122
+ usedTokens += cost;
123
+ }
124
+ // 第一条必在场:最近轮未覆盖第一条(存在轮次且 recentRoundCount < 总轮数)时显式补入
125
+ const firstRoundIncluded = roundCosts.length > 0 && recentRoundCount < roundCosts.length;
126
+ return { recentRoundCount, firstRoundIncluded, usedTokens };
127
+ }
128
+ //# sourceMappingURL=budget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"budget.js","sourceRoot":"","sources":["../../src/agent/budget.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,27 @@
1
1
  import type { SecurityGuard } from '../security/pathGuard.js';
2
2
  import type { IMemoryStorage } from '../memory/storageInterface.js';
3
- import type { WorkProjectionManager } from '../agent/managers/workProjection.js';
3
+ import type { ISessionStore } from '../memory/sessionStore.js';
4
4
  import type { WriteExtensions } from '../agent/toolExecutor.js';
5
- /** 工具结果类型(字符串,LLM 直接消费) */
6
- type ToolResult = string;
5
+ import type { MemoryInspector } from '../agent/managers/memoryInspector.js';
6
+ import type { LlmProvider } from '../llm/provider.js';
7
+ /**
8
+ * 内置文件工具忽略的目录/文件名(模块级单一真理源)
9
+ *
10
+ * list_dir 忽略规则与宿主项目内容搜索(search_project content 模式)共享;
11
+ * 宿主通过主入口 import 此常量对齐忽略目录,避免数值/规则漂移。
12
+ */
13
+ export declare const IGNORED_DIR_NAMES: readonly string[];
14
+ /**
15
+ * 任务表保留文件名判定(write_file 守卫唯一消费)
16
+ *
17
+ * 任务表是内核工具数据(task_table_write/update 管理),不落盘为 markdown 文件——`task-table.md` /
18
+ * `任务表.md` 等文件名保留给任务表机制,禁止 write_file 写入。命中规则 = 文件名(去扩展名)即
19
+ * `task-table` / `task_table` / `任务表`,或以其带分隔符/后缀开头(如 `task-table-进度.md`)。
20
+ *
21
+ * @param absolutePath 目标文件绝对路径
22
+ * @returns 是否命中保留名(任务表语义文件)
23
+ */
24
+ export declare function isReservedTaskTableFile(absolutePath: string): boolean;
7
25
  /**
8
26
  * 内置工具处理器
9
27
  *
@@ -11,19 +29,49 @@ type ToolResult = string;
11
29
  * 从 ToolExecutor 提取,保持无状态设计(不持有 customTools 注册表)。
12
30
  */
13
31
  export declare class BuiltinToolHandlers {
14
- private readonly projectPath;
32
+ readonly projectPath: string;
15
33
  private readonly security;
16
34
  private readonly memoryIndex;
17
- private readonly workProjection?;
18
- /** list_dir 默认忽略的目录/文件名 */
35
+ private readonly sessionStore?;
36
+ /** list_dir 默认忽略的目录/文件名(引用模块级单一真理源,保持类静态 API 兼容) */
19
37
  static readonly IGNORED_DIR_NAMES: readonly string[];
20
38
  /**
21
- * @param projectPath 项目根路径(用于相对路径解析)
39
+ * @param projectPath 项目根路径(用于相对路径解析;公开只读,供 run_code script_path 模式取 cwd)
22
40
  * @param security 安全守卫(路径白名单 + 写入确认)
23
41
  * @param memoryIndex 记忆索引(用于 search_memories 工具)
24
- * @param workProjection 作品投影管理器(可选,读取文件时自动生成投影)
42
+ * @param sessionStore 会话存储(可选,trace_summary 溯源原始对话用;未注入时回退为摘要文本)
43
+ */
44
+ constructor(projectPath: string, security: SecurityGuard, memoryIndex: IMemoryStorage, sessionStore?: ISessionStore | undefined);
45
+ /** 记忆搜索器(search_memories 语义后端,装配期注入;未注入时回退关键词 memoryIndex.search) */
46
+ private memoryInspector;
47
+ /** 当前会话「正文或摘要已在眼前」的轮次提供者(装配期注入;search_memories 用它与装配期内容互斥) */
48
+ private exclusionRoundIdsProvider;
49
+ /** memoryRecalled 事件发射回调(宿主感知「LLM 查询记忆命中 N 条」;装配期注入,缺省不发射) */
50
+ private onMemoryRecalled;
51
+ /**
52
+ * 注入 MemoryInspector,启用 search_memories 的纯关键词搜索后端(memory-tool-recall-design §3.3)。
53
+ * 装配依赖 loop/history,toolExec 在 assembler 中先于它构造,故用「构造后注入」而非构造参数。
54
+ * 注入后 search_memories 走 searchByKeyword(纯关键词 + superseded 过滤 + 溯源揭示),未注入保持旧关键词行为。
55
+ */
56
+ setMemoryInspector(inspector: MemoryInspector): void;
57
+ /**
58
+ * 注入 memoryRecalled 事件发射回调(宿主消费,§2.4「保留改语义」定案)。
59
+ * 搜索工具命中记忆时触发,文案语义 =「LLM 查询记忆命中 N 条」。
60
+ * **唯一触发位**:全库仅本类 emit memoryRecalled(无其他发射点)。
61
+ * 缺省不注入则静默跳过(内置工具也可被测试/脚本直调,无宿主时 no-op)。
62
+ */
63
+ setOnMemoryRecalled(callback: (info: {
64
+ count: number;
65
+ query: string;
66
+ }) => void): void;
67
+ /**
68
+ * 注入召回互斥排除集提供者(memory-tool-recall-design §5.1 工具互斥)。
69
+ * search_memories 用它排除「正文或摘要已在眼前」轮次的 round-summary,避免与装配期内容重复。
70
+ * 提供者返回精确集合(`loop.getExclusionRoundIds()`:视图内 ∪ 被替换 ∪ 在途),
71
+ * 语义为「该轮内容已在上下文,其摘要不应再被召回带回」——从视图派生,与模型窗口无关。
72
+ * 缺省不注入则不过滤(保持测试/独立调用可直接触发)。
25
73
  */
26
- constructor(projectPath: string, security: SecurityGuard, memoryIndex: IMemoryStorage, workProjection?: WorkProjectionManager | undefined);
74
+ setExclusionRoundIdsProvider(provider: () => ReadonlySet<string>): void;
27
75
  /**
28
76
  * 解析相对路径为绝对路径
29
77
  *
@@ -38,24 +86,101 @@ export declare class BuiltinToolHandlers {
38
86
  */
39
87
  guardPathOrThrow(absolutePath: string, tool: string, source?: 'builtin' | 'custom' | 'system'): void;
40
88
  /**
41
- * 读取文件(带路径白名单校验)
89
+ * 读前预检:目标是目录时抛语义化工具错误(read_file 与 run_code script_path 共用)
90
+ *
91
+ * 两处曾各自实现同一段「stat + isDirectory 判定 + MemoraError 移交」;文案因工具而异,
92
+ * 故工具名与提示参数化。stat 失败(ENOENT/权限)不在此处理——移交调用方统一异常路径。
93
+ *
94
+ * @param absolutePath 目标绝对路径(已过白名单校验)
95
+ * @param displayPath 用于文案的相对路径(可读性)
96
+ * @param toolLabel 工具显示名(如 'read_file' / 'run_code script_path')
97
+ * @param hint 目录误用时的行动指引
98
+ */
99
+ private assertFileNotDir;
100
+ /**
101
+ * 读取文件(带路径白名单校验;支持按行分段)
102
+ *
103
+ * **分段语义(大文本统一通道)**
104
+ * - `offset`:起始行号(1-based,默认 1);`limit`:最多返回行数(省略 = 尽可能多)。
105
+ * - **同源不变量**:返回内容的 token 数**恒 ≤ `LOOP_CONSTANTS.SINGLE_TOOL_RESULT_MAX_TOKENS`**。
106
+ * 这保证 read_file 的结果永不触发入口关落盘(阈值同键)→「路径即引用」不会自我嵌套
107
+ * (详见该常量注释)。故本方法**不**使用字符数上限,而是按 token 预算逐行填充。
108
+ * - **截断诚实化**:一旦未能读到文件末尾,脚注给出「已显示第 X–Y 行(共 M 行)」与续读
109
+ * offset;静默追加 `…` 会让 LLM 既不知道后面还有内容、也没有续读手段(静默截断 = 假阴性)。
110
+ */
111
+ readFile(relativePath: string, offset?: string, limit?: string): Promise<string>;
112
+ /**
113
+ * 失败即给证据:read_file 目标不存在(ENOENT)时,返回其**同级目录实际条目**的紧凑清单,
114
+ * 让模型自查真实文件名(优于单纯拒绝;配合失败硬闸在首次失败就给路,比硬拦更止妖)。
115
+ * 父目录不可读 / 无可见条目 → 返回空串(不掩盖原始错误)。条目经 shouldIgnore 过滤,join 拼接。
116
+ */
117
+ private siblingDirHint;
118
+ /**
119
+ * 按行分段 + token 预算切片(read_file 返回形态的**单一收口**)
120
+ *
121
+ * 算法:
122
+ * 1. 解析 `offset`(1-based 起始行)/ `limit`(行数上限);offset 超出末尾 → 如实告知;
123
+ * 2. 期望区间 = offset .. min(offset+limit−1, 总行数);
124
+ * 3. 若**不需要**截断(读到末尾且预算够)→ 返回原文,**不追加脚注**(零噪音);
125
+ * 4. 否则先为脚注预留 token,再**二分**出最大可容纳行数(token 随行数单调增 → 二分成立);
126
+ * 5. 脚注如实告知「已显示第 X–Y 行(共 M 行)」与续读 `offset=Y+1`。
127
+ *
128
+ * 退化情形(病态长行:单行本身就超预算)→ 该行按估算比反推字符数截断,并明示已截断。
129
+ *
130
+ * **不变量**:任何返回路径的 token 数都 ≤ `SINGLE_TOOL_RESULT_MAX_TOKENS −
131
+ * TOOL_RESULT_WRAP_OVERHEAD_TOKENS`(**含脚注**)—— 即 wrapped 入上下文后仍 ≤ 单条上限,
132
+ * 从而**结构性不触发**入口关落盘(否则 LLM 每次读文件只看得到路径)。脚注预留用最坏位数
133
+ * (endLine = 总行数)估算,故实际脚注必不超预留。
134
+ *
135
+ * @param content 已净化的文件全文
136
+ * @param displayPath 用于文案的相对路径(越界/退化提示可读)
137
+ * @param offset LLM 传入的起始行号字符串(可选)
138
+ * @param limit LLM 传入的行数上限字符串(可选)
139
+ */
140
+ private sliceFileByLineBudget;
141
+ /**
142
+ * 读取项目脚本文件原始内容(供 run_code script_path 模式执行)
143
+ *
144
+ * 与 readFile 的区别:不截断不净化——脚本代码要原样交给执行器,截断会破坏语法。
145
+ * 仅做路径白名单校验 + 长度上限(SCRIPT_READ_MAX_LEN,防超大脚本滥用)。
146
+ *
147
+ * @param relativePath 相对项目根的文件路径
148
+ * @returns 脚本文件原始内容
149
+ */
150
+ readScriptFile(relativePath: string): Promise<string>;
151
+ /**
152
+ * 删除项目文件(供 delete_file 工具)
153
+ *
154
+ * 安全策略:路径白名单校验 + 用户确认(guest 模式 / confirmWrites)。
155
+ * 仅支持删除文件,不支持删除目录(防误删)。
156
+ *
157
+ * 与 readScriptFile 同属「临时脚本」闭环(write_file 写 → run_code 执行 → delete_file 清理,
158
+ * 对齐主流 AI IDE 一次性数据处理不留痕的行为约定)。
159
+ *
160
+ * @param relativePath 相对项目根的文件路径
161
+ * @returns 删除结果描述
42
162
  */
43
- readFile(relativePath: string): Promise<ToolResult>;
163
+ deleteFile(relativePath: string): Promise<string>;
44
164
  /**
45
- * 写入文件(支持 overwrite / append / insert 三种模式)
165
+ * 写入文件(支持 overwrite / append / insert / replace,模式清单 SSOT = builtinTools.WRITE_FILE_MODES,
166
+ * 新增模式时本清单与 docs/memora-api-reference.md 的 write_file 行须同步复核)
46
167
  *
47
168
  * 安全策略:
48
169
  * - 路径必须在白名单内
49
170
  * - 写入前需用户确认(WriteExtensions.onBeforeWrite 或 SecurityGuard.requestWriteConfirmation)
50
171
  * - 自动创建不存在的父目录
51
172
  *
173
+ * 参数形态前提(位置参数,当前 6 个):再加 mode 专属参数时须一并评估改收 options 对象,
174
+ * 且四个内置文件工具(read_file / list_dir / search_memories)同批收,不单点特化本工具。
175
+ *
52
176
  * @param relativePath 相对项目根的文件路径
53
177
  * @param content 要写入的内容
54
178
  * @param extensions 写入扩展(可选,用于 diff 确认等)
55
- * @param mode 写入模式:"overwrite" | "append" | "insert",默认 "overwrite"
179
+ * @param mode 写入模式(合法值集 = WriteFileMode 类型,派生自 WRITE_FILE_MODES),默认 "overwrite"
56
180
  * @param insertLine insert 模式下的目标行号(从 1 开始),省略则插入到末尾
181
+ * @param oldString replace 模式下的被替换文本(须在旧内容中唯一出现)
57
182
  */
58
- writeFile(relativePath: string, content: string, extensions?: WriteExtensions, mode?: string, insertLine?: string): Promise<ToolResult>;
183
+ writeFile(relativePath: string, content: string, extensions?: WriteExtensions, mode?: string, insertLine?: string, oldString?: string): Promise<string>;
59
184
  /**
60
185
  * 根据写入模式计算最终文件内容
61
186
  *
@@ -63,6 +188,7 @@ export declare class BuiltinToolHandlers {
63
188
  * @param content LLM 提供的写入内容
64
189
  * @param beforeContent 文件旧内容(null 表示新文件)
65
190
  * @param insertLine insert 模式下的行号
191
+ * @param oldString replace 模式下的被替换文本(须唯一匹配)
66
192
  * @returns 最终要写入文件的完整内容
67
193
  */
68
194
  private computeWriteContent;
@@ -74,7 +200,7 @@ export declare class BuiltinToolHandlers {
74
200
  * - 递归深度 ≤ 3(maxDepth 入参强校验)
75
201
  * - 自动忽略:.git / node_modules / .memora / dist / coverage / .next
76
202
  */
77
- listDir(relativePath: string, recursiveStr: string, maxDepthStr: string): Promise<ToolResult>;
203
+ listDir(relativePath: string, recursiveStr: string, maxDepthStr: string): Promise<string>;
78
204
  /**
79
205
  * 递归遍历目录(深度受限 + 忽略特定目录)
80
206
  */
@@ -90,7 +216,93 @@ export declare class BuiltinToolHandlers {
90
216
  * @param limitStr 返回数量上限
91
217
  * @param modeStr 搜索模式:"match"(任一命中,默认)或 "near"(全部命中)
92
218
  */
93
- searchMemories(query: string, limitStr: string, modeStr: string): Promise<ToolResult>;
219
+ searchMemories(query: string, limitStr: string, modeStr: string): Promise<string>;
220
+ /**
221
+ * 命中即 touch:fire-and-forget 刷新命中记忆的 accessedAt(不涉及任何重要度字段)。
222
+ *
223
+ * 收敛到 keywordsTouch.ts 的单一真理源 touchScores(§5.2 只 touch 不加权,内部只调 storage.touch)——
224
+ * 不为工具命中另造写分路径。backgroundTask 保证 fire-and-forget 不阻塞搜索返回,
225
+ * 且统一并发限流;失败兜底记日志即可(touch 是排序副作用,非主线流程)。
226
+ *
227
+ * @param hits 搜索命中项(取其 id 定位,实际写入交由 touchScores 收敛)
228
+ */
229
+ private touchHits;
230
+ /**
231
+ * `search_memories` 响应性护栏包装:给整次记忆搜索设上限。
232
+ *
233
+ * 背景:搜索服务为网络调用时超时远长于本地上限,这里收窄为 MEMORY_SEARCH_TIMEOUT_MS(5s)——
234
+ * 超时降级为「搜索超时」提示(空结果语义),而非挂死工具或抛错中断对话。
235
+ *
236
+ * @param run 返回记忆搜索结果的函数(同步或异步)
237
+ * @returns 搜索完成后返回全量命中;超时则返回空数组(降级提示由调用方近零命中分支承担)
238
+ */
239
+ private withMemorySearchTimeout;
240
+ /**
241
+ * 追溯轮次摘要的原始对话内容
242
+ *
243
+ * 从记忆索引中查找 `source='round-summary'` 的记忆,
244
+ * 根据 sessionId 和 roundId 过滤。
245
+ * 返回格式化后的摘要列表,包含摘要内容、类型和溯源信息。
246
+ *
247
+ * @param sessionId 会话标识(格式:YYYY-MM-DD-sessionName)
248
+ * @param roundId 轮次 ID(可选,不传则返回最近 N 条摘要)
249
+ * @param limitStr 返回结果数量上限(默认 "5",最大 "20")
250
+ */
251
+ traceSummary(sessionId: string, roundId?: string, limitStr?: string): Promise<string>;
252
+ /**
253
+ * 溯源指定轮次的原始对话消息
254
+ *
255
+ * 通过 sessionStore.loadMessages 定位该会话,按 SessionMessage.roundId 过滤出本轮消息。
256
+ * 规模控制:最多 5 条消息,超过则截断并标记 isTruncated。
257
+ *
258
+ * @param sessionId 会话标识(格式:YYYY-MM-DD-sessionName)
259
+ * @param roundId 轮次 ID
260
+ * @returns 原始消息列表(≤5 条)+ 是否截断;会话存储不可用或未命中该轮次时返回 null
261
+ */
262
+ private loadRawRoundMessages;
263
+ /**
264
+ * list_sessions:列出历史会话**路标**(会话级摘要),供 LLM 粗定位后再用 trace_summary 下钻。
265
+ *
266
+ * 会话级摘要是「路标」而非记忆——存于 SessionMeta(summary/keyTopics),不进记忆召回池
267
+ * (会话级路标不进记忆库)。本工具是「粗定位 → 细取证」闭环的第一环:
268
+ * 返回最近 N 个会话的路标,LLM 据此挑目标,再用 trace_summary(sessionId) 取该会话轮次摘要。
269
+ *
270
+ * 路标滞后说明:SessionArchiver 在**会话切换前**触发,故当前会话的摘要可能落后于最新对话。
271
+ * 本工具按 updatedAt 降序返回,历史会话路标准确;当前会话以实际上下文为准,不依赖路标。
272
+ *
273
+ * @param limitStr 返回条数上限(默认 "10",最大 "30")
274
+ * @returns 格式化的会话路标列表;无会话存储 / 无会话时返回说明文本(不抛错)
275
+ */
276
+ listSessions(limitStr?: string): Promise<string>;
94
277
  }
95
- export {};
278
+ /**
279
+ * run_team_meeting 执行实现(工具内嵌 LLM 调用,一次 chat() 完成)
280
+ *
281
+ * 串联既有原语实现「评估/评审型小组会议」:解析组名 → 取各角色 persona 全文 → 拼多角色
282
+ * system prompt → 单次 provider.chat() → 返回评审文本。依赖经参数注入(不持有全局状态),
283
+ * 由装配层在后续注入时把 rolePackManager 与 provider 收敛进闭包。
284
+ *
285
+ * 边界(探索方案 §5.3 实证):
286
+ * - 只覆盖评估/评审型(各视角独立观点 + 组长汇总),不覆盖你来我往的讨论型会议;
287
+ * - 角色数隐式受组解析截断约束(组长 1 + 组员 ≤ 4),persona 全文 token 成本高。
288
+ *
289
+ * @param params 依赖注入 + 工具入参(resolveTeam/buildPersona/provider 由装配层提供)
290
+ * @returns 多角色评估文本(已净化 + 长度上限)
291
+ * @throws 参数缺失 / 组不存在 / 组角色未装载 → MemoraError
292
+ */
293
+ export declare function runTeamMeetingAssessment(params: {
294
+ /** 组解析:按组名返回队长 + 组员名单(null = 组不存在) */
295
+ resolveTeam: (group: string) => {
296
+ leader: string;
297
+ members: readonly string[];
298
+ } | null;
299
+ /** 角色 persona 取全文(如 rolePackManager.buildSystemPrompt(name)) */
300
+ buildPersona: (name: string) => string;
301
+ /** 前台 LLM provider(评审为 turn 内工具,走主通道) */
302
+ provider: LlmProvider;
303
+ /** 组名(= 组长角色包名) */
304
+ group: string;
305
+ /** 要评估的议题 */
306
+ topic: string;
307
+ }): Promise<string>;
96
308
  //# sourceMappingURL=builtinToolHandlers.d.ts.map