@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,627 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Defines the IPromptEngine interface and related types that form the core
|
|
3
|
+
* of AgentOS's adaptive and contextual prompting system. The PromptEngine is responsible
|
|
4
|
+
* for dynamically constructing prompts based on rich contextual information, persona
|
|
5
|
+
* definitions, and runtime state. It supports contextual element selection, token budgeting,
|
|
6
|
+
* content summarization, and multiple prompt template formats.
|
|
7
|
+
*
|
|
8
|
+
* This interface is central to the GMI (Generalized Mind Instance) architecture, enabling
|
|
9
|
+
* sophisticated prompt adaptation based on user skill level, mood, task complexity,
|
|
10
|
+
* conversation state, and persona-specific rules.
|
|
11
|
+
*
|
|
12
|
+
* Key responsibilities include:
|
|
13
|
+
* - Dynamic contextual element selection based on PromptExecutionContext.
|
|
14
|
+
* - Intelligent token budgeting and content truncation/summarization using an IUtilityAI helper.
|
|
15
|
+
* - Multi-modal prompt component integration (text, vision, audio data references, tools).
|
|
16
|
+
* - Template-based prompt formatting for different LLM providers and models.
|
|
17
|
+
* - Comprehensive error handling and issue reporting within the PromptEngineResult.
|
|
18
|
+
* - Performance optimization strategies such as caching.
|
|
19
|
+
*
|
|
20
|
+
* @module backend/agentos/core/llm/IPromptEngine
|
|
21
|
+
* @see {@link ../../../docs/PROMPTS.MD} for detailed architectural documentation.
|
|
22
|
+
* @see {@link ../../cognitive_substrate/personas/IPersonaDefinition.ts} for persona-driven prompting.
|
|
23
|
+
*/
|
|
24
|
+
import { IPersonaDefinition, ContextualPromptElement, ContextualPromptElementCriteria } from '../../cognitive_substrate/personas/IPersonaDefinition';
|
|
25
|
+
import { IWorkingMemory } from '../../cognitive_substrate/memory/IWorkingMemory';
|
|
26
|
+
import { ITool } from '../tools/ITool';
|
|
27
|
+
import { VisionInputData, AudioInputData } from '../../cognitive_substrate/IGMI';
|
|
28
|
+
import { ConversationMessage as Message } from '../conversation/ConversationMessage';
|
|
29
|
+
import { ChatMessage } from './providers/IProvider';
|
|
30
|
+
/**
|
|
31
|
+
* Represents different types of contextual prompt elements that can be dynamically
|
|
32
|
+
* selected and integrated into prompts based on execution context.
|
|
33
|
+
* These elements allow for fine-grained adaptation of prompts.
|
|
34
|
+
* @enum {string}
|
|
35
|
+
*/
|
|
36
|
+
export declare enum ContextualElementType {
|
|
37
|
+
/** Additional system-level instructions appended to base system prompt. */
|
|
38
|
+
SYSTEM_INSTRUCTION_ADDON = "system_instruction_addon",
|
|
39
|
+
/** Dynamic few-shot examples selected based on context to guide the LLM. */
|
|
40
|
+
FEW_SHOT_EXAMPLE = "few_shot_example",
|
|
41
|
+
/** Behavioral guidance or tone adjustments for the persona. */
|
|
42
|
+
BEHAVIORAL_GUIDANCE = "behavioral_guidance",
|
|
43
|
+
/** Specific instructions or constraints related to the current task. */
|
|
44
|
+
TASK_SPECIFIC_INSTRUCTION = "task_specific_instruction",
|
|
45
|
+
/** Instructions for handling errors or recovering from unexpected situations. */
|
|
46
|
+
ERROR_HANDLING_GUIDANCE = "error_handling_guidance",
|
|
47
|
+
/** Adjustments to the GMI's interaction style with the user. */
|
|
48
|
+
INTERACTION_STYLE_MODIFIER = "interaction_style_modifier",
|
|
49
|
+
/** Domain-specific knowledge, facts, or context relevant to the current query. */
|
|
50
|
+
DOMAIN_CONTEXT = "domain_context",
|
|
51
|
+
/** Ethical guidelines or safety instructions to ensure responsible AI behavior. */
|
|
52
|
+
ETHICAL_GUIDELINE = "ethical_guideline",
|
|
53
|
+
/** Specifications for the desired output format (e.g., JSON, Markdown). */
|
|
54
|
+
OUTPUT_FORMAT_SPEC = "output_format_spec",
|
|
55
|
+
/** Instructions for specific reasoning protocols (e.g., chain-of-thought, tree-of-thought). */
|
|
56
|
+
REASONING_PROTOCOL = "reasoning_protocol",
|
|
57
|
+
/** Dynamic content to be injected directly into the user part of the prompt. */
|
|
58
|
+
USER_PROMPT_AUGMENTATION = "user_prompt_augmentation",
|
|
59
|
+
/** Content to be injected into the assistant part for few-shot or role-play setup. */
|
|
60
|
+
ASSISTANT_PROMPT_AUGMENTATION = "assistant_prompt_augmentation"
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Comprehensive execution context that drives dynamic prompt construction.
|
|
64
|
+
* This context is assembled by the GMI and contains all relevant information
|
|
65
|
+
* needed for intelligent contextual element selection and prompt adaptation.
|
|
66
|
+
* @interface PromptExecutionContext
|
|
67
|
+
*/
|
|
68
|
+
export interface PromptExecutionContext {
|
|
69
|
+
/** The currently active persona definition, guiding overall behavior and prompt structure. */
|
|
70
|
+
activePersona: IPersonaDefinition;
|
|
71
|
+
/** Access to the GMI's working memory for dynamic value retrieval (e.g., user preferences, GMI traits). */
|
|
72
|
+
workingMemory: IWorkingMemory;
|
|
73
|
+
/** Current mood state of the GMI, which can influence tone and element selection. */
|
|
74
|
+
currentMood?: string;
|
|
75
|
+
/** Assessed or declared user skill level (e.g., 'beginner', 'expert') relevant to the task. */
|
|
76
|
+
userSkillLevel?: 'beginner' | 'intermediate' | 'advanced' | 'expert' | string;
|
|
77
|
+
/** Hint about the current task type (e.g., 'coding', 'writing', 'data_analysis'). */
|
|
78
|
+
taskHint?: string;
|
|
79
|
+
/** Assessed complexity level of the current task (e.g., 'simple', 'complex'). */
|
|
80
|
+
taskComplexity?: 'simple' | 'moderate' | 'complex' | 'highly_complex' | string;
|
|
81
|
+
/** Target language for the response (BCP-47 code, e.g., 'en-US', 'fr-FR'). */
|
|
82
|
+
language?: string;
|
|
83
|
+
/** Signals detected in the conversation (e.g., 'user_confused', 'task_completed_successfully'). */
|
|
84
|
+
conversationSignals?: string[];
|
|
85
|
+
/** Custom context flags for specialized prompting scenarios or A/B testing. */
|
|
86
|
+
customContext?: Record<string, unknown>;
|
|
87
|
+
/** User-specific preferences that affect prompting (e.g., verbosity, preferred formats). */
|
|
88
|
+
userPreferences?: Record<string, unknown>;
|
|
89
|
+
/** Historical interaction patterns that inform adaptation (e.g., preferred response styles). */
|
|
90
|
+
interactionHistorySummary?: {
|
|
91
|
+
successfulInteractionCount: number;
|
|
92
|
+
problematicInteractionCount: number;
|
|
93
|
+
commonTopics?: string[];
|
|
94
|
+
lastInteractionTimestamp?: string;
|
|
95
|
+
};
|
|
96
|
+
/** Current session metadata (e.g., duration, number of turns). */
|
|
97
|
+
sessionMetadata?: {
|
|
98
|
+
sessionDurationSeconds: number;
|
|
99
|
+
interactionCountInSession: number;
|
|
100
|
+
userEngagementLevel?: 'low' | 'medium' | 'high';
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Core components that form the foundation of any prompt construction.
|
|
105
|
+
* These are gathered from various sources (GMI state, user input, RAG) and then
|
|
106
|
+
* augmented with dynamically selected contextual elements.
|
|
107
|
+
* @interface PromptComponents
|
|
108
|
+
*/
|
|
109
|
+
export interface PromptComponents {
|
|
110
|
+
/** System-level prompts with optional priority ordering. Higher priority usually means placed earlier or given more weight. */
|
|
111
|
+
systemPrompts?: Array<{
|
|
112
|
+
content: string;
|
|
113
|
+
priority?: number;
|
|
114
|
+
source?: string;
|
|
115
|
+
}>;
|
|
116
|
+
/** Conversation history messages, typically an array of `Message` objects. */
|
|
117
|
+
conversationHistory?: Message[];
|
|
118
|
+
/** Current user input text. */
|
|
119
|
+
userInput?: string | null;
|
|
120
|
+
/** Visual inputs (images) if the target model supports vision. */
|
|
121
|
+
visionInputs?: VisionInputData[];
|
|
122
|
+
/** Audio input data references if the model or a pre-processing step handles audio. */
|
|
123
|
+
audioInput?: AudioInputData;
|
|
124
|
+
/** Available tools and their schemas, for models that support function/tool calling. */
|
|
125
|
+
tools?: ITool[];
|
|
126
|
+
/**
|
|
127
|
+
* Pre-formatted tool/function schemas that should be forwarded to the model as-is.
|
|
128
|
+
* Useful when upstream logic has already normalized the schema definitions.
|
|
129
|
+
*/
|
|
130
|
+
toolSchemas?: Array<Record<string, unknown>>;
|
|
131
|
+
/** Retrieved context from a RAG system, to be incorporated into the prompt. */
|
|
132
|
+
retrievedContext?: string | Array<{
|
|
133
|
+
source: string;
|
|
134
|
+
content: string;
|
|
135
|
+
relevance?: number;
|
|
136
|
+
type?: string;
|
|
137
|
+
}>;
|
|
138
|
+
/** Task-specific data or parameters that need to be included in the prompt. */
|
|
139
|
+
taskSpecificData?: Record<string, unknown>;
|
|
140
|
+
/** Additional custom components that templates might use. */
|
|
141
|
+
customComponents?: Record<string, unknown>;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Information about the target AI model that affects prompt construction.
|
|
145
|
+
* This guides template selection, token limits, and capability-specific formatting.
|
|
146
|
+
* @interface ModelTargetInfo
|
|
147
|
+
*/
|
|
148
|
+
export interface ModelTargetInfo {
|
|
149
|
+
/** Unique identifier of the target model (e.g., "gpt-4o", "ollama/llama3"). */
|
|
150
|
+
modelId: string;
|
|
151
|
+
/** Identifier of the provider hosting the model (e.g., "openai", "ollama"). */
|
|
152
|
+
providerId: string;
|
|
153
|
+
/** Maximum context length in tokens supported by the model. */
|
|
154
|
+
maxContextTokens: number;
|
|
155
|
+
/**
|
|
156
|
+
* Optional: Optimal context length for best performance/cost-efficiency, if different from max.
|
|
157
|
+
* Prompts might be targeted to this length.
|
|
158
|
+
*/
|
|
159
|
+
optimalContextTokens?: number;
|
|
160
|
+
/** A list of functional capabilities of the model (e.g., 'tool_use', 'vision_input', 'json_mode'). */
|
|
161
|
+
capabilities: string[];
|
|
162
|
+
/**
|
|
163
|
+
* The type of prompt format the model expects.
|
|
164
|
+
* 'openai_chat': Standard OpenAI chat completion format (array of messages).
|
|
165
|
+
* 'anthropic_messages': Anthropic Messages API format (messages array + optional system prompt).
|
|
166
|
+
* 'generic_completion': A single string prompt for older completion-style models.
|
|
167
|
+
* 'custom': A custom format handled by a specific template.
|
|
168
|
+
*/
|
|
169
|
+
promptFormatType: 'openai_chat' | 'anthropic_messages' | 'generic_completion' | 'custom' | string;
|
|
170
|
+
/** Configuration for tool/function calling support. */
|
|
171
|
+
toolSupport: {
|
|
172
|
+
supported: boolean;
|
|
173
|
+
/** Format expected by the model for tool definitions and calls. */
|
|
174
|
+
format: 'openai_functions' | 'anthropic_tools' | 'google_tools' | 'custom' | string;
|
|
175
|
+
/** Maximum number of tools that can be defined or called in a single interaction. */
|
|
176
|
+
maxToolsPerCall?: number;
|
|
177
|
+
};
|
|
178
|
+
/** Vision input support configuration. */
|
|
179
|
+
visionSupport?: {
|
|
180
|
+
supported: boolean;
|
|
181
|
+
maxImages?: number;
|
|
182
|
+
supportedFormats?: string[];
|
|
183
|
+
maxImageResolution?: string;
|
|
184
|
+
};
|
|
185
|
+
/** Audio input support configuration (more likely for pre-processing than direct model input). */
|
|
186
|
+
audioSupport?: {
|
|
187
|
+
supported: boolean;
|
|
188
|
+
requiresTranscription?: boolean;
|
|
189
|
+
};
|
|
190
|
+
/** Model-specific hints for optimizing prompt construction or token budgeting. */
|
|
191
|
+
optimizationHints?: {
|
|
192
|
+
preferredSystemPromptLength?: number;
|
|
193
|
+
optimalHistoryMessages?: number;
|
|
194
|
+
tokenBudgetingStrategy?: 'aggressive_truncate' | 'summarize_old' | 'balanced';
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* The final formatted prompt ready for submission to an LLM provider.
|
|
199
|
+
* The structure varies based on the target model's requirements.
|
|
200
|
+
* - `ChatMessage[]`: For models like OpenAI Chat.
|
|
201
|
+
* - `string`: For older text completion models.
|
|
202
|
+
* - `object`: For models with more complex input structures (e.g., Anthropic Messages API which takes an object with `messages` and `system`).
|
|
203
|
+
* @type FormattedPrompt
|
|
204
|
+
*/
|
|
205
|
+
export type FormattedPrompt = ChatMessage[] | string | {
|
|
206
|
+
messages: ChatMessage[];
|
|
207
|
+
system?: string;
|
|
208
|
+
tools?: any[];
|
|
209
|
+
[key: string]: any;
|
|
210
|
+
};
|
|
211
|
+
/**
|
|
212
|
+
* Comprehensive result object returned by prompt construction, containing
|
|
213
|
+
* the formatted prompt, metadata, issues encountered, and optimization information.
|
|
214
|
+
* @interface PromptEngineResult
|
|
215
|
+
*/
|
|
216
|
+
export interface PromptEngineResult {
|
|
217
|
+
/** The final formatted prompt ready for LLM consumption. */
|
|
218
|
+
prompt: FormattedPrompt;
|
|
219
|
+
/**
|
|
220
|
+
* Formatted tool schemas compatible with the target model's API, if tools are used.
|
|
221
|
+
* The structure of `any[]` depends on `ModelTargetInfo.toolSupport.format`.
|
|
222
|
+
*/
|
|
223
|
+
formattedToolSchemas?: any[];
|
|
224
|
+
/** Estimated token count of the constructed prompt before precise provider counting. */
|
|
225
|
+
estimatedTokenCount?: number;
|
|
226
|
+
/** Precise token count, if available from a tokenizer or after construction. */
|
|
227
|
+
tokenCount?: number;
|
|
228
|
+
/** Any issues (errors, warnings, info) encountered during prompt construction. */
|
|
229
|
+
issues?: Array<{
|
|
230
|
+
type: 'error' | 'warning' | 'info';
|
|
231
|
+
code: string;
|
|
232
|
+
message: string;
|
|
233
|
+
details?: unknown;
|
|
234
|
+
suggestion?: string;
|
|
235
|
+
component?: string;
|
|
236
|
+
}>;
|
|
237
|
+
/** Indicates if content was truncated or summarized to fit token limits. */
|
|
238
|
+
wasTruncatedOrSummarized: boolean;
|
|
239
|
+
/** Details about modifications made during construction (e.g., which components were truncated). */
|
|
240
|
+
modificationDetails?: {
|
|
241
|
+
originalEstimatedTokenCount?: number;
|
|
242
|
+
truncatedComponents?: string[];
|
|
243
|
+
summarizedComponents?: string[];
|
|
244
|
+
removedComponents?: string[];
|
|
245
|
+
addedContextualElementIds?: string[];
|
|
246
|
+
};
|
|
247
|
+
/** Performance metrics and metadata related to the prompt construction process. */
|
|
248
|
+
metadata: {
|
|
249
|
+
constructionTimeMs: number;
|
|
250
|
+
selectedContextualElementIds: string[];
|
|
251
|
+
templateUsed: string;
|
|
252
|
+
totalSystemPromptsApplied: number;
|
|
253
|
+
historyMessagesIncluded: number;
|
|
254
|
+
ragContextTokensUsed?: number;
|
|
255
|
+
[key: string]: unknown;
|
|
256
|
+
};
|
|
257
|
+
/** An optional cache key if the result was retrieved from or stored in a cache. */
|
|
258
|
+
cacheKey?: string;
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* Configuration options for the PromptEngine's behavior, optimization strategies,
|
|
262
|
+
* and integration with other services like IUtilityAI.
|
|
263
|
+
* @interface PromptEngineConfig
|
|
264
|
+
*/
|
|
265
|
+
export interface PromptEngineConfig {
|
|
266
|
+
/** Default template name (from `availableTemplates`) to use if none is specified or inferable. */
|
|
267
|
+
defaultTemplateName: string;
|
|
268
|
+
/** A record of available prompt template functions, keyed by template name. */
|
|
269
|
+
availableTemplates: Record<string, PromptTemplateFunction>;
|
|
270
|
+
/** Configuration for token counting strategies. */
|
|
271
|
+
tokenCounting: {
|
|
272
|
+
strategy: 'estimated' | 'precise' | 'hybrid';
|
|
273
|
+
estimationModel?: 'gpt-3.5-turbo' | 'gpt-4' | 'claude-3' | 'generic';
|
|
274
|
+
};
|
|
275
|
+
/** Configuration for managing conversation history within prompts. */
|
|
276
|
+
historyManagement: {
|
|
277
|
+
defaultMaxMessages: number;
|
|
278
|
+
maxTokensForHistory: number;
|
|
279
|
+
summarizationTriggerRatio: number;
|
|
280
|
+
preserveImportantMessages: boolean;
|
|
281
|
+
};
|
|
282
|
+
/** Configuration for managing retrieved context (e.g., from RAG). */
|
|
283
|
+
contextManagement: {
|
|
284
|
+
maxRAGContextTokens: number;
|
|
285
|
+
summarizationQualityTier: 'fast' | 'balanced' | 'high_quality';
|
|
286
|
+
preserveSourceAttributionInSummary: boolean;
|
|
287
|
+
minContextRelevanceThreshold?: number;
|
|
288
|
+
};
|
|
289
|
+
/** Configuration for selecting and applying contextual elements. */
|
|
290
|
+
contextualElementSelection: {
|
|
291
|
+
/** Max number of elements to apply per type. */
|
|
292
|
+
maxElementsPerType: Partial<Record<ContextualElementType, number>>;
|
|
293
|
+
defaultMaxElementsPerType: number;
|
|
294
|
+
priorityResolutionStrategy: 'highest_first' | 'weighted_random' | 'persona_preference';
|
|
295
|
+
conflictResolutionStrategy: 'skip_conflicting' | 'merge_compatible' | 'error_on_conflict';
|
|
296
|
+
};
|
|
297
|
+
/** Performance optimization settings. */
|
|
298
|
+
performance: {
|
|
299
|
+
enableCaching: boolean;
|
|
300
|
+
cacheTimeoutSeconds: number;
|
|
301
|
+
maxCacheSizeBytes?: number;
|
|
302
|
+
};
|
|
303
|
+
/** Debugging and logging settings. */
|
|
304
|
+
debugging?: {
|
|
305
|
+
logConstructionSteps?: boolean;
|
|
306
|
+
includeDebugMetadataInResult?: boolean;
|
|
307
|
+
logSelectedContextualElements?: boolean;
|
|
308
|
+
};
|
|
309
|
+
/**
|
|
310
|
+
* Optional tool schema registration manifest enabling per-persona and per-model enable/disable semantics.
|
|
311
|
+
* Structure:
|
|
312
|
+
* - key: personaId (string)
|
|
313
|
+
* - value: {
|
|
314
|
+
* enabledToolIds: string[]; // Tools explicitly allowed for this persona (intersection with runtime tool list)
|
|
315
|
+
* disabledToolIds?: string[]; // Tools explicitly disallowed (takes precedence over enabledToolIds)
|
|
316
|
+
* modelOverrides?: { // Per model ID fine-grained overrides
|
|
317
|
+
* [modelId: string]: string[]; // Exact list of tool IDs allowed for that model when persona active
|
|
318
|
+
* };
|
|
319
|
+
* }
|
|
320
|
+
* Resolution Order when filtering tools for prompt construction:
|
|
321
|
+
* 1. If personaId present in manifest:
|
|
322
|
+
* a. If modelOverrides[modelId] exists => allowed set = that array (disabledToolIds still removes).
|
|
323
|
+
* b. Else allowed base = enabledToolIds (if defined) else all runtime tools.
|
|
324
|
+
* c. Remove any disabledToolIds from allowed set.
|
|
325
|
+
* 2. If personaId absent => all runtime tools (no filtering).
|
|
326
|
+
* Note: Unknown tool IDs in manifest are ignored gracefully.
|
|
327
|
+
*/
|
|
328
|
+
toolSchemaManifest?: Record<string, {
|
|
329
|
+
enabledToolIds?: string[];
|
|
330
|
+
disabledToolIds?: string[];
|
|
331
|
+
modelOverrides?: Record<string, string[]>;
|
|
332
|
+
}>;
|
|
333
|
+
}
|
|
334
|
+
/**
|
|
335
|
+
* Function signature for prompt template implementations.
|
|
336
|
+
* Templates are responsible for taking all processed prompt components and
|
|
337
|
+
* formatting them into the final `FormattedPrompt` structure required by a specific
|
|
338
|
+
* LLM provider or model type.
|
|
339
|
+
* @type PromptTemplateFunction
|
|
340
|
+
* @param {PromptComponents} components - The core and augmented prompt components.
|
|
341
|
+
* @param {ModelTargetInfo} modelInfo - Information about the target AI model.
|
|
342
|
+
* @param {ContextualPromptElement[]} selectedContextualElements - Contextual elements chosen for this prompt.
|
|
343
|
+
* @param {Readonly<PromptEngineConfig>} config - A read-only view of the PromptEngine's current configuration.
|
|
344
|
+
* @param {TokenEstimator} estimateTokenCountFn - A function to estimate token counts, useful within templates.
|
|
345
|
+
* @returns {Promise<FormattedPrompt>} A promise that resolves to the final, formatted prompt.
|
|
346
|
+
*/
|
|
347
|
+
export type PromptTemplateFunction = (components: Readonly<PromptComponents>, modelInfo: Readonly<ModelTargetInfo>, selectedContextualElements: ReadonlyArray<ContextualPromptElement>, config: Readonly<PromptEngineConfig>, estimateTokenCountFn: (content: string, modelId?: string) => Promise<number>) => Promise<FormattedPrompt>;
|
|
348
|
+
/**
|
|
349
|
+
* Function signature for estimating token counts.
|
|
350
|
+
* This is passed to templates to allow them to make token-aware decisions.
|
|
351
|
+
* @type TokenEstimator
|
|
352
|
+
*/
|
|
353
|
+
export type TokenEstimator = (content: string, modelId?: string) => Promise<number>;
|
|
354
|
+
/**
|
|
355
|
+
* Interface for utility AI services that assist the PromptEngine with complex
|
|
356
|
+
* content processing tasks like summarization and relevance analysis, specifically
|
|
357
|
+
* tailored for prompt construction needs.
|
|
358
|
+
* This is a focused interface used internally by the PromptEngine.
|
|
359
|
+
* @interface IPromptEngineUtilityAI
|
|
360
|
+
*/
|
|
361
|
+
export interface IPromptEngineUtilityAI {
|
|
362
|
+
/**
|
|
363
|
+
* Summarizes conversation history to fit within token constraints, attempting to preserve key information.
|
|
364
|
+
* @param {Message[]} messages - The array of conversation messages to summarize.
|
|
365
|
+
* @param {number} targetTokenCount - The desired maximum token count for the summary.
|
|
366
|
+
* @param {Readonly<ModelTargetInfo>} modelInfo - Information about the model for which the summary is being prepared.
|
|
367
|
+
* @param {boolean} [preserveImportantMessages] - If true, attempt to identify and keep important messages verbatim.
|
|
368
|
+
* @returns {Promise<{ summaryMessages: Message[]; originalTokenCount: number; finalTokenCount: number; messagesSummarized: number }>}
|
|
369
|
+
* A summary (which might be a single system message or a condensed list of messages),
|
|
370
|
+
* and metadata about the summarization.
|
|
371
|
+
*/
|
|
372
|
+
summarizeConversationHistory(messages: ReadonlyArray<Message>, targetTokenCount: number, modelInfo: Readonly<ModelTargetInfo>, preserveImportantMessages?: boolean): Promise<{
|
|
373
|
+
summaryMessages: Message[];
|
|
374
|
+
originalTokenCount: number;
|
|
375
|
+
finalTokenCount: number;
|
|
376
|
+
messagesSummarized: number;
|
|
377
|
+
}>;
|
|
378
|
+
/**
|
|
379
|
+
* Summarizes retrieved RAG context to fit token limits, ideally preserving source attribution if possible.
|
|
380
|
+
* @param {string | Array<{ source: string; content: string; relevance?: number }>} context - The RAG context to summarize.
|
|
381
|
+
* @param {number} targetTokenCount - The desired maximum token count for the summarized context.
|
|
382
|
+
* @param {Readonly<ModelTargetInfo>} modelInfo - Information about the model.
|
|
383
|
+
* @param {boolean} [preserveSourceAttribution] - If true, attempt to retain source information in the summary.
|
|
384
|
+
* @returns {Promise<{ summary: string; originalTokenCount: number; finalTokenCount: number; preservedSources?: string[] }>}
|
|
385
|
+
* The summarized text and metadata.
|
|
386
|
+
*/
|
|
387
|
+
summarizeRAGContext(context: string | ReadonlyArray<{
|
|
388
|
+
source: string;
|
|
389
|
+
content: string;
|
|
390
|
+
relevance?: number;
|
|
391
|
+
}>, targetTokenCount: number, modelInfo: Readonly<ModelTargetInfo>, preserveSourceAttribution?: boolean): Promise<{
|
|
392
|
+
summary: string;
|
|
393
|
+
originalTokenCount: number;
|
|
394
|
+
finalTokenCount: number;
|
|
395
|
+
preservedSources?: string[];
|
|
396
|
+
}>;
|
|
397
|
+
/**
|
|
398
|
+
* Analyzes a piece of content for its relevance and importance within the current execution context.
|
|
399
|
+
* This can be used to prioritize which content to include or how to emphasize it.
|
|
400
|
+
* @param {string} content - The text content to analyze.
|
|
401
|
+
* @param {Readonly<PromptExecutionContext>} executionContext - The current execution context.
|
|
402
|
+
* @param {Readonly<ModelTargetInfo>} modelInfo - Information about the model.
|
|
403
|
+
* @returns {Promise<{ relevanceScore: number; importanceScore: number; keywords?: string[]; topics?: string[] }>}
|
|
404
|
+
* Scores and extracted metadata.
|
|
405
|
+
*/
|
|
406
|
+
analyzeContentRelevance?(content: string, executionContext: Readonly<PromptExecutionContext>, modelInfo: Readonly<ModelTargetInfo>): Promise<{
|
|
407
|
+
relevanceScore: number;
|
|
408
|
+
importanceScore: number;
|
|
409
|
+
keywords?: string[];
|
|
410
|
+
topics?: string[];
|
|
411
|
+
}>;
|
|
412
|
+
}
|
|
413
|
+
/**
|
|
414
|
+
* Core interface for the PromptEngine, responsible for intelligent and adaptive
|
|
415
|
+
* prompt construction based on rich contextual information and persona definitions.
|
|
416
|
+
*
|
|
417
|
+
* The PromptEngine serves as the central orchestrator for AgentOS's sophisticated
|
|
418
|
+
* prompting system, capable of dynamically selecting contextual elements,
|
|
419
|
+
* managing token budgets, integrating multi-modal content, and optimizing
|
|
420
|
+
* prompts for different AI models and interaction patterns.
|
|
421
|
+
*
|
|
422
|
+
* @interface IPromptEngine
|
|
423
|
+
*/
|
|
424
|
+
export interface IPromptEngine {
|
|
425
|
+
/**
|
|
426
|
+
* Initializes the PromptEngine with its configuration and an optional utility AI service.
|
|
427
|
+
* This method must be called successfully before any prompt construction.
|
|
428
|
+
*
|
|
429
|
+
* @async
|
|
430
|
+
* @param {PromptEngineConfig} config - The comprehensive configuration for the engine,
|
|
431
|
+
* including template definitions, token counting strategies, history management rules,
|
|
432
|
+
* contextual element selection parameters, performance settings, and debugging options.
|
|
433
|
+
* @param {IPromptEngineUtilityAI} [utilityAI] - An optional utility AI service instance, conforming to
|
|
434
|
+
* `IPromptEngineUtilityAI`, used for advanced content processing tasks like summarization
|
|
435
|
+
* of conversation history or RAG context within the prompt construction pipeline.
|
|
436
|
+
* @returns {Promise<void>} A promise that resolves when the engine is fully initialized and ready.
|
|
437
|
+
* @throws {PromptEngineError} If the provided configuration is invalid or if a critical
|
|
438
|
+
* initialization step fails (e.g., loading default templates).
|
|
439
|
+
*
|
|
440
|
+
* @example
|
|
441
|
+
* const engine = new PromptEngine();
|
|
442
|
+
* await engine.initialize(myAppConfig.promptEngine, myUtilityAIService);
|
|
443
|
+
*/
|
|
444
|
+
initialize(config: PromptEngineConfig, utilityAI?: IPromptEngineUtilityAI): Promise<void>;
|
|
445
|
+
/**
|
|
446
|
+
* The primary method for constructing an adaptive and contextually relevant prompt.
|
|
447
|
+
* This orchestrates the entire pipeline: contextual element evaluation and selection,
|
|
448
|
+
* augmentation of base components, token budget management (including truncation and
|
|
449
|
+
* summarization), and final formatting using a model-appropriate template.
|
|
450
|
+
*
|
|
451
|
+
* @async
|
|
452
|
+
* @param {Readonly<PromptComponents>} baseComponents - The core, static components of the prompt,
|
|
453
|
+
* such as system instructions, conversation history, and current user input. These are read-only
|
|
454
|
+
* to prevent unintended modification by the method.
|
|
455
|
+
* @param {Readonly<ModelTargetInfo>} modelTargetInfo - Detailed information about the target AI model,
|
|
456
|
+
* including its ID, provider, capabilities, token limits, and expected prompt format. This is crucial
|
|
457
|
+
* for tailoring the prompt effectively.
|
|
458
|
+
* @param {Readonly<PromptExecutionContext>} [executionContext] - Optional. The rich runtime context,
|
|
459
|
+
* including active persona, working memory, user state, and task details. This drives the
|
|
460
|
+
* dynamic selection and application of contextual prompt elements.
|
|
461
|
+
* @param {string} [templateName] - Optional. The explicit name of a prompt template to use.
|
|
462
|
+
* If not provided, the engine selects a default template based on `modelTargetInfo.promptFormatType`
|
|
463
|
+
* or the `defaultTemplateName` from its configuration.
|
|
464
|
+
* @returns {Promise<PromptEngineResult>} A promise resolving to a `PromptEngineResult` object,
|
|
465
|
+
* which contains the final formatted prompt, along with metadata about its construction,
|
|
466
|
+
* token counts, any issues encountered, and modifications made.
|
|
467
|
+
* @throws {PromptEngineError} If a non-recoverable error occurs during any stage of prompt
|
|
468
|
+
* construction (e.g., template not found, critical component missing, tokenization failure).
|
|
469
|
+
*/
|
|
470
|
+
constructPrompt(baseComponents: Readonly<PromptComponents>, modelTargetInfo: Readonly<ModelTargetInfo>, executionContext?: Readonly<PromptExecutionContext>, templateName?: string): Promise<PromptEngineResult>;
|
|
471
|
+
/**
|
|
472
|
+
* Evaluates whether a given set of `ContextualPromptElementCriteria` is satisfied by the current
|
|
473
|
+
* `PromptExecutionContext`. This method is the core of the dynamic adaptation logic, determining
|
|
474
|
+
* which contextual elements are relevant and should be incorporated into the prompt.
|
|
475
|
+
* It supports checking various context aspects like mood, user skill, task hints, working memory values, etc.
|
|
476
|
+
*
|
|
477
|
+
* @async
|
|
478
|
+
* @param {Readonly<ContextualPromptElementCriteria>} criteria - The criteria defined within a `ContextualPromptElement`
|
|
479
|
+
* from the persona definition. These criteria specify the conditions under which the element applies.
|
|
480
|
+
* @param {Readonly<PromptExecutionContext>} context - The current execution context against which
|
|
481
|
+
* the criteria are evaluated.
|
|
482
|
+
* @returns {Promise<boolean>} A promise resolving to `true` if all conditions within the criteria
|
|
483
|
+
* are met (respecting logical operators like AND/OR if defined in criteria), `false` otherwise.
|
|
484
|
+
* @throws {PromptEngineError} If criteria evaluation encounters an unexpected error (e.g., accessing
|
|
485
|
+
* a non-existent working memory key specified in a query).
|
|
486
|
+
*/
|
|
487
|
+
evaluateCriteria(criteria: Readonly<ContextualPromptElementCriteria>, context: Readonly<PromptExecutionContext>): Promise<boolean>;
|
|
488
|
+
/**
|
|
489
|
+
* Estimates the token count for a given piece of text, optionally using a specific model ID
|
|
490
|
+
* to inform a more precise estimation if available (e.g., using a model-specific tokenizer).
|
|
491
|
+
* This is used internally for token budgeting and can also be exposed as a utility.
|
|
492
|
+
*
|
|
493
|
+
* @async
|
|
494
|
+
* @param {string} content - The text content for which to estimate token count.
|
|
495
|
+
* @param {string} [modelId] - Optional. The ID of the target model. If provided, the engine may
|
|
496
|
+
* attempt a more precise tokenization based on this model's characteristics.
|
|
497
|
+
* @returns {Promise<number>} A promise resolving to the estimated number of tokens.
|
|
498
|
+
*/
|
|
499
|
+
estimateTokenCount(content: string, modelId?: string): Promise<number>;
|
|
500
|
+
/**
|
|
501
|
+
* Registers a new prompt template function with the engine. This allows for extending
|
|
502
|
+
* the engine's capabilities to support new LLM providers, model families, or specialized
|
|
503
|
+
* prompt formatting requirements dynamically at runtime.
|
|
504
|
+
*
|
|
505
|
+
* @async
|
|
506
|
+
* @param {string} templateName - A unique name to identify the template. If a template with
|
|
507
|
+
* this name already exists, it will be overwritten (a warning may be logged).
|
|
508
|
+
* @param {PromptTemplateFunction} templateFunction - The function that implements the template logic.
|
|
509
|
+
* It receives `PromptComponents`, `ModelTargetInfo`, selected `ContextualPromptElement[]`,
|
|
510
|
+
* engine `config`, and a `tokenEstimatorFn`, and must return a `FormattedPrompt`.
|
|
511
|
+
* @returns {Promise<void>} A promise that resolves when the template is successfully registered.
|
|
512
|
+
* @throws {PromptEngineError} If the `templateName` is invalid or `templateFunction` is not a function.
|
|
513
|
+
*/
|
|
514
|
+
registerTemplate(templateName: string, templateFunction: PromptTemplateFunction): Promise<void>;
|
|
515
|
+
/**
|
|
516
|
+
* Validates a given set of prompt components and model information against the engine's
|
|
517
|
+
* understanding of best practices and potential issues. Useful for development, debugging
|
|
518
|
+
* persona definitions, or providing feedback to users designing prompts.
|
|
519
|
+
*
|
|
520
|
+
* @async
|
|
521
|
+
* @param {Readonly<PromptComponents>} components - The prompt components to validate.
|
|
522
|
+
* @param {Readonly<ModelTargetInfo>} modelTargetInfo - Information about the target model.
|
|
523
|
+
* @param {Readonly<PromptExecutionContext>} [executionContext] - Optional. The context in which these
|
|
524
|
+
* components would be used, allowing for context-aware validation.
|
|
525
|
+
* @returns {Promise<{ isValid: boolean; issues: Array<{ type: 'error' | 'warning'; message: string; suggestion?: string }>; recommendations: string[]; }>}
|
|
526
|
+
* An object containing a boolean `isValid` (true if no errors), a list of `issues` found
|
|
527
|
+
* (errors or warnings with messages and suggestions), and a list of `recommendations` for improvement.
|
|
528
|
+
*/
|
|
529
|
+
validatePromptConfiguration(components: Readonly<PromptComponents>, modelTargetInfo: Readonly<ModelTargetInfo>, executionContext?: Readonly<PromptExecutionContext>): Promise<{
|
|
530
|
+
isValid: boolean;
|
|
531
|
+
issues: Array<{
|
|
532
|
+
type: 'error' | 'warning';
|
|
533
|
+
code: string;
|
|
534
|
+
message: string;
|
|
535
|
+
suggestion?: string;
|
|
536
|
+
component?: string;
|
|
537
|
+
}>;
|
|
538
|
+
recommendations?: string[];
|
|
539
|
+
}>;
|
|
540
|
+
/**
|
|
541
|
+
* Clears internal caches used by the PromptEngine (e.g., for prompt construction results
|
|
542
|
+
* or token counts). This can be used to free memory or to force re-computation for
|
|
543
|
+
* debugging or after configuration changes.
|
|
544
|
+
*
|
|
545
|
+
* @async
|
|
546
|
+
* @param {string} [selectivePattern] - Optional. A pattern or key to clear only specific
|
|
547
|
+
* cache entries (e.g., "modelId:gpt-4o*"). If omitted, the entire cache is cleared.
|
|
548
|
+
* The exact format of the pattern is implementation-dependent.
|
|
549
|
+
* @returns {Promise<void>} A promise that resolves when the cache clearing operation is complete.
|
|
550
|
+
*/
|
|
551
|
+
clearCache(selectivePattern?: string): Promise<void>;
|
|
552
|
+
/**
|
|
553
|
+
* Retrieves current performance and usage statistics from the PromptEngine.
|
|
554
|
+
* This data can be used for monitoring, optimization, and understanding engine behavior.
|
|
555
|
+
*
|
|
556
|
+
* @async
|
|
557
|
+
* @returns {Promise<PromptEngineStats>} A promise resolving to an object containing
|
|
558
|
+
* various statistics like total prompts constructed, average construction time,
|
|
559
|
+
* cache hit rate, error rates, and usage of contextual elements.
|
|
560
|
+
*/
|
|
561
|
+
getEngineStatistics(): Promise<{
|
|
562
|
+
totalPromptsConstructed: number;
|
|
563
|
+
averageConstructionTimeMs: number;
|
|
564
|
+
cacheStats: {
|
|
565
|
+
hits: number;
|
|
566
|
+
misses: number;
|
|
567
|
+
currentSize: number;
|
|
568
|
+
maxSize?: number;
|
|
569
|
+
effectivenessRatio: number;
|
|
570
|
+
};
|
|
571
|
+
tokenCountingStats: {
|
|
572
|
+
operations: number;
|
|
573
|
+
averageAccuracy?: number;
|
|
574
|
+
};
|
|
575
|
+
contextualElementUsage: Record<string, {
|
|
576
|
+
count: number;
|
|
577
|
+
averageEvaluationTimeMs?: number;
|
|
578
|
+
}>;
|
|
579
|
+
errorRatePerType: Record<string, number>;
|
|
580
|
+
performanceTimers: Record<string, {
|
|
581
|
+
count: number;
|
|
582
|
+
totalTimeMs: number;
|
|
583
|
+
averageTimeMs: number;
|
|
584
|
+
}>;
|
|
585
|
+
}>;
|
|
586
|
+
}
|
|
587
|
+
/**
|
|
588
|
+
* Custom error class for all errors originating from the PromptEngine.
|
|
589
|
+
* This allows for specific catching and handling of prompt construction failures.
|
|
590
|
+
* @class PromptEngineError
|
|
591
|
+
* @extends {Error}
|
|
592
|
+
*/
|
|
593
|
+
export declare class PromptEngineError extends Error {
|
|
594
|
+
/**
|
|
595
|
+
* A specific error code for programmatic handling (e.g., 'TEMPLATE_NOT_FOUND', 'TOKEN_LIMIT_EXCEEDED_IRRECOVERABLY').
|
|
596
|
+
* @public
|
|
597
|
+
* @readonly
|
|
598
|
+
* @type {string}
|
|
599
|
+
*/
|
|
600
|
+
readonly code: string;
|
|
601
|
+
/**
|
|
602
|
+
* Optional: The specific component or operation within the PromptEngine where the error occurred
|
|
603
|
+
* (e.g., 'TokenBudgeting', 'TemplateFormatting', 'ContextualElementSelection').
|
|
604
|
+
* @public
|
|
605
|
+
* @readonly
|
|
606
|
+
* @type {string | undefined}
|
|
607
|
+
*/
|
|
608
|
+
readonly component?: string;
|
|
609
|
+
/**
|
|
610
|
+
* Optional: Additional structured details about the error, which might include relevant
|
|
611
|
+
* data like modelId, offending component, or configuration issue.
|
|
612
|
+
* @public
|
|
613
|
+
* @readonly
|
|
614
|
+
* @type {unknown | undefined}
|
|
615
|
+
*/
|
|
616
|
+
readonly details?: unknown;
|
|
617
|
+
/**
|
|
618
|
+
* Creates an instance of PromptEngineError.
|
|
619
|
+
* @param {string} message - A human-readable description of the error.
|
|
620
|
+
* @param {string} code - A specific error code (e.g., 'TEMPLATE_NOT_FOUND').
|
|
621
|
+
* @param {string} [component] - The engine component where the error originated.
|
|
622
|
+
* @param {unknown} [details] - Additional context or the underlying error.
|
|
623
|
+
*/
|
|
624
|
+
constructor(message: string, code: string, component?: string, details?: unknown);
|
|
625
|
+
}
|
|
626
|
+
export type { VisionInputData, AudioInputData };
|
|
627
|
+
//# sourceMappingURL=IPromptEngine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IPromptEngine.d.ts","sourceRoot":"","sources":["../../../src/core/llm/IPromptEngine.ts"],"names":[],"mappings":"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"}
|