@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,399 @@
|
|
|
1
|
+
// File: backend/agentos/config/AgentOSConfig.ts
|
|
2
|
+
/**
|
|
3
|
+
* @fileoverview Centralized configuration factory for AgentOS.
|
|
4
|
+
* This module provides the `createAgentOSConfig` function that assembles
|
|
5
|
+
* all required configurations and service instances needed to initialize
|
|
6
|
+
* the AgentOS system. It handles environment variable reading, service
|
|
7
|
+
* instantiation, and configuration validation.
|
|
8
|
+
*
|
|
9
|
+
* @module backend/agentos/config/AgentOSConfig
|
|
10
|
+
*/
|
|
11
|
+
import { PrismaClient } from '../stubs/prismaClient.js';
|
|
12
|
+
// Service implementations
|
|
13
|
+
import { AuthService } from '../services/user_auth/AuthService.js';
|
|
14
|
+
import { SubscriptionService } from '../services/user_auth/SubscriptionService.js';
|
|
15
|
+
// Utility for error handling
|
|
16
|
+
import { GMIError, GMIErrorCode } from '../utils/errors.js';
|
|
17
|
+
/**
|
|
18
|
+
* Validates the environment configuration for required variables.
|
|
19
|
+
*
|
|
20
|
+
* @param env - The environment configuration object
|
|
21
|
+
* @returns Validation result with errors and warnings
|
|
22
|
+
*/
|
|
23
|
+
export function validateEnvironmentConfig(env) {
|
|
24
|
+
const errors = [];
|
|
25
|
+
const warnings = [];
|
|
26
|
+
// Required variables
|
|
27
|
+
const required = [
|
|
28
|
+
'DATABASE_URL',
|
|
29
|
+
'JWT_SECRET',
|
|
30
|
+
'API_KEY_ENCRYPTION_KEY_HEX'
|
|
31
|
+
];
|
|
32
|
+
for (const key of required) {
|
|
33
|
+
if (!env[key]) {
|
|
34
|
+
errors.push(`Missing required environment variable: ${key}`);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
// Validate JWT_SECRET strength
|
|
38
|
+
if (env.JWT_SECRET && env.JWT_SECRET.length < 32) {
|
|
39
|
+
errors.push('JWT_SECRET must be at least 32 characters long');
|
|
40
|
+
}
|
|
41
|
+
// Validate API_KEY_ENCRYPTION_KEY_HEX format
|
|
42
|
+
if (env.API_KEY_ENCRYPTION_KEY_HEX) {
|
|
43
|
+
if (env.API_KEY_ENCRYPTION_KEY_HEX.length !== 64) {
|
|
44
|
+
errors.push('API_KEY_ENCRYPTION_KEY_HEX must be exactly 64 characters (32 bytes in hex)');
|
|
45
|
+
}
|
|
46
|
+
if (!/^[0-9a-fA-F]+$/.test(env.API_KEY_ENCRYPTION_KEY_HEX)) {
|
|
47
|
+
errors.push('API_KEY_ENCRYPTION_KEY_HEX must contain only hexadecimal characters');
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
// Warnings for missing optional but recommended variables
|
|
51
|
+
if (!env.OPENAI_API_KEY && !env.ANTHROPIC_API_KEY && !env.OPENROUTER_API_KEY && !env.OLLAMA_BASE_URL) {
|
|
52
|
+
warnings.push('No LLM provider API keys configured. AgentOS will have limited functionality.');
|
|
53
|
+
}
|
|
54
|
+
if (!env.DEFAULT_PERSONA_ID) {
|
|
55
|
+
warnings.push('DEFAULT_PERSONA_ID not set. Will use fallback default.');
|
|
56
|
+
}
|
|
57
|
+
return {
|
|
58
|
+
isValid: errors.length === 0,
|
|
59
|
+
errors,
|
|
60
|
+
warnings
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Reads and validates environment configuration.
|
|
65
|
+
*
|
|
66
|
+
* @returns Validated environment configuration
|
|
67
|
+
* @throws GMIError if required environment variables are missing
|
|
68
|
+
*/
|
|
69
|
+
export function getEnvironmentConfig() {
|
|
70
|
+
const env = {
|
|
71
|
+
DATABASE_URL: process.env.DATABASE_URL,
|
|
72
|
+
JWT_SECRET: process.env.JWT_SECRET,
|
|
73
|
+
JWT_EXPIRES_IN: process.env.JWT_EXPIRES_IN || '7d',
|
|
74
|
+
API_KEY_ENCRYPTION_KEY_HEX: process.env.API_KEY_ENCRYPTION_KEY_HEX,
|
|
75
|
+
GOOGLE_CLIENT_ID: process.env.GOOGLE_CLIENT_ID,
|
|
76
|
+
GOOGLE_CLIENT_SECRET: process.env.GOOGLE_CLIENT_SECRET,
|
|
77
|
+
GOOGLE_CALLBACK_URL: process.env.GOOGLE_CALLBACK_URL,
|
|
78
|
+
OPENAI_API_KEY: process.env.OPENAI_API_KEY,
|
|
79
|
+
ANTHROPIC_API_KEY: process.env.ANTHROPIC_API_KEY,
|
|
80
|
+
OPENROUTER_API_KEY: process.env.OPENROUTER_API_KEY,
|
|
81
|
+
OLLAMA_BASE_URL: process.env.OLLAMA_BASE_URL || 'http://localhost:11434',
|
|
82
|
+
LEMONSQUEEZY_API_KEY: process.env.LEMONSQUEEZY_API_KEY,
|
|
83
|
+
LEMONSQUEEZY_WEBHOOK_SECRET: process.env.LEMONSQUEEZY_WEBHOOK_SECRET,
|
|
84
|
+
LEMONSQUEEZY_STORE_ID: process.env.LEMONSQUEEZY_STORE_ID,
|
|
85
|
+
// Prefer V by default; fall back to Nerf if V not present in a deployment
|
|
86
|
+
DEFAULT_PERSONA_ID: process.env.DEFAULT_PERSONA_ID || 'v_researcher',
|
|
87
|
+
NODE_ENV: process.env.NODE_ENV || 'development',
|
|
88
|
+
ENABLE_PERSISTENCE: process.env.ENABLE_PERSISTENCE || 'true',
|
|
89
|
+
ENABLE_UTILITY_AI: process.env.ENABLE_UTILITY_AI || 'false',
|
|
90
|
+
MAX_CONCURRENT_STREAMS: process.env.MAX_CONCURRENT_STREAMS || '1000',
|
|
91
|
+
MAX_TOOL_CALL_ITERATIONS: process.env.MAX_TOOL_CALL_ITERATIONS || '5'
|
|
92
|
+
};
|
|
93
|
+
const validation = validateEnvironmentConfig(env);
|
|
94
|
+
// Log warnings
|
|
95
|
+
if (validation.warnings.length > 0) {
|
|
96
|
+
console.warn('AgentOS Configuration Warnings:');
|
|
97
|
+
validation.warnings.forEach(warning => console.warn(` - ${warning}`));
|
|
98
|
+
}
|
|
99
|
+
// Throw error if validation fails
|
|
100
|
+
if (!validation.isValid) {
|
|
101
|
+
const errorMessage = `AgentOS Configuration Errors:\n${validation.errors.map(e => ` - ${e}`).join('\n')}`;
|
|
102
|
+
throw new GMIError(errorMessage, GMIErrorCode.CONFIGURATION_ERROR, { errors: validation.errors, warnings: validation.warnings });
|
|
103
|
+
}
|
|
104
|
+
return env;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Creates the Persona Loader configuration.
|
|
108
|
+
*
|
|
109
|
+
* @param env - Environment configuration
|
|
110
|
+
* @returns PersonaLoaderConfig
|
|
111
|
+
*/
|
|
112
|
+
function createPersonaLoaderConfig(env) {
|
|
113
|
+
return {
|
|
114
|
+
personaSource: './personas',
|
|
115
|
+
loaderType: 'file_system',
|
|
116
|
+
options: {
|
|
117
|
+
enableFileWatching: env.NODE_ENV === 'development',
|
|
118
|
+
validationLevel: 'strict',
|
|
119
|
+
defaultPersonaId: env.DEFAULT_PERSONA_ID || 'v_researcher',
|
|
120
|
+
cachePersonaDefinitions: true,
|
|
121
|
+
},
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Creates the AI Model Provider Manager configuration.
|
|
126
|
+
*
|
|
127
|
+
* @param env - Environment configuration
|
|
128
|
+
* @returns AIModelProviderManagerConfig
|
|
129
|
+
*/
|
|
130
|
+
function createModelProviderManagerConfig(env) {
|
|
131
|
+
const providers = [];
|
|
132
|
+
// OpenAI Provider
|
|
133
|
+
if (env.OPENAI_API_KEY) {
|
|
134
|
+
providers.push({
|
|
135
|
+
providerId: 'openai',
|
|
136
|
+
enabled: true,
|
|
137
|
+
isDefault: true, // Make OpenAI default if available
|
|
138
|
+
config: {
|
|
139
|
+
apiKey: env.OPENAI_API_KEY,
|
|
140
|
+
baseURL: 'https://api.openai.com/v1',
|
|
141
|
+
defaultModel: 'gpt-4o',
|
|
142
|
+
maxRetries: 3,
|
|
143
|
+
timeout: 60000
|
|
144
|
+
}
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
// OpenRouter Provider
|
|
148
|
+
if (env.OPENROUTER_API_KEY) {
|
|
149
|
+
providers.push({
|
|
150
|
+
providerId: 'openrouter',
|
|
151
|
+
enabled: true,
|
|
152
|
+
isDefault: !env.OPENAI_API_KEY, // Default to OpenRouter if OpenAI not available
|
|
153
|
+
config: {
|
|
154
|
+
apiKey: env.OPENROUTER_API_KEY,
|
|
155
|
+
baseURL: 'https://openrouter.ai/api/v1',
|
|
156
|
+
defaultModel: 'openai/gpt-4o',
|
|
157
|
+
maxRetries: 3,
|
|
158
|
+
timeout: 60000
|
|
159
|
+
}
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
// Ollama Provider (local)
|
|
163
|
+
if (env.OLLAMA_BASE_URL) {
|
|
164
|
+
providers.push({
|
|
165
|
+
providerId: 'ollama',
|
|
166
|
+
enabled: true,
|
|
167
|
+
isDefault: !env.OPENAI_API_KEY && !env.OPENROUTER_API_KEY,
|
|
168
|
+
config: {
|
|
169
|
+
baseURL: env.OLLAMA_BASE_URL,
|
|
170
|
+
defaultModel: 'llama3.2',
|
|
171
|
+
timeout: 120000 // Longer timeout for local models
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
// Ensure at least one provider is marked as default
|
|
176
|
+
if (providers.length > 0 && !providers.some(p => p.isDefault)) {
|
|
177
|
+
providers[0].isDefault = true;
|
|
178
|
+
}
|
|
179
|
+
return { providers };
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Creates a LemonSqueezy service instance (stub for now).
|
|
183
|
+
* In a real implementation, this would be a proper service class.
|
|
184
|
+
*/
|
|
185
|
+
function _createLemonSqueezyService(_env) {
|
|
186
|
+
return {
|
|
187
|
+
initialize: async () => { },
|
|
188
|
+
verifyWebhookSignature: (_rawBody, _signature) => true,
|
|
189
|
+
processWebhookEvent: async (_eventName, _data) => { }
|
|
190
|
+
};
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Creates and initializes the AuthService instance.
|
|
194
|
+
*
|
|
195
|
+
* @param prisma - Prisma client instance
|
|
196
|
+
* @param env - Environment configuration
|
|
197
|
+
* @returns Initialized AuthService
|
|
198
|
+
*/
|
|
199
|
+
async function createAuthService() {
|
|
200
|
+
const authService = new AuthService();
|
|
201
|
+
if (typeof authService.initialize === 'function') {
|
|
202
|
+
await authService.initialize();
|
|
203
|
+
}
|
|
204
|
+
return authService;
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Creates and initializes the SubscriptionService instance.
|
|
208
|
+
*
|
|
209
|
+
* @param prisma - Prisma client instance
|
|
210
|
+
* @param authService - Initialized auth service
|
|
211
|
+
* @param env - Environment configuration
|
|
212
|
+
* @returns Initialized SubscriptionService
|
|
213
|
+
*/
|
|
214
|
+
async function createSubscriptionService() {
|
|
215
|
+
const subscriptionService = new SubscriptionService();
|
|
216
|
+
if (typeof subscriptionService.initialize === 'function') {
|
|
217
|
+
await subscriptionService.initialize();
|
|
218
|
+
}
|
|
219
|
+
return subscriptionService;
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Creates a utility AI service instance if enabled.
|
|
223
|
+
* This is a placeholder - implement based on your UtilityAI implementation.
|
|
224
|
+
*
|
|
225
|
+
* @param env - Environment configuration
|
|
226
|
+
* @returns UtilityAI service or undefined
|
|
227
|
+
*/
|
|
228
|
+
async function createUtilityAIService(env) {
|
|
229
|
+
if (env.ENABLE_UTILITY_AI === 'true') {
|
|
230
|
+
// TODO: Implement your UtilityAI service
|
|
231
|
+
// const utilityAI = new YourUtilityAIService();
|
|
232
|
+
// await utilityAI.initialize({ ... });
|
|
233
|
+
// return utilityAI;
|
|
234
|
+
}
|
|
235
|
+
return undefined;
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Main function to create the complete AgentOS configuration.
|
|
239
|
+
*
|
|
240
|
+
* @returns Promise resolving to a complete AgentOSConfig
|
|
241
|
+
* @throws GMIError if configuration creation fails
|
|
242
|
+
*/
|
|
243
|
+
export async function createAgentOSConfig() {
|
|
244
|
+
console.log('AgentOS Config: Starting configuration creation...');
|
|
245
|
+
try {
|
|
246
|
+
// Load and validate environment
|
|
247
|
+
const env = getEnvironmentConfig();
|
|
248
|
+
// Create Prisma client
|
|
249
|
+
const prisma = new PrismaClient();
|
|
250
|
+
console.log('AgentOS Config: Prisma client stub initialized');
|
|
251
|
+
const defaultPersonaId = env.DEFAULT_PERSONA_ID || 'v_researcher';
|
|
252
|
+
// Create and initialize services
|
|
253
|
+
const authService = await createAuthService();
|
|
254
|
+
const subscriptionService = await createSubscriptionService();
|
|
255
|
+
const utilityAIService = await createUtilityAIService(env);
|
|
256
|
+
// Create individual component configurations
|
|
257
|
+
const gmiManagerConfig = {
|
|
258
|
+
personaLoaderConfig: createPersonaLoaderConfig(env),
|
|
259
|
+
defaultGMIInactivityCleanupMinutes: 60,
|
|
260
|
+
defaultWorkingMemoryType: 'in_memory',
|
|
261
|
+
defaultGMIBaseConfigDefaults: {
|
|
262
|
+
defaultLlmProviderId: 'openai',
|
|
263
|
+
defaultLlmModelId: 'gpt-4o'
|
|
264
|
+
}
|
|
265
|
+
};
|
|
266
|
+
const orchestratorConfig = {
|
|
267
|
+
maxToolCallIterations: parseInt(env.MAX_TOOL_CALL_ITERATIONS || '5'),
|
|
268
|
+
defaultAgentTurnTimeoutMs: 120000,
|
|
269
|
+
enableConversationalPersistence: env.ENABLE_PERSISTENCE === 'true'
|
|
270
|
+
};
|
|
271
|
+
const promptEngineConfig = {
|
|
272
|
+
defaultTemplateName: 'openai_chat',
|
|
273
|
+
availableTemplates: {},
|
|
274
|
+
tokenCounting: {
|
|
275
|
+
strategy: 'estimated',
|
|
276
|
+
estimationModel: 'gpt-3.5-turbo',
|
|
277
|
+
},
|
|
278
|
+
historyManagement: {
|
|
279
|
+
defaultMaxMessages: 40,
|
|
280
|
+
maxTokensForHistory: 4000,
|
|
281
|
+
summarizationTriggerRatio: 0.8,
|
|
282
|
+
preserveImportantMessages: true,
|
|
283
|
+
},
|
|
284
|
+
contextManagement: {
|
|
285
|
+
maxRAGContextTokens: 1500,
|
|
286
|
+
summarizationQualityTier: 'balanced',
|
|
287
|
+
preserveSourceAttributionInSummary: true,
|
|
288
|
+
},
|
|
289
|
+
contextualElementSelection: {
|
|
290
|
+
maxElementsPerType: {},
|
|
291
|
+
defaultMaxElementsPerType: 3,
|
|
292
|
+
priorityResolutionStrategy: 'highest_first',
|
|
293
|
+
conflictResolutionStrategy: 'skip_conflicting',
|
|
294
|
+
},
|
|
295
|
+
performance: {
|
|
296
|
+
enableCaching: true,
|
|
297
|
+
cacheTimeoutSeconds: 120,
|
|
298
|
+
},
|
|
299
|
+
};
|
|
300
|
+
const toolOrchestratorConfig = {
|
|
301
|
+
orchestratorId: 'default-tool-orchestrator',
|
|
302
|
+
defaultToolCallTimeoutMs: 30000,
|
|
303
|
+
maxConcurrentToolCalls: 10,
|
|
304
|
+
logToolCalls: env.NODE_ENV === 'development',
|
|
305
|
+
globalDisabledTools: [],
|
|
306
|
+
toolRegistrySettings: {
|
|
307
|
+
allowDynamicRegistration: true,
|
|
308
|
+
persistRegistry: false
|
|
309
|
+
}
|
|
310
|
+
};
|
|
311
|
+
const toolPermissionManagerConfig = {
|
|
312
|
+
strictCapabilityChecking: true,
|
|
313
|
+
logToolCalls: env.NODE_ENV === 'development',
|
|
314
|
+
toolToSubscriptionFeatures: {
|
|
315
|
+
// Example: map specific tools to subscription features
|
|
316
|
+
'advanced_search_tool': [
|
|
317
|
+
{ flag: 'FEATURE_ADVANCED_SEARCH', description: 'Access to advanced search capabilities' }
|
|
318
|
+
]
|
|
319
|
+
}
|
|
320
|
+
};
|
|
321
|
+
const conversationManagerConfig = {
|
|
322
|
+
defaultConversationContextConfig: {
|
|
323
|
+
maxHistoryLengthMessages: 100,
|
|
324
|
+
enableAutomaticSummarization: true,
|
|
325
|
+
messagesToKeepVerbatimTail: 5,
|
|
326
|
+
messagesToKeepVerbatimHead: 2,
|
|
327
|
+
},
|
|
328
|
+
maxActiveConversationsInMemory: 1000,
|
|
329
|
+
inactivityTimeoutMs: 3600000,
|
|
330
|
+
persistenceEnabled: env.ENABLE_PERSISTENCE === 'true'
|
|
331
|
+
};
|
|
332
|
+
const streamingManagerConfig = {
|
|
333
|
+
maxConcurrentStreams: parseInt(env.MAX_CONCURRENT_STREAMS || '1000'),
|
|
334
|
+
defaultStreamInactivityTimeoutMs: 300000, // 5 minutes
|
|
335
|
+
maxClientsPerStream: 10,
|
|
336
|
+
onClientSendErrorBehavior: 'log_and_continue'
|
|
337
|
+
};
|
|
338
|
+
const modelProviderManagerConfig = createModelProviderManagerConfig(env);
|
|
339
|
+
// Assemble final configuration
|
|
340
|
+
const extensionSecrets = {};
|
|
341
|
+
if (env.OPENAI_API_KEY)
|
|
342
|
+
extensionSecrets['openai.apiKey'] = env.OPENAI_API_KEY;
|
|
343
|
+
if (env.OPENROUTER_API_KEY)
|
|
344
|
+
extensionSecrets['openrouter.apiKey'] = env.OPENROUTER_API_KEY;
|
|
345
|
+
if (env.ANTHROPIC_API_KEY)
|
|
346
|
+
extensionSecrets['anthropic.apiKey'] = env.ANTHROPIC_API_KEY;
|
|
347
|
+
if (env.SERPER_API_KEY)
|
|
348
|
+
extensionSecrets['serper.apiKey'] = env.SERPER_API_KEY;
|
|
349
|
+
const config = {
|
|
350
|
+
gmiManagerConfig,
|
|
351
|
+
orchestratorConfig,
|
|
352
|
+
promptEngineConfig,
|
|
353
|
+
toolOrchestratorConfig,
|
|
354
|
+
toolPermissionManagerConfig,
|
|
355
|
+
conversationManagerConfig,
|
|
356
|
+
streamingManagerConfig,
|
|
357
|
+
modelProviderManagerConfig,
|
|
358
|
+
defaultPersonaId,
|
|
359
|
+
prisma,
|
|
360
|
+
authService,
|
|
361
|
+
subscriptionService,
|
|
362
|
+
utilityAIService,
|
|
363
|
+
extensionSecrets: Object.keys(extensionSecrets).length ? extensionSecrets : undefined,
|
|
364
|
+
};
|
|
365
|
+
console.log('AgentOS Config: Configuration created successfully');
|
|
366
|
+
console.log(`AgentOS Config: Environment: ${env.NODE_ENV}`);
|
|
367
|
+
console.log(`AgentOS Config: Persistence enabled: ${env.ENABLE_PERSISTENCE}`);
|
|
368
|
+
console.log(`AgentOS Config: LLM providers configured: ${modelProviderManagerConfig.providers.length}`);
|
|
369
|
+
console.log(`AgentOS Config: Default persona: ${defaultPersonaId}`);
|
|
370
|
+
return config;
|
|
371
|
+
}
|
|
372
|
+
catch (error) {
|
|
373
|
+
console.error('AgentOS Config: Failed to create configuration:', error);
|
|
374
|
+
if (error instanceof GMIError) {
|
|
375
|
+
throw error;
|
|
376
|
+
}
|
|
377
|
+
throw new GMIError(`Failed to create AgentOS configuration: ${error.message}`, GMIErrorCode.CONFIGURATION_ERROR, { originalError: error });
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
/**
|
|
381
|
+
* Helper function to create a test configuration for development/testing.
|
|
382
|
+
* This bypasses some environment requirements and uses sensible defaults.
|
|
383
|
+
*
|
|
384
|
+
* @returns Promise resolving to a test AgentOSConfig
|
|
385
|
+
*/
|
|
386
|
+
export async function createTestAgentOSConfig() {
|
|
387
|
+
// Set minimal test environment
|
|
388
|
+
if (!process.env.DATABASE_URL) {
|
|
389
|
+
process.env.DATABASE_URL = 'file:./test.db';
|
|
390
|
+
}
|
|
391
|
+
if (!process.env.JWT_SECRET) {
|
|
392
|
+
process.env.JWT_SECRET = 'test-jwt-secret-for-development-only-minimum-32-chars';
|
|
393
|
+
}
|
|
394
|
+
if (!process.env.API_KEY_ENCRYPTION_KEY_HEX) {
|
|
395
|
+
process.env.API_KEY_ENCRYPTION_KEY_HEX = '0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef';
|
|
396
|
+
}
|
|
397
|
+
return createAgentOSConfig();
|
|
398
|
+
}
|
|
399
|
+
//# sourceMappingURL=AgentOSConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AgentOSConfig.js","sourceRoot":"","sources":["../../src/config/AgentOSConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Defines configuration structures for the EmbeddingManager.
|
|
3
|
+
* This includes the main `EmbeddingManagerConfig` which holds settings for
|
|
4
|
+
* caching, model selection, and a list of available `EmbeddingModelConfig` entries.
|
|
5
|
+
* Each `EmbeddingModelConfig` specifies details for a particular embedding model,
|
|
6
|
+
* such as its ID, provider, dimension, and any provider-specific arguments.
|
|
7
|
+
*
|
|
8
|
+
* These configurations are crucial for initializing and operating the EmbeddingManager,
|
|
9
|
+
* allowing it to adapt to different embedding models and operational requirements.
|
|
10
|
+
*
|
|
11
|
+
* @module backend/agentos/config/EmbeddingManagerConfiguration
|
|
12
|
+
* @see ../rag/IEmbeddingManager.ts
|
|
13
|
+
* @see ../rag/EmbeddingManager.ts
|
|
14
|
+
*/
|
|
15
|
+
/**
|
|
16
|
+
* Configuration for a single embedding model available to the EmbeddingManager.
|
|
17
|
+
*
|
|
18
|
+
* @interface EmbeddingModelConfig
|
|
19
|
+
*/
|
|
20
|
+
export interface EmbeddingModelConfig {
|
|
21
|
+
/**
|
|
22
|
+
* A unique identifier for this embedding model.
|
|
23
|
+
* This ID is used to request this specific model for embedding generation.
|
|
24
|
+
* @type {string}
|
|
25
|
+
* @example "text-embedding-3-small", "openai/text-embedding-ada-002", "custom-e5-large-v2"
|
|
26
|
+
*/
|
|
27
|
+
modelId: string;
|
|
28
|
+
/**
|
|
29
|
+
* The identifier of the AIModelProvider instance (configured in AIModelProviderManager)
|
|
30
|
+
* that serves this embedding model.
|
|
31
|
+
* @type {string}
|
|
32
|
+
* @example "openai-us-east-1", "local-ollama-server"
|
|
33
|
+
*/
|
|
34
|
+
providerId: string;
|
|
35
|
+
/**
|
|
36
|
+
* The dimensionality of the embedding vectors produced by this model.
|
|
37
|
+
* This is critical for setting up compatible vector stores.
|
|
38
|
+
* @type {number}
|
|
39
|
+
* @example 1536, 768, 384
|
|
40
|
+
*/
|
|
41
|
+
dimension: number;
|
|
42
|
+
/**
|
|
43
|
+
* Optional: Indicates if this model should be considered the default embedding model
|
|
44
|
+
* if no specific model is requested and other selection strategies don't apply.
|
|
45
|
+
* Only one model should ideally be marked as default if this flag is used.
|
|
46
|
+
* The `EmbeddingManagerConfig.defaultModelId` provides a more explicit way to set the default.
|
|
47
|
+
* @type {boolean}
|
|
48
|
+
* @optional
|
|
49
|
+
*/
|
|
50
|
+
isDefault?: boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Optional: A heuristic quality score for the model (e.g., on a scale of 0 to 1, or MTEB score).
|
|
53
|
+
* Used by the 'dynamic_quality' model selection strategy. Higher is generally better.
|
|
54
|
+
* @type {number}
|
|
55
|
+
* @optional
|
|
56
|
+
* @example 0.85
|
|
57
|
+
*/
|
|
58
|
+
qualityScore?: number;
|
|
59
|
+
/**
|
|
60
|
+
* Optional: Estimated price per 1 million tokens in USD.
|
|
61
|
+
* Used by the 'dynamic_cost' model selection strategy. Lower is better.
|
|
62
|
+
* @type {number}
|
|
63
|
+
* @optional
|
|
64
|
+
* @example 0.0001 (for $0.0001 / 1K tokens, this would be 0.1)
|
|
65
|
+
* Clarification: OpenAI's ada-002 is $0.0001 / 1K tokens. So per 1M tokens, it's $0.1.
|
|
66
|
+
*/
|
|
67
|
+
pricePer1MTokensUSD?: number;
|
|
68
|
+
/**
|
|
69
|
+
* Optional: An array of collection IDs that this model is particularly well-suited for
|
|
70
|
+
* or is designated to handle. Used by the 'dynamic_collection_preference' strategy.
|
|
71
|
+
* @type {string[]}
|
|
72
|
+
* @optional
|
|
73
|
+
* @example ["legal_documents", "medical_transcripts"]
|
|
74
|
+
*/
|
|
75
|
+
supportedCollections?: string[];
|
|
76
|
+
/**
|
|
77
|
+
* Optional: A record of provider-specific arguments or parameters to be used
|
|
78
|
+
* when invoking this model via its provider.
|
|
79
|
+
* For example, OpenAI's embedding models can take an `inputType` or `dimensions` parameter.
|
|
80
|
+
* @type {Record<string, any>}
|
|
81
|
+
* @optional
|
|
82
|
+
* @example { "inputType": "search_document" } // For older OpenAI models
|
|
83
|
+
* @example { "dimensions": 256 } // For newer OpenAI models supporting variable dimensions
|
|
84
|
+
*/
|
|
85
|
+
providerSpecificArgs?: Record<string, any>;
|
|
86
|
+
/**
|
|
87
|
+
* Optional: Maximum number of input tokens this model can process in a single request.
|
|
88
|
+
* Useful for upstream validation or guiding automatic chunking strategies.
|
|
89
|
+
* @type {number}
|
|
90
|
+
* @optional
|
|
91
|
+
* @example 8191 // For text-embedding-ada-002
|
|
92
|
+
*/
|
|
93
|
+
maxInputTokens?: number;
|
|
94
|
+
/**
|
|
95
|
+
* Optional: A human-readable name or description for the model.
|
|
96
|
+
* @type {string}
|
|
97
|
+
* @optional
|
|
98
|
+
* @example "OpenAI Ada v2 (Optimized for similarity)"
|
|
99
|
+
*/
|
|
100
|
+
displayName?: string;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Defines the overall configuration for the EmbeddingManager.
|
|
104
|
+
* This includes a list of all available embedding models, settings for caching,
|
|
105
|
+
* model selection strategies, and default operational parameters.
|
|
106
|
+
*
|
|
107
|
+
* @interface EmbeddingManagerConfig
|
|
108
|
+
*/
|
|
109
|
+
export interface EmbeddingManagerConfig {
|
|
110
|
+
/**
|
|
111
|
+
* An array of {@link EmbeddingModelConfig} objects, defining each embedding model
|
|
112
|
+
* that the EmbeddingManager can use.
|
|
113
|
+
* At least one model must be configured if `defaultModelId` is not set to a valid model from this list.
|
|
114
|
+
* @type {EmbeddingModelConfig[]}
|
|
115
|
+
*/
|
|
116
|
+
embeddingModels: EmbeddingModelConfig[];
|
|
117
|
+
/**
|
|
118
|
+
* Optional: The `modelId` of the embedding model to be used as the default if no
|
|
119
|
+
* specific model is requested or determined by the selection strategy.
|
|
120
|
+
* This model must be defined in the `embeddingModels` array.
|
|
121
|
+
* @type {string}
|
|
122
|
+
* @optional
|
|
123
|
+
* @example "text-embedding-3-small"
|
|
124
|
+
*/
|
|
125
|
+
defaultModelId?: string;
|
|
126
|
+
/**
|
|
127
|
+
* Optional: Configuration for the strategy used to select an embedding model
|
|
128
|
+
* when one is not explicitly specified in the `EmbeddingRequest`.
|
|
129
|
+
* @type {object}
|
|
130
|
+
* @optional
|
|
131
|
+
* @property {'static' | 'dynamic_quality' | 'dynamic_cost' | 'dynamic_collection_preference'} type
|
|
132
|
+
* - 'static': Always uses the `defaultModelId`.
|
|
133
|
+
* - 'dynamic_quality': Selects the available model with the highest `qualityScore`.
|
|
134
|
+
* - 'dynamic_cost': Selects the available model with the lowest `pricePer1MTokensUSD`.
|
|
135
|
+
* - 'dynamic_collection_preference': Selects a model listed in `supportedCollections`
|
|
136
|
+
* matching the `collectionId` in the `EmbeddingRequest`.
|
|
137
|
+
* @property {string} [fallbackModelId] - The `modelId` to use if the dynamic strategy
|
|
138
|
+
* fails to select a model (e.g., no model supports
|
|
139
|
+
* a given collection, or no scores are available).
|
|
140
|
+
* Defaults to `defaultModelId` if not set.
|
|
141
|
+
*/
|
|
142
|
+
selectionStrategy?: {
|
|
143
|
+
type: 'static' | 'dynamic_quality' | 'dynamic_cost' | 'dynamic_collection_preference';
|
|
144
|
+
fallbackModelId?: string;
|
|
145
|
+
};
|
|
146
|
+
/**
|
|
147
|
+
* Optional: Determines if embedding results should be cached.
|
|
148
|
+
* Defaults to `true` if not specified. Set to `false` to disable caching.
|
|
149
|
+
* @type {boolean}
|
|
150
|
+
* @optional
|
|
151
|
+
* @default true
|
|
152
|
+
*/
|
|
153
|
+
enableCache?: boolean;
|
|
154
|
+
/**
|
|
155
|
+
* Optional: The maximum number of embedding entries to store in the LRU cache.
|
|
156
|
+
* Only applicable if `enableCache` is true.
|
|
157
|
+
* @type {number}
|
|
158
|
+
* @optional
|
|
159
|
+
* @default 1000
|
|
160
|
+
*/
|
|
161
|
+
cacheMaxSize?: number;
|
|
162
|
+
/**
|
|
163
|
+
* Optional: The time-to-live (TTL) for cache entries in seconds.
|
|
164
|
+
* Only applicable if `enableCache` is true.
|
|
165
|
+
* @type {number}
|
|
166
|
+
* @optional
|
|
167
|
+
* @default 3600 (1 hour)
|
|
168
|
+
*/
|
|
169
|
+
cacheTTLSeconds?: number;
|
|
170
|
+
/**
|
|
171
|
+
* Optional: The default batch size to use when sending multiple texts to an LLM provider
|
|
172
|
+
* for embedding. Providers often have limits on batch size or perform better with
|
|
173
|
+
* optimal batching.
|
|
174
|
+
* @type {number}
|
|
175
|
+
* @optional
|
|
176
|
+
* @default 32
|
|
177
|
+
*/
|
|
178
|
+
defaultBatchSize?: number;
|
|
179
|
+
/**
|
|
180
|
+
* Optional: A system-wide default embedding dimension.
|
|
181
|
+
* This can serve as a fallback if a specific `EmbeddingModelConfig` somehow
|
|
182
|
+
* omits the `dimension` property, or for components that need a general idea
|
|
183
|
+
* of embedding size before a specific model is chosen.
|
|
184
|
+
* @type {number}
|
|
185
|
+
* @optional
|
|
186
|
+
* @example 1536
|
|
187
|
+
*/
|
|
188
|
+
defaultEmbeddingDimension?: number;
|
|
189
|
+
}
|
|
190
|
+
//# sourceMappingURL=EmbeddingManagerConfiguration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmbeddingManagerConfiguration.d.ts","sourceRoot":"","sources":["../../src/config/EmbeddingManagerConfiguration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;;OAKG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;;OAKG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;OAOG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B;;;;;;OAMG;IACH,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhC;;;;;;;;OAQG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE3C;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;;;OAKG;IACH,eAAe,EAAE,oBAAoB,EAAE,CAAC;IAExC;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;;;;;;;;;;;OAeG;IACH,iBAAiB,CAAC,EAAE;QAClB,IAAI,EACA,QAAQ,GACR,iBAAiB,GACjB,cAAc,GACd,+BAA+B,CAAC;QACpC,eAAe,CAAC,EAAE,MAAM,CAAC;KAE1B,CAAC;IAEF;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;;;;OAQG;IACH,yBAAyB,CAAC,EAAE,MAAM,CAAC;CACpC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Defines configuration structures for the EmbeddingManager.
|
|
3
|
+
* This includes the main `EmbeddingManagerConfig` which holds settings for
|
|
4
|
+
* caching, model selection, and a list of available `EmbeddingModelConfig` entries.
|
|
5
|
+
* Each `EmbeddingModelConfig` specifies details for a particular embedding model,
|
|
6
|
+
* such as its ID, provider, dimension, and any provider-specific arguments.
|
|
7
|
+
*
|
|
8
|
+
* These configurations are crucial for initializing and operating the EmbeddingManager,
|
|
9
|
+
* allowing it to adapt to different embedding models and operational requirements.
|
|
10
|
+
*
|
|
11
|
+
* @module backend/agentos/config/EmbeddingManagerConfiguration
|
|
12
|
+
* @see ../rag/IEmbeddingManager.ts
|
|
13
|
+
* @see ../rag/EmbeddingManager.ts
|
|
14
|
+
*/
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=EmbeddingManagerConfiguration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmbeddingManagerConfiguration.js","sourceRoot":"","sources":["../../src/config/EmbeddingManagerConfiguration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG"}
|