@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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rolePackManager.js","sourceRoot":"","sources":["../../src/role-pack/rolePackManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,100 @@
1
+ /**
2
+ * 策略键名 SSOT:集中定义角色包策略键名,rolePackManager 与 validator 改一处即可(validator 依赖它校验未知键)。
3
+ *
4
+ * 区间纪律:所有"开放给角色包填写的数值键"都必须有上下限(防呆防滥用),由内核统一控制——
5
+ * 下限防负值/零值语义错误,上限防资源失控(token/步数/轮数)或业务荒谬值。
6
+ * 区间常量在此集中定义(SSOT),validator(校验报错)与 resolver(越界回退默认)共用同一来源。
7
+ */
8
+ /**
9
+ * 单策略键规则:枚举(enum)或断言(check)。角色包对策略维度只"选择"不"定义,
10
+ * 故枚举外取值是 error(机器可判读)而非忽略。
11
+ */
12
+ export type KeyRule = {
13
+ readonly kind: 'enum';
14
+ readonly values: readonly unknown[];
15
+ } | {
16
+ readonly kind: 'check';
17
+ readonly check: (value: unknown) => boolean;
18
+ /** 数值区间元数据(仅 check 且为数值键时存在):供 validator 报错信息展示区间,与 check 同源派生不双写 */
19
+ readonly range?: {
20
+ readonly min: number;
21
+ readonly max: number;
22
+ };
23
+ };
24
+ /**
25
+ * 内核兜底迭代上限(SSOT 单一来源)。
26
+ *
27
+ * 定义位置:role-pack 策略边界层——agent/loop.ts 的 maxIterations 默认值引用这里,
28
+ * resolveStepBudget 缺省回退也引用这里。agent→role-pack 单向依赖,方向正确。
29
+ *
30
+ * 业界参考:LangGraph=25, Claude Code=25-50, CrewAI=25。
31
+ * 迭代 = 一次 LLM call + N 并行工具。50 足以覆盖复杂多步任务。
32
+ */
33
+ export declare const DEFAULT_MAX_ITERATIONS = 50;
34
+ /** 单轮回答长度上限(token):65536 覆盖当前所有模型 max_tokens 能力上限 */
35
+ export declare const MAX_OUTPUT_LIMIT = 65536;
36
+ /** 单轮工具调用步数上限:100 步足够复杂任务单轮调用 */
37
+ export declare const MAX_TOOL_STEP_LIMIT = 100;
38
+ /**
39
+ * selfReview 的**输入校验上界**,非运行时上限(勿据常量名推导运行时行为)。
40
+ * 布尔数字语义下任意正整数都在解析层归一为 1=终审一次,故本值仅作 schema / validator 的防御上界,
41
+ * 不代表「可自审查 10 轮」。
42
+ */
43
+ export declare const MAX_SELF_REVIEW_ROUNDS = 10;
44
+ /** 主动提问次数上限:按一次用户输入(turn 粒度)计,10 次防打扰失控 */
45
+ export declare const MAX_ASK_LIMIT = 10;
46
+ /**
47
+ * 角色包上下文上限的**声明上界**:2_000_000,与 provider 窗口上界对齐(`src/config/loader.ts`
48
+ * 的 `MAX_CONTEXT_WINDOW`)—— 使角色包在任何 provider 窗口下都能表达「收紧」意图。
49
+ * 因有效窗口**取小值**,本上界永不放大窗口(2M provider 下声明 2M 等价于不设上限)。
50
+ * 语义 = 角色包自设的上下文规模上限,与 provider 窗口取小值后成为有效窗口(非独立资源池、非终止条件)。
51
+ */
52
+ export declare const MAX_CONTEXT_LIMIT = 2000000;
53
+ /**
54
+ * 上下文上限的**正数声明下限**:120_000。
55
+ * ⚠️ **真源 = `src/agent/constants.ts` 的 `DEFAULT_MAX_CONTEXT_TOKENS`**,本键是其**镜像**(改真源须同步本值;
56
+ * 依赖方向为 `agent → role-pack` 单向,本层不可 import agent,故按本仓既有做法「重复 + 注释对冲」)。
57
+ * 语义与 `MIN_STEP_BUDGET` 同构:`0` = 不设额外上限(走 provider 窗口);
58
+ * 非 0 声明必须落在 [本值, MAX_CONTEXT_LIMIT]——低于内核默认窗口的「收紧」无实际意义。
59
+ */
60
+ export declare const MIN_CONTEXT_LIMIT = 120000;
61
+ /** 步数预算声明下限:角色包 stepBudget 声明区间下限(0=未声明走兜底,正数声明不得低于此),低于此视为越界回退默认值 */
62
+ export declare const MIN_STEP_BUDGET = 10;
63
+ /**
64
+ * 步数预算声明上限:角色包声明区间为 {0} ∪ [MIN_STEP_BUDGET, MAX_STEP_BUDGET](0=未声明 → 兜底,无「不限步数」路径)。
65
+ * 角色作者想让这个角色跑得久就配大值,想保守就配小值。
66
+ * 角色包不声明 stepBudget 时,resolveStepBudget 回退 DEFAULT_MAX_ITERATIONS。
67
+ * loop 运行时由 opts.maxIterations 传入覆盖——角色包声明多少给多少,内核只兜底默认。
68
+ */
69
+ export declare const MAX_STEP_BUDGET = 500;
70
+ /** 提炼视角(summaryFocus)字符串长度上限(字符):防止巨型字符串注入 prompt */
71
+ export declare const MAX_SUMMARY_FOCUS_LENGTH = 500;
72
+ /** 温度断言:0.0~2.0(act.temperature)。类型谓词,供装配端复用同一 SSOT 边界做窄化 */
73
+ export declare function isTemperature(value: unknown): value is number;
74
+ /** 提炼视角长度断言:非空字符串且 ≤ MAX_SUMMARY_FOCUS_LENGTH 字符(防巨型注入) */
75
+ export declare function isSummaryFocus(value: unknown): boolean;
76
+ /** askOn 触发枚举(SSOT 单一来源:类型推导与运行时校验共用,types.ts 的 AskOnTrigger 由本数组推导) */
77
+ export declare const ASK_TRIGGERS: readonly ["ambiguity", "decision", "missing_info", "confirm"];
78
+ /** askOn 断言:单枚举或元素∈四枚举的数组(可组合);数组长度 ≤ 枚举数(防重复堆叠) */
79
+ export declare function isAskOn(value: unknown): boolean;
80
+ /** 工具调用模式枚举值(SSOT:types.ts ToolMode 推导 + act.toolMode 校验/归位) */
81
+ export declare const TOOL_MODES: readonly ["allow", "block"];
82
+ /** 工具操作范围枚举值(SSOT:types.ts ToolReadonly 推导 + act.toolReadonly 校验/归位) */
83
+ export declare const TOOL_READONLY_MODES: readonly ["full", "readonly"];
84
+ /** Provider 路由策略枚举值(SSOT:types.ts ProviderRouting 推导 + act.providerRouting 校验/归位) */
85
+ export declare const PROVIDER_ROUTINGS: readonly ["auto", "fixed"];
86
+ /** 多步推理模式枚举值(SSOT:types.ts MultiStepReasoning 推导 + act.multiStepReasoning 校验/归位) */
87
+ export declare const MULTI_STEP_REASONINGS: readonly ["auto", "manual"];
88
+ /** 摘要生成开关枚举值(SSOT:types.ts Summary 推导 + reflect.summary 校验/归位) */
89
+ export declare const SUMMARY_MODES: readonly ["on", "off"];
90
+ /** 用户追问策略枚举值(SSOT:types.ts UserFollowup 推导 + reflect.userFollowup 校验) */
91
+ export declare const USER_FOLLOWUPS: readonly ["ask", "silent"];
92
+ /** 错误处理策略枚举值(SSOT:types.ts ErrorHandling 推导 + global.errorHandling 校验/归位) */
93
+ export declare const ERROR_HANDLINGS: readonly ["retry", "degrade", "stop"];
94
+ /**
95
+ * L2 策略键集:camelCase 统一命名。无标注 = 冻结(memora 真实消费);
96
+ * [草案] = 尚无消费,保留征集验证。只有被消费的键保留在校验器;未知键 validator 报 warning。
97
+ * 数值键全部带上下限(intRange):下限防语义错误,上限防资源失控(SSOT 区间常量见文件头)。
98
+ */
99
+ export declare const STRATEGY_KEY_RULES: Readonly<Record<string, Readonly<Record<string, KeyRule>>>>;
100
+ //# sourceMappingURL=strategyKeys.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strategyKeys.d.ts","sourceRoot":"","sources":["../../src/role-pack/strategyKeys.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;GAGG;AACH,MAAM,MAAM,OAAO,GACf;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,OAAO,EAAE,CAAA;CAAE,GAC9D;IACE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;IAC5C,qEAAqE;IACrE,QAAQ,CAAC,KAAK,CAAC,EAAE;QAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CACjE,CAAC;AAYN;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAEzC,qDAAqD;AACrD,eAAO,MAAM,gBAAgB,QAAQ,CAAC;AACtC,iCAAiC;AACjC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,KAAK,CAAC;AACzC,2CAA2C;AAC3C,eAAO,MAAM,aAAa,KAAK,CAAC;AAChC;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,UAAY,CAAC;AAC3C;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,SAAU,CAAC;AACzC,sEAAsE;AACtE,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC;;;;;GAKG;AACH,eAAO,MAAM,eAAe,MAAM,CAAC;AACnC,qDAAqD;AACrD,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAe5C,6DAA6D;AAC7D,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAE7D;AAED,2DAA2D;AAC3D,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAItD;AAED,wEAAwE;AACxE,eAAO,MAAM,YAAY,+DAAgE,CAAC;AAK1F,oDAAoD;AACpD,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAS/C;AAQD,gEAAgE;AAChE,eAAO,MAAM,UAAU,6BAA8B,CAAC;AACtD,wEAAwE;AACxE,eAAO,MAAM,mBAAmB,+BAAgC,CAAC;AACjE,qFAAqF;AACrF,eAAO,MAAM,iBAAiB,4BAA6B,CAAC;AAC5D,oFAAoF;AACpF,eAAO,MAAM,qBAAqB,6BAA8B,CAAC;AACjE,kEAAkE;AAClE,eAAO,MAAM,aAAa,wBAAyB,CAAC;AACpD,yEAAyE;AACzE,eAAO,MAAM,cAAc,4BAA6B,CAAC;AACzD,6EAA6E;AAC7E,eAAO,MAAM,eAAe,uCAAwC,CAAC;AAErE;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAgE1F,CAAC"}
@@ -0,0 +1,184 @@
1
+ /**
2
+ * 策略键名 SSOT:集中定义角色包策略键名,rolePackManager 与 validator 改一处即可(validator 依赖它校验未知键)。
3
+ *
4
+ * 区间纪律:所有"开放给角色包填写的数值键"都必须有上下限(防呆防滥用),由内核统一控制——
5
+ * 下限防负值/零值语义错误,上限防资源失控(token/步数/轮数)或业务荒谬值。
6
+ * 区间常量在此集中定义(SSOT),validator(校验报错)与 resolver(越界回退默认)共用同一来源。
7
+ */
8
+ // ════════════════════════════════════════════════════════════
9
+ // 数值键上下限常量(SSOT 单一来源:validator + resolver + 文档共用)
10
+ // 上界选值原则:宽松防呆而非限制能力——覆盖真实使用上限即可,杜绝无条件填写导致的资源失控
11
+ //
12
+ // stepBudget 三层设计:
13
+ // DEFAULT_MAX_ITERATIONS=50 → 内核兜底(loop.maxIterations 默认值 + resolveStepBudget 缺省回退)
14
+ // MIN_STEP_BUDGET=10 / MAX_STEP_BUDGET=500 → 角色包声明合法区间(validator 拦截越界)
15
+ // 角色包配 stepBudget → loop.runIterationLoop 动态计算 effectiveMax,配多少给多少
16
+ // ════════════════════════════════════════════════════════════
17
+ /**
18
+ * 内核兜底迭代上限(SSOT 单一来源)。
19
+ *
20
+ * 定义位置:role-pack 策略边界层——agent/loop.ts 的 maxIterations 默认值引用这里,
21
+ * resolveStepBudget 缺省回退也引用这里。agent→role-pack 单向依赖,方向正确。
22
+ *
23
+ * 业界参考:LangGraph=25, Claude Code=25-50, CrewAI=25。
24
+ * 迭代 = 一次 LLM call + N 并行工具。50 足以覆盖复杂多步任务。
25
+ */
26
+ export const DEFAULT_MAX_ITERATIONS = 50;
27
+ /** 单轮回答长度上限(token):65536 覆盖当前所有模型 max_tokens 能力上限 */
28
+ export const MAX_OUTPUT_LIMIT = 65536;
29
+ /** 单轮工具调用步数上限:100 步足够复杂任务单轮调用 */
30
+ export const MAX_TOOL_STEP_LIMIT = 100;
31
+ /**
32
+ * selfReview 的**输入校验上界**,非运行时上限(勿据常量名推导运行时行为)。
33
+ * 布尔数字语义下任意正整数都在解析层归一为 1=终审一次,故本值仅作 schema / validator 的防御上界,
34
+ * 不代表「可自审查 10 轮」。
35
+ */
36
+ export const MAX_SELF_REVIEW_ROUNDS = 10;
37
+ /** 主动提问次数上限:按一次用户输入(turn 粒度)计,10 次防打扰失控 */
38
+ export const MAX_ASK_LIMIT = 10;
39
+ /**
40
+ * 角色包上下文上限的**声明上界**:2_000_000,与 provider 窗口上界对齐(`src/config/loader.ts`
41
+ * 的 `MAX_CONTEXT_WINDOW`)—— 使角色包在任何 provider 窗口下都能表达「收紧」意图。
42
+ * 因有效窗口**取小值**,本上界永不放大窗口(2M provider 下声明 2M 等价于不设上限)。
43
+ * 语义 = 角色包自设的上下文规模上限,与 provider 窗口取小值后成为有效窗口(非独立资源池、非终止条件)。
44
+ */
45
+ export const MAX_CONTEXT_LIMIT = 2_000_000;
46
+ /**
47
+ * 上下文上限的**正数声明下限**:120_000。
48
+ * ⚠️ **真源 = `src/agent/constants.ts` 的 `DEFAULT_MAX_CONTEXT_TOKENS`**,本键是其**镜像**(改真源须同步本值;
49
+ * 依赖方向为 `agent → role-pack` 单向,本层不可 import agent,故按本仓既有做法「重复 + 注释对冲」)。
50
+ * 语义与 `MIN_STEP_BUDGET` 同构:`0` = 不设额外上限(走 provider 窗口);
51
+ * 非 0 声明必须落在 [本值, MAX_CONTEXT_LIMIT]——低于内核默认窗口的「收紧」无实际意义。
52
+ */
53
+ export const MIN_CONTEXT_LIMIT = 120_000;
54
+ /** 步数预算声明下限:角色包 stepBudget 声明区间下限(0=未声明走兜底,正数声明不得低于此),低于此视为越界回退默认值 */
55
+ export const MIN_STEP_BUDGET = 10;
56
+ /**
57
+ * 步数预算声明上限:角色包声明区间为 {0} ∪ [MIN_STEP_BUDGET, MAX_STEP_BUDGET](0=未声明 → 兜底,无「不限步数」路径)。
58
+ * 角色作者想让这个角色跑得久就配大值,想保守就配小值。
59
+ * 角色包不声明 stepBudget 时,resolveStepBudget 回退 DEFAULT_MAX_ITERATIONS。
60
+ * loop 运行时由 opts.maxIterations 传入覆盖——角色包声明多少给多少,内核只兜底默认。
61
+ */
62
+ export const MAX_STEP_BUDGET = 500;
63
+ /** 提炼视角(summaryFocus)字符串长度上限(字符):防止巨型字符串注入 prompt */
64
+ export const MAX_SUMMARY_FOCUS_LENGTH = 500;
65
+ /**
66
+ * 整数区间断言工厂:生成「整数且 ∈ [min, max]」的 check 规则。
67
+ * 同时返回 range 元数据,validator 据此拼出可读的越界错误消息——区间单点定义,无第二处副本。
68
+ */
69
+ function intRange(min, max) {
70
+ return {
71
+ kind: 'check',
72
+ check: (value) => typeof value === 'number' && Number.isInteger(value) && value >= min && value <= max,
73
+ range: { min, max },
74
+ };
75
+ }
76
+ /** 温度断言:0.0~2.0(act.temperature)。类型谓词,供装配端复用同一 SSOT 边界做窄化 */
77
+ export function isTemperature(value) {
78
+ return typeof value === 'number' && value >= 0 && value <= 2;
79
+ }
80
+ /** 提炼视角长度断言:非空字符串且 ≤ MAX_SUMMARY_FOCUS_LENGTH 字符(防巨型注入) */
81
+ export function isSummaryFocus(value) {
82
+ return (typeof value === 'string' && value.trim().length > 0 && value.length <= MAX_SUMMARY_FOCUS_LENGTH);
83
+ }
84
+ /** askOn 触发枚举(SSOT 单一来源:类型推导与运行时校验共用,types.ts 的 AskOnTrigger 由本数组推导) */
85
+ export const ASK_TRIGGERS = ['ambiguity', 'decision', 'missing_info', 'confirm'];
86
+ /** askOn 触发枚举运行时集合(由 ASK_TRIGGERS 派生,O(1) 判定) */
87
+ const ASK_TRIGGER_SET = new Set(ASK_TRIGGERS);
88
+ /** askOn 断言:单枚举或元素∈四枚举的数组(可组合);数组长度 ≤ 枚举数(防重复堆叠) */
89
+ export function isAskOn(value) {
90
+ if (typeof value === 'string')
91
+ return ASK_TRIGGER_SET.has(value);
92
+ return (Array.isArray(value) &&
93
+ value.length > 0 &&
94
+ // 数量上限:可组合触发项最多 4 个(去重后),防重复堆叠膨胀 prompt 注入指令
95
+ value.length <= ASK_TRIGGERS.length &&
96
+ value.every((v) => typeof v === 'string' && ASK_TRIGGER_SET.has(v)));
97
+ }
98
+ // ════════════════════════════════════════════════════════════
99
+ // 策略枚举值常量(SSOT 单一来源:types.ts 类型推导 + validator 校验 + resolver 归位共用)
100
+ // 与 ASK_TRIGGERS 同构——枚举键值域单点定义,增删取值只改此处,类型/校验/归位自动跟随,
101
+ // 杜绝「类型字面量 / KeyRule.values / normalizeEnum 白名单」三副本漂移。
102
+ // ════════════════════════════════════════════════════════════
103
+ /** 工具调用模式枚举值(SSOT:types.ts ToolMode 推导 + act.toolMode 校验/归位) */
104
+ export const TOOL_MODES = ['allow', 'block'];
105
+ /** 工具操作范围枚举值(SSOT:types.ts ToolReadonly 推导 + act.toolReadonly 校验/归位) */
106
+ export const TOOL_READONLY_MODES = ['full', 'readonly'];
107
+ /** Provider 路由策略枚举值(SSOT:types.ts ProviderRouting 推导 + act.providerRouting 校验/归位) */
108
+ export const PROVIDER_ROUTINGS = ['auto', 'fixed'];
109
+ /** 多步推理模式枚举值(SSOT:types.ts MultiStepReasoning 推导 + act.multiStepReasoning 校验/归位) */
110
+ export const MULTI_STEP_REASONINGS = ['auto', 'manual'];
111
+ /** 摘要生成开关枚举值(SSOT:types.ts Summary 推导 + reflect.summary 校验/归位) */
112
+ export const SUMMARY_MODES = ['on', 'off'];
113
+ /** 用户追问策略枚举值(SSOT:types.ts UserFollowup 推导 + reflect.userFollowup 校验) */
114
+ export const USER_FOLLOWUPS = ['ask', 'silent'];
115
+ /** 错误处理策略枚举值(SSOT:types.ts ErrorHandling 推导 + global.errorHandling 校验/归位) */
116
+ export const ERROR_HANDLINGS = ['retry', 'degrade', 'stop'];
117
+ /**
118
+ * L2 策略键集:camelCase 统一命名。无标注 = 冻结(memora 真实消费);
119
+ * [草案] = 尚无消费,保留征集验证。只有被消费的键保留在校验器;未知键 validator 报 warning。
120
+ * 数值键全部带上下限(intRange):下限防语义错误,上限防资源失控(SSOT 区间常量见文件头)。
121
+ */
122
+ export const STRATEGY_KEY_RULES = {
123
+ prepare: {
124
+ // 领域无关机制,内容由角色包提供(≤ MAX_SUMMARY_FOCUS_LENGTH 字符)
125
+ summaryFocus: {
126
+ kind: 'check',
127
+ check: isSummaryFocus,
128
+ range: { min: 1, max: MAX_SUMMARY_FOCUS_LENGTH },
129
+ },
130
+ },
131
+ act: {
132
+ toolMode: { kind: 'enum', values: TOOL_MODES },
133
+ // 角色包可控温度(0.0~2.0)/输出长度(0 或 1~MAX_OUTPUT_LIMIT token)
134
+ temperature: { kind: 'check', check: isTemperature, range: { min: 0, max: 2 } },
135
+ // 输出上限:0 = 不干预(回服务端默认 / 听 per-LLM 配置)∪ [1, MAX_OUTPUT_LIMIT]。
136
+ // 与 contextLimit / stepBudget 同构(0 承载"未声明"语义、正数走声明区间),故不用 intRange
137
+ // 而自定义 check;range.min 是"正数声明下限"(schema 层 minimum=0 是 JSON-Schema 接受层)。
138
+ // 消费点(agent.buildChatOptionsFromStrategy)已有 `> 0` 守卫,0 自然落空 ⇒ 写 0 ≡ 不写。
139
+ outputLimit: {
140
+ kind: 'check',
141
+ check: (value) => typeof value === 'number' &&
142
+ Number.isInteger(value) &&
143
+ (value === 0 || (value >= 1 && value <= MAX_OUTPUT_LIMIT)),
144
+ range: { min: 1, max: MAX_OUTPUT_LIMIT },
145
+ },
146
+ // 工具步数上限(0~MAX_TOOL_STEP_LIMIT,0=无限制)
147
+ toolStepLimit: intRange(0, MAX_TOOL_STEP_LIMIT),
148
+ providerRouting: { kind: 'enum', values: PROVIDER_ROUTINGS },
149
+ multiStepReasoning: { kind: 'enum', values: MULTI_STEP_REASONINGS },
150
+ toolReadonly: { kind: 'enum', values: TOOL_READONLY_MODES },
151
+ },
152
+ reflect: {
153
+ summary: { kind: 'enum', values: SUMMARY_MODES },
154
+ // 自审查(布尔数字:0=关闭;正整数>0 归一为 1=自审查一次,大于 1 算 1;校验区间 0~MAX_SELF_REVIEW_ROUNDS)
155
+ selfReview: intRange(0, MAX_SELF_REVIEW_ROUNDS),
156
+ userFollowup: { kind: 'enum', values: USER_FOLLOWUPS },
157
+ },
158
+ global: {
159
+ askOn: { kind: 'check', check: isAskOn },
160
+ // 每轮主动提问次数(1~MAX_ASK_LIMIT)
161
+ askLimit: intRange(1, MAX_ASK_LIMIT),
162
+ errorHandling: { kind: 'enum', values: ERROR_HANDLINGS },
163
+ // 角色包上下文上限:0 = 不设额外上限(跟随 provider 窗口)∪ [MIN_CONTEXT_LIMIT, MAX_CONTEXT_LIMIT]。
164
+ // 与 stepBudget 同构(0 承载"未声明"语义、正数走声明区间),故不用 intRange 而自定义 check;
165
+ // range.min 是"正数声明下限"(schema 层 minimum=0 是 JSON-Schema 接受层,见守卫测试说明)。
166
+ contextLimit: {
167
+ kind: 'check',
168
+ check: (value) => typeof value === 'number' &&
169
+ Number.isInteger(value) &&
170
+ (value === 0 || (value >= MIN_CONTEXT_LIMIT && value <= MAX_CONTEXT_LIMIT)),
171
+ range: { min: MIN_CONTEXT_LIMIT, max: MAX_CONTEXT_LIMIT },
172
+ },
173
+ // 每轮步数预算:0 或未声明 = 不声明(loop 侧落 maxIterations 兜底),或 ∈ [MIN_STEP_BUDGET, MAX_STEP_BUDGET](角色包声明区间)
174
+ // 注意:0 ≠「不限步数」——stepBudget 无不受限路径(防死循环设计),0 仅表示走内核兜底
175
+ stepBudget: {
176
+ kind: 'check',
177
+ check: (value) => typeof value === 'number' &&
178
+ Number.isInteger(value) &&
179
+ (value === 0 || (value >= MIN_STEP_BUDGET && value <= MAX_STEP_BUDGET)),
180
+ range: { min: MIN_STEP_BUDGET, max: MAX_STEP_BUDGET },
181
+ },
182
+ },
183
+ };
184
+ //# sourceMappingURL=strategyKeys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strategyKeys.js","sourceRoot":"","sources":["../../src/role-pack/strategyKeys.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,109 @@
1
+ /**
2
+ * 角色包行为策略解析器:集中管理行为策略的默认值、解析(resolve*)、合并与装配逻辑。
3
+ */
4
+ import type { BehaviorStrategy, ErrorHandling, ProviderRouting, MultiStepReasoning, ToolReadonly, ToolMode, RolePack, RolePackAssembly, Summary, L2RuntimeStrategy } from './types.js';
5
+ import type { RolePackManager } from './rolePackManager.js';
6
+ /**
7
+ * 行为策略全局默认值——未配置的维度使用全局默认值,角色包只声明它想改变的部分。
8
+ * const 断言确保类型推导为字面量值。
9
+ */
10
+ export declare const DEFAULT_BEHAVIOR_STRATEGY: BehaviorStrategy;
11
+ /**
12
+ * 从角色包管理器推导当前激活的 L2 行为策略(SSOT 单一真理源)。
13
+ *
14
+ * 激活角色包策略优先,未激活/无管理器回退全局默认。本函数是「激活策略」推导的
15
+ * 唯一实现,contextPreparer 与 seed 编排器经此统一取策略,杜绝跨模块镜像重复。
16
+ *
17
+ * @param rolePackManager 角色包管理器(可为 null)
18
+ * @param override 宿主装配级策略覆盖(可选):**压过角色包声明**,表达宿主产品能力边界。
19
+ * 只影响 override 声明过的键(无内置示例键;无自动匹配链,机制保留)。
20
+ * @returns 当前激活行为策略(含装配级覆盖)
21
+ */
22
+ export declare function resolveActiveStrategy(rolePackManager: RolePackManager | null, override?: Partial<BehaviorStrategy>): BehaviorStrategy;
23
+ /**
24
+ * 解析角色包提炼视角(SSOT):非空字符串且 ≤ MAX_SUMMARY_FOCUS_LENGTH 字符才采用,
25
+ * 缺失/空白/超长回退 undefined(通用浓缩)。
26
+ * 领域无关机制:内核只提供注入能力,视角全文由角色包提供;未声明时 round-summary 行为与现状一致(JSON 与 SummaryType 硬契约保留)。
27
+ */
28
+ export declare function resolveSummaryFocus(strategy: BehaviorStrategy | undefined): string | undefined;
29
+ /** 解析工具调用模式(SSOT):非法值归位 'allow'(白名单引用 strategyKeys.TOOL_MODES,防漂移) */
30
+ export declare function resolveToolMode(strategy: BehaviorStrategy | undefined): ToolMode;
31
+ /** 解析摘要生成开关(内核已消费):非法值归位 'on'(白名单引用 strategyKeys.SUMMARY_MODES) */
32
+ export declare function resolveSummary(strategy: BehaviorStrategy | undefined): Summary;
33
+ /**
34
+ * 解析工具调用步数上限(内核已消费):整数且 ∈ [0, MAX_TOOL_STEP_LIMIT] 才采用,非法/越界回退 0(不限制)。
35
+ * 「未声明」不走本回退——mergeStrategy 已注入默认 act.toolStepLimit=20(DEFAULT_BEHAVIOR_STRATEGY),
36
+ * 激活包未声明时生效 20 而非 0;本回退仅承接显式非法值与 resolveL2Strategy(undefined) 构造期初值。
37
+ */
38
+ export declare function resolveToolStepLimit(strategy: BehaviorStrategy | undefined): number;
39
+ /** 解析错误处理策略(内核已消费):非法值归位 'retry'(白名单引用 strategyKeys.ERROR_HANDLINGS)——retry=自动重试 / degrade=降级文本 / stop=终止抛出错误 */
40
+ export declare function resolveErrorHandling(strategy: BehaviorStrategy | undefined): ErrorHandling;
41
+ /**
42
+ * 解析 Provider 路由策略(内核已消费):非法值归位 'auto'(白名单引用 strategyKeys.PROVIDER_ROUTINGS)——auto=按任务类型路由 / fixed=固定当前 Provider
43
+ */
44
+ export declare function resolveProviderRouting(strategy: BehaviorStrategy | undefined): ProviderRouting;
45
+ /**
46
+ * 解析主动提问次数上限(内核已消费):整数且 ∈ [1, MAX_ASK_LIMIT] 才采用,缺失/越界回退默认 10。
47
+ * ask_user 工具的 turn 粒度硬护栏取值(SSOT:assembleRolePack 的 prompt 引导与 loop 拦截共用)。
48
+ */
49
+ export declare function resolveAskLimit(strategy: BehaviorStrategy | undefined): number;
50
+ /**
51
+ * 解析角色包上下文上限。合法 = `0`(不设额外上限)或整数 ∈ [MIN_CONTEXT_LIMIT, MAX_CONTEXT_LIMIT];
52
+ * 其余(未声明 / 越界 / 小数 / 非数)→ 0(不设额外上限,有效窗口 = provider 窗口)。
53
+ */
54
+ export declare function resolveContextLimit(strategy: BehaviorStrategy | undefined): number;
55
+ /** 解析步数预算:0 或未声明 → DEFAULT_MAX_ITERATIONS 兜底;stepBudget ∈ {0} ∪ [MIN_STEP_BUDGET, MAX_STEP_BUDGET]
56
+ * 按声明采用(与 validator 区间同一来源,防双轨镜像)。不存在「不限步数」路径——0 在 loop 侧等同未声明(effectiveMax 取 maxIterations 兜底)。 */
57
+ export declare function resolveStepBudget(strategy: BehaviorStrategy | undefined): number;
58
+ /** 解析多步推理模式(内核已消费):非法值归位 'auto'(白名单引用 strategyKeys.MULTI_STEP_REASONINGS)——auto=Provider 决定 / manual=强制快速回答 */
59
+ export declare function resolveMultiStepReasoning(strategy: BehaviorStrategy | undefined): MultiStepReasoning;
60
+ /**
61
+ * 解析工具只读模式:非法值归位 'full'
62
+ *
63
+ * 控制工具操作权限范围:
64
+ * - 'full' → 完整权限(默认)
65
+ * - 'readonly' → 仅允许只读工具
66
+ *
67
+ * @param strategy 合并后的行为策略
68
+ * @returns 合法的工具模式
69
+ */
70
+ export declare function resolveToolReadonly(strategy: BehaviorStrategy | undefined): ToolReadonly;
71
+ /**
72
+ * L2 运行时策略默认值(loop 构造初始态)
73
+ *
74
+ * 由 `resolveL2Strategy(undefined)` 单一推导(SSOT):不再手动复述各 resolve* 的回退默认值,
75
+ * 避免"回退规则改了、此处疏漏不同步"的二次写入点。真正每轮生效值来自 resolveL2Strategy,
76
+ * 本常量仅作 loop 构造期的惰性初始值(单一初值入口,免逐字段初始化魔数)。
77
+ */
78
+ export declare const DEFAULT_L2_STRATEGY: L2RuntimeStrategy;
79
+ /**
80
+ * 解析 L2 运行时策略(Agent 层单一装配入口,免逐项 setXxx)
81
+ *
82
+ * 聚合现有各 resolveXxx(工具模式→toolCallsBlocked、工具步数、错误处理、Provider 路由、
83
+ * Token/步数预算、多步推理、主动提问上限、工具只读)+ reflect.selfReview;
84
+ * 非法值经各 resolve* 归位内核默认;selfReview 归一为布尔数字「0=关闭 / 正整数 >0 归一为 1」。
85
+ *
86
+ * @param strategy 合并后的行为策略(角色包声明,可为空)
87
+ * @returns 注入 AgentLoop 的单一运行时策略对象
88
+ */
89
+ export declare function resolveL2Strategy(strategy: BehaviorStrategy | undefined): L2RuntimeStrategy;
90
+ /**
91
+ * 合并行为策略:角色包声明值覆盖默认值
92
+ *
93
+ * @param base 基础策略(通常传入 DEFAULT_BEHAVIOR_STRATEGY)
94
+ * @param override 角色包声明的覆盖值,未配置的维度保持默认值不变
95
+ * @returns 合并后的完整策略
96
+ */
97
+ export declare function mergeStrategy(base: BehaviorStrategy, override: Partial<BehaviorStrategy> | undefined): BehaviorStrategy;
98
+ /**
99
+ * 将 RolePack 解析为 RolePackAssembly
100
+ *
101
+ * 将原始角色包解析为含完整策略的装载结果,供装配层直接使用。
102
+ * 同时根据策略中的 userFollowup/askOn/askLimit 注入主动提问指令到 persona prompt,
103
+ * 引导 LLM 使用 ask_user 内置工具提问(答案以 tool result 回填)。
104
+ *
105
+ * @param pack 原始角色包
106
+ * @returns 含完整策略的装载结果
107
+ */
108
+ export declare function assembleRolePack(pack: RolePack): RolePackAssembly;
109
+ //# sourceMappingURL=strategyResolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strategyResolver.d.ts","sourceRoot":"","sources":["../../src/role-pack/strategyResolver.ts"],"names":[],"mappings":"AAAA;;GAEG;AAsBH,OAAO,KAAK,EACV,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,gBAAgB,EAEhB,OAAO,EACP,iBAAiB,EAClB,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAc5D;;;GAGG;AACH,eAAO,MAAM,yBAAyB,EAAE,gBAkC9B,CAAC;AAMX;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,eAAe,EAAE,eAAe,GAAG,IAAI,EACvC,QAAQ,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GACnC,gBAAgB,CAIlB;AAkBD;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAO9F;AAED,sEAAsE;AACtE,wBAAgB,eAAe,CAAC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,GAAG,QAAQ,CAEhF;AAED,mEAAmE;AACnE,wBAAgB,cAAc,CAAC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,GAAG,OAAO,CAE9E;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,GAAG,MAAM,CASnF;AAED,iHAAiH;AACjH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,GAAG,aAAa,CAE1F;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,GAAG,eAAe,CAE9F;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,GAAG,MAAM,CAS9E;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,GAAG,MAAM,CAOlF;AAED;oGACoG;AACpG,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,GAAG,MAAM,CAOhF;AAED,+GAA+G;AAC/G,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,GACrC,kBAAkB,CAEpB;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,GAAG,YAAY,CAExF;AAMD;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,EAAE,iBAAgD,CAAC;AAEnF;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,GAAG,iBAAiB,CAqB3F;AAMD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,gBAAgB,EACtB,QAAQ,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,SAAS,GAC9C,gBAAgB,CASlB;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,GAAG,gBAAgB,CAyDjE"}