@ariaflowagents/core 0.7.1 → 0.9.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 (338) hide show
  1. package/README.md +90 -1
  2. package/dist/agents/Agent.d.ts +188 -9
  3. package/dist/agents/Agent.d.ts.map +1 -1
  4. package/dist/agents/Agent.js +246 -24
  5. package/dist/agents/Agent.js.map +1 -1
  6. package/dist/agents/CompositeAgent.d.ts +4 -3
  7. package/dist/agents/CompositeAgent.d.ts.map +1 -1
  8. package/dist/agents/CompositeAgent.js +19 -9
  9. package/dist/agents/CompositeAgent.js.map +1 -1
  10. package/dist/agents/FlowAgent.d.ts +3 -2
  11. package/dist/agents/FlowAgent.d.ts.map +1 -1
  12. package/dist/agents/FlowAgent.js +16 -6
  13. package/dist/agents/FlowAgent.js.map +1 -1
  14. package/dist/agents/TriageAgent.d.ts +8 -2
  15. package/dist/agents/TriageAgent.d.ts.map +1 -1
  16. package/dist/agents/TriageAgent.js +39 -6
  17. package/dist/agents/TriageAgent.js.map +1 -1
  18. package/dist/agents/index.d.ts +1 -1
  19. package/dist/agents/index.d.ts.map +1 -1
  20. package/dist/agents/index.js +0 -1
  21. package/dist/agents/index.js.map +1 -1
  22. package/dist/capabilities/AutoRetrieveCapability.d.ts +30 -0
  23. package/dist/capabilities/AutoRetrieveCapability.d.ts.map +1 -0
  24. package/dist/capabilities/AutoRetrieveCapability.js +36 -0
  25. package/dist/capabilities/AutoRetrieveCapability.js.map +1 -0
  26. package/dist/capabilities/ExtractionCapability.d.ts +25 -0
  27. package/dist/capabilities/ExtractionCapability.d.ts.map +1 -0
  28. package/dist/capabilities/ExtractionCapability.js +74 -0
  29. package/dist/capabilities/ExtractionCapability.js.map +1 -0
  30. package/dist/capabilities/FlowCapability.d.ts +81 -0
  31. package/dist/capabilities/FlowCapability.d.ts.map +1 -0
  32. package/dist/capabilities/FlowCapability.js +482 -0
  33. package/dist/capabilities/FlowCapability.js.map +1 -0
  34. package/dist/capabilities/GuardrailCapability.d.ts +30 -0
  35. package/dist/capabilities/GuardrailCapability.d.ts.map +1 -0
  36. package/dist/capabilities/GuardrailCapability.js +38 -0
  37. package/dist/capabilities/GuardrailCapability.js.map +1 -0
  38. package/dist/capabilities/HandoffCapability.d.ts +19 -0
  39. package/dist/capabilities/HandoffCapability.d.ts.map +1 -0
  40. package/dist/capabilities/HandoffCapability.js +58 -0
  41. package/dist/capabilities/HandoffCapability.js.map +1 -0
  42. package/dist/capabilities/LivePromptAssembler.d.ts +108 -0
  43. package/dist/capabilities/LivePromptAssembler.d.ts.map +1 -0
  44. package/dist/capabilities/LivePromptAssembler.js +157 -0
  45. package/dist/capabilities/LivePromptAssembler.js.map +1 -0
  46. package/dist/capabilities/TriageCapability.d.ts +16 -0
  47. package/dist/capabilities/TriageCapability.d.ts.map +1 -0
  48. package/dist/capabilities/TriageCapability.js +61 -0
  49. package/dist/capabilities/TriageCapability.js.map +1 -0
  50. package/dist/capabilities/adapters/ai-sdk.d.ts +14 -0
  51. package/dist/capabilities/adapters/ai-sdk.d.ts.map +1 -0
  52. package/dist/capabilities/adapters/ai-sdk.js +29 -0
  53. package/dist/capabilities/adapters/ai-sdk.js.map +1 -0
  54. package/dist/capabilities/adapters/gemini.d.ts +15 -0
  55. package/dist/capabilities/adapters/gemini.d.ts.map +1 -0
  56. package/dist/capabilities/adapters/gemini.js +40 -0
  57. package/dist/capabilities/adapters/gemini.js.map +1 -0
  58. package/dist/capabilities/index.d.ts +154 -0
  59. package/dist/capabilities/index.d.ts.map +1 -0
  60. package/dist/capabilities/index.js +128 -0
  61. package/dist/capabilities/index.js.map +1 -0
  62. package/dist/eval/EvalRunner.d.ts +12 -0
  63. package/dist/eval/EvalRunner.d.ts.map +1 -0
  64. package/dist/eval/EvalRunner.js +64 -0
  65. package/dist/eval/EvalRunner.js.map +1 -0
  66. package/dist/eval/scoring.d.ts +15 -0
  67. package/dist/eval/scoring.d.ts.map +1 -0
  68. package/dist/eval/scoring.js +152 -0
  69. package/dist/eval/scoring.js.map +1 -0
  70. package/dist/eval/types.d.ts +59 -0
  71. package/dist/eval/types.d.ts.map +1 -0
  72. package/dist/eval/types.js +2 -0
  73. package/dist/eval/types.js.map +1 -0
  74. package/dist/flows/FlowGraph.d.ts +3 -1
  75. package/dist/flows/FlowGraph.d.ts.map +1 -1
  76. package/dist/flows/FlowGraph.js +5 -0
  77. package/dist/flows/FlowGraph.js.map +1 -1
  78. package/dist/flows/FlowManager.d.ts +68 -1
  79. package/dist/flows/FlowManager.d.ts.map +1 -1
  80. package/dist/flows/FlowManager.js +499 -36
  81. package/dist/flows/FlowManager.js.map +1 -1
  82. package/dist/flows/extraction.d.ts +16 -1
  83. package/dist/flows/extraction.d.ts.map +1 -1
  84. package/dist/flows/extraction.js +34 -0
  85. package/dist/flows/extraction.js.map +1 -1
  86. package/dist/flows/index.d.ts +2 -0
  87. package/dist/flows/index.d.ts.map +1 -1
  88. package/dist/flows/index.js +1 -0
  89. package/dist/flows/index.js.map +1 -1
  90. package/dist/flows/validation.d.ts +1 -1
  91. package/dist/flows/validation.d.ts.map +1 -1
  92. package/dist/flows/validation.js +13 -1
  93. package/dist/flows/validation.js.map +1 -1
  94. package/dist/foundation/AgentDefinition.d.ts +18 -0
  95. package/dist/foundation/AgentDefinition.d.ts.map +1 -0
  96. package/dist/foundation/AgentDefinition.js +2 -0
  97. package/dist/foundation/AgentDefinition.js.map +1 -0
  98. package/dist/foundation/AgentStateController.d.ts +26 -0
  99. package/dist/foundation/AgentStateController.d.ts.map +1 -0
  100. package/dist/foundation/AgentStateController.js +2 -0
  101. package/dist/foundation/AgentStateController.js.map +1 -0
  102. package/dist/foundation/ConversationEventLog.d.ts +72 -0
  103. package/dist/foundation/ConversationEventLog.d.ts.map +1 -0
  104. package/dist/foundation/ConversationEventLog.js +2 -0
  105. package/dist/foundation/ConversationEventLog.js.map +1 -0
  106. package/dist/foundation/ConversationState.d.ts +31 -0
  107. package/dist/foundation/ConversationState.d.ts.map +1 -0
  108. package/dist/foundation/ConversationState.js +2 -0
  109. package/dist/foundation/ConversationState.js.map +1 -0
  110. package/dist/foundation/DefaultAgentStateController.d.ts +24 -0
  111. package/dist/foundation/DefaultAgentStateController.d.ts.map +1 -0
  112. package/dist/foundation/DefaultAgentStateController.js +49 -0
  113. package/dist/foundation/DefaultAgentStateController.js.map +1 -0
  114. package/dist/foundation/DefaultConversationEventLog.d.ts +28 -0
  115. package/dist/foundation/DefaultConversationEventLog.d.ts.map +1 -0
  116. package/dist/foundation/DefaultConversationEventLog.js +195 -0
  117. package/dist/foundation/DefaultConversationEventLog.js.map +1 -0
  118. package/dist/foundation/DefaultConversationState.d.ts +34 -0
  119. package/dist/foundation/DefaultConversationState.d.ts.map +1 -0
  120. package/dist/foundation/DefaultConversationState.js +100 -0
  121. package/dist/foundation/DefaultConversationState.js.map +1 -0
  122. package/dist/foundation/DefaultToolExecutor.d.ts +58 -0
  123. package/dist/foundation/DefaultToolExecutor.d.ts.map +1 -0
  124. package/dist/foundation/DefaultToolExecutor.js +128 -0
  125. package/dist/foundation/DefaultToolExecutor.js.map +1 -0
  126. package/dist/foundation/ToolExecutor.d.ts +44 -0
  127. package/dist/foundation/ToolExecutor.d.ts.map +1 -0
  128. package/dist/foundation/ToolExecutor.js +2 -0
  129. package/dist/foundation/ToolExecutor.js.map +1 -0
  130. package/dist/foundation/createFoundation.d.ts +33 -0
  131. package/dist/foundation/createFoundation.d.ts.map +1 -0
  132. package/dist/foundation/createFoundation.js +34 -0
  133. package/dist/foundation/createFoundation.js.map +1 -0
  134. package/dist/foundation/index.d.ts +15 -0
  135. package/dist/foundation/index.d.ts.map +1 -0
  136. package/dist/foundation/index.js +8 -0
  137. package/dist/foundation/index.js.map +1 -0
  138. package/dist/hooks/HookRunner.d.ts +5 -1
  139. package/dist/hooks/HookRunner.d.ts.map +1 -1
  140. package/dist/hooks/HookRunner.js +7 -0
  141. package/dist/hooks/HookRunner.js.map +1 -1
  142. package/dist/hooks/builtin/metrics.d.ts.map +1 -1
  143. package/dist/hooks/builtin/metrics.js +12 -0
  144. package/dist/hooks/builtin/metrics.js.map +1 -1
  145. package/dist/hooks/builtin/observability.d.ts +21 -0
  146. package/dist/hooks/builtin/observability.d.ts.map +1 -0
  147. package/dist/hooks/builtin/observability.js +535 -0
  148. package/dist/hooks/builtin/observability.js.map +1 -0
  149. package/dist/index.d.ts +24 -3
  150. package/dist/index.d.ts.map +1 -1
  151. package/dist/index.js +16 -2
  152. package/dist/index.js.map +1 -1
  153. package/dist/memory/MemoryService.d.ts +40 -0
  154. package/dist/memory/MemoryService.d.ts.map +1 -0
  155. package/dist/memory/MemoryService.js +2 -0
  156. package/dist/memory/MemoryService.js.map +1 -0
  157. package/dist/memory/index.d.ts +5 -0
  158. package/dist/memory/index.d.ts.map +1 -0
  159. package/dist/memory/index.js +3 -0
  160. package/dist/memory/index.js.map +1 -0
  161. package/dist/memory/preloadMemory.d.ts +17 -0
  162. package/dist/memory/preloadMemory.d.ts.map +1 -0
  163. package/dist/memory/preloadMemory.js +62 -0
  164. package/dist/memory/preloadMemory.js.map +1 -0
  165. package/dist/memory/stores/InMemoryMemoryService.d.ts +20 -0
  166. package/dist/memory/stores/InMemoryMemoryService.d.ts.map +1 -0
  167. package/dist/memory/stores/InMemoryMemoryService.js +92 -0
  168. package/dist/memory/stores/InMemoryMemoryService.js.map +1 -0
  169. package/dist/memory/types.d.ts +49 -0
  170. package/dist/memory/types.d.ts.map +1 -0
  171. package/dist/memory/types.js +8 -0
  172. package/dist/memory/types.js.map +1 -0
  173. package/dist/orchestration/DefaultOrchestrationAuthority.d.ts +91 -0
  174. package/dist/orchestration/DefaultOrchestrationAuthority.d.ts.map +1 -0
  175. package/dist/orchestration/DefaultOrchestrationAuthority.js +786 -0
  176. package/dist/orchestration/DefaultOrchestrationAuthority.js.map +1 -0
  177. package/dist/orchestration/OrchestrationAuthority.d.ts +119 -0
  178. package/dist/orchestration/OrchestrationAuthority.d.ts.map +1 -0
  179. package/dist/orchestration/OrchestrationAuthority.js +2 -0
  180. package/dist/orchestration/OrchestrationAuthority.js.map +1 -0
  181. package/dist/orchestration/RealtimeExtractionRunner.d.ts +25 -0
  182. package/dist/orchestration/RealtimeExtractionRunner.d.ts.map +1 -0
  183. package/dist/orchestration/RealtimeExtractionRunner.js +62 -0
  184. package/dist/orchestration/RealtimeExtractionRunner.js.map +1 -0
  185. package/dist/orchestration/index.d.ts +5 -0
  186. package/dist/orchestration/index.d.ts.map +1 -0
  187. package/dist/orchestration/index.js +4 -0
  188. package/dist/orchestration/index.js.map +1 -0
  189. package/dist/orchestration/types.d.ts +134 -0
  190. package/dist/orchestration/types.d.ts.map +1 -0
  191. package/dist/orchestration/types.js +2 -0
  192. package/dist/orchestration/types.js.map +1 -0
  193. package/dist/prompts/AgentPrompt.d.ts +110 -0
  194. package/dist/prompts/AgentPrompt.d.ts.map +1 -0
  195. package/dist/prompts/AgentPrompt.js +373 -0
  196. package/dist/prompts/AgentPrompt.js.map +1 -0
  197. package/dist/prompts/PromptAssembly.d.ts +119 -0
  198. package/dist/prompts/PromptAssembly.d.ts.map +1 -0
  199. package/dist/prompts/PromptAssembly.js +150 -0
  200. package/dist/prompts/PromptAssembly.js.map +1 -0
  201. package/dist/prompts/PromptBuilder.d.ts +22 -3
  202. package/dist/prompts/PromptBuilder.d.ts.map +1 -1
  203. package/dist/prompts/PromptBuilder.js +242 -13
  204. package/dist/prompts/PromptBuilder.js.map +1 -1
  205. package/dist/prompts/PromptRenderer.d.ts +43 -0
  206. package/dist/prompts/PromptRenderer.d.ts.map +1 -0
  207. package/dist/prompts/PromptRenderer.js +114 -0
  208. package/dist/prompts/PromptRenderer.js.map +1 -0
  209. package/dist/prompts/brandVoice.d.ts +10 -0
  210. package/dist/prompts/brandVoice.d.ts.map +1 -0
  211. package/dist/prompts/brandVoice.js +87 -0
  212. package/dist/prompts/brandVoice.js.map +1 -0
  213. package/dist/prompts/index.d.ts +11 -4
  214. package/dist/prompts/index.d.ts.map +1 -1
  215. package/dist/prompts/index.js +7 -2
  216. package/dist/prompts/index.js.map +1 -1
  217. package/dist/prompts/security.d.ts +5 -0
  218. package/dist/prompts/security.d.ts.map +1 -0
  219. package/dist/prompts/security.js +52 -0
  220. package/dist/prompts/security.js.map +1 -0
  221. package/dist/prompts/types.d.ts +65 -1
  222. package/dist/prompts/types.d.ts.map +1 -1
  223. package/dist/prompts/types.js +26 -0
  224. package/dist/prompts/types.js.map +1 -1
  225. package/dist/realtime/RealtimeAudioClient.d.ts +105 -0
  226. package/dist/realtime/RealtimeAudioClient.d.ts.map +1 -0
  227. package/dist/realtime/RealtimeAudioClient.js +15 -0
  228. package/dist/realtime/RealtimeAudioClient.js.map +1 -0
  229. package/dist/realtime/RealtimeRuntime.d.ts +136 -0
  230. package/dist/realtime/RealtimeRuntime.d.ts.map +1 -0
  231. package/dist/realtime/RealtimeRuntime.js +270 -0
  232. package/dist/realtime/RealtimeRuntime.js.map +1 -0
  233. package/dist/realtime/index.d.ts +4 -0
  234. package/dist/realtime/index.d.ts.map +1 -0
  235. package/dist/realtime/index.js +2 -0
  236. package/dist/realtime/index.js.map +1 -0
  237. package/dist/runtime/ContextBudget.d.ts +57 -0
  238. package/dist/runtime/ContextBudget.d.ts.map +1 -0
  239. package/dist/runtime/ContextBudget.js +103 -0
  240. package/dist/runtime/ContextBudget.js.map +1 -0
  241. package/dist/runtime/ContextManager.d.ts +8 -5
  242. package/dist/runtime/ContextManager.d.ts.map +1 -1
  243. package/dist/runtime/ContextManager.js +47 -14
  244. package/dist/runtime/ContextManager.js.map +1 -1
  245. package/dist/runtime/ExtractionEngine.d.ts +2 -1
  246. package/dist/runtime/ExtractionEngine.d.ts.map +1 -1
  247. package/dist/runtime/ExtractionEngine.js +11 -0
  248. package/dist/runtime/ExtractionEngine.js.map +1 -1
  249. package/dist/runtime/FlowExecutor.d.ts +22 -15
  250. package/dist/runtime/FlowExecutor.d.ts.map +1 -1
  251. package/dist/runtime/FlowExecutor.js +102 -149
  252. package/dist/runtime/FlowExecutor.js.map +1 -1
  253. package/dist/runtime/Runtime.d.ts +53 -78
  254. package/dist/runtime/Runtime.d.ts.map +1 -1
  255. package/dist/runtime/Runtime.js +272 -1406
  256. package/dist/runtime/Runtime.js.map +1 -1
  257. package/dist/runtime/SessionCache.d.ts +16 -0
  258. package/dist/runtime/SessionCache.d.ts.map +1 -0
  259. package/dist/runtime/SessionCache.js +49 -0
  260. package/dist/runtime/SessionCache.js.map +1 -0
  261. package/dist/runtime/SessionMutex.d.ts +37 -0
  262. package/dist/runtime/SessionMutex.d.ts.map +1 -0
  263. package/dist/runtime/SessionMutex.js +59 -0
  264. package/dist/runtime/SessionMutex.js.map +1 -0
  265. package/dist/runtime/StreamEmitter.d.ts +34 -0
  266. package/dist/runtime/StreamEmitter.d.ts.map +1 -0
  267. package/dist/runtime/StreamEmitter.js +91 -0
  268. package/dist/runtime/StreamEmitter.js.map +1 -0
  269. package/dist/runtime/handoffFilters.d.ts +60 -0
  270. package/dist/runtime/handoffFilters.d.ts.map +1 -0
  271. package/dist/runtime/handoffFilters.js +95 -0
  272. package/dist/runtime/handoffFilters.js.map +1 -0
  273. package/dist/runtime/pipeline/AgentExecuteStage.d.ts +22 -0
  274. package/dist/runtime/pipeline/AgentExecuteStage.d.ts.map +1 -0
  275. package/dist/runtime/pipeline/AgentExecuteStage.js +958 -0
  276. package/dist/runtime/pipeline/AgentExecuteStage.js.map +1 -0
  277. package/dist/runtime/pipeline/ContextAssembleStage.d.ts +26 -0
  278. package/dist/runtime/pipeline/ContextAssembleStage.d.ts.map +1 -0
  279. package/dist/runtime/pipeline/ContextAssembleStage.js +253 -0
  280. package/dist/runtime/pipeline/ContextAssembleStage.js.map +1 -0
  281. package/dist/runtime/pipeline/ContextGatherStage.d.ts +21 -0
  282. package/dist/runtime/pipeline/ContextGatherStage.d.ts.map +1 -0
  283. package/dist/runtime/pipeline/ContextGatherStage.js +161 -0
  284. package/dist/runtime/pipeline/ContextGatherStage.js.map +1 -0
  285. package/dist/runtime/pipeline/IntakeStage.d.ts +25 -0
  286. package/dist/runtime/pipeline/IntakeStage.d.ts.map +1 -0
  287. package/dist/runtime/pipeline/IntakeStage.js +126 -0
  288. package/dist/runtime/pipeline/IntakeStage.js.map +1 -0
  289. package/dist/runtime/pipeline/PostStreamStage.d.ts +26 -0
  290. package/dist/runtime/pipeline/PostStreamStage.d.ts.map +1 -0
  291. package/dist/runtime/pipeline/PostStreamStage.js +129 -0
  292. package/dist/runtime/pipeline/PostStreamStage.js.map +1 -0
  293. package/dist/runtime/pipeline/TurnPipeline.d.ts +54 -0
  294. package/dist/runtime/pipeline/TurnPipeline.d.ts.map +1 -0
  295. package/dist/runtime/pipeline/TurnPipeline.js +15 -0
  296. package/dist/runtime/pipeline/TurnPipeline.js.map +1 -0
  297. package/dist/runtime/pipeline/TurnServices.d.ts +48 -0
  298. package/dist/runtime/pipeline/TurnServices.d.ts.map +1 -0
  299. package/dist/runtime/pipeline/TurnServices.js +2 -0
  300. package/dist/runtime/pipeline/TurnServices.js.map +1 -0
  301. package/dist/runtime/pipeline/agentTypeGuards.d.ts +4 -0
  302. package/dist/runtime/pipeline/agentTypeGuards.d.ts.map +1 -0
  303. package/dist/runtime/pipeline/agentTypeGuards.js +7 -0
  304. package/dist/runtime/pipeline/agentTypeGuards.js.map +1 -0
  305. package/dist/runtime/pipeline/index.d.ts +11 -0
  306. package/dist/runtime/pipeline/index.d.ts.map +1 -0
  307. package/dist/runtime/pipeline/index.js +13 -0
  308. package/dist/runtime/pipeline/index.js.map +1 -0
  309. package/dist/runtime/pipeline/outputProcessing.d.ts +23 -0
  310. package/dist/runtime/pipeline/outputProcessing.d.ts.map +1 -0
  311. package/dist/runtime/pipeline/outputProcessing.js +63 -0
  312. package/dist/runtime/pipeline/outputProcessing.js.map +1 -0
  313. package/dist/runtime/pipeline/sessionUtils.d.ts +12 -0
  314. package/dist/runtime/pipeline/sessionUtils.d.ts.map +1 -0
  315. package/dist/runtime/pipeline/sessionUtils.js +73 -0
  316. package/dist/runtime/pipeline/sessionUtils.js.map +1 -0
  317. package/dist/tools/Tool.d.ts +7 -0
  318. package/dist/tools/Tool.d.ts.map +1 -1
  319. package/dist/tools/Tool.js +12 -3
  320. package/dist/tools/Tool.js.map +1 -1
  321. package/dist/tools/memory.d.ts +26 -0
  322. package/dist/tools/memory.d.ts.map +1 -0
  323. package/dist/tools/memory.js +51 -0
  324. package/dist/tools/memory.js.map +1 -0
  325. package/dist/types/index.d.ts +238 -9
  326. package/dist/types/index.d.ts.map +1 -1
  327. package/dist/types/index.js +4 -0
  328. package/dist/types/index.js.map +1 -1
  329. package/dist/types/telemetry.d.ts +107 -0
  330. package/dist/types/telemetry.d.ts.map +1 -1
  331. package/guides/AGENTS.md +173 -0
  332. package/guides/README.md +12 -0
  333. package/guides/TOOLS.md +93 -27
  334. package/package.json +25 -4
  335. package/dist/agents/LLMAgent.d.ts +0 -11
  336. package/dist/agents/LLMAgent.d.ts.map +0 -1
  337. package/dist/agents/LLMAgent.js +0 -31
  338. package/dist/agents/LLMAgent.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,16 +1,18 @@
1
1
  export { Agent } from './agents/Agent.js';
2
- export { LLMAgent } from './agents/LLMAgent.js';
3
2
  export { FlowAgent } from './agents/FlowAgent.js';
4
3
  export { TriageAgent } from './agents/TriageAgent.js';
5
4
  export { CompositeAgent } from './agents/CompositeAgent.js';
6
5
  export { FlowManager } from './flows/FlowManager.js';
7
6
  export { FlowGraph, FlowGraphBuilder } from './flows/FlowGraph.js';
8
7
  export { FlowNode } from './flows/FlowNode.js';
9
- export { extractStructuredFields, mergeExtractionData, computeMissingFields, buildMissingFieldsMessage, } from './flows/extraction.js';
8
+ export { isExtractionNode } from './types/index.js';
9
+ export { extractStructuredFields, mergeExtractionData, computeMissingFields, buildMissingFieldsMessage, toNullableSchema, } from './flows/extraction.js';
10
10
  export { createFlowTransition, createFlowTransitionWithNode, isFlowTransition, createFlowUpdate, isFlowUpdate, } from './flows/transitions.js';
11
11
  export { SessionManager } from './session/SessionManager.js';
12
12
  export { MemoryStore } from './session/stores/MemoryStore.js';
13
13
  export { Runtime, createRuntime } from './runtime/Runtime.js';
14
+ export { EvalRunner } from './eval/EvalRunner.js';
15
+ export { scoreTurn, aggregateScores } from './eval/scoring.js';
14
16
  export { InjectionQueue, createInjectionQueue, commonInjections, policyProfiles, getPolicyProfileInjections, } from './runtime/InjectionQueue.js';
15
17
  export { SessionWorkingMemory } from './runtime/WorkingMemory.js';
16
18
  export { createContextManager, createSummarizingContextManager, } from './runtime/ContextManager.js';
@@ -18,10 +20,12 @@ export { createTool, createToolWithFiller } from './tools/Tool.js';
18
20
  export { createHandoffTool, isHandoffResult } from './tools/handoff.js';
19
21
  export { isFinalResult } from './tools/final.js';
20
22
  export { createHttpTool } from './tools/http.js';
23
+ export { createLoadMemoryTool } from './tools/memory.js';
21
24
  export { PromptTemplateBuilder, PromptBuilder, createPromptTemplate, SUPPORT_AGENT_TEMPLATE, SALES_AGENT_TEMPLATE, TRIAGE_AGENT_TEMPLATE, createSupportAgentTemplate, DEFAULT_HANDOFF_INSTRUCTION, } from './prompts/index.js';
22
25
  export { HookRunner, createHookRunner } from './hooks/HookRunner.js';
23
26
  export { loggingHooks, createLoggingHooks } from './hooks/builtin/logging.js';
24
27
  export { createMetricsHooks, InMemoryMetrics } from './hooks/builtin/metrics.js';
28
+ export { createObservabilityHooks } from './hooks/builtin/observability.js';
25
29
  export { createHttpCallback, clearTextAccumulator } from './callbacks/httpCallback.js';
26
30
  export { createStreamCallbackAdapter, createConsoleStreamSink, createFileStreamSink, createHttpStreamSink, createFunctionStreamSink, } from './callbacks/streamCallback.js';
27
31
  export { ToolEnforcer, createToolEnforcer } from './guards/ToolEnforcer.js';
@@ -32,4 +36,14 @@ export * as EnforcementRules from './guards/rules.js';
32
36
  export { createDateParser, parseDate, parseDateRange, formatDateForSpeech, formatTimeForSpeech, dateParser, commonDateExpressions, } from './utils/index.js';
33
37
  // Prompt templates and registry
34
38
  export { getTemplate, registerTemplate, listTemplates, getAllTemplates } from './prompts/index.js';
39
+ export { InMemoryMemoryService } from './memory/index.js';
40
+ export { preloadMemoryContext } from './memory/index.js';
41
+ // Context Budget
42
+ export { DEFAULT_CONTEXT_BUDGET, computeMessageHistoryBudget, truncateToTokenBudget, formatMemoryWithBudget, estimateTokenCount, } from './runtime/ContextBudget.js';
43
+ // Handoff Filters
44
+ export { handoffFilters, removeToolHistory, keepRecentMessages, removeKeys, composeFilters, } from './runtime/handoffFilters.js';
45
+ // Foundation (shared primitives for Runtime + VoiceEngine)
46
+ export { DefaultToolExecutor, DefaultConversationState, DefaultConversationEventLog, DefaultAgentStateController, createFoundation, } from './foundation/index.js';
47
+ // ─── Capabilities ────────────────────────────────────────────────────────────
48
+ export { CapabilityHost, FlowCapability, TriageCapability, ExtractionCapability, HandoffCapability, GuardrailCapability, AutoRetrieveCapability, toGeminiDeclarations, toAISDKTools, } from './capabilities/index.js';
35
49
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAG5D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,oBAAoB,EACpB,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,oBAAoB,EACpB,4BAA4B,EAC5B,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,GACb,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,EACd,0BAA0B,GAC3B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EACL,oBAAoB,EACpB,+BAA+B,GAGhC,MAAM,6BAA6B,CAAC;AAUrC,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAExE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAUjD,OAAO,EACL,qBAAqB,EACrB,aAAa,EACb,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAGjF,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEvF,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,KAAK,cAAc,MAAM,4BAA4B,CAAC;AAC7D,cAAc,mBAAmB,CAAC;AAClC,OAAO,KAAK,gBAAgB,MAAM,mBAAmB,CAAC;AAEtD,YAAY;AACZ,OAAO,EACL,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACnB,UAAU,EACV,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAG1B,gCAAgC;AAChC,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import type { Session } from '../types/index.js';
2
+ import type { MemoryIngestionOptions, SearchMemoryRequest, SearchMemoryResponse } from './types.js';
3
+ /**
4
+ * Interface for cross-session long-term memory.
5
+ *
6
+ * MemoryService is the counterpart to SessionStore:
7
+ * - SessionStore manages per-session state (messages, workingMemory, agentStates)
8
+ * - MemoryService manages cross-session knowledge (facts, summaries, preferences)
9
+ *
10
+ * The service has two responsibilities:
11
+ * 1. Ingestion — converting session data into searchable memories
12
+ * 2. Retrieval — finding relevant memories for a given query
13
+ */
14
+ export interface MemoryService {
15
+ /**
16
+ * Ingest a session into long-term memory.
17
+ *
18
+ * Typically called when a session ends or reaches a meaningful checkpoint.
19
+ * Implementations may store raw events, extract facts via LLM, or summarize.
20
+ * A session may be ingested multiple times (implementations must handle idempotency).
21
+ *
22
+ * @param session - The session to ingest
23
+ * @param options - Optional ingestion configuration
24
+ */
25
+ addSessionToMemory(session: Session, options?: MemoryIngestionOptions): Promise<void>;
26
+ /**
27
+ * Search long-term memory for relevant context.
28
+ *
29
+ * Returns memories scoped to a specific user within an application context.
30
+ * Implementations may use keyword matching, semantic search, or hybrid approaches.
31
+ *
32
+ * @param request - Search parameters (userId, query, optional filters)
33
+ */
34
+ searchMemory(request: SearchMemoryRequest): Promise<SearchMemoryResponse>;
35
+ /**
36
+ * Delete all memories for a user. Used for GDPR compliance / data cleanup.
37
+ */
38
+ deleteMemories?(userId: string): Promise<void>;
39
+ }
40
+ //# sourceMappingURL=MemoryService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemoryService.d.ts","sourceRoot":"","sources":["../../src/memory/MemoryService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEpG;;;;;;;;;;GAUG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;;;;;;OASG;IACH,kBAAkB,CAChB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;;;OAOG;IACH,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAE1E;;OAEG;IACH,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAChD"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=MemoryService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemoryService.js","sourceRoot":"","sources":["../../src/memory/MemoryService.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ export type { MemoryService } from './MemoryService.js';
2
+ export type { MemoryEntry, SearchMemoryRequest, SearchMemoryResponse, MemoryIngestionOptions, } from './types.js';
3
+ export { InMemoryMemoryService } from './stores/InMemoryMemoryService.js';
4
+ export { preloadMemoryContext } from './preloadMemory.js';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,YAAY,EACV,WAAW,EACX,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { InMemoryMemoryService } from './stores/InMemoryMemoryService.js';
2
+ export { preloadMemoryContext } from './preloadMemory.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { Session } from '../types/index.js';
2
+ import type { MemoryService } from './MemoryService.js';
3
+ /**
4
+ * Preloads relevant memories into the system prompt before each LLM call.
5
+ *
6
+ * This is NOT a tool the LLM calls. It is a Runtime-level middleware that:
7
+ * 1. Takes the user's latest message as a search query
8
+ * 2. Searches long-term memory for relevant context
9
+ * 3. Formats matching memories as a markdown section
10
+ * 4. Truncates the output to fit within the allocated token budget
11
+ *
12
+ * The maxTokens parameter is mandatory. If the formatted output exceeds
13
+ * maxTokens, memories are dropped in lowest-relevance-first order until
14
+ * the output fits.
15
+ */
16
+ export declare function preloadMemoryContext(memoryService: MemoryService, session: Session, userInput: string, maxTokens: number): Promise<string | null>;
17
+ //# sourceMappingURL=preloadMemory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preloadMemory.d.ts","sourceRoot":"","sources":["../../src/memory/preloadMemory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAWxD;;;;;;;;;;;;GAYG;AACH,wBAAsB,oBAAoB,CACxC,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA2CxB"}
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Token estimation function. Matches the estimator used in ContextManager.ts:
3
+ * Math.ceil(text.length / 4).
4
+ */
5
+ function estimateTokenCount(text) {
6
+ if (!text)
7
+ return 0;
8
+ return Math.ceil(text.length / 4);
9
+ }
10
+ /**
11
+ * Preloads relevant memories into the system prompt before each LLM call.
12
+ *
13
+ * This is NOT a tool the LLM calls. It is a Runtime-level middleware that:
14
+ * 1. Takes the user's latest message as a search query
15
+ * 2. Searches long-term memory for relevant context
16
+ * 3. Formats matching memories as a markdown section
17
+ * 4. Truncates the output to fit within the allocated token budget
18
+ *
19
+ * The maxTokens parameter is mandatory. If the formatted output exceeds
20
+ * maxTokens, memories are dropped in lowest-relevance-first order until
21
+ * the output fits.
22
+ */
23
+ export async function preloadMemoryContext(memoryService, session, userInput, maxTokens) {
24
+ if (!session.userId)
25
+ return null;
26
+ if (maxTokens <= 0)
27
+ return null;
28
+ const result = await memoryService.searchMemory({
29
+ userId: session.userId,
30
+ query: userInput,
31
+ limit: 10,
32
+ });
33
+ if (result.memories.length === 0)
34
+ return null;
35
+ const headerLines = [
36
+ '## Context from Past Conversations',
37
+ '',
38
+ 'The following is from previous conversations with this user.',
39
+ 'Use this context to provide continuity and avoid asking for information the user has already provided.',
40
+ '',
41
+ ];
42
+ const header = headerLines.join('\n');
43
+ let estimatedTokens = estimateTokenCount(header);
44
+ const includedLines = [];
45
+ for (const m of result.memories) {
46
+ const author = m.author ? `${m.author}: ` : '';
47
+ const date = m.createdAt
48
+ ? `[${m.createdAt.toISOString().split('T')[0]}] `
49
+ : '';
50
+ const line = `${date}${author}${m.content}`;
51
+ const lineTokens = estimateTokenCount(line);
52
+ if (estimatedTokens + lineTokens > maxTokens) {
53
+ break;
54
+ }
55
+ includedLines.push(line);
56
+ estimatedTokens += lineTokens;
57
+ }
58
+ if (includedLines.length === 0)
59
+ return null;
60
+ return header + includedLines.join('\n');
61
+ }
62
+ //# sourceMappingURL=preloadMemory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preloadMemory.js","sourceRoot":"","sources":["../../src/memory/preloadMemory.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,SAAS,kBAAkB,CAAC,IAAY;IACtC,IAAI,CAAC,IAAI;QAAE,OAAO,CAAC,CAAC;IACpB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,aAA4B,EAC5B,OAAgB,EAChB,SAAiB,EACjB,SAAiB;IAEjB,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACjC,IAAI,SAAS,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAEhC,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,YAAY,CAAC;QAC9C,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,EAAE;KACV,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE9C,MAAM,WAAW,GAAG;QAClB,oCAAoC;QACpC,EAAE;QACF,8DAA8D;QAC9D,wGAAwG;QACxG,EAAE;KACH,CAAC;IACF,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,eAAe,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAEjD,MAAM,aAAa,GAAa,EAAE,CAAC;IAEnC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,GAAG,CAAC,CAAC,SAAS;YACtB,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;YACjD,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,IAAI,GAAG,GAAG,IAAI,GAAG,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;QAC5C,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAE5C,IAAI,eAAe,GAAG,UAAU,GAAG,SAAS,EAAE,CAAC;YAC7C,MAAM;QACR,CAAC;QAED,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,eAAe,IAAI,UAAU,CAAC;IAChC,CAAC;IAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE5C,OAAO,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3C,CAAC"}
@@ -0,0 +1,20 @@
1
+ import type { Session } from '../../types/index.js';
2
+ import type { MemoryService } from '../MemoryService.js';
3
+ import type { MemoryIngestionOptions, SearchMemoryRequest, SearchMemoryResponse } from '../types.js';
4
+ /**
5
+ * In-memory implementation of MemoryService for development and testing.
6
+ *
7
+ * Uses keyword-based search with term overlap scoring.
8
+ * All data is stored in-process and lost on restart.
9
+ */
10
+ export declare class InMemoryMemoryService implements MemoryService {
11
+ /**
12
+ * In-memory storage indexed by userId.
13
+ * Each user has a map of sessionId → MemoryEntry[].
14
+ */
15
+ private memories;
16
+ addSessionToMemory(session: Session, options?: MemoryIngestionOptions): Promise<void>;
17
+ searchMemory(request: SearchMemoryRequest): Promise<SearchMemoryResponse>;
18
+ deleteMemories(userId: string): Promise<void>;
19
+ }
20
+ //# sourceMappingURL=InMemoryMemoryService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InMemoryMemoryService.d.ts","sourceRoot":"","sources":["../../../src/memory/stores/InMemoryMemoryService.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAEV,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,aAAa,CAAC;AA6BrB;;;;;GAKG;AACH,qBAAa,qBAAsB,YAAW,aAAa;IACzD;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAsD;IAEhE,kBAAkB,CACtB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,OAAO,CAAC,IAAI,CAAC;IA2BV,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA2BzE,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGpD"}
@@ -0,0 +1,92 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ /**
3
+ * Extracts plain text from a message content field.
4
+ * Handles both string content and array content parts.
5
+ */
6
+ function extractTextFromMessage(message) {
7
+ if (typeof message.content === 'string')
8
+ return message.content;
9
+ if (Array.isArray(message.content)) {
10
+ return message.content
11
+ .filter((part) => part.type === 'text')
12
+ .map((part) => part.text)
13
+ .join('\n');
14
+ }
15
+ return '';
16
+ }
17
+ /**
18
+ * Extracts lowercase words from text as a Set for fast lookup.
19
+ */
20
+ function extractWordsLower(text) {
21
+ return new Set(text
22
+ .toLowerCase()
23
+ .split(/\s+/)
24
+ .filter(Boolean));
25
+ }
26
+ /**
27
+ * In-memory implementation of MemoryService for development and testing.
28
+ *
29
+ * Uses keyword-based search with term overlap scoring.
30
+ * All data is stored in-process and lost on restart.
31
+ */
32
+ export class InMemoryMemoryService {
33
+ /**
34
+ * In-memory storage indexed by userId.
35
+ * Each user has a map of sessionId → MemoryEntry[].
36
+ */
37
+ memories = new Map();
38
+ async addSessionToMemory(session, options) {
39
+ if (!session.userId)
40
+ return;
41
+ const entries = [];
42
+ for (const message of session.messages) {
43
+ if (message.role !== 'user' && message.role !== 'assistant')
44
+ continue;
45
+ const text = extractTextFromMessage(message);
46
+ if (!text.trim())
47
+ continue;
48
+ entries.push({
49
+ id: randomUUID(),
50
+ sessionId: session.id,
51
+ userId: session.userId,
52
+ content: text,
53
+ author: message.role === 'user' ? 'user' : 'assistant',
54
+ metadata: options?.metadata,
55
+ createdAt: new Date(),
56
+ });
57
+ }
58
+ // Idempotency: delete existing entries for this session before re-ingesting
59
+ const userMemories = this.memories.get(session.userId) ?? new Map();
60
+ userMemories.set(session.id, entries);
61
+ this.memories.set(session.userId, userMemories);
62
+ }
63
+ async searchMemory(request) {
64
+ const userMemories = this.memories.get(request.userId);
65
+ if (!userMemories)
66
+ return { memories: [] };
67
+ const queryWords = extractWordsLower(request.query);
68
+ if (queryWords.size === 0)
69
+ return { memories: [] };
70
+ const matches = [];
71
+ for (const entries of userMemories.values()) {
72
+ for (const entry of entries) {
73
+ const entryWords = extractWordsLower(entry.content);
74
+ let matchCount = 0;
75
+ for (const w of queryWords) {
76
+ if (entryWords.has(w))
77
+ matchCount++;
78
+ }
79
+ if (matchCount > 0) {
80
+ matches.push({ ...entry, score: matchCount / queryWords.size });
81
+ }
82
+ }
83
+ }
84
+ // Sort by relevance score descending
85
+ matches.sort((a, b) => (b.score ?? 0) - (a.score ?? 0));
86
+ return { memories: matches.slice(0, request.limit ?? 10) };
87
+ }
88
+ async deleteMemories(userId) {
89
+ this.memories.delete(userId);
90
+ }
91
+ }
92
+ //# sourceMappingURL=InMemoryMemoryService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InMemoryMemoryService.js","sourceRoot":"","sources":["../../../src/memory/stores/InMemoryMemoryService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Types for the cross-session long-term memory system.
3
+ *
4
+ * These types define the data structures used by MemoryService implementations
5
+ * for storing, searching, and managing cross-session knowledge.
6
+ */
7
+ export interface MemoryEntry {
8
+ /** Unique identifier for this memory */
9
+ id: string;
10
+ /** The session this memory was derived from */
11
+ sessionId: string;
12
+ /** The user this memory belongs to */
13
+ userId: string;
14
+ /** The memory content (extracted fact, summary, or raw text) */
15
+ content: string;
16
+ /** Who authored the original content: 'user' | 'assistant' | agent name */
17
+ author?: string;
18
+ /** Structured metadata for filtering */
19
+ metadata?: Record<string, unknown>;
20
+ /** When the memory was created */
21
+ createdAt: Date;
22
+ /** Relevance score (populated by search, not storage) */
23
+ score?: number;
24
+ }
25
+ export interface SearchMemoryRequest {
26
+ /** Required: whose memories to search */
27
+ userId: string;
28
+ /** The search query */
29
+ query: string;
30
+ /** Max results to return (default: 10) */
31
+ limit?: number;
32
+ /** Optional metadata filters */
33
+ filter?: Record<string, unknown>;
34
+ }
35
+ export interface SearchMemoryResponse {
36
+ memories: MemoryEntry[];
37
+ }
38
+ export interface MemoryIngestionOptions {
39
+ /** Custom metadata to attach to all memories from this session */
40
+ metadata?: Record<string, unknown>;
41
+ /**
42
+ * Ingestion strategy:
43
+ * - 'raw': Store message content as-is (default for InMemoryMemoryService)
44
+ * - 'summarize': Use LLM to summarize the session before storing
45
+ * - 'extract': Use LLM to extract individual facts/entities
46
+ */
47
+ strategy?: 'raw' | 'summarize' | 'extract';
48
+ }
49
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/memory/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,WAAW;IAC1B,wCAAwC;IACxC,EAAE,EAAE,MAAM,CAAC;IAEX,+CAA+C;IAC/C,SAAS,EAAE,MAAM,CAAC;IAElB,sCAAsC;IACtC,MAAM,EAAE,MAAM,CAAC;IAEf,gEAAgE;IAChE,OAAO,EAAE,MAAM,CAAC;IAEhB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC,kCAAkC;IAClC,SAAS,EAAE,IAAI,CAAC;IAEhB,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,yCAAyC;IACzC,MAAM,EAAE,MAAM,CAAC;IAEf,uBAAuB;IACvB,KAAK,EAAE,MAAM,CAAC;IAEd,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,WAAW,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,sBAAsB;IACrC,kEAAkE;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,KAAK,GAAG,WAAW,GAAG,SAAS,CAAC;CAC5C"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Types for the cross-session long-term memory system.
3
+ *
4
+ * These types define the data structures used by MemoryService implementations
5
+ * for storing, searching, and managing cross-session knowledge.
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/memory/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,91 @@
1
+ import type { OrchestrationAuthority } from './OrchestrationAuthority.js';
2
+ import type { AuthoritySessionHandle, ToolExecutionOutcome, OpenSessionParams, OrchestrationAuthorityConfig } from './types.js';
3
+ import type { RealtimeSessionConfig } from '../realtime/RealtimeAudioClient.js';
4
+ import type { ToolExecutor } from '../foundation/ToolExecutor.js';
5
+ import type { ConversationState } from '../foundation/ConversationState.js';
6
+ import type { ConversationEventLog } from '../foundation/ConversationEventLog.js';
7
+ import type { AgentStateController } from '../foundation/AgentStateController.js';
8
+ import { HookRunner } from '../hooks/HookRunner.js';
9
+ /**
10
+ * Default implementation of the OrchestrationAuthority port.
11
+ *
12
+ * Composes Foundation services, HookRunner, CapabilityHost, LivePromptAssembler,
13
+ * ExtractionEngine, and MemoryService into the transport-agnostic orchestration
14
+ * sequence defined in RFC-REALTIME-RUNTIME-AUTHORITY.md.
15
+ *
16
+ * This is the "single brain" that both text Runtime and RealtimeRuntime
17
+ * delegate to for conversational semantics.
18
+ */
19
+ export declare class DefaultOrchestrationAuthority implements OrchestrationAuthority {
20
+ private readonly agents;
21
+ private readonly defaultAgentId;
22
+ private readonly hookRunner;
23
+ private readonly toolExecutor;
24
+ private readonly conversationState;
25
+ private readonly eventLog;
26
+ private readonly agentState;
27
+ private readonly extractionEngine;
28
+ private readonly promptAssembler;
29
+ private readonly memoryService;
30
+ private readonly memoryIngestion;
31
+ private readonly maxPersistRetries;
32
+ private readonly realtimeExtractionRunner?;
33
+ private readonly autoRetrieveProvider;
34
+ constructor(config: OrchestrationAuthorityConfig);
35
+ openSession(params: OpenSessionParams): Promise<AuthoritySessionHandle>;
36
+ recordUserInput(handle: AuthoritySessionHandle, text: string): Promise<void>;
37
+ recordAssistantOutput(handle: AuthoritySessionHandle, text: string): Promise<void>;
38
+ prepareRealtimeConfig(handle: AuthoritySessionHandle): Promise<RealtimeSessionConfig>;
39
+ executeToolCall(handle: AuthoritySessionHandle, call: {
40
+ id: string;
41
+ name: string;
42
+ args: unknown;
43
+ }): Promise<ToolExecutionOutcome>;
44
+ completeTurn(handle: AuthoritySessionHandle): Promise<void>;
45
+ closeSession(handle: AuthoritySessionHandle, result?: {
46
+ success: boolean;
47
+ error?: Error;
48
+ }): Promise<void>;
49
+ failSession(handle: AuthoritySessionHandle, error: Error): Promise<void>;
50
+ /** Expose foundation services for facades that need direct access. */
51
+ get foundation(): {
52
+ toolExecutor: ToolExecutor;
53
+ conversationState: ConversationState;
54
+ eventLog: ConversationEventLog;
55
+ agentState: AgentStateController;
56
+ };
57
+ /** Expose hook runner for facades that need to fire transport-specific hooks. */
58
+ get hooks(): HookRunner;
59
+ /**
60
+ * Build a CapabilityHost from agent config.
61
+ * Mirrors the logic in CapabilityCallWorker.buildHost() and
62
+ * AgentExecuteStage's host construction, unified into one place.
63
+ */
64
+ private buildCapabilityHost;
65
+ private buildOutcome;
66
+ private runExtraction;
67
+ private runRealtimeKnowledgeRefresh;
68
+ private runRealtimeExtractionRefinement;
69
+ private runMemoryIngestion;
70
+ private persistWithRetry;
71
+ private buildSessionEndMetadata;
72
+ private getInternals;
73
+ private readPersistedFlowState;
74
+ private syncFlowStateToSession;
75
+ private resolveToolArgs;
76
+ private verifyExtractionSubmission;
77
+ private buildExtractionTranscript;
78
+ private getMessageText;
79
+ private toRecord;
80
+ private getRequiredExtractionFields;
81
+ private filterExtractionArgsAgainstTranscript;
82
+ private buildToolCallRecord;
83
+ /**
84
+ * Determine whether a tool is a capability tool (flow transition, extraction)
85
+ * or a regular agent tool. Capability tools have self-contained execute()
86
+ * and bypass ToolExecutor enforcement.
87
+ */
88
+ private isCapabilityTool;
89
+ private getLastUserInput;
90
+ }
91
+ //# sourceMappingURL=DefaultOrchestrationAuthority.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultOrchestrationAuthority.d.ts","sourceRoot":"","sources":["../../src/orchestration/DefaultOrchestrationAuthority.ts"],"names":[],"mappings":"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"}