@framers/agentos 0.1.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 (601) hide show
  1. package/LICENSE +98 -0
  2. package/README.md +576 -0
  3. package/dist/api/AgentOS.d.ts +451 -0
  4. package/dist/api/AgentOS.d.ts.map +1 -0
  5. package/dist/api/AgentOS.js +1157 -0
  6. package/dist/api/AgentOS.js.map +1 -0
  7. package/dist/api/AgentOSOrchestrator.d.ts +157 -0
  8. package/dist/api/AgentOSOrchestrator.d.ts.map +1 -0
  9. package/dist/api/AgentOSOrchestrator.js +679 -0
  10. package/dist/api/AgentOSOrchestrator.js.map +1 -0
  11. package/dist/api/interfaces/IAgentOS.d.ts +138 -0
  12. package/dist/api/interfaces/IAgentOS.d.ts.map +1 -0
  13. package/dist/api/interfaces/IAgentOS.js +11 -0
  14. package/dist/api/interfaces/IAgentOS.js.map +1 -0
  15. package/dist/api/interfaces/IUnifiedAgent.d.ts +126 -0
  16. package/dist/api/interfaces/IUnifiedAgent.d.ts.map +1 -0
  17. package/dist/api/interfaces/IUnifiedAgent.js +3 -0
  18. package/dist/api/interfaces/IUnifiedAgent.js.map +1 -0
  19. package/dist/api/types/AgentOSInput.d.ts +114 -0
  20. package/dist/api/types/AgentOSInput.d.ts.map +1 -0
  21. package/dist/api/types/AgentOSInput.js +13 -0
  22. package/dist/api/types/AgentOSInput.js.map +1 -0
  23. package/dist/api/types/AgentOSResponse.d.ts +170 -0
  24. package/dist/api/types/AgentOSResponse.d.ts.map +1 -0
  25. package/dist/api/types/AgentOSResponse.js +25 -0
  26. package/dist/api/types/AgentOSResponse.js.map +1 -0
  27. package/dist/cognitive_substrate/GMI.d.ts +148 -0
  28. package/dist/cognitive_substrate/GMI.d.ts.map +1 -0
  29. package/dist/cognitive_substrate/GMI.js +1003 -0
  30. package/dist/cognitive_substrate/GMI.js.map +1 -0
  31. package/dist/cognitive_substrate/GMIManager.d.ts +98 -0
  32. package/dist/cognitive_substrate/GMIManager.d.ts.map +1 -0
  33. package/dist/cognitive_substrate/GMIManager.js +517 -0
  34. package/dist/cognitive_substrate/GMIManager.js.map +1 -0
  35. package/dist/cognitive_substrate/IGMI.d.ts +469 -0
  36. package/dist/cognitive_substrate/IGMI.d.ts.map +1 -0
  37. package/dist/cognitive_substrate/IGMI.js +111 -0
  38. package/dist/cognitive_substrate/IGMI.js.map +1 -0
  39. package/dist/cognitive_substrate/memory/IWorkingMemory.d.ts +139 -0
  40. package/dist/cognitive_substrate/memory/IWorkingMemory.d.ts.map +1 -0
  41. package/dist/cognitive_substrate/memory/IWorkingMemory.js +14 -0
  42. package/dist/cognitive_substrate/memory/IWorkingMemory.js.map +1 -0
  43. package/dist/cognitive_substrate/memory/InMemoryWorkingMemory.d.ts +143 -0
  44. package/dist/cognitive_substrate/memory/InMemoryWorkingMemory.d.ts.map +1 -0
  45. package/dist/cognitive_substrate/memory/InMemoryWorkingMemory.js +186 -0
  46. package/dist/cognitive_substrate/memory/InMemoryWorkingMemory.js.map +1 -0
  47. package/dist/cognitive_substrate/persona_overlays/PersonaOverlayManager.d.ts +33 -0
  48. package/dist/cognitive_substrate/persona_overlays/PersonaOverlayManager.d.ts.map +1 -0
  49. package/dist/cognitive_substrate/persona_overlays/PersonaOverlayManager.js +138 -0
  50. package/dist/cognitive_substrate/persona_overlays/PersonaOverlayManager.js.map +1 -0
  51. package/dist/cognitive_substrate/persona_overlays/PersonaOverlayTypes.d.ts +32 -0
  52. package/dist/cognitive_substrate/persona_overlays/PersonaOverlayTypes.d.ts.map +1 -0
  53. package/dist/cognitive_substrate/persona_overlays/PersonaOverlayTypes.js +2 -0
  54. package/dist/cognitive_substrate/persona_overlays/PersonaOverlayTypes.js.map +1 -0
  55. package/dist/cognitive_substrate/personas/IPersonaDefinition.d.ts +336 -0
  56. package/dist/cognitive_substrate/personas/IPersonaDefinition.d.ts.map +1 -0
  57. package/dist/cognitive_substrate/personas/IPersonaDefinition.js +8 -0
  58. package/dist/cognitive_substrate/personas/IPersonaDefinition.js.map +1 -0
  59. package/dist/cognitive_substrate/personas/IPersonaLoader.d.ts +78 -0
  60. package/dist/cognitive_substrate/personas/IPersonaLoader.d.ts.map +1 -0
  61. package/dist/cognitive_substrate/personas/IPersonaLoader.js +9 -0
  62. package/dist/cognitive_substrate/personas/IPersonaLoader.js.map +1 -0
  63. package/dist/cognitive_substrate/personas/PersonaLoader.d.ts +60 -0
  64. package/dist/cognitive_substrate/personas/PersonaLoader.d.ts.map +1 -0
  65. package/dist/cognitive_substrate/personas/PersonaLoader.js +138 -0
  66. package/dist/cognitive_substrate/personas/PersonaLoader.js.map +1 -0
  67. package/dist/cognitive_substrate/personas/PersonaValidation.d.ts +139 -0
  68. package/dist/cognitive_substrate/personas/PersonaValidation.d.ts.map +1 -0
  69. package/dist/cognitive_substrate/personas/PersonaValidation.js +277 -0
  70. package/dist/cognitive_substrate/personas/PersonaValidation.js.map +1 -0
  71. package/dist/cognitive_substrate/personas/definitions/atlas_systems_architect.json +29 -0
  72. package/dist/cognitive_substrate/personas/definitions/default_assistant_persona.json +346 -0
  73. package/dist/cognitive_substrate/personas/definitions/default_free_assistant.json +13 -0
  74. package/dist/cognitive_substrate/personas/definitions/index.d.ts +14 -0
  75. package/dist/cognitive_substrate/personas/definitions/index.d.ts.map +1 -0
  76. package/dist/cognitive_substrate/personas/definitions/index.js +35 -0
  77. package/dist/cognitive_substrate/personas/definitions/index.js.map +1 -0
  78. package/dist/cognitive_substrate/personas/definitions/nerf_generalist.json +11 -0
  79. package/dist/cognitive_substrate/personas/definitions/v_researcher.json +11 -0
  80. package/dist/config/AgentOSConfig.d.ts +74 -0
  81. package/dist/config/AgentOSConfig.d.ts.map +1 -0
  82. package/dist/config/AgentOSConfig.js +399 -0
  83. package/dist/config/AgentOSConfig.js.map +1 -0
  84. package/dist/config/EmbeddingManagerConfiguration.d.ts +190 -0
  85. package/dist/config/EmbeddingManagerConfiguration.d.ts.map +1 -0
  86. package/dist/config/EmbeddingManagerConfiguration.js +16 -0
  87. package/dist/config/EmbeddingManagerConfiguration.js.map +1 -0
  88. package/dist/config/MemoryLifecycleManagerConfiguration.d.ts +165 -0
  89. package/dist/config/MemoryLifecycleManagerConfiguration.d.ts.map +1 -0
  90. package/dist/config/MemoryLifecycleManagerConfiguration.js +69 -0
  91. package/dist/config/MemoryLifecycleManagerConfiguration.js.map +1 -0
  92. package/dist/config/RetrievalAugmentorConfiguration.d.ts +98 -0
  93. package/dist/config/RetrievalAugmentorConfiguration.d.ts.map +1 -0
  94. package/dist/config/RetrievalAugmentorConfiguration.js +47 -0
  95. package/dist/config/RetrievalAugmentorConfiguration.js.map +1 -0
  96. package/dist/config/ToolOrchestratorConfig.d.ts +69 -0
  97. package/dist/config/ToolOrchestratorConfig.d.ts.map +1 -0
  98. package/dist/config/ToolOrchestratorConfig.js +11 -0
  99. package/dist/config/ToolOrchestratorConfig.js.map +1 -0
  100. package/dist/config/VectorStoreConfiguration.d.ts +223 -0
  101. package/dist/config/VectorStoreConfiguration.d.ts.map +1 -0
  102. package/dist/config/VectorStoreConfiguration.js +59 -0
  103. package/dist/config/VectorStoreConfiguration.js.map +1 -0
  104. package/dist/config/extension-secrets.json +38 -0
  105. package/dist/config/extensionSecrets.d.ts +13 -0
  106. package/dist/config/extensionSecrets.d.ts.map +1 -0
  107. package/dist/config/extensionSecrets.js +24 -0
  108. package/dist/config/extensionSecrets.js.map +1 -0
  109. package/dist/core/agency/AgencyMemoryManager.d.ts +300 -0
  110. package/dist/core/agency/AgencyMemoryManager.d.ts.map +1 -0
  111. package/dist/core/agency/AgencyMemoryManager.js +657 -0
  112. package/dist/core/agency/AgencyMemoryManager.js.map +1 -0
  113. package/dist/core/agency/AgencyRegistry.d.ts +100 -0
  114. package/dist/core/agency/AgencyRegistry.d.ts.map +1 -0
  115. package/dist/core/agency/AgencyRegistry.js +209 -0
  116. package/dist/core/agency/AgencyRegistry.js.map +1 -0
  117. package/dist/core/agency/AgencyTypes.d.ts +200 -0
  118. package/dist/core/agency/AgencyTypes.d.ts.map +1 -0
  119. package/dist/core/agency/AgencyTypes.js +7 -0
  120. package/dist/core/agency/AgencyTypes.js.map +1 -0
  121. package/dist/core/agency/AgentCommunicationBus.d.ts +150 -0
  122. package/dist/core/agency/AgentCommunicationBus.d.ts.map +1 -0
  123. package/dist/core/agency/AgentCommunicationBus.js +568 -0
  124. package/dist/core/agency/AgentCommunicationBus.js.map +1 -0
  125. package/dist/core/agency/IAgentCommunicationBus.d.ts +469 -0
  126. package/dist/core/agency/IAgentCommunicationBus.d.ts.map +1 -0
  127. package/dist/core/agency/IAgentCommunicationBus.js +40 -0
  128. package/dist/core/agency/IAgentCommunicationBus.js.map +1 -0
  129. package/dist/core/agency/index.d.ts +18 -0
  130. package/dist/core/agency/index.d.ts.map +1 -0
  131. package/dist/core/agency/index.js +18 -0
  132. package/dist/core/agency/index.js.map +1 -0
  133. package/dist/core/agents/AgentCore.d.ts +385 -0
  134. package/dist/core/agents/AgentCore.d.ts.map +1 -0
  135. package/dist/core/agents/AgentCore.js +527 -0
  136. package/dist/core/agents/AgentCore.js.map +1 -0
  137. package/dist/core/agents/AgentFactory.d.ts +123 -0
  138. package/dist/core/agents/AgentFactory.d.ts.map +1 -0
  139. package/dist/core/agents/AgentFactory.js +232 -0
  140. package/dist/core/agents/AgentFactory.js.map +1 -0
  141. package/dist/core/agents/AgentPoolAgent.d.ts +244 -0
  142. package/dist/core/agents/AgentPoolAgent.d.ts.map +1 -0
  143. package/dist/core/agents/AgentPoolAgent.js +697 -0
  144. package/dist/core/agents/AgentPoolAgent.js.map +1 -0
  145. package/dist/core/agents/AgentPoolConfig.d.ts +191 -0
  146. package/dist/core/agents/AgentPoolConfig.d.ts.map +1 -0
  147. package/dist/core/agents/AgentPoolConfig.js +58 -0
  148. package/dist/core/agents/AgentPoolConfig.js.map +1 -0
  149. package/dist/core/agents/IAgent.d.ts +226 -0
  150. package/dist/core/agents/IAgent.d.ts.map +1 -0
  151. package/dist/core/agents/IAgent.js +14 -0
  152. package/dist/core/agents/IAgent.js.map +1 -0
  153. package/dist/core/agents/IAgentFactory.d.ts +137 -0
  154. package/dist/core/agents/IAgentFactory.d.ts.map +1 -0
  155. package/dist/core/agents/IAgentFactory.js +13 -0
  156. package/dist/core/agents/IAgentFactory.js.map +1 -0
  157. package/dist/core/agents/tools/Tool.d.ts +17 -0
  158. package/dist/core/agents/tools/Tool.d.ts.map +1 -0
  159. package/dist/core/agents/tools/Tool.js +8 -0
  160. package/dist/core/agents/tools/Tool.js.map +1 -0
  161. package/dist/core/ai_utilities/HybridUtilityAI.d.ts +1 -0
  162. package/dist/core/ai_utilities/HybridUtilityAI.d.ts.map +1 -0
  163. package/dist/core/ai_utilities/HybridUtilityAI.js +2 -0
  164. package/dist/core/ai_utilities/HybridUtilityAI.js.map +1 -0
  165. package/dist/core/ai_utilities/IUtilityAI.d.ts +212 -0
  166. package/dist/core/ai_utilities/IUtilityAI.d.ts.map +1 -0
  167. package/dist/core/ai_utilities/IUtilityAI.js +11 -0
  168. package/dist/core/ai_utilities/IUtilityAI.js.map +1 -0
  169. package/dist/core/ai_utilities/LLMUtilityAI.d.ts +94 -0
  170. package/dist/core/ai_utilities/LLMUtilityAI.d.ts.map +1 -0
  171. package/dist/core/ai_utilities/LLMUtilityAI.js +434 -0
  172. package/dist/core/ai_utilities/LLMUtilityAI.js.map +1 -0
  173. package/dist/core/ai_utilities/StatisticalUtilityAI.d.ts +102 -0
  174. package/dist/core/ai_utilities/StatisticalUtilityAI.d.ts.map +1 -0
  175. package/dist/core/ai_utilities/StatisticalUtilityAI.js +617 -0
  176. package/dist/core/ai_utilities/StatisticalUtilityAI.js.map +1 -0
  177. package/dist/core/conversation/ConversationContext.d.ts +259 -0
  178. package/dist/core/conversation/ConversationContext.d.ts.map +1 -0
  179. package/dist/core/conversation/ConversationContext.js +450 -0
  180. package/dist/core/conversation/ConversationContext.js.map +1 -0
  181. package/dist/core/conversation/ConversationManager.d.ts +223 -0
  182. package/dist/core/conversation/ConversationManager.d.ts.map +1 -0
  183. package/dist/core/conversation/ConversationManager.js +558 -0
  184. package/dist/core/conversation/ConversationManager.js.map +1 -0
  185. package/dist/core/conversation/ConversationMessage.d.ts +184 -0
  186. package/dist/core/conversation/ConversationMessage.d.ts.map +1 -0
  187. package/dist/core/conversation/ConversationMessage.js +66 -0
  188. package/dist/core/conversation/ConversationMessage.js.map +1 -0
  189. package/dist/core/evaluation/Evaluator.d.ts +28 -0
  190. package/dist/core/evaluation/Evaluator.d.ts.map +1 -0
  191. package/dist/core/evaluation/Evaluator.js +490 -0
  192. package/dist/core/evaluation/Evaluator.js.map +1 -0
  193. package/dist/core/evaluation/IEvaluator.d.ts +309 -0
  194. package/dist/core/evaluation/IEvaluator.d.ts.map +1 -0
  195. package/dist/core/evaluation/IEvaluator.js +12 -0
  196. package/dist/core/evaluation/IEvaluator.js.map +1 -0
  197. package/dist/core/evaluation/LLMJudge.d.ts +105 -0
  198. package/dist/core/evaluation/LLMJudge.d.ts.map +1 -0
  199. package/dist/core/evaluation/LLMJudge.js +229 -0
  200. package/dist/core/evaluation/LLMJudge.js.map +1 -0
  201. package/dist/core/evaluation/index.d.ts +9 -0
  202. package/dist/core/evaluation/index.d.ts.map +1 -0
  203. package/dist/core/evaluation/index.js +9 -0
  204. package/dist/core/evaluation/index.js.map +1 -0
  205. package/dist/core/guardrails/IGuardrailService.d.ts +142 -0
  206. package/dist/core/guardrails/IGuardrailService.d.ts.map +1 -0
  207. package/dist/core/guardrails/IGuardrailService.js +24 -0
  208. package/dist/core/guardrails/IGuardrailService.js.map +1 -0
  209. package/dist/core/guardrails/guardrailDispatcher.d.ts +36 -0
  210. package/dist/core/guardrails/guardrailDispatcher.d.ts.map +1 -0
  211. package/dist/core/guardrails/guardrailDispatcher.js +240 -0
  212. package/dist/core/guardrails/guardrailDispatcher.js.map +1 -0
  213. package/dist/core/hitl/HumanInteractionManager.d.ts +146 -0
  214. package/dist/core/hitl/HumanInteractionManager.d.ts.map +1 -0
  215. package/dist/core/hitl/HumanInteractionManager.js +491 -0
  216. package/dist/core/hitl/HumanInteractionManager.js.map +1 -0
  217. package/dist/core/hitl/IHumanInteractionManager.d.ts +521 -0
  218. package/dist/core/hitl/IHumanInteractionManager.d.ts.map +1 -0
  219. package/dist/core/hitl/IHumanInteractionManager.js +33 -0
  220. package/dist/core/hitl/IHumanInteractionManager.js.map +1 -0
  221. package/dist/core/hitl/index.d.ts +17 -0
  222. package/dist/core/hitl/index.d.ts.map +1 -0
  223. package/dist/core/hitl/index.js +17 -0
  224. package/dist/core/hitl/index.js.map +1 -0
  225. package/dist/core/knowledge/IKnowledgeGraph.d.ts +351 -0
  226. package/dist/core/knowledge/IKnowledgeGraph.d.ts.map +1 -0
  227. package/dist/core/knowledge/IKnowledgeGraph.js +10 -0
  228. package/dist/core/knowledge/IKnowledgeGraph.js.map +1 -0
  229. package/dist/core/knowledge/KnowledgeGraph.d.ts +93 -0
  230. package/dist/core/knowledge/KnowledgeGraph.d.ts.map +1 -0
  231. package/dist/core/knowledge/KnowledgeGraph.js +601 -0
  232. package/dist/core/knowledge/KnowledgeGraph.js.map +1 -0
  233. package/dist/core/knowledge/index.d.ts +8 -0
  234. package/dist/core/knowledge/index.d.ts.map +1 -0
  235. package/dist/core/knowledge/index.js +8 -0
  236. package/dist/core/knowledge/index.js.map +1 -0
  237. package/dist/core/language/LanguageService.d.ts +77 -0
  238. package/dist/core/language/LanguageService.d.ts.map +1 -0
  239. package/dist/core/language/LanguageService.js +305 -0
  240. package/dist/core/language/LanguageService.js.map +1 -0
  241. package/dist/core/language/index.d.ts +6 -0
  242. package/dist/core/language/index.d.ts.map +1 -0
  243. package/dist/core/language/index.js +6 -0
  244. package/dist/core/language/index.js.map +1 -0
  245. package/dist/core/language/interfaces.d.ts +168 -0
  246. package/dist/core/language/interfaces.d.ts.map +1 -0
  247. package/dist/core/language/interfaces.js +37 -0
  248. package/dist/core/language/interfaces.js.map +1 -0
  249. package/dist/core/language/providers/DeepLTranslationProvider.d.ts +16 -0
  250. package/dist/core/language/providers/DeepLTranslationProvider.d.ts.map +1 -0
  251. package/dist/core/language/providers/DeepLTranslationProvider.js +28 -0
  252. package/dist/core/language/providers/DeepLTranslationProvider.js.map +1 -0
  253. package/dist/core/language/providers/OpenAITranslationProvider.d.ts +17 -0
  254. package/dist/core/language/providers/OpenAITranslationProvider.d.ts.map +1 -0
  255. package/dist/core/language/providers/OpenAITranslationProvider.js +34 -0
  256. package/dist/core/language/providers/OpenAITranslationProvider.js.map +1 -0
  257. package/dist/core/language/providers/WhisperDetectionProvider.d.ts +16 -0
  258. package/dist/core/language/providers/WhisperDetectionProvider.d.ts.map +1 -0
  259. package/dist/core/language/providers/WhisperDetectionProvider.js +15 -0
  260. package/dist/core/language/providers/WhisperDetectionProvider.js.map +1 -0
  261. package/dist/core/llm/IPromptEngine.d.ts +627 -0
  262. package/dist/core/llm/IPromptEngine.d.ts.map +1 -0
  263. package/dist/core/llm/IPromptEngine.js +81 -0
  264. package/dist/core/llm/IPromptEngine.js.map +1 -0
  265. package/dist/core/llm/PromptEngine.d.ts +108 -0
  266. package/dist/core/llm/PromptEngine.d.ts.map +1 -0
  267. package/dist/core/llm/PromptEngine.js +872 -0
  268. package/dist/core/llm/PromptEngine.js.map +1 -0
  269. package/dist/core/llm/providers/AIModelProviderManager.d.ts +74 -0
  270. package/dist/core/llm/providers/AIModelProviderManager.d.ts.map +1 -0
  271. package/dist/core/llm/providers/AIModelProviderManager.js +263 -0
  272. package/dist/core/llm/providers/AIModelProviderManager.js.map +1 -0
  273. package/dist/core/llm/providers/IProvider.d.ts +327 -0
  274. package/dist/core/llm/providers/IProvider.d.ts.map +1 -0
  275. package/dist/core/llm/providers/IProvider.js +39 -0
  276. package/dist/core/llm/providers/IProvider.js.map +1 -0
  277. package/dist/core/llm/providers/errors/OllamaProviderError.d.ts +36 -0
  278. package/dist/core/llm/providers/errors/OllamaProviderError.d.ts.map +1 -0
  279. package/dist/core/llm/providers/errors/OllamaProviderError.js +40 -0
  280. package/dist/core/llm/providers/errors/OllamaProviderError.js.map +1 -0
  281. package/dist/core/llm/providers/errors/OpenAIProviderError.d.ts +42 -0
  282. package/dist/core/llm/providers/errors/OpenAIProviderError.d.ts.map +1 -0
  283. package/dist/core/llm/providers/errors/OpenAIProviderError.js +44 -0
  284. package/dist/core/llm/providers/errors/OpenAIProviderError.js.map +1 -0
  285. package/dist/core/llm/providers/errors/OpenRouterProviderError.d.ts +39 -0
  286. package/dist/core/llm/providers/errors/OpenRouterProviderError.d.ts.map +1 -0
  287. package/dist/core/llm/providers/errors/OpenRouterProviderError.js +42 -0
  288. package/dist/core/llm/providers/errors/OpenRouterProviderError.js.map +1 -0
  289. package/dist/core/llm/providers/errors/ProviderError.d.ts +37 -0
  290. package/dist/core/llm/providers/errors/ProviderError.d.ts.map +1 -0
  291. package/dist/core/llm/providers/errors/ProviderError.js +36 -0
  292. package/dist/core/llm/providers/errors/ProviderError.js.map +1 -0
  293. package/dist/core/llm/providers/implementations/OllamaProvider.d.ts +80 -0
  294. package/dist/core/llm/providers/implementations/OllamaProvider.d.ts.map +1 -0
  295. package/dist/core/llm/providers/implementations/OllamaProvider.js +473 -0
  296. package/dist/core/llm/providers/implementations/OllamaProvider.js.map +1 -0
  297. package/dist/core/llm/providers/implementations/OpenAIProvider.d.ts +160 -0
  298. package/dist/core/llm/providers/implementations/OpenAIProvider.d.ts.map +1 -0
  299. package/dist/core/llm/providers/implementations/OpenAIProvider.js +672 -0
  300. package/dist/core/llm/providers/implementations/OpenAIProvider.js.map +1 -0
  301. package/dist/core/llm/providers/implementations/OpenRouterProvider.d.ts +51 -0
  302. package/dist/core/llm/providers/implementations/OpenRouterProvider.d.ts.map +1 -0
  303. package/dist/core/llm/providers/implementations/OpenRouterProvider.js +499 -0
  304. package/dist/core/llm/providers/implementations/OpenRouterProvider.js.map +1 -0
  305. package/dist/core/llm/routing/IModelRouter.d.ts +129 -0
  306. package/dist/core/llm/routing/IModelRouter.d.ts.map +1 -0
  307. package/dist/core/llm/routing/IModelRouter.js +14 -0
  308. package/dist/core/llm/routing/IModelRouter.js.map +1 -0
  309. package/dist/core/llm/routing/ModelRouter.d.ts +157 -0
  310. package/dist/core/llm/routing/ModelRouter.d.ts.map +1 -0
  311. package/dist/core/llm/routing/ModelRouter.js +190 -0
  312. package/dist/core/llm/routing/ModelRouter.js.map +1 -0
  313. package/dist/core/llm/streaming/StreamingBatcher.d.ts +54 -0
  314. package/dist/core/llm/streaming/StreamingBatcher.d.ts.map +1 -0
  315. package/dist/core/llm/streaming/StreamingBatcher.js +173 -0
  316. package/dist/core/llm/streaming/StreamingBatcher.js.map +1 -0
  317. package/dist/core/llm/streaming/StreamingReconstructor.d.ts +69 -0
  318. package/dist/core/llm/streaming/StreamingReconstructor.d.ts.map +1 -0
  319. package/dist/core/llm/streaming/StreamingReconstructor.js +102 -0
  320. package/dist/core/llm/streaming/StreamingReconstructor.js.map +1 -0
  321. package/dist/core/marketplace/IMarketplace.d.ts +500 -0
  322. package/dist/core/marketplace/IMarketplace.d.ts.map +1 -0
  323. package/dist/core/marketplace/IMarketplace.js +10 -0
  324. package/dist/core/marketplace/IMarketplace.js.map +1 -0
  325. package/dist/core/marketplace/Marketplace.d.ts +122 -0
  326. package/dist/core/marketplace/Marketplace.d.ts.map +1 -0
  327. package/dist/core/marketplace/Marketplace.js +591 -0
  328. package/dist/core/marketplace/Marketplace.js.map +1 -0
  329. package/dist/core/marketplace/index.d.ts +8 -0
  330. package/dist/core/marketplace/index.d.ts.map +1 -0
  331. package/dist/core/marketplace/index.js +8 -0
  332. package/dist/core/marketplace/index.js.map +1 -0
  333. package/dist/core/observability/ITracer.d.ts +317 -0
  334. package/dist/core/observability/ITracer.d.ts.map +1 -0
  335. package/dist/core/observability/ITracer.js +55 -0
  336. package/dist/core/observability/ITracer.js.map +1 -0
  337. package/dist/core/observability/Tracer.d.ts +76 -0
  338. package/dist/core/observability/Tracer.d.ts.map +1 -0
  339. package/dist/core/observability/Tracer.js +360 -0
  340. package/dist/core/observability/Tracer.js.map +1 -0
  341. package/dist/core/observability/index.d.ts +9 -0
  342. package/dist/core/observability/index.d.ts.map +1 -0
  343. package/dist/core/observability/index.js +8 -0
  344. package/dist/core/observability/index.js.map +1 -0
  345. package/dist/core/orchestration/AgentOrchestrator.d.ts +243 -0
  346. package/dist/core/orchestration/AgentOrchestrator.d.ts.map +1 -0
  347. package/dist/core/orchestration/AgentOrchestrator.js +648 -0
  348. package/dist/core/orchestration/AgentOrchestrator.js.map +1 -0
  349. package/dist/core/orchestration/IAgentOrchestrator.d.ts +44 -0
  350. package/dist/core/orchestration/IAgentOrchestrator.d.ts.map +1 -0
  351. package/dist/core/orchestration/IAgentOrchestrator.js +4 -0
  352. package/dist/core/orchestration/IAgentOrchestrator.js.map +1 -0
  353. package/dist/core/orchestration/helpers.d.ts +12 -0
  354. package/dist/core/orchestration/helpers.d.ts.map +1 -0
  355. package/dist/core/orchestration/helpers.js +36 -0
  356. package/dist/core/orchestration/helpers.js.map +1 -0
  357. package/dist/core/planning/IPlanningEngine.d.ts +524 -0
  358. package/dist/core/planning/IPlanningEngine.d.ts.map +1 -0
  359. package/dist/core/planning/IPlanningEngine.js +32 -0
  360. package/dist/core/planning/IPlanningEngine.js.map +1 -0
  361. package/dist/core/planning/PlanningEngine.d.ts +161 -0
  362. package/dist/core/planning/PlanningEngine.d.ts.map +1 -0
  363. package/dist/core/planning/PlanningEngine.js +783 -0
  364. package/dist/core/planning/PlanningEngine.js.map +1 -0
  365. package/dist/core/planning/index.d.ts +25 -0
  366. package/dist/core/planning/index.d.ts.map +1 -0
  367. package/dist/core/planning/index.js +25 -0
  368. package/dist/core/planning/index.js.map +1 -0
  369. package/dist/core/sandbox/CodeSandbox.d.ts +86 -0
  370. package/dist/core/sandbox/CodeSandbox.d.ts.map +1 -0
  371. package/dist/core/sandbox/CodeSandbox.js +475 -0
  372. package/dist/core/sandbox/CodeSandbox.js.map +1 -0
  373. package/dist/core/sandbox/ICodeSandbox.d.ts +249 -0
  374. package/dist/core/sandbox/ICodeSandbox.d.ts.map +1 -0
  375. package/dist/core/sandbox/ICodeSandbox.js +24 -0
  376. package/dist/core/sandbox/ICodeSandbox.js.map +1 -0
  377. package/dist/core/sandbox/index.d.ts +9 -0
  378. package/dist/core/sandbox/index.d.ts.map +1 -0
  379. package/dist/core/sandbox/index.js +8 -0
  380. package/dist/core/sandbox/index.js.map +1 -0
  381. package/dist/core/storage/IStorageAdapter.d.ts +483 -0
  382. package/dist/core/storage/IStorageAdapter.d.ts.map +1 -0
  383. package/dist/core/storage/IStorageAdapter.js +19 -0
  384. package/dist/core/storage/IStorageAdapter.js.map +1 -0
  385. package/dist/core/storage/InMemoryStorageAdapter.d.ts +192 -0
  386. package/dist/core/storage/InMemoryStorageAdapter.d.ts.map +1 -0
  387. package/dist/core/storage/InMemoryStorageAdapter.js +343 -0
  388. package/dist/core/storage/InMemoryStorageAdapter.js.map +1 -0
  389. package/dist/core/storage/SqlStorageAdapter.d.ts +262 -0
  390. package/dist/core/storage/SqlStorageAdapter.d.ts.map +1 -0
  391. package/dist/core/storage/SqlStorageAdapter.js +485 -0
  392. package/dist/core/storage/SqlStorageAdapter.js.map +1 -0
  393. package/dist/core/storage/index.d.ts +14 -0
  394. package/dist/core/storage/index.d.ts.map +1 -0
  395. package/dist/core/storage/index.js +14 -0
  396. package/dist/core/storage/index.js.map +1 -0
  397. package/dist/core/streaming/IStreamClient.d.ts +72 -0
  398. package/dist/core/streaming/IStreamClient.d.ts.map +1 -0
  399. package/dist/core/streaming/IStreamClient.js +12 -0
  400. package/dist/core/streaming/IStreamClient.js.map +1 -0
  401. package/dist/core/streaming/StreamingManager.d.ts +242 -0
  402. package/dist/core/streaming/StreamingManager.d.ts.map +1 -0
  403. package/dist/core/streaming/StreamingManager.js +282 -0
  404. package/dist/core/streaming/StreamingManager.js.map +1 -0
  405. package/dist/core/structured/IStructuredOutputManager.d.ts +701 -0
  406. package/dist/core/structured/IStructuredOutputManager.d.ts.map +1 -0
  407. package/dist/core/structured/IStructuredOutputManager.js +74 -0
  408. package/dist/core/structured/IStructuredOutputManager.js.map +1 -0
  409. package/dist/core/structured/StructuredOutputManager.d.ts +140 -0
  410. package/dist/core/structured/StructuredOutputManager.d.ts.map +1 -0
  411. package/dist/core/structured/StructuredOutputManager.js +1015 -0
  412. package/dist/core/structured/StructuredOutputManager.js.map +1 -0
  413. package/dist/core/structured/index.d.ts +34 -0
  414. package/dist/core/structured/index.d.ts.map +1 -0
  415. package/dist/core/structured/index.js +34 -0
  416. package/dist/core/structured/index.js.map +1 -0
  417. package/dist/core/tools/ITool.d.ts +228 -0
  418. package/dist/core/tools/ITool.d.ts.map +1 -0
  419. package/dist/core/tools/ITool.js +11 -0
  420. package/dist/core/tools/ITool.js.map +1 -0
  421. package/dist/core/tools/IToolOrchestrator.d.ts +131 -0
  422. package/dist/core/tools/IToolOrchestrator.d.ts.map +1 -0
  423. package/dist/core/tools/IToolOrchestrator.js +14 -0
  424. package/dist/core/tools/IToolOrchestrator.js.map +1 -0
  425. package/dist/core/tools/ToolExecutor.d.ts +143 -0
  426. package/dist/core/tools/ToolExecutor.d.ts.map +1 -0
  427. package/dist/core/tools/ToolExecutor.js +364 -0
  428. package/dist/core/tools/ToolExecutor.js.map +1 -0
  429. package/dist/core/tools/ToolOrchestrator.d.ts +142 -0
  430. package/dist/core/tools/ToolOrchestrator.d.ts.map +1 -0
  431. package/dist/core/tools/ToolOrchestrator.js +373 -0
  432. package/dist/core/tools/ToolOrchestrator.js.map +1 -0
  433. package/dist/core/tools/permissions/IToolPermissionManager.d.ts +195 -0
  434. package/dist/core/tools/permissions/IToolPermissionManager.d.ts.map +1 -0
  435. package/dist/core/tools/permissions/IToolPermissionManager.js +14 -0
  436. package/dist/core/tools/permissions/IToolPermissionManager.js.map +1 -0
  437. package/dist/core/tools/permissions/ToolPermissionManager.d.ts +203 -0
  438. package/dist/core/tools/permissions/ToolPermissionManager.d.ts.map +1 -0
  439. package/dist/core/tools/permissions/ToolPermissionManager.js +298 -0
  440. package/dist/core/tools/permissions/ToolPermissionManager.js.map +1 -0
  441. package/dist/core/ui/IUIComponent.d.ts +11 -0
  442. package/dist/core/ui/IUIComponent.d.ts.map +1 -0
  443. package/dist/core/ui/IUIComponent.js +2 -0
  444. package/dist/core/ui/IUIComponent.js.map +1 -0
  445. package/dist/core/usage/UsageLedger.d.ts +81 -0
  446. package/dist/core/usage/UsageLedger.d.ts.map +1 -0
  447. package/dist/core/usage/UsageLedger.js +135 -0
  448. package/dist/core/usage/UsageLedger.js.map +1 -0
  449. package/dist/core/workflows/IWorkflowEngine.d.ts +42 -0
  450. package/dist/core/workflows/IWorkflowEngine.d.ts.map +1 -0
  451. package/dist/core/workflows/IWorkflowEngine.js +2 -0
  452. package/dist/core/workflows/IWorkflowEngine.js.map +1 -0
  453. package/dist/core/workflows/WorkflowEngine.d.ts +28 -0
  454. package/dist/core/workflows/WorkflowEngine.d.ts.map +1 -0
  455. package/dist/core/workflows/WorkflowEngine.js +309 -0
  456. package/dist/core/workflows/WorkflowEngine.js.map +1 -0
  457. package/dist/core/workflows/WorkflowTypes.d.ts +180 -0
  458. package/dist/core/workflows/WorkflowTypes.d.ts.map +1 -0
  459. package/dist/core/workflows/WorkflowTypes.js +26 -0
  460. package/dist/core/workflows/WorkflowTypes.js.map +1 -0
  461. package/dist/core/workflows/runtime/WorkflowRuntime.d.ts +70 -0
  462. package/dist/core/workflows/runtime/WorkflowRuntime.d.ts.map +1 -0
  463. package/dist/core/workflows/runtime/WorkflowRuntime.js +566 -0
  464. package/dist/core/workflows/runtime/WorkflowRuntime.js.map +1 -0
  465. package/dist/core/workflows/storage/IWorkflowStore.d.ts +75 -0
  466. package/dist/core/workflows/storage/IWorkflowStore.d.ts.map +1 -0
  467. package/dist/core/workflows/storage/IWorkflowStore.js +2 -0
  468. package/dist/core/workflows/storage/IWorkflowStore.js.map +1 -0
  469. package/dist/core/workflows/storage/InMemoryWorkflowStore.d.ts +14 -0
  470. package/dist/core/workflows/storage/InMemoryWorkflowStore.d.ts.map +1 -0
  471. package/dist/core/workflows/storage/InMemoryWorkflowStore.js +130 -0
  472. package/dist/core/workflows/storage/InMemoryWorkflowStore.js.map +1 -0
  473. package/dist/extensions/ExtensionLoader.d.ts +119 -0
  474. package/dist/extensions/ExtensionLoader.d.ts.map +1 -0
  475. package/dist/extensions/ExtensionLoader.js +297 -0
  476. package/dist/extensions/ExtensionLoader.js.map +1 -0
  477. package/dist/extensions/ExtensionManager.d.ts +49 -0
  478. package/dist/extensions/ExtensionManager.d.ts.map +1 -0
  479. package/dist/extensions/ExtensionManager.js +197 -0
  480. package/dist/extensions/ExtensionManager.js.map +1 -0
  481. package/dist/extensions/ExtensionRegistry.d.ts +39 -0
  482. package/dist/extensions/ExtensionRegistry.d.ts.map +1 -0
  483. package/dist/extensions/ExtensionRegistry.js +103 -0
  484. package/dist/extensions/ExtensionRegistry.js.map +1 -0
  485. package/dist/extensions/MultiRegistryLoader.d.ts +61 -0
  486. package/dist/extensions/MultiRegistryLoader.d.ts.map +1 -0
  487. package/dist/extensions/MultiRegistryLoader.js +169 -0
  488. package/dist/extensions/MultiRegistryLoader.js.map +1 -0
  489. package/dist/extensions/RegistryConfig.d.ts +86 -0
  490. package/dist/extensions/RegistryConfig.d.ts.map +1 -0
  491. package/dist/extensions/RegistryConfig.js +99 -0
  492. package/dist/extensions/RegistryConfig.js.map +1 -0
  493. package/dist/extensions/events.d.ts +19 -0
  494. package/dist/extensions/events.d.ts.map +1 -0
  495. package/dist/extensions/events.js +2 -0
  496. package/dist/extensions/events.js.map +1 -0
  497. package/dist/extensions/index.d.ts +9 -0
  498. package/dist/extensions/index.d.ts.map +1 -0
  499. package/dist/extensions/index.js +9 -0
  500. package/dist/extensions/index.js.map +1 -0
  501. package/dist/extensions/manifest.d.ts +52 -0
  502. package/dist/extensions/manifest.d.ts.map +1 -0
  503. package/dist/extensions/manifest.js +2 -0
  504. package/dist/extensions/manifest.js.map +1 -0
  505. package/dist/extensions/types.d.ts +294 -0
  506. package/dist/extensions/types.d.ts.map +1 -0
  507. package/dist/extensions/types.js +12 -0
  508. package/dist/extensions/types.js.map +1 -0
  509. package/dist/index.d.ts +49 -0
  510. package/dist/index.d.ts.map +1 -0
  511. package/dist/index.js +59 -0
  512. package/dist/index.js.map +1 -0
  513. package/dist/logging/ILogger.d.ts +8 -0
  514. package/dist/logging/ILogger.d.ts.map +1 -0
  515. package/dist/logging/ILogger.js +2 -0
  516. package/dist/logging/ILogger.js.map +1 -0
  517. package/dist/logging/PinoLogger.d.ts +12 -0
  518. package/dist/logging/PinoLogger.d.ts.map +1 -0
  519. package/dist/logging/PinoLogger.js +22 -0
  520. package/dist/logging/PinoLogger.js.map +1 -0
  521. package/dist/logging/loggerFactory.d.ts +6 -0
  522. package/dist/logging/loggerFactory.d.ts.map +1 -0
  523. package/dist/logging/loggerFactory.js +14 -0
  524. package/dist/logging/loggerFactory.js.map +1 -0
  525. package/dist/rag/EmbeddingManager.d.ts +81 -0
  526. package/dist/rag/EmbeddingManager.d.ts.map +1 -0
  527. package/dist/rag/EmbeddingManager.js +412 -0
  528. package/dist/rag/EmbeddingManager.js.map +1 -0
  529. package/dist/rag/IEmbeddingManager.d.ts +277 -0
  530. package/dist/rag/IEmbeddingManager.d.ts.map +1 -0
  531. package/dist/rag/IEmbeddingManager.js +19 -0
  532. package/dist/rag/IEmbeddingManager.js.map +1 -0
  533. package/dist/rag/IRetrievalAugmentor.d.ts +208 -0
  534. package/dist/rag/IRetrievalAugmentor.d.ts.map +1 -0
  535. package/dist/rag/IRetrievalAugmentor.js +21 -0
  536. package/dist/rag/IRetrievalAugmentor.js.map +1 -0
  537. package/dist/rag/IVectorStore.d.ts +351 -0
  538. package/dist/rag/IVectorStore.d.ts.map +1 -0
  539. package/dist/rag/IVectorStore.js +15 -0
  540. package/dist/rag/IVectorStore.js.map +1 -0
  541. package/dist/rag/IVectorStoreManager.d.ts +121 -0
  542. package/dist/rag/IVectorStoreManager.d.ts.map +1 -0
  543. package/dist/rag/IVectorStoreManager.js +13 -0
  544. package/dist/rag/IVectorStoreManager.js.map +1 -0
  545. package/dist/rag/RetrievalAugmentor.d.ts +99 -0
  546. package/dist/rag/RetrievalAugmentor.d.ts.map +1 -0
  547. package/dist/rag/RetrievalAugmentor.js +674 -0
  548. package/dist/rag/RetrievalAugmentor.js.map +1 -0
  549. package/dist/rag/VectorStoreManager.d.ts +90 -0
  550. package/dist/rag/VectorStoreManager.d.ts.map +1 -0
  551. package/dist/rag/VectorStoreManager.js +283 -0
  552. package/dist/rag/VectorStoreManager.js.map +1 -0
  553. package/dist/rag/implementations/index.d.ts +9 -0
  554. package/dist/rag/implementations/index.d.ts.map +1 -0
  555. package/dist/rag/implementations/index.js +9 -0
  556. package/dist/rag/implementations/index.js.map +1 -0
  557. package/dist/rag/implementations/vector_stores/InMemoryVectorStore.d.ts +132 -0
  558. package/dist/rag/implementations/vector_stores/InMemoryVectorStore.d.ts.map +1 -0
  559. package/dist/rag/implementations/vector_stores/InMemoryVectorStore.js +539 -0
  560. package/dist/rag/implementations/vector_stores/InMemoryVectorStore.js.map +1 -0
  561. package/dist/rag/implementations/vector_stores/SqlVectorStore.d.ts +265 -0
  562. package/dist/rag/implementations/vector_stores/SqlVectorStore.d.ts.map +1 -0
  563. package/dist/rag/implementations/vector_stores/SqlVectorStore.js +755 -0
  564. package/dist/rag/implementations/vector_stores/SqlVectorStore.js.map +1 -0
  565. package/dist/rag/implementations/vector_stores/index.d.ts +10 -0
  566. package/dist/rag/implementations/vector_stores/index.d.ts.map +1 -0
  567. package/dist/rag/implementations/vector_stores/index.js +12 -0
  568. package/dist/rag/implementations/vector_stores/index.js.map +1 -0
  569. package/dist/rag/index.d.ts +95 -0
  570. package/dist/rag/index.d.ts.map +1 -0
  571. package/dist/rag/index.js +97 -0
  572. package/dist/rag/index.js.map +1 -0
  573. package/dist/services/user_auth/AuthService.d.ts +13 -0
  574. package/dist/services/user_auth/AuthService.d.ts.map +1 -0
  575. package/dist/services/user_auth/AuthService.js +24 -0
  576. package/dist/services/user_auth/AuthService.js.map +1 -0
  577. package/dist/services/user_auth/SubscriptionService.d.ts +14 -0
  578. package/dist/services/user_auth/SubscriptionService.d.ts.map +1 -0
  579. package/dist/services/user_auth/SubscriptionService.js +34 -0
  580. package/dist/services/user_auth/SubscriptionService.js.map +1 -0
  581. package/dist/services/user_auth/types.d.ts +30 -0
  582. package/dist/services/user_auth/types.d.ts.map +1 -0
  583. package/dist/services/user_auth/types.js +2 -0
  584. package/dist/services/user_auth/types.js.map +1 -0
  585. package/dist/stubs/prismaClient.d.ts +35 -0
  586. package/dist/stubs/prismaClient.d.ts.map +1 -0
  587. package/dist/stubs/prismaClient.js +47 -0
  588. package/dist/stubs/prismaClient.js.map +1 -0
  589. package/dist/types/rateLimitTypes.d.ts +70 -0
  590. package/dist/types/rateLimitTypes.d.ts.map +1 -0
  591. package/dist/types/rateLimitTypes.js +55 -0
  592. package/dist/types/rateLimitTypes.js.map +1 -0
  593. package/dist/utils/errors.d.ts +80 -0
  594. package/dist/utils/errors.d.ts.map +1 -0
  595. package/dist/utils/errors.js +201 -0
  596. package/dist/utils/errors.js.map +1 -0
  597. package/dist/utils/uuid.d.ts +11 -0
  598. package/dist/utils/uuid.d.ts.map +1 -0
  599. package/dist/utils/uuid.js +64 -0
  600. package/dist/utils/uuid.js.map +1 -0
  601. package/package.json +84 -0
@@ -0,0 +1,485 @@
1
+ /**
2
+ * @file SqlStorageAdapter.ts
3
+ * @description SQL-based storage adapter for AgentOS using @framers/sql-storage-adapter.
4
+ *
5
+ * This implementation provides a complete persistence layer for conversations and messages
6
+ * using the cross-platform SQL storage adapter. It automatically handles:
7
+ * - Schema creation and migration
8
+ * - CRUD operations for conversations and messages
9
+ * - Transaction support for atomic operations
10
+ * - Cross-platform compatibility (SQLite, PostgreSQL, SQL.js, etc.)
11
+ *
12
+ * **Architecture:**
13
+ * ```
14
+ * AgentOS ConversationManager
15
+ * ↓
16
+ * SqlStorageAdapter (this file)
17
+ * ↓
18
+ * @framers/sql-storage-adapter
19
+ * ↓
20
+ * Database (SQLite/PostgreSQL/etc.)
21
+ * ```
22
+ *
23
+ * @version 1.0.0
24
+ * @author AgentOS Team
25
+ * @license MIT
26
+ */
27
+ import { resolveStorageAdapter, } from '@framers/sql-storage-adapter';
28
+ /**
29
+ * SQL storage adapter implementation for AgentOS.
30
+ *
31
+ * Provides full persistence for conversations and messages using a SQL database.
32
+ * Wraps @framers/sql-storage-adapter to provide AgentOS-specific schema and operations.
33
+ *
34
+ * **Features:**
35
+ * - Cross-platform SQL support (SQLite, PostgreSQL, SQL.js, Capacitor)
36
+ * - Automatic schema creation and migration
37
+ * - Efficient querying with indexes
38
+ * - Transaction support for atomic operations
39
+ * - Type-safe API with full TypeScript support
40
+ *
41
+ * **Database Schema:**
42
+ * - `conversations` table: Stores conversation metadata
43
+ * - `messages` table: Stores individual messages with foreign key to conversations
44
+ * - Indexes on frequently queried columns for performance
45
+ *
46
+ * @class SqlStorageAdapter
47
+ * @implements {IStorageAdapter}
48
+ *
49
+ * @example
50
+ * ```typescript
51
+ * // Node.js with SQLite
52
+ * const storage = new SqlStorageAdapter({
53
+ * type: 'better-sqlite3',
54
+ * database: './data/agentos.db',
55
+ * enableWAL: true
56
+ * });
57
+ *
58
+ * await storage.initialize();
59
+ *
60
+ * // Browser with SQL.js
61
+ * const browserStorage = new SqlStorageAdapter({
62
+ * type: 'sql.js',
63
+ * database: 'agentos.db',
64
+ * enableAutoMigration: true
65
+ * });
66
+ *
67
+ * await browserStorage.initialize();
68
+ * ```
69
+ */
70
+ export class SqlStorageAdapter {
71
+ /**
72
+ * Creates a new SQL storage adapter instance.
73
+ *
74
+ * @param {AgentOsSqlStorageConfig} config - Storage configuration
75
+ *
76
+ * @example
77
+ * ```typescript
78
+ * const storage = new SqlStorageAdapter({
79
+ * filePath: './agentos.db',
80
+ * priority: ['better-sqlite3']
81
+ * });
82
+ * ```
83
+ */
84
+ constructor(config = {}) {
85
+ this.initialized = false;
86
+ this.config = {
87
+ enableAutoMigration: true,
88
+ messageRetentionDays: 0,
89
+ ...config,
90
+ };
91
+ }
92
+ /**
93
+ * Initializes the storage adapter and creates the database schema.
94
+ *
95
+ * **Schema created:**
96
+ * - `conversations` table with indexes on userId and agentId
97
+ * - `messages` table with indexes on conversationId and timestamp
98
+ * - Foreign key constraints for referential integrity
99
+ *
100
+ * **Must be called before any other operations.**
101
+ *
102
+ * @returns {Promise<void>}
103
+ * @throws {Error} If database connection or schema creation fails
104
+ *
105
+ * @example
106
+ * ```typescript
107
+ * await storage.initialize();
108
+ * console.log('Storage ready!');
109
+ * ```
110
+ */
111
+ async initialize() {
112
+ if (this.initialized) {
113
+ return;
114
+ }
115
+ // Resolve the appropriate storage adapter for the platform
116
+ this.adapter = await resolveStorageAdapter(this.config);
117
+ // Create conversations table
118
+ await this.adapter.exec(`
119
+ CREATE TABLE IF NOT EXISTS conversations (
120
+ id TEXT PRIMARY KEY,
121
+ userId TEXT NOT NULL,
122
+ agentId TEXT,
123
+ createdAt INTEGER NOT NULL,
124
+ lastActivity INTEGER NOT NULL,
125
+ title TEXT,
126
+ metadata TEXT
127
+ );
128
+ CREATE INDEX IF NOT EXISTS idx_conversations_userId ON conversations(userId);
129
+ CREATE INDEX IF NOT EXISTS idx_conversations_agentId ON conversations(agentId);
130
+ CREATE INDEX IF NOT EXISTS idx_conversations_lastActivity ON conversations(lastActivity);
131
+ `);
132
+ // Create messages table with foreign key
133
+ await this.adapter.exec(`
134
+ CREATE TABLE IF NOT EXISTS messages (
135
+ id TEXT PRIMARY KEY,
136
+ conversationId TEXT NOT NULL,
137
+ role TEXT NOT NULL CHECK(role IN ('user', 'assistant', 'system', 'tool')),
138
+ content TEXT NOT NULL,
139
+ timestamp INTEGER NOT NULL,
140
+ model TEXT,
141
+ promptTokens INTEGER,
142
+ completionTokens INTEGER,
143
+ totalTokens INTEGER,
144
+ toolCalls TEXT,
145
+ toolCallId TEXT,
146
+ name TEXT,
147
+ metadata TEXT,
148
+ FOREIGN KEY (conversationId) REFERENCES conversations(id) ON DELETE CASCADE
149
+ );
150
+ CREATE INDEX IF NOT EXISTS idx_messages_conversationId ON messages(conversationId);
151
+ CREATE INDEX IF NOT EXISTS idx_messages_timestamp ON messages(timestamp);
152
+ CREATE INDEX IF NOT EXISTS idx_messages_role ON messages(role);
153
+ `);
154
+ this.initialized = true;
155
+ }
156
+ /**
157
+ * Closes the database connection and releases resources.
158
+ *
159
+ * @returns {Promise<void>}
160
+ *
161
+ * @example
162
+ * ```typescript
163
+ * await storage.close();
164
+ * ```
165
+ */
166
+ async close() {
167
+ await this.adapter.close();
168
+ this.initialized = false;
169
+ }
170
+ // ==================== Conversation Operations ====================
171
+ /**
172
+ * Creates a new conversation record.
173
+ *
174
+ * @param {IConversation} conversation - Conversation to create
175
+ * @returns {Promise<IConversation>} The created conversation
176
+ * @throws {Error} If conversation with same ID exists or validation fails
177
+ */
178
+ async createConversation(conversation) {
179
+ this.ensureInitialized();
180
+ const metadataJson = conversation.metadata ? JSON.stringify(conversation.metadata) : null;
181
+ await this.adapter.run(`INSERT INTO conversations (id, userId, agentId, createdAt, lastActivity, title, metadata)
182
+ VALUES (?, ?, ?, ?, ?, ?, ?)`, [
183
+ conversation.id,
184
+ conversation.userId,
185
+ conversation.agentId || null,
186
+ conversation.createdAt,
187
+ conversation.lastActivity,
188
+ conversation.title || null,
189
+ metadataJson,
190
+ ]);
191
+ return conversation;
192
+ }
193
+ /**
194
+ * Retrieves a conversation by ID.
195
+ *
196
+ * @param {string} conversationId - The conversation ID
197
+ * @returns {Promise<IConversation | null>} The conversation or null if not found
198
+ */
199
+ async getConversation(conversationId) {
200
+ this.ensureInitialized();
201
+ const row = await this.adapter.get('SELECT * FROM conversations WHERE id = ?', [conversationId]);
202
+ if (!row) {
203
+ return null;
204
+ }
205
+ return this.rowToConversation(row);
206
+ }
207
+ /**
208
+ * Updates a conversation's fields.
209
+ *
210
+ * @param {string} conversationId - Conversation to update
211
+ * @param {Partial<IConversation>} updates - Fields to update
212
+ * @returns {Promise<IConversation>} Updated conversation
213
+ * @throws {Error} If conversation doesn't exist
214
+ */
215
+ async updateConversation(conversationId, updates) {
216
+ this.ensureInitialized();
217
+ const existing = await this.getConversation(conversationId);
218
+ if (!existing) {
219
+ throw new Error(`Conversation not found: ${conversationId}`);
220
+ }
221
+ const updated = { ...existing, ...updates };
222
+ const metadataJson = updated.metadata ? JSON.stringify(updated.metadata) : null;
223
+ await this.adapter.run(`UPDATE conversations
224
+ SET userId = ?, agentId = ?, createdAt = ?, lastActivity = ?, title = ?, metadata = ?
225
+ WHERE id = ?`, [
226
+ updated.userId,
227
+ updated.agentId || null,
228
+ updated.createdAt,
229
+ updated.lastActivity,
230
+ updated.title || null,
231
+ metadataJson,
232
+ conversationId,
233
+ ]);
234
+ return updated;
235
+ }
236
+ /**
237
+ * Deletes a conversation and all its messages.
238
+ *
239
+ * @param {string} conversationId - Conversation to delete
240
+ * @returns {Promise<boolean>} True if deleted, false if not found
241
+ */
242
+ async deleteConversation(conversationId) {
243
+ this.ensureInitialized();
244
+ const result = await this.adapter.run('DELETE FROM conversations WHERE id = ?', [conversationId]);
245
+ return result.changes > 0;
246
+ }
247
+ /**
248
+ * Lists conversations for a user with optional filtering.
249
+ *
250
+ * @param {string} userId - User whose conversations to list
251
+ * @param {Object} [options] - Query options
252
+ * @returns {Promise<IConversation[]>} Array of conversations
253
+ */
254
+ async listConversations(userId, options) {
255
+ this.ensureInitialized();
256
+ let query = 'SELECT * FROM conversations WHERE userId = ?';
257
+ const params = [userId];
258
+ if (options?.agentId) {
259
+ query += ' AND agentId = ?';
260
+ params.push(options.agentId);
261
+ }
262
+ query += ' ORDER BY lastActivity DESC';
263
+ if (options?.limit) {
264
+ query += ' LIMIT ?';
265
+ params.push(options.limit);
266
+ }
267
+ if (options?.offset) {
268
+ query += ' OFFSET ?';
269
+ params.push(options.offset);
270
+ }
271
+ const rows = await this.adapter.all(query, params);
272
+ return rows.map((row) => this.rowToConversation(row));
273
+ }
274
+ // ==================== Message Operations ====================
275
+ /**
276
+ * Stores a message and updates conversation's lastActivity.
277
+ *
278
+ * @param {IConversationMessage} message - Message to store
279
+ * @returns {Promise<IConversationMessage>} The stored message
280
+ * @throws {Error} If conversation doesn't exist
281
+ */
282
+ async storeMessage(message) {
283
+ this.ensureInitialized();
284
+ // Verify conversation exists
285
+ const conversation = await this.getConversation(message.conversationId);
286
+ if (!conversation) {
287
+ throw new Error(`Conversation not found: ${message.conversationId}`);
288
+ }
289
+ const toolCallsJson = message.toolCalls ? JSON.stringify(message.toolCalls) : null;
290
+ const metadataJson = message.metadata ? JSON.stringify(message.metadata) : null;
291
+ // Insert message
292
+ await this.adapter.run(`INSERT INTO messages
293
+ (id, conversationId, role, content, timestamp, model, promptTokens, completionTokens, totalTokens, toolCalls, toolCallId, name, metadata)
294
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`, [
295
+ message.id,
296
+ message.conversationId,
297
+ message.role,
298
+ message.content,
299
+ message.timestamp,
300
+ message.model || null,
301
+ message.usage?.promptTokens || null,
302
+ message.usage?.completionTokens || null,
303
+ message.usage?.totalTokens || null,
304
+ toolCallsJson,
305
+ message.toolCallId || null,
306
+ message.name || null,
307
+ metadataJson,
308
+ ]);
309
+ // Update conversation lastActivity
310
+ await this.adapter.run('UPDATE conversations SET lastActivity = ? WHERE id = ?', [message.timestamp, message.conversationId]);
311
+ return message;
312
+ }
313
+ /**
314
+ * Retrieves a message by ID.
315
+ *
316
+ * @param {string} messageId - Message ID
317
+ * @returns {Promise<IConversationMessage | null>} The message or null
318
+ */
319
+ async getMessage(messageId) {
320
+ this.ensureInitialized();
321
+ const row = await this.adapter.get('SELECT * FROM messages WHERE id = ?', [messageId]);
322
+ if (!row) {
323
+ return null;
324
+ }
325
+ return this.rowToMessage(row);
326
+ }
327
+ /**
328
+ * Retrieves messages for a conversation with filtering.
329
+ *
330
+ * @param {string} conversationId - Conversation ID
331
+ * @param {IMessageQueryOptions} [options] - Query options
332
+ * @returns {Promise<IConversationMessage[]>} Array of messages
333
+ */
334
+ async getMessages(conversationId, options) {
335
+ this.ensureInitialized();
336
+ let query = 'SELECT * FROM messages WHERE conversationId = ?';
337
+ const params = [conversationId];
338
+ if (options?.since) {
339
+ query += ' AND timestamp >= ?';
340
+ params.push(options.since);
341
+ }
342
+ if (options?.until) {
343
+ query += ' AND timestamp <= ?';
344
+ params.push(options.until);
345
+ }
346
+ if (options?.roles && options.roles.length > 0) {
347
+ const placeholders = options.roles.map(() => '?').join(',');
348
+ query += ` AND role IN (${placeholders})`;
349
+ params.push(...options.roles);
350
+ }
351
+ const order = options?.order === 'desc' ? 'DESC' : 'ASC';
352
+ query += ` ORDER BY timestamp ${order}`;
353
+ if (options?.limit) {
354
+ query += ' LIMIT ?';
355
+ params.push(options.limit);
356
+ }
357
+ if (options?.offset) {
358
+ query += ' OFFSET ?';
359
+ params.push(options.offset);
360
+ }
361
+ const rows = await this.adapter.all(query, params);
362
+ return rows.map((row) => this.rowToMessage(row));
363
+ }
364
+ /**
365
+ * Deletes a specific message.
366
+ *
367
+ * @param {string} messageId - Message to delete
368
+ * @returns {Promise<boolean>} True if deleted
369
+ */
370
+ async deleteMessage(messageId) {
371
+ this.ensureInitialized();
372
+ const result = await this.adapter.run('DELETE FROM messages WHERE id = ?', [messageId]);
373
+ return result.changes > 0;
374
+ }
375
+ /**
376
+ * Deletes all messages in a conversation.
377
+ *
378
+ * @param {string} conversationId - Conversation whose messages to delete
379
+ * @returns {Promise<number>} Number of messages deleted
380
+ */
381
+ async deleteMessagesForConversation(conversationId) {
382
+ this.ensureInitialized();
383
+ const result = await this.adapter.run('DELETE FROM messages WHERE conversationId = ?', [
384
+ conversationId,
385
+ ]);
386
+ return result.changes;
387
+ }
388
+ // ==================== Analytics & Utilities ====================
389
+ /**
390
+ * Counts messages in a conversation.
391
+ *
392
+ * @param {string} conversationId - Conversation to count
393
+ * @returns {Promise<number>} Message count
394
+ */
395
+ async getMessageCount(conversationId) {
396
+ this.ensureInitialized();
397
+ const row = await this.adapter.get('SELECT COUNT(*) as count FROM messages WHERE conversationId = ?', [conversationId]);
398
+ return row?.count || 0;
399
+ }
400
+ /**
401
+ * Calculates total token usage for a conversation.
402
+ *
403
+ * @param {string} conversationId - Conversation to analyze
404
+ * @returns {Promise<ITokenUsage>} Aggregated token usage
405
+ */
406
+ async getConversationTokenUsage(conversationId) {
407
+ this.ensureInitialized();
408
+ const row = await this.adapter.get(`SELECT
409
+ SUM(promptTokens) as promptTokens,
410
+ SUM(completionTokens) as completionTokens,
411
+ SUM(totalTokens) as totalTokens
412
+ FROM messages
413
+ WHERE conversationId = ?`, [conversationId]);
414
+ return {
415
+ promptTokens: row?.promptTokens || 0,
416
+ completionTokens: row?.completionTokens || 0,
417
+ totalTokens: row?.totalTokens || 0,
418
+ };
419
+ }
420
+ // ==================== Private Helper Methods ====================
421
+ /**
422
+ * Ensures the adapter has been initialized.
423
+ *
424
+ * @private
425
+ * @throws {Error} If not initialized
426
+ */
427
+ ensureInitialized() {
428
+ if (!this.initialized) {
429
+ throw new Error('SqlStorageAdapter not initialized. Call initialize() first.');
430
+ }
431
+ }
432
+ /**
433
+ * Converts a database row to an IConversation object.
434
+ *
435
+ * @private
436
+ * @param {any} row - Database row
437
+ * @returns {IConversation} Conversation object
438
+ */
439
+ rowToConversation(row) {
440
+ return {
441
+ id: row.id,
442
+ userId: row.userId,
443
+ agentId: row.agentId || undefined,
444
+ createdAt: row.createdAt,
445
+ lastActivity: row.lastActivity,
446
+ title: row.title || undefined,
447
+ metadata: row.metadata ? JSON.parse(row.metadata) : undefined,
448
+ };
449
+ }
450
+ /**
451
+ * Converts a database row to an IConversationMessage object.
452
+ *
453
+ * @private
454
+ * @param {any} row - Database row
455
+ * @returns {IConversationMessage} Message object
456
+ */
457
+ rowToMessage(row) {
458
+ const message = {
459
+ id: row.id,
460
+ conversationId: row.conversationId,
461
+ role: row.role,
462
+ content: row.content,
463
+ timestamp: row.timestamp,
464
+ };
465
+ if (row.model)
466
+ message.model = row.model;
467
+ if (row.promptTokens || row.completionTokens || row.totalTokens) {
468
+ message.usage = {
469
+ promptTokens: row.promptTokens || 0,
470
+ completionTokens: row.completionTokens || 0,
471
+ totalTokens: row.totalTokens || 0,
472
+ };
473
+ }
474
+ if (row.toolCalls)
475
+ message.toolCalls = JSON.parse(row.toolCalls);
476
+ if (row.toolCallId)
477
+ message.toolCallId = row.toolCallId;
478
+ if (row.name)
479
+ message.name = row.name;
480
+ if (row.metadata)
481
+ message.metadata = JSON.parse(row.metadata);
482
+ return message;
483
+ }
484
+ }
485
+ //# sourceMappingURL=SqlStorageAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SqlStorageAdapter.js","sourceRoot":"","sources":["../../../src/core/storage/SqlStorageAdapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @file index.ts
3
+ * @description Barrel export for AgentOS storage module.
4
+ *
5
+ * Provides centralized access to all storage-related interfaces and implementations.
6
+ *
7
+ * @version 1.0.0
8
+ * @author AgentOS Team
9
+ * @license MIT
10
+ */
11
+ export * from './IStorageAdapter.js';
12
+ export { SqlStorageAdapter, type AgentOsSqlStorageConfig } from './SqlStorageAdapter.js';
13
+ export { InMemoryStorageAdapter } from './InMemoryStorageAdapter.js';
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/storage/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,KAAK,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @file index.ts
3
+ * @description Barrel export for AgentOS storage module.
4
+ *
5
+ * Provides centralized access to all storage-related interfaces and implementations.
6
+ *
7
+ * @version 1.0.0
8
+ * @author AgentOS Team
9
+ * @license MIT
10
+ */
11
+ export * from './IStorageAdapter.js';
12
+ export { SqlStorageAdapter } from './SqlStorageAdapter.js';
13
+ export { InMemoryStorageAdapter } from './InMemoryStorageAdapter.js';
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/storage/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAgC,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * @fileoverview Defines the IStreamClient interface.
3
+ * This interface represents the contract for any client that wishes to subscribe to
4
+ * and receive data chunks from a stream managed by the StreamingManager.
5
+ * Implementations of this interface will handle the actual transport of data
6
+ * to the connected client (e.g., via WebSockets, SSE, etc.).
7
+ *
8
+ * @module backend/core/streaming/IStreamClient
9
+ */
10
+ import { AgentOSResponse } from '../../api/types/AgentOSResponse';
11
+ /**
12
+ * Represents a unique identifier for a stream client.
13
+ * This could be a WebSocket connection ID, a unique user session sub-ID, etc.
14
+ * @typedef {string} StreamClientId
15
+ */
16
+ export type StreamClientId = string;
17
+ /**
18
+ * @interface IStreamClient
19
+ * @description Defines the essential methods that a stream client implementation
20
+ * must provide to interact with the StreamingManager.
21
+ */
22
+ export interface IStreamClient {
23
+ /**
24
+ * A unique identifier for this specific client instance.
25
+ * @readonly
26
+ * @type {StreamClientId}
27
+ */
28
+ readonly id: StreamClientId;
29
+ /**
30
+ * Sends a data chunk to the connected client.
31
+ * This method should handle the specifics of the underlying transport protocol.
32
+ *
33
+ * @public
34
+ * @async
35
+ * @param {AgentOSResponse} chunk - The data chunk to send to the client.
36
+ * @returns {Promise<void>} A promise that resolves when the chunk has been successfully
37
+ * sent (or queued for sending), or rejects if an error occurs during sending.
38
+ * @throws {Error} If sending the chunk fails due to a transport-level issue
39
+ * (e.g., connection closed, buffer full).
40
+ */
41
+ sendChunk(chunk: AgentOSResponse): Promise<void>;
42
+ /**
43
+ * Notifies the client that the stream has been closed.
44
+ * This could be due to normal completion, an error, or explicit closure by the system.
45
+ *
46
+ * @public
47
+ * @async
48
+ * @param {string} [reason] - An optional reason for the stream closure.
49
+ * This might be a human-readable message or an error code.
50
+ * @returns {Promise<void>} A promise that resolves when the closure notification
51
+ * has been sent, or rejects if an error occurs.
52
+ */
53
+ notifyStreamClosed(reason?: string): Promise<void>;
54
+ /**
55
+ * Checks if the client connection is currently active and able to receive data.
56
+ *
57
+ * @public
58
+ * @returns {boolean} True if the client is active, false otherwise.
59
+ */
60
+ isActive(): boolean;
61
+ /**
62
+ * Optional method to gracefully close the client's connection or clean up resources
63
+ * from the client's perspective, possibly initiated by the StreamingManager.
64
+ *
65
+ * @public
66
+ * @async
67
+ * @param {string} [reason] - An optional reason for closing the client.
68
+ * @returns {Promise<void>} A promise that resolves when the client has been closed.
69
+ */
70
+ close?(reason?: string): Promise<void>;
71
+ }
72
+ //# sourceMappingURL=IStreamClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IStreamClient.d.ts","sourceRoot":"","sources":["../../../src/core/streaming/IStreamClient.ts"],"names":[],"mappings":"AACA;;;;;;;;GAQG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAElE;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC;AAEpC;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,EAAE,cAAc,CAAC;IAE5B;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjD;;;;;;;;;;OAUG;IACH,kBAAkB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnD;;;;;OAKG;IACH,QAAQ,IAAI,OAAO,CAAC;IAEpB;;;;;;;;OAQG;IACH,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxC"}
@@ -0,0 +1,12 @@
1
+ // File: src/core/streaming/IStreamClient.ts
2
+ /**
3
+ * @fileoverview Defines the IStreamClient interface.
4
+ * This interface represents the contract for any client that wishes to subscribe to
5
+ * and receive data chunks from a stream managed by the StreamingManager.
6
+ * Implementations of this interface will handle the actual transport of data
7
+ * to the connected client (e.g., via WebSockets, SSE, etc.).
8
+ *
9
+ * @module backend/core/streaming/IStreamClient
10
+ */
11
+ export {};
12
+ //# sourceMappingURL=IStreamClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IStreamClient.js","sourceRoot":"","sources":["../../../src/core/streaming/IStreamClient.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C;;;;;;;;GAQG"}