@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.
- package/LICENSE +98 -0
- package/README.md +576 -0
- package/dist/api/AgentOS.d.ts +451 -0
- package/dist/api/AgentOS.d.ts.map +1 -0
- package/dist/api/AgentOS.js +1157 -0
- package/dist/api/AgentOS.js.map +1 -0
- package/dist/api/AgentOSOrchestrator.d.ts +157 -0
- package/dist/api/AgentOSOrchestrator.d.ts.map +1 -0
- package/dist/api/AgentOSOrchestrator.js +679 -0
- package/dist/api/AgentOSOrchestrator.js.map +1 -0
- package/dist/api/interfaces/IAgentOS.d.ts +138 -0
- package/dist/api/interfaces/IAgentOS.d.ts.map +1 -0
- package/dist/api/interfaces/IAgentOS.js +11 -0
- package/dist/api/interfaces/IAgentOS.js.map +1 -0
- package/dist/api/interfaces/IUnifiedAgent.d.ts +126 -0
- package/dist/api/interfaces/IUnifiedAgent.d.ts.map +1 -0
- package/dist/api/interfaces/IUnifiedAgent.js +3 -0
- package/dist/api/interfaces/IUnifiedAgent.js.map +1 -0
- package/dist/api/types/AgentOSInput.d.ts +114 -0
- package/dist/api/types/AgentOSInput.d.ts.map +1 -0
- package/dist/api/types/AgentOSInput.js +13 -0
- package/dist/api/types/AgentOSInput.js.map +1 -0
- package/dist/api/types/AgentOSResponse.d.ts +170 -0
- package/dist/api/types/AgentOSResponse.d.ts.map +1 -0
- package/dist/api/types/AgentOSResponse.js +25 -0
- package/dist/api/types/AgentOSResponse.js.map +1 -0
- package/dist/cognitive_substrate/GMI.d.ts +148 -0
- package/dist/cognitive_substrate/GMI.d.ts.map +1 -0
- package/dist/cognitive_substrate/GMI.js +1003 -0
- package/dist/cognitive_substrate/GMI.js.map +1 -0
- package/dist/cognitive_substrate/GMIManager.d.ts +98 -0
- package/dist/cognitive_substrate/GMIManager.d.ts.map +1 -0
- package/dist/cognitive_substrate/GMIManager.js +517 -0
- package/dist/cognitive_substrate/GMIManager.js.map +1 -0
- package/dist/cognitive_substrate/IGMI.d.ts +469 -0
- package/dist/cognitive_substrate/IGMI.d.ts.map +1 -0
- package/dist/cognitive_substrate/IGMI.js +111 -0
- package/dist/cognitive_substrate/IGMI.js.map +1 -0
- package/dist/cognitive_substrate/memory/IWorkingMemory.d.ts +139 -0
- package/dist/cognitive_substrate/memory/IWorkingMemory.d.ts.map +1 -0
- package/dist/cognitive_substrate/memory/IWorkingMemory.js +14 -0
- package/dist/cognitive_substrate/memory/IWorkingMemory.js.map +1 -0
- package/dist/cognitive_substrate/memory/InMemoryWorkingMemory.d.ts +143 -0
- package/dist/cognitive_substrate/memory/InMemoryWorkingMemory.d.ts.map +1 -0
- package/dist/cognitive_substrate/memory/InMemoryWorkingMemory.js +186 -0
- package/dist/cognitive_substrate/memory/InMemoryWorkingMemory.js.map +1 -0
- package/dist/cognitive_substrate/persona_overlays/PersonaOverlayManager.d.ts +33 -0
- package/dist/cognitive_substrate/persona_overlays/PersonaOverlayManager.d.ts.map +1 -0
- package/dist/cognitive_substrate/persona_overlays/PersonaOverlayManager.js +138 -0
- package/dist/cognitive_substrate/persona_overlays/PersonaOverlayManager.js.map +1 -0
- package/dist/cognitive_substrate/persona_overlays/PersonaOverlayTypes.d.ts +32 -0
- package/dist/cognitive_substrate/persona_overlays/PersonaOverlayTypes.d.ts.map +1 -0
- package/dist/cognitive_substrate/persona_overlays/PersonaOverlayTypes.js +2 -0
- package/dist/cognitive_substrate/persona_overlays/PersonaOverlayTypes.js.map +1 -0
- package/dist/cognitive_substrate/personas/IPersonaDefinition.d.ts +336 -0
- package/dist/cognitive_substrate/personas/IPersonaDefinition.d.ts.map +1 -0
- package/dist/cognitive_substrate/personas/IPersonaDefinition.js +8 -0
- package/dist/cognitive_substrate/personas/IPersonaDefinition.js.map +1 -0
- package/dist/cognitive_substrate/personas/IPersonaLoader.d.ts +78 -0
- package/dist/cognitive_substrate/personas/IPersonaLoader.d.ts.map +1 -0
- package/dist/cognitive_substrate/personas/IPersonaLoader.js +9 -0
- package/dist/cognitive_substrate/personas/IPersonaLoader.js.map +1 -0
- package/dist/cognitive_substrate/personas/PersonaLoader.d.ts +60 -0
- package/dist/cognitive_substrate/personas/PersonaLoader.d.ts.map +1 -0
- package/dist/cognitive_substrate/personas/PersonaLoader.js +138 -0
- package/dist/cognitive_substrate/personas/PersonaLoader.js.map +1 -0
- package/dist/cognitive_substrate/personas/PersonaValidation.d.ts +139 -0
- package/dist/cognitive_substrate/personas/PersonaValidation.d.ts.map +1 -0
- package/dist/cognitive_substrate/personas/PersonaValidation.js +277 -0
- package/dist/cognitive_substrate/personas/PersonaValidation.js.map +1 -0
- package/dist/cognitive_substrate/personas/definitions/atlas_systems_architect.json +29 -0
- package/dist/cognitive_substrate/personas/definitions/default_assistant_persona.json +346 -0
- package/dist/cognitive_substrate/personas/definitions/default_free_assistant.json +13 -0
- package/dist/cognitive_substrate/personas/definitions/index.d.ts +14 -0
- package/dist/cognitive_substrate/personas/definitions/index.d.ts.map +1 -0
- package/dist/cognitive_substrate/personas/definitions/index.js +35 -0
- package/dist/cognitive_substrate/personas/definitions/index.js.map +1 -0
- package/dist/cognitive_substrate/personas/definitions/nerf_generalist.json +11 -0
- package/dist/cognitive_substrate/personas/definitions/v_researcher.json +11 -0
- package/dist/config/AgentOSConfig.d.ts +74 -0
- package/dist/config/AgentOSConfig.d.ts.map +1 -0
- package/dist/config/AgentOSConfig.js +399 -0
- package/dist/config/AgentOSConfig.js.map +1 -0
- package/dist/config/EmbeddingManagerConfiguration.d.ts +190 -0
- package/dist/config/EmbeddingManagerConfiguration.d.ts.map +1 -0
- package/dist/config/EmbeddingManagerConfiguration.js +16 -0
- package/dist/config/EmbeddingManagerConfiguration.js.map +1 -0
- package/dist/config/MemoryLifecycleManagerConfiguration.d.ts +165 -0
- package/dist/config/MemoryLifecycleManagerConfiguration.d.ts.map +1 -0
- package/dist/config/MemoryLifecycleManagerConfiguration.js +69 -0
- package/dist/config/MemoryLifecycleManagerConfiguration.js.map +1 -0
- package/dist/config/RetrievalAugmentorConfiguration.d.ts +98 -0
- package/dist/config/RetrievalAugmentorConfiguration.d.ts.map +1 -0
- package/dist/config/RetrievalAugmentorConfiguration.js +47 -0
- package/dist/config/RetrievalAugmentorConfiguration.js.map +1 -0
- package/dist/config/ToolOrchestratorConfig.d.ts +69 -0
- package/dist/config/ToolOrchestratorConfig.d.ts.map +1 -0
- package/dist/config/ToolOrchestratorConfig.js +11 -0
- package/dist/config/ToolOrchestratorConfig.js.map +1 -0
- package/dist/config/VectorStoreConfiguration.d.ts +223 -0
- package/dist/config/VectorStoreConfiguration.d.ts.map +1 -0
- package/dist/config/VectorStoreConfiguration.js +59 -0
- package/dist/config/VectorStoreConfiguration.js.map +1 -0
- package/dist/config/extension-secrets.json +38 -0
- package/dist/config/extensionSecrets.d.ts +13 -0
- package/dist/config/extensionSecrets.d.ts.map +1 -0
- package/dist/config/extensionSecrets.js +24 -0
- package/dist/config/extensionSecrets.js.map +1 -0
- package/dist/core/agency/AgencyMemoryManager.d.ts +300 -0
- package/dist/core/agency/AgencyMemoryManager.d.ts.map +1 -0
- package/dist/core/agency/AgencyMemoryManager.js +657 -0
- package/dist/core/agency/AgencyMemoryManager.js.map +1 -0
- package/dist/core/agency/AgencyRegistry.d.ts +100 -0
- package/dist/core/agency/AgencyRegistry.d.ts.map +1 -0
- package/dist/core/agency/AgencyRegistry.js +209 -0
- package/dist/core/agency/AgencyRegistry.js.map +1 -0
- package/dist/core/agency/AgencyTypes.d.ts +200 -0
- package/dist/core/agency/AgencyTypes.d.ts.map +1 -0
- package/dist/core/agency/AgencyTypes.js +7 -0
- package/dist/core/agency/AgencyTypes.js.map +1 -0
- package/dist/core/agency/AgentCommunicationBus.d.ts +150 -0
- package/dist/core/agency/AgentCommunicationBus.d.ts.map +1 -0
- package/dist/core/agency/AgentCommunicationBus.js +568 -0
- package/dist/core/agency/AgentCommunicationBus.js.map +1 -0
- package/dist/core/agency/IAgentCommunicationBus.d.ts +469 -0
- package/dist/core/agency/IAgentCommunicationBus.d.ts.map +1 -0
- package/dist/core/agency/IAgentCommunicationBus.js +40 -0
- package/dist/core/agency/IAgentCommunicationBus.js.map +1 -0
- package/dist/core/agency/index.d.ts +18 -0
- package/dist/core/agency/index.d.ts.map +1 -0
- package/dist/core/agency/index.js +18 -0
- package/dist/core/agency/index.js.map +1 -0
- package/dist/core/agents/AgentCore.d.ts +385 -0
- package/dist/core/agents/AgentCore.d.ts.map +1 -0
- package/dist/core/agents/AgentCore.js +527 -0
- package/dist/core/agents/AgentCore.js.map +1 -0
- package/dist/core/agents/AgentFactory.d.ts +123 -0
- package/dist/core/agents/AgentFactory.d.ts.map +1 -0
- package/dist/core/agents/AgentFactory.js +232 -0
- package/dist/core/agents/AgentFactory.js.map +1 -0
- package/dist/core/agents/AgentPoolAgent.d.ts +244 -0
- package/dist/core/agents/AgentPoolAgent.d.ts.map +1 -0
- package/dist/core/agents/AgentPoolAgent.js +697 -0
- package/dist/core/agents/AgentPoolAgent.js.map +1 -0
- package/dist/core/agents/AgentPoolConfig.d.ts +191 -0
- package/dist/core/agents/AgentPoolConfig.d.ts.map +1 -0
- package/dist/core/agents/AgentPoolConfig.js +58 -0
- package/dist/core/agents/AgentPoolConfig.js.map +1 -0
- package/dist/core/agents/IAgent.d.ts +226 -0
- package/dist/core/agents/IAgent.d.ts.map +1 -0
- package/dist/core/agents/IAgent.js +14 -0
- package/dist/core/agents/IAgent.js.map +1 -0
- package/dist/core/agents/IAgentFactory.d.ts +137 -0
- package/dist/core/agents/IAgentFactory.d.ts.map +1 -0
- package/dist/core/agents/IAgentFactory.js +13 -0
- package/dist/core/agents/IAgentFactory.js.map +1 -0
- package/dist/core/agents/tools/Tool.d.ts +17 -0
- package/dist/core/agents/tools/Tool.d.ts.map +1 -0
- package/dist/core/agents/tools/Tool.js +8 -0
- package/dist/core/agents/tools/Tool.js.map +1 -0
- package/dist/core/ai_utilities/HybridUtilityAI.d.ts +1 -0
- package/dist/core/ai_utilities/HybridUtilityAI.d.ts.map +1 -0
- package/dist/core/ai_utilities/HybridUtilityAI.js +2 -0
- package/dist/core/ai_utilities/HybridUtilityAI.js.map +1 -0
- package/dist/core/ai_utilities/IUtilityAI.d.ts +212 -0
- package/dist/core/ai_utilities/IUtilityAI.d.ts.map +1 -0
- package/dist/core/ai_utilities/IUtilityAI.js +11 -0
- package/dist/core/ai_utilities/IUtilityAI.js.map +1 -0
- package/dist/core/ai_utilities/LLMUtilityAI.d.ts +94 -0
- package/dist/core/ai_utilities/LLMUtilityAI.d.ts.map +1 -0
- package/dist/core/ai_utilities/LLMUtilityAI.js +434 -0
- package/dist/core/ai_utilities/LLMUtilityAI.js.map +1 -0
- package/dist/core/ai_utilities/StatisticalUtilityAI.d.ts +102 -0
- package/dist/core/ai_utilities/StatisticalUtilityAI.d.ts.map +1 -0
- package/dist/core/ai_utilities/StatisticalUtilityAI.js +617 -0
- package/dist/core/ai_utilities/StatisticalUtilityAI.js.map +1 -0
- package/dist/core/conversation/ConversationContext.d.ts +259 -0
- package/dist/core/conversation/ConversationContext.d.ts.map +1 -0
- package/dist/core/conversation/ConversationContext.js +450 -0
- package/dist/core/conversation/ConversationContext.js.map +1 -0
- package/dist/core/conversation/ConversationManager.d.ts +223 -0
- package/dist/core/conversation/ConversationManager.d.ts.map +1 -0
- package/dist/core/conversation/ConversationManager.js +558 -0
- package/dist/core/conversation/ConversationManager.js.map +1 -0
- package/dist/core/conversation/ConversationMessage.d.ts +184 -0
- package/dist/core/conversation/ConversationMessage.d.ts.map +1 -0
- package/dist/core/conversation/ConversationMessage.js +66 -0
- package/dist/core/conversation/ConversationMessage.js.map +1 -0
- package/dist/core/evaluation/Evaluator.d.ts +28 -0
- package/dist/core/evaluation/Evaluator.d.ts.map +1 -0
- package/dist/core/evaluation/Evaluator.js +490 -0
- package/dist/core/evaluation/Evaluator.js.map +1 -0
- package/dist/core/evaluation/IEvaluator.d.ts +309 -0
- package/dist/core/evaluation/IEvaluator.d.ts.map +1 -0
- package/dist/core/evaluation/IEvaluator.js +12 -0
- package/dist/core/evaluation/IEvaluator.js.map +1 -0
- package/dist/core/evaluation/LLMJudge.d.ts +105 -0
- package/dist/core/evaluation/LLMJudge.d.ts.map +1 -0
- package/dist/core/evaluation/LLMJudge.js +229 -0
- package/dist/core/evaluation/LLMJudge.js.map +1 -0
- package/dist/core/evaluation/index.d.ts +9 -0
- package/dist/core/evaluation/index.d.ts.map +1 -0
- package/dist/core/evaluation/index.js +9 -0
- package/dist/core/evaluation/index.js.map +1 -0
- package/dist/core/guardrails/IGuardrailService.d.ts +142 -0
- package/dist/core/guardrails/IGuardrailService.d.ts.map +1 -0
- package/dist/core/guardrails/IGuardrailService.js +24 -0
- package/dist/core/guardrails/IGuardrailService.js.map +1 -0
- package/dist/core/guardrails/guardrailDispatcher.d.ts +36 -0
- package/dist/core/guardrails/guardrailDispatcher.d.ts.map +1 -0
- package/dist/core/guardrails/guardrailDispatcher.js +240 -0
- package/dist/core/guardrails/guardrailDispatcher.js.map +1 -0
- package/dist/core/hitl/HumanInteractionManager.d.ts +146 -0
- package/dist/core/hitl/HumanInteractionManager.d.ts.map +1 -0
- package/dist/core/hitl/HumanInteractionManager.js +491 -0
- package/dist/core/hitl/HumanInteractionManager.js.map +1 -0
- package/dist/core/hitl/IHumanInteractionManager.d.ts +521 -0
- package/dist/core/hitl/IHumanInteractionManager.d.ts.map +1 -0
- package/dist/core/hitl/IHumanInteractionManager.js +33 -0
- package/dist/core/hitl/IHumanInteractionManager.js.map +1 -0
- package/dist/core/hitl/index.d.ts +17 -0
- package/dist/core/hitl/index.d.ts.map +1 -0
- package/dist/core/hitl/index.js +17 -0
- package/dist/core/hitl/index.js.map +1 -0
- package/dist/core/knowledge/IKnowledgeGraph.d.ts +351 -0
- package/dist/core/knowledge/IKnowledgeGraph.d.ts.map +1 -0
- package/dist/core/knowledge/IKnowledgeGraph.js +10 -0
- package/dist/core/knowledge/IKnowledgeGraph.js.map +1 -0
- package/dist/core/knowledge/KnowledgeGraph.d.ts +93 -0
- package/dist/core/knowledge/KnowledgeGraph.d.ts.map +1 -0
- package/dist/core/knowledge/KnowledgeGraph.js +601 -0
- package/dist/core/knowledge/KnowledgeGraph.js.map +1 -0
- package/dist/core/knowledge/index.d.ts +8 -0
- package/dist/core/knowledge/index.d.ts.map +1 -0
- package/dist/core/knowledge/index.js +8 -0
- package/dist/core/knowledge/index.js.map +1 -0
- package/dist/core/language/LanguageService.d.ts +77 -0
- package/dist/core/language/LanguageService.d.ts.map +1 -0
- package/dist/core/language/LanguageService.js +305 -0
- package/dist/core/language/LanguageService.js.map +1 -0
- package/dist/core/language/index.d.ts +6 -0
- package/dist/core/language/index.d.ts.map +1 -0
- package/dist/core/language/index.js +6 -0
- package/dist/core/language/index.js.map +1 -0
- package/dist/core/language/interfaces.d.ts +168 -0
- package/dist/core/language/interfaces.d.ts.map +1 -0
- package/dist/core/language/interfaces.js +37 -0
- package/dist/core/language/interfaces.js.map +1 -0
- package/dist/core/language/providers/DeepLTranslationProvider.d.ts +16 -0
- package/dist/core/language/providers/DeepLTranslationProvider.d.ts.map +1 -0
- package/dist/core/language/providers/DeepLTranslationProvider.js +28 -0
- package/dist/core/language/providers/DeepLTranslationProvider.js.map +1 -0
- package/dist/core/language/providers/OpenAITranslationProvider.d.ts +17 -0
- package/dist/core/language/providers/OpenAITranslationProvider.d.ts.map +1 -0
- package/dist/core/language/providers/OpenAITranslationProvider.js +34 -0
- package/dist/core/language/providers/OpenAITranslationProvider.js.map +1 -0
- package/dist/core/language/providers/WhisperDetectionProvider.d.ts +16 -0
- package/dist/core/language/providers/WhisperDetectionProvider.d.ts.map +1 -0
- package/dist/core/language/providers/WhisperDetectionProvider.js +15 -0
- package/dist/core/language/providers/WhisperDetectionProvider.js.map +1 -0
- package/dist/core/llm/IPromptEngine.d.ts +627 -0
- package/dist/core/llm/IPromptEngine.d.ts.map +1 -0
- package/dist/core/llm/IPromptEngine.js +81 -0
- package/dist/core/llm/IPromptEngine.js.map +1 -0
- package/dist/core/llm/PromptEngine.d.ts +108 -0
- package/dist/core/llm/PromptEngine.d.ts.map +1 -0
- package/dist/core/llm/PromptEngine.js +872 -0
- package/dist/core/llm/PromptEngine.js.map +1 -0
- package/dist/core/llm/providers/AIModelProviderManager.d.ts +74 -0
- package/dist/core/llm/providers/AIModelProviderManager.d.ts.map +1 -0
- package/dist/core/llm/providers/AIModelProviderManager.js +263 -0
- package/dist/core/llm/providers/AIModelProviderManager.js.map +1 -0
- package/dist/core/llm/providers/IProvider.d.ts +327 -0
- package/dist/core/llm/providers/IProvider.d.ts.map +1 -0
- package/dist/core/llm/providers/IProvider.js +39 -0
- package/dist/core/llm/providers/IProvider.js.map +1 -0
- package/dist/core/llm/providers/errors/OllamaProviderError.d.ts +36 -0
- package/dist/core/llm/providers/errors/OllamaProviderError.d.ts.map +1 -0
- package/dist/core/llm/providers/errors/OllamaProviderError.js +40 -0
- package/dist/core/llm/providers/errors/OllamaProviderError.js.map +1 -0
- package/dist/core/llm/providers/errors/OpenAIProviderError.d.ts +42 -0
- package/dist/core/llm/providers/errors/OpenAIProviderError.d.ts.map +1 -0
- package/dist/core/llm/providers/errors/OpenAIProviderError.js +44 -0
- package/dist/core/llm/providers/errors/OpenAIProviderError.js.map +1 -0
- package/dist/core/llm/providers/errors/OpenRouterProviderError.d.ts +39 -0
- package/dist/core/llm/providers/errors/OpenRouterProviderError.d.ts.map +1 -0
- package/dist/core/llm/providers/errors/OpenRouterProviderError.js +42 -0
- package/dist/core/llm/providers/errors/OpenRouterProviderError.js.map +1 -0
- package/dist/core/llm/providers/errors/ProviderError.d.ts +37 -0
- package/dist/core/llm/providers/errors/ProviderError.d.ts.map +1 -0
- package/dist/core/llm/providers/errors/ProviderError.js +36 -0
- package/dist/core/llm/providers/errors/ProviderError.js.map +1 -0
- package/dist/core/llm/providers/implementations/OllamaProvider.d.ts +80 -0
- package/dist/core/llm/providers/implementations/OllamaProvider.d.ts.map +1 -0
- package/dist/core/llm/providers/implementations/OllamaProvider.js +473 -0
- package/dist/core/llm/providers/implementations/OllamaProvider.js.map +1 -0
- package/dist/core/llm/providers/implementations/OpenAIProvider.d.ts +160 -0
- package/dist/core/llm/providers/implementations/OpenAIProvider.d.ts.map +1 -0
- package/dist/core/llm/providers/implementations/OpenAIProvider.js +672 -0
- package/dist/core/llm/providers/implementations/OpenAIProvider.js.map +1 -0
- package/dist/core/llm/providers/implementations/OpenRouterProvider.d.ts +51 -0
- package/dist/core/llm/providers/implementations/OpenRouterProvider.d.ts.map +1 -0
- package/dist/core/llm/providers/implementations/OpenRouterProvider.js +499 -0
- package/dist/core/llm/providers/implementations/OpenRouterProvider.js.map +1 -0
- package/dist/core/llm/routing/IModelRouter.d.ts +129 -0
- package/dist/core/llm/routing/IModelRouter.d.ts.map +1 -0
- package/dist/core/llm/routing/IModelRouter.js +14 -0
- package/dist/core/llm/routing/IModelRouter.js.map +1 -0
- package/dist/core/llm/routing/ModelRouter.d.ts +157 -0
- package/dist/core/llm/routing/ModelRouter.d.ts.map +1 -0
- package/dist/core/llm/routing/ModelRouter.js +190 -0
- package/dist/core/llm/routing/ModelRouter.js.map +1 -0
- package/dist/core/llm/streaming/StreamingBatcher.d.ts +54 -0
- package/dist/core/llm/streaming/StreamingBatcher.d.ts.map +1 -0
- package/dist/core/llm/streaming/StreamingBatcher.js +173 -0
- package/dist/core/llm/streaming/StreamingBatcher.js.map +1 -0
- package/dist/core/llm/streaming/StreamingReconstructor.d.ts +69 -0
- package/dist/core/llm/streaming/StreamingReconstructor.d.ts.map +1 -0
- package/dist/core/llm/streaming/StreamingReconstructor.js +102 -0
- package/dist/core/llm/streaming/StreamingReconstructor.js.map +1 -0
- package/dist/core/marketplace/IMarketplace.d.ts +500 -0
- package/dist/core/marketplace/IMarketplace.d.ts.map +1 -0
- package/dist/core/marketplace/IMarketplace.js +10 -0
- package/dist/core/marketplace/IMarketplace.js.map +1 -0
- package/dist/core/marketplace/Marketplace.d.ts +122 -0
- package/dist/core/marketplace/Marketplace.d.ts.map +1 -0
- package/dist/core/marketplace/Marketplace.js +591 -0
- package/dist/core/marketplace/Marketplace.js.map +1 -0
- package/dist/core/marketplace/index.d.ts +8 -0
- package/dist/core/marketplace/index.d.ts.map +1 -0
- package/dist/core/marketplace/index.js +8 -0
- package/dist/core/marketplace/index.js.map +1 -0
- package/dist/core/observability/ITracer.d.ts +317 -0
- package/dist/core/observability/ITracer.d.ts.map +1 -0
- package/dist/core/observability/ITracer.js +55 -0
- package/dist/core/observability/ITracer.js.map +1 -0
- package/dist/core/observability/Tracer.d.ts +76 -0
- package/dist/core/observability/Tracer.d.ts.map +1 -0
- package/dist/core/observability/Tracer.js +360 -0
- package/dist/core/observability/Tracer.js.map +1 -0
- package/dist/core/observability/index.d.ts +9 -0
- package/dist/core/observability/index.d.ts.map +1 -0
- package/dist/core/observability/index.js +8 -0
- package/dist/core/observability/index.js.map +1 -0
- package/dist/core/orchestration/AgentOrchestrator.d.ts +243 -0
- package/dist/core/orchestration/AgentOrchestrator.d.ts.map +1 -0
- package/dist/core/orchestration/AgentOrchestrator.js +648 -0
- package/dist/core/orchestration/AgentOrchestrator.js.map +1 -0
- package/dist/core/orchestration/IAgentOrchestrator.d.ts +44 -0
- package/dist/core/orchestration/IAgentOrchestrator.d.ts.map +1 -0
- package/dist/core/orchestration/IAgentOrchestrator.js +4 -0
- package/dist/core/orchestration/IAgentOrchestrator.js.map +1 -0
- package/dist/core/orchestration/helpers.d.ts +12 -0
- package/dist/core/orchestration/helpers.d.ts.map +1 -0
- package/dist/core/orchestration/helpers.js +36 -0
- package/dist/core/orchestration/helpers.js.map +1 -0
- package/dist/core/planning/IPlanningEngine.d.ts +524 -0
- package/dist/core/planning/IPlanningEngine.d.ts.map +1 -0
- package/dist/core/planning/IPlanningEngine.js +32 -0
- package/dist/core/planning/IPlanningEngine.js.map +1 -0
- package/dist/core/planning/PlanningEngine.d.ts +161 -0
- package/dist/core/planning/PlanningEngine.d.ts.map +1 -0
- package/dist/core/planning/PlanningEngine.js +783 -0
- package/dist/core/planning/PlanningEngine.js.map +1 -0
- package/dist/core/planning/index.d.ts +25 -0
- package/dist/core/planning/index.d.ts.map +1 -0
- package/dist/core/planning/index.js +25 -0
- package/dist/core/planning/index.js.map +1 -0
- package/dist/core/sandbox/CodeSandbox.d.ts +86 -0
- package/dist/core/sandbox/CodeSandbox.d.ts.map +1 -0
- package/dist/core/sandbox/CodeSandbox.js +475 -0
- package/dist/core/sandbox/CodeSandbox.js.map +1 -0
- package/dist/core/sandbox/ICodeSandbox.d.ts +249 -0
- package/dist/core/sandbox/ICodeSandbox.d.ts.map +1 -0
- package/dist/core/sandbox/ICodeSandbox.js +24 -0
- package/dist/core/sandbox/ICodeSandbox.js.map +1 -0
- package/dist/core/sandbox/index.d.ts +9 -0
- package/dist/core/sandbox/index.d.ts.map +1 -0
- package/dist/core/sandbox/index.js +8 -0
- package/dist/core/sandbox/index.js.map +1 -0
- package/dist/core/storage/IStorageAdapter.d.ts +483 -0
- package/dist/core/storage/IStorageAdapter.d.ts.map +1 -0
- package/dist/core/storage/IStorageAdapter.js +19 -0
- package/dist/core/storage/IStorageAdapter.js.map +1 -0
- package/dist/core/storage/InMemoryStorageAdapter.d.ts +192 -0
- package/dist/core/storage/InMemoryStorageAdapter.d.ts.map +1 -0
- package/dist/core/storage/InMemoryStorageAdapter.js +343 -0
- package/dist/core/storage/InMemoryStorageAdapter.js.map +1 -0
- package/dist/core/storage/SqlStorageAdapter.d.ts +262 -0
- package/dist/core/storage/SqlStorageAdapter.d.ts.map +1 -0
- package/dist/core/storage/SqlStorageAdapter.js +485 -0
- package/dist/core/storage/SqlStorageAdapter.js.map +1 -0
- package/dist/core/storage/index.d.ts +14 -0
- package/dist/core/storage/index.d.ts.map +1 -0
- package/dist/core/storage/index.js +14 -0
- package/dist/core/storage/index.js.map +1 -0
- package/dist/core/streaming/IStreamClient.d.ts +72 -0
- package/dist/core/streaming/IStreamClient.d.ts.map +1 -0
- package/dist/core/streaming/IStreamClient.js +12 -0
- package/dist/core/streaming/IStreamClient.js.map +1 -0
- package/dist/core/streaming/StreamingManager.d.ts +242 -0
- package/dist/core/streaming/StreamingManager.d.ts.map +1 -0
- package/dist/core/streaming/StreamingManager.js +282 -0
- package/dist/core/streaming/StreamingManager.js.map +1 -0
- package/dist/core/structured/IStructuredOutputManager.d.ts +701 -0
- package/dist/core/structured/IStructuredOutputManager.d.ts.map +1 -0
- package/dist/core/structured/IStructuredOutputManager.js +74 -0
- package/dist/core/structured/IStructuredOutputManager.js.map +1 -0
- package/dist/core/structured/StructuredOutputManager.d.ts +140 -0
- package/dist/core/structured/StructuredOutputManager.d.ts.map +1 -0
- package/dist/core/structured/StructuredOutputManager.js +1015 -0
- package/dist/core/structured/StructuredOutputManager.js.map +1 -0
- package/dist/core/structured/index.d.ts +34 -0
- package/dist/core/structured/index.d.ts.map +1 -0
- package/dist/core/structured/index.js +34 -0
- package/dist/core/structured/index.js.map +1 -0
- package/dist/core/tools/ITool.d.ts +228 -0
- package/dist/core/tools/ITool.d.ts.map +1 -0
- package/dist/core/tools/ITool.js +11 -0
- package/dist/core/tools/ITool.js.map +1 -0
- package/dist/core/tools/IToolOrchestrator.d.ts +131 -0
- package/dist/core/tools/IToolOrchestrator.d.ts.map +1 -0
- package/dist/core/tools/IToolOrchestrator.js +14 -0
- package/dist/core/tools/IToolOrchestrator.js.map +1 -0
- package/dist/core/tools/ToolExecutor.d.ts +143 -0
- package/dist/core/tools/ToolExecutor.d.ts.map +1 -0
- package/dist/core/tools/ToolExecutor.js +364 -0
- package/dist/core/tools/ToolExecutor.js.map +1 -0
- package/dist/core/tools/ToolOrchestrator.d.ts +142 -0
- package/dist/core/tools/ToolOrchestrator.d.ts.map +1 -0
- package/dist/core/tools/ToolOrchestrator.js +373 -0
- package/dist/core/tools/ToolOrchestrator.js.map +1 -0
- package/dist/core/tools/permissions/IToolPermissionManager.d.ts +195 -0
- package/dist/core/tools/permissions/IToolPermissionManager.d.ts.map +1 -0
- package/dist/core/tools/permissions/IToolPermissionManager.js +14 -0
- package/dist/core/tools/permissions/IToolPermissionManager.js.map +1 -0
- package/dist/core/tools/permissions/ToolPermissionManager.d.ts +203 -0
- package/dist/core/tools/permissions/ToolPermissionManager.d.ts.map +1 -0
- package/dist/core/tools/permissions/ToolPermissionManager.js +298 -0
- package/dist/core/tools/permissions/ToolPermissionManager.js.map +1 -0
- package/dist/core/ui/IUIComponent.d.ts +11 -0
- package/dist/core/ui/IUIComponent.d.ts.map +1 -0
- package/dist/core/ui/IUIComponent.js +2 -0
- package/dist/core/ui/IUIComponent.js.map +1 -0
- package/dist/core/usage/UsageLedger.d.ts +81 -0
- package/dist/core/usage/UsageLedger.d.ts.map +1 -0
- package/dist/core/usage/UsageLedger.js +135 -0
- package/dist/core/usage/UsageLedger.js.map +1 -0
- package/dist/core/workflows/IWorkflowEngine.d.ts +42 -0
- package/dist/core/workflows/IWorkflowEngine.d.ts.map +1 -0
- package/dist/core/workflows/IWorkflowEngine.js +2 -0
- package/dist/core/workflows/IWorkflowEngine.js.map +1 -0
- package/dist/core/workflows/WorkflowEngine.d.ts +28 -0
- package/dist/core/workflows/WorkflowEngine.d.ts.map +1 -0
- package/dist/core/workflows/WorkflowEngine.js +309 -0
- package/dist/core/workflows/WorkflowEngine.js.map +1 -0
- package/dist/core/workflows/WorkflowTypes.d.ts +180 -0
- package/dist/core/workflows/WorkflowTypes.d.ts.map +1 -0
- package/dist/core/workflows/WorkflowTypes.js +26 -0
- package/dist/core/workflows/WorkflowTypes.js.map +1 -0
- package/dist/core/workflows/runtime/WorkflowRuntime.d.ts +70 -0
- package/dist/core/workflows/runtime/WorkflowRuntime.d.ts.map +1 -0
- package/dist/core/workflows/runtime/WorkflowRuntime.js +566 -0
- package/dist/core/workflows/runtime/WorkflowRuntime.js.map +1 -0
- package/dist/core/workflows/storage/IWorkflowStore.d.ts +75 -0
- package/dist/core/workflows/storage/IWorkflowStore.d.ts.map +1 -0
- package/dist/core/workflows/storage/IWorkflowStore.js +2 -0
- package/dist/core/workflows/storage/IWorkflowStore.js.map +1 -0
- package/dist/core/workflows/storage/InMemoryWorkflowStore.d.ts +14 -0
- package/dist/core/workflows/storage/InMemoryWorkflowStore.d.ts.map +1 -0
- package/dist/core/workflows/storage/InMemoryWorkflowStore.js +130 -0
- package/dist/core/workflows/storage/InMemoryWorkflowStore.js.map +1 -0
- package/dist/extensions/ExtensionLoader.d.ts +119 -0
- package/dist/extensions/ExtensionLoader.d.ts.map +1 -0
- package/dist/extensions/ExtensionLoader.js +297 -0
- package/dist/extensions/ExtensionLoader.js.map +1 -0
- package/dist/extensions/ExtensionManager.d.ts +49 -0
- package/dist/extensions/ExtensionManager.d.ts.map +1 -0
- package/dist/extensions/ExtensionManager.js +197 -0
- package/dist/extensions/ExtensionManager.js.map +1 -0
- package/dist/extensions/ExtensionRegistry.d.ts +39 -0
- package/dist/extensions/ExtensionRegistry.d.ts.map +1 -0
- package/dist/extensions/ExtensionRegistry.js +103 -0
- package/dist/extensions/ExtensionRegistry.js.map +1 -0
- package/dist/extensions/MultiRegistryLoader.d.ts +61 -0
- package/dist/extensions/MultiRegistryLoader.d.ts.map +1 -0
- package/dist/extensions/MultiRegistryLoader.js +169 -0
- package/dist/extensions/MultiRegistryLoader.js.map +1 -0
- package/dist/extensions/RegistryConfig.d.ts +86 -0
- package/dist/extensions/RegistryConfig.d.ts.map +1 -0
- package/dist/extensions/RegistryConfig.js +99 -0
- package/dist/extensions/RegistryConfig.js.map +1 -0
- package/dist/extensions/events.d.ts +19 -0
- package/dist/extensions/events.d.ts.map +1 -0
- package/dist/extensions/events.js +2 -0
- package/dist/extensions/events.js.map +1 -0
- package/dist/extensions/index.d.ts +9 -0
- package/dist/extensions/index.d.ts.map +1 -0
- package/dist/extensions/index.js +9 -0
- package/dist/extensions/index.js.map +1 -0
- package/dist/extensions/manifest.d.ts +52 -0
- package/dist/extensions/manifest.d.ts.map +1 -0
- package/dist/extensions/manifest.js +2 -0
- package/dist/extensions/manifest.js.map +1 -0
- package/dist/extensions/types.d.ts +294 -0
- package/dist/extensions/types.d.ts.map +1 -0
- package/dist/extensions/types.js +12 -0
- package/dist/extensions/types.js.map +1 -0
- package/dist/index.d.ts +49 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +59 -0
- package/dist/index.js.map +1 -0
- package/dist/logging/ILogger.d.ts +8 -0
- package/dist/logging/ILogger.d.ts.map +1 -0
- package/dist/logging/ILogger.js +2 -0
- package/dist/logging/ILogger.js.map +1 -0
- package/dist/logging/PinoLogger.d.ts +12 -0
- package/dist/logging/PinoLogger.d.ts.map +1 -0
- package/dist/logging/PinoLogger.js +22 -0
- package/dist/logging/PinoLogger.js.map +1 -0
- package/dist/logging/loggerFactory.d.ts +6 -0
- package/dist/logging/loggerFactory.d.ts.map +1 -0
- package/dist/logging/loggerFactory.js +14 -0
- package/dist/logging/loggerFactory.js.map +1 -0
- package/dist/rag/EmbeddingManager.d.ts +81 -0
- package/dist/rag/EmbeddingManager.d.ts.map +1 -0
- package/dist/rag/EmbeddingManager.js +412 -0
- package/dist/rag/EmbeddingManager.js.map +1 -0
- package/dist/rag/IEmbeddingManager.d.ts +277 -0
- package/dist/rag/IEmbeddingManager.d.ts.map +1 -0
- package/dist/rag/IEmbeddingManager.js +19 -0
- package/dist/rag/IEmbeddingManager.js.map +1 -0
- package/dist/rag/IRetrievalAugmentor.d.ts +208 -0
- package/dist/rag/IRetrievalAugmentor.d.ts.map +1 -0
- package/dist/rag/IRetrievalAugmentor.js +21 -0
- package/dist/rag/IRetrievalAugmentor.js.map +1 -0
- package/dist/rag/IVectorStore.d.ts +351 -0
- package/dist/rag/IVectorStore.d.ts.map +1 -0
- package/dist/rag/IVectorStore.js +15 -0
- package/dist/rag/IVectorStore.js.map +1 -0
- package/dist/rag/IVectorStoreManager.d.ts +121 -0
- package/dist/rag/IVectorStoreManager.d.ts.map +1 -0
- package/dist/rag/IVectorStoreManager.js +13 -0
- package/dist/rag/IVectorStoreManager.js.map +1 -0
- package/dist/rag/RetrievalAugmentor.d.ts +99 -0
- package/dist/rag/RetrievalAugmentor.d.ts.map +1 -0
- package/dist/rag/RetrievalAugmentor.js +674 -0
- package/dist/rag/RetrievalAugmentor.js.map +1 -0
- package/dist/rag/VectorStoreManager.d.ts +90 -0
- package/dist/rag/VectorStoreManager.d.ts.map +1 -0
- package/dist/rag/VectorStoreManager.js +283 -0
- package/dist/rag/VectorStoreManager.js.map +1 -0
- package/dist/rag/implementations/index.d.ts +9 -0
- package/dist/rag/implementations/index.d.ts.map +1 -0
- package/dist/rag/implementations/index.js +9 -0
- package/dist/rag/implementations/index.js.map +1 -0
- package/dist/rag/implementations/vector_stores/InMemoryVectorStore.d.ts +132 -0
- package/dist/rag/implementations/vector_stores/InMemoryVectorStore.d.ts.map +1 -0
- package/dist/rag/implementations/vector_stores/InMemoryVectorStore.js +539 -0
- package/dist/rag/implementations/vector_stores/InMemoryVectorStore.js.map +1 -0
- package/dist/rag/implementations/vector_stores/SqlVectorStore.d.ts +265 -0
- package/dist/rag/implementations/vector_stores/SqlVectorStore.d.ts.map +1 -0
- package/dist/rag/implementations/vector_stores/SqlVectorStore.js +755 -0
- package/dist/rag/implementations/vector_stores/SqlVectorStore.js.map +1 -0
- package/dist/rag/implementations/vector_stores/index.d.ts +10 -0
- package/dist/rag/implementations/vector_stores/index.d.ts.map +1 -0
- package/dist/rag/implementations/vector_stores/index.js +12 -0
- package/dist/rag/implementations/vector_stores/index.js.map +1 -0
- package/dist/rag/index.d.ts +95 -0
- package/dist/rag/index.d.ts.map +1 -0
- package/dist/rag/index.js +97 -0
- package/dist/rag/index.js.map +1 -0
- package/dist/services/user_auth/AuthService.d.ts +13 -0
- package/dist/services/user_auth/AuthService.d.ts.map +1 -0
- package/dist/services/user_auth/AuthService.js +24 -0
- package/dist/services/user_auth/AuthService.js.map +1 -0
- package/dist/services/user_auth/SubscriptionService.d.ts +14 -0
- package/dist/services/user_auth/SubscriptionService.d.ts.map +1 -0
- package/dist/services/user_auth/SubscriptionService.js +34 -0
- package/dist/services/user_auth/SubscriptionService.js.map +1 -0
- package/dist/services/user_auth/types.d.ts +30 -0
- package/dist/services/user_auth/types.d.ts.map +1 -0
- package/dist/services/user_auth/types.js +2 -0
- package/dist/services/user_auth/types.js.map +1 -0
- package/dist/stubs/prismaClient.d.ts +35 -0
- package/dist/stubs/prismaClient.d.ts.map +1 -0
- package/dist/stubs/prismaClient.js +47 -0
- package/dist/stubs/prismaClient.js.map +1 -0
- package/dist/types/rateLimitTypes.d.ts +70 -0
- package/dist/types/rateLimitTypes.d.ts.map +1 -0
- package/dist/types/rateLimitTypes.js +55 -0
- package/dist/types/rateLimitTypes.js.map +1 -0
- package/dist/utils/errors.d.ts +80 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +201 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/uuid.d.ts +11 -0
- package/dist/utils/uuid.d.ts.map +1 -0
- package/dist/utils/uuid.js +64 -0
- package/dist/utils/uuid.js.map +1 -0
- 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":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAEL,qBAAqB,GAEtB,MAAM,8BAA8B,CAAC;AAkCtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAM,OAAO,iBAAiB;IAK5B;;;;;;;;;;;;OAYG;IACH,YAAY,SAAkC,EAAE;QAfxC,gBAAW,GAAY,KAAK,CAAC;QAgBnC,IAAI,CAAC,MAAM,GAAG;YACZ,mBAAmB,EAAE,IAAI;YACzB,oBAAoB,EAAE,CAAC;YACvB,GAAG,MAAM;SACV,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,OAAO;QACT,CAAC;QAED,2DAA2D;QAC3D,IAAI,CAAC,OAAO,GAAG,MAAM,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAExD,6BAA6B;QAC7B,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;;;;;;;;;;;;;KAavB,CAAC,CAAC;QAEH,yCAAyC;QACzC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;KAoBvB,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC3B,CAAC;IAED,oEAAoE;IAEpE;;;;;;OAMG;IACH,KAAK,CAAC,kBAAkB,CAAC,YAA2B;QAClD,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,MAAM,YAAY,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAE1F,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CACpB;oCAC8B,EAC9B;YACE,YAAY,CAAC,EAAE;YACf,YAAY,CAAC,MAAM;YACnB,YAAY,CAAC,OAAO,IAAI,IAAI;YAC5B,YAAY,CAAC,SAAS;YACtB,YAAY,CAAC,YAAY;YACzB,YAAY,CAAC,KAAK,IAAI,IAAI;YAC1B,YAAY;SACb,CACF,CAAC;QAEF,OAAO,YAAY,CAAC;IACtB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,eAAe,CAAC,cAAsB;QAC1C,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAChC,0CAA0C,EAC1C,CAAC,cAAc,CAAC,CACjB,CAAC;QAEF,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,kBAAkB,CACtB,cAAsB,EACtB,OAA+B;QAE/B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,2BAA2B,cAAc,EAAE,CAAC,CAAC;QAC/D,CAAC;QAED,MAAM,OAAO,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,OAAO,EAAE,CAAC;QAC5C,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAEhF,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CACpB;;oBAEc,EACd;YACE,OAAO,CAAC,MAAM;YACd,OAAO,CAAC,OAAO,IAAI,IAAI;YACvB,OAAO,CAAC,SAAS;YACjB,OAAO,CAAC,YAAY;YACpB,OAAO,CAAC,KAAK,IAAI,IAAI;YACrB,YAAY;YACZ,cAAc;SACf,CACF,CAAC;QAEF,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,kBAAkB,CAAC,cAAsB;QAC7C,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CACnC,wCAAwC,EACxC,CAAC,cAAc,CAAC,CACjB,CAAC;QAEF,OAAO,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,iBAAiB,CACrB,MAAc,EACd,OAA+D;QAE/D,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,IAAI,KAAK,GAAG,8CAA8C,CAAC;QAC3D,MAAM,MAAM,GAAU,CAAC,MAAM,CAAC,CAAC;QAE/B,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;YACrB,KAAK,IAAI,kBAAkB,CAAC;YAC5B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;QAED,KAAK,IAAI,6BAA6B,CAAC;QAEvC,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;YACnB,KAAK,IAAI,UAAU,CAAC;YACpB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;QAED,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;YACpB,KAAK,IAAI,WAAW,CAAC;YACrB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAM,KAAK,EAAE,MAAM,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,+DAA+D;IAE/D;;;;;;OAMG;IACH,KAAK,CAAC,YAAY,CAAC,OAA6B;QAC9C,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,6BAA6B;QAC7B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACxE,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,2BAA2B,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,aAAa,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACnF,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAEhF,iBAAiB;QACjB,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CACpB;;sDAEgD,EAChD;YACE,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,cAAc;YACtB,OAAO,CAAC,IAAI;YACZ,OAAO,CAAC,OAAO;YACf,OAAO,CAAC,SAAS;YACjB,OAAO,CAAC,KAAK,IAAI,IAAI;YACrB,OAAO,CAAC,KAAK,EAAE,YAAY,IAAI,IAAI;YACnC,OAAO,CAAC,KAAK,EAAE,gBAAgB,IAAI,IAAI;YACvC,OAAO,CAAC,KAAK,EAAE,WAAW,IAAI,IAAI;YAClC,aAAa;YACb,OAAO,CAAC,UAAU,IAAI,IAAI;YAC1B,OAAO,CAAC,IAAI,IAAI,IAAI;YACpB,YAAY;SACb,CACF,CAAC;QAEF,mCAAmC;QACnC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CACpB,wDAAwD,EACxD,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,cAAc,CAAC,CAC5C,CAAC;QAEF,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU,CAAC,SAAiB;QAChC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAM,qCAAqC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;QAE5F,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,WAAW,CACf,cAAsB,EACtB,OAA8B;QAE9B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,IAAI,KAAK,GAAG,iDAAiD,CAAC;QAC9D,MAAM,MAAM,GAAU,CAAC,cAAc,CAAC,CAAC;QAEvC,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;YACnB,KAAK,IAAI,qBAAqB,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;QAED,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;YACnB,KAAK,IAAI,qBAAqB,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;QAED,IAAI,OAAO,EAAE,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/C,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC5D,KAAK,IAAI,iBAAiB,YAAY,GAAG,CAAC;YAC1C,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QACzD,KAAK,IAAI,uBAAuB,KAAK,EAAE,CAAC;QAExC,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;YACnB,KAAK,IAAI,UAAU,CAAC;YACpB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;QAED,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;YACpB,KAAK,IAAI,WAAW,CAAC;YACrB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAM,KAAK,EAAE,MAAM,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;IACxD,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,aAAa,CAAC,SAAiB;QACnC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,mCAAmC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;QACxF,OAAO,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,6BAA6B,CAAC,cAAsB;QACxD,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,+CAA+C,EAAE;YACrF,cAAc;SACf,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,kEAAkE;IAElE;;;;;OAKG;IACH,KAAK,CAAC,eAAe,CAAC,cAAsB;QAC1C,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAChC,iEAAiE,EACjE,CAAC,cAAc,CAAC,CACjB,CAAC;QAEF,OAAO,GAAG,EAAE,KAAK,IAAI,CAAC,CAAC;IACzB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,yBAAyB,CAAC,cAAsB;QACpD,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAChC;;;;;gCAK0B,EAC1B,CAAC,cAAc,CAAC,CACjB,CAAC;QAEF,OAAO;YACL,YAAY,EAAE,GAAG,EAAE,YAAY,IAAI,CAAC;YACpC,gBAAgB,EAAE,GAAG,EAAE,gBAAgB,IAAI,CAAC;YAC5C,WAAW,EAAE,GAAG,EAAE,WAAW,IAAI,CAAC;SACnC,CAAC;IACJ,CAAC;IAED,mEAAmE;IAEnE;;;;;OAKG;IACK,iBAAiB;QACvB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACK,iBAAiB,CAAC,GAAQ;QAChC,OAAO;YACL,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,SAAS;YACjC,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,YAAY,EAAE,GAAG,CAAC,YAAY;YAC9B,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,SAAS;YAC7B,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;SAC9D,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACK,YAAY,CAAC,GAAQ;QAC3B,MAAM,OAAO,GAAyB;YACpC,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,cAAc,EAAE,GAAG,CAAC,cAAc;YAClC,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,SAAS,EAAE,GAAG,CAAC,SAAS;SACzB,CAAC;QAEF,IAAI,GAAG,CAAC,KAAK;YAAE,OAAO,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;QACzC,IAAI,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,gBAAgB,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;YAChE,OAAO,CAAC,KAAK,GAAG;gBACd,YAAY,EAAE,GAAG,CAAC,YAAY,IAAI,CAAC;gBACnC,gBAAgB,EAAE,GAAG,CAAC,gBAAgB,IAAI,CAAC;gBAC3C,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,CAAC;aAClC,CAAC;QACJ,CAAC;QACD,IAAI,GAAG,CAAC,SAAS;YAAE,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACjE,IAAI,GAAG,CAAC,UAAU;YAAE,OAAO,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;QACxD,IAAI,GAAG,CAAC,IAAI;YAAE,OAAO,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QACtC,IAAI,GAAG,CAAC,QAAQ;YAAE,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE9D,OAAO,OAAO,CAAC;IACjB,CAAC;CACF"}
|
|
@@ -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"}
|