@mxf-dev/core 1.0.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 +13 -0
- package/README.md +29 -0
- package/dist/adapters/FrameworkAdapter.d.ts +177 -0
- package/dist/adapters/FrameworkAdapter.d.ts.map +1 -0
- package/dist/adapters/FrameworkAdapter.js +142 -0
- package/dist/adapters/FrameworkAdapter.js.map +1 -0
- package/dist/adapters/index.d.ts +24 -0
- package/dist/adapters/index.d.ts.map +1 -0
- package/dist/adapters/index.js +21 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/config/ConfigManager.d.ts +606 -0
- package/dist/config/ConfigManager.d.ts.map +1 -0
- package/dist/config/ConfigManager.js +814 -0
- package/dist/config/ConfigManager.js.map +1 -0
- package/dist/config/FeatureFlags.d.ts +84 -0
- package/dist/config/FeatureFlags.d.ts.map +1 -0
- package/dist/config/FeatureFlags.js +103 -0
- package/dist/config/FeatureFlags.js.map +1 -0
- package/dist/config/McpPromptsConfig.d.ts +43 -0
- package/dist/config/McpPromptsConfig.d.ts.map +1 -0
- package/dist/config/McpPromptsConfig.js +108 -0
- package/dist/config/McpPromptsConfig.js.map +1 -0
- package/dist/config/ModelContextLimits.d.ts +40 -0
- package/dist/config/ModelContextLimits.d.ts.map +1 -0
- package/dist/config/ModelContextLimits.js +137 -0
- package/dist/config/ModelContextLimits.js.map +1 -0
- package/dist/config/PromptCompactionConfig.d.ts +75 -0
- package/dist/config/PromptCompactionConfig.d.ts.map +1 -0
- package/dist/config/PromptCompactionConfig.js +146 -0
- package/dist/config/PromptCompactionConfig.js.map +1 -0
- package/dist/config/PromptConfig.d.ts +57 -0
- package/dist/config/PromptConfig.d.ts.map +1 -0
- package/dist/config/PromptConfig.js +43 -0
- package/dist/config/PromptConfig.js.map +1 -0
- package/dist/config/ServerConfig.d.ts +45 -0
- package/dist/config/ServerConfig.d.ts.map +1 -0
- package/dist/config/ServerConfig.js +51 -0
- package/dist/config/ServerConfig.js.map +1 -0
- package/dist/config/dag.config.d.ts +83 -0
- package/dist/config/dag.config.d.ts.map +1 -0
- package/dist/config/dag.config.js +171 -0
- package/dist/config/dag.config.js.map +1 -0
- package/dist/config/knowledge-graph.config.d.ts +112 -0
- package/dist/config/knowledge-graph.config.d.ts.map +1 -0
- package/dist/config/knowledge-graph.config.js +225 -0
- package/dist/config/knowledge-graph.config.js.map +1 -0
- package/dist/config/orpar-memory.config.d.ts +115 -0
- package/dist/config/orpar-memory.config.d.ts.map +1 -0
- package/dist/config/orpar-memory.config.js +309 -0
- package/dist/config/orpar-memory.config.js.map +1 -0
- package/dist/config/tensorflow.config.d.ts +74 -0
- package/dist/config/tensorflow.config.d.ts.map +1 -0
- package/dist/config/tensorflow.config.js +165 -0
- package/dist/config/tensorflow.config.js.map +1 -0
- package/dist/constants/CoreTools.d.ts +47 -0
- package/dist/constants/CoreTools.d.ts.map +1 -0
- package/dist/constants/CoreTools.js +80 -0
- package/dist/constants/CoreTools.js.map +1 -0
- package/dist/constants/DefaultPhaseProfiles.d.ts +163 -0
- package/dist/constants/DefaultPhaseProfiles.d.ts.map +1 -0
- package/dist/constants/DefaultPhaseProfiles.js +618 -0
- package/dist/constants/DefaultPhaseProfiles.js.map +1 -0
- package/dist/constants/EnhancementConstants.d.ts +352 -0
- package/dist/constants/EnhancementConstants.d.ts.map +1 -0
- package/dist/constants/EnhancementConstants.js +352 -0
- package/dist/constants/EnhancementConstants.js.map +1 -0
- package/dist/constants/ToolNames.d.ts +649 -0
- package/dist/constants/ToolNames.d.ts.map +1 -0
- package/dist/constants/ToolNames.js +463 -0
- package/dist/constants/ToolNames.js.map +1 -0
- package/dist/database/DatabaseAdapterFactory.d.ts +107 -0
- package/dist/database/DatabaseAdapterFactory.d.ts.map +1 -0
- package/dist/database/DatabaseAdapterFactory.js +160 -0
- package/dist/database/DatabaseAdapterFactory.js.map +1 -0
- package/dist/database/adapters/mongodb/MongoAgentRepository.d.ts +82 -0
- package/dist/database/adapters/mongodb/MongoAgentRepository.d.ts.map +1 -0
- package/dist/database/adapters/mongodb/MongoAgentRepository.js +145 -0
- package/dist/database/adapters/mongodb/MongoAgentRepository.js.map +1 -0
- package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts +79 -0
- package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts.map +1 -0
- package/dist/database/adapters/mongodb/MongoBaseRepository.js +168 -0
- package/dist/database/adapters/mongodb/MongoBaseRepository.js.map +1 -0
- package/dist/database/adapters/mongodb/MongoChannelRepository.d.ts +80 -0
- package/dist/database/adapters/mongodb/MongoChannelRepository.d.ts.map +1 -0
- package/dist/database/adapters/mongodb/MongoChannelRepository.js +155 -0
- package/dist/database/adapters/mongodb/MongoChannelRepository.js.map +1 -0
- package/dist/database/adapters/mongodb/MongoDagRepository.d.ts +104 -0
- package/dist/database/adapters/mongodb/MongoDagRepository.d.ts.map +1 -0
- package/dist/database/adapters/mongodb/MongoDagRepository.js +288 -0
- package/dist/database/adapters/mongodb/MongoDagRepository.js.map +1 -0
- package/dist/database/adapters/mongodb/MongoKnowledgeGraphRepository.d.ts +86 -0
- package/dist/database/adapters/mongodb/MongoKnowledgeGraphRepository.d.ts.map +1 -0
- package/dist/database/adapters/mongodb/MongoKnowledgeGraphRepository.js +717 -0
- package/dist/database/adapters/mongodb/MongoKnowledgeGraphRepository.js.map +1 -0
- package/dist/database/adapters/mongodb/MongoMemoryRepository.d.ts +60 -0
- package/dist/database/adapters/mongodb/MongoMemoryRepository.d.ts.map +1 -0
- package/dist/database/adapters/mongodb/MongoMemoryRepository.js +176 -0
- package/dist/database/adapters/mongodb/MongoMemoryRepository.js.map +1 -0
- package/dist/database/adapters/mongodb/MongoTaskRepository.d.ts +103 -0
- package/dist/database/adapters/mongodb/MongoTaskRepository.d.ts.map +1 -0
- package/dist/database/adapters/mongodb/MongoTaskRepository.js +301 -0
- package/dist/database/adapters/mongodb/MongoTaskRepository.js.map +1 -0
- package/dist/database/adapters/mongodb/index.d.ts +25 -0
- package/dist/database/adapters/mongodb/index.d.ts.map +1 -0
- package/dist/database/adapters/mongodb/index.js +25 -0
- package/dist/database/adapters/mongodb/index.js.map +1 -0
- package/dist/database/index.d.ts +22 -0
- package/dist/database/index.d.ts.map +1 -0
- package/dist/database/index.js +22 -0
- package/dist/database/index.js.map +1 -0
- package/dist/events/ClientEventBus.d.ts +226 -0
- package/dist/events/ClientEventBus.d.ts.map +1 -0
- package/dist/events/ClientEventBus.js +630 -0
- package/dist/events/ClientEventBus.js.map +1 -0
- package/dist/events/EventBus.d.ts +59 -0
- package/dist/events/EventBus.d.ts.map +1 -0
- package/dist/events/EventBus.js +98 -0
- package/dist/events/EventBus.js.map +1 -0
- package/dist/events/EventBusBase.d.ts +236 -0
- package/dist/events/EventBusBase.d.ts.map +1 -0
- package/dist/events/EventBusBase.js +247 -0
- package/dist/events/EventBusBase.js.map +1 -0
- package/dist/events/EventNames.d.ts +747 -0
- package/dist/events/EventNames.d.ts.map +1 -0
- package/dist/events/EventNames.js +157 -0
- package/dist/events/EventNames.js.map +1 -0
- package/dist/events/PublicEvents.d.ts +102 -0
- package/dist/events/PublicEvents.d.ts.map +1 -0
- package/dist/events/PublicEvents.js +221 -0
- package/dist/events/PublicEvents.js.map +1 -0
- package/dist/events/ServerEventBus.d.ts +201 -0
- package/dist/events/ServerEventBus.d.ts.map +1 -0
- package/dist/events/ServerEventBus.js +412 -0
- package/dist/events/ServerEventBus.js.map +1 -0
- package/dist/events/event-definitions/AgentEvents.d.ts +270 -0
- package/dist/events/event-definitions/AgentEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/AgentEvents.js +82 -0
- package/dist/events/event-definitions/AgentEvents.js.map +1 -0
- package/dist/events/event-definitions/AnalyticsEvents.d.ts +280 -0
- package/dist/events/event-definitions/AnalyticsEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/AnalyticsEvents.js +52 -0
- package/dist/events/event-definitions/AnalyticsEvents.js.map +1 -0
- package/dist/events/event-definitions/BulkEvents.d.ts +445 -0
- package/dist/events/event-definitions/BulkEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/BulkEvents.js +61 -0
- package/dist/events/event-definitions/BulkEvents.js.map +1 -0
- package/dist/events/event-definitions/ChannelEvents.d.ts +197 -0
- package/dist/events/event-definitions/ChannelEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/ChannelEvents.js +82 -0
- package/dist/events/event-definitions/ChannelEvents.js.map +1 -0
- package/dist/events/event-definitions/CodeExecutionEvents.d.ts +263 -0
- package/dist/events/event-definitions/CodeExecutionEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/CodeExecutionEvents.js +41 -0
- package/dist/events/event-definitions/CodeExecutionEvents.js.map +1 -0
- package/dist/events/event-definitions/CompactionEvents.d.ts +166 -0
- package/dist/events/event-definitions/CompactionEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/CompactionEvents.js +35 -0
- package/dist/events/event-definitions/CompactionEvents.js.map +1 -0
- package/dist/events/event-definitions/ConfigEvents.d.ts +319 -0
- package/dist/events/event-definitions/ConfigEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/ConfigEvents.js +45 -0
- package/dist/events/event-definitions/ConfigEvents.js.map +1 -0
- package/dist/events/event-definitions/ControlLoopEvents.d.ts +113 -0
- package/dist/events/event-definitions/ControlLoopEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/ControlLoopEvents.js +40 -0
- package/dist/events/event-definitions/ControlLoopEvents.js.map +1 -0
- package/dist/events/event-definitions/DagEvents.d.ts +216 -0
- package/dist/events/event-definitions/DagEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/DagEvents.js +46 -0
- package/dist/events/event-definitions/DagEvents.js.map +1 -0
- package/dist/events/event-definitions/HeartbeatEvents.d.ts +45 -0
- package/dist/events/event-definitions/HeartbeatEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/HeartbeatEvents.js +28 -0
- package/dist/events/event-definitions/HeartbeatEvents.js.map +1 -0
- package/dist/events/event-definitions/InferenceParameterEvents.d.ts +99 -0
- package/dist/events/event-definitions/InferenceParameterEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/InferenceParameterEvents.js +38 -0
- package/dist/events/event-definitions/InferenceParameterEvents.js.map +1 -0
- package/dist/events/event-definitions/KeyEvents.d.ts +141 -0
- package/dist/events/event-definitions/KeyEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/KeyEvents.js +49 -0
- package/dist/events/event-definitions/KeyEvents.js.map +1 -0
- package/dist/events/event-definitions/KnowledgeGraphEvents.d.ts +257 -0
- package/dist/events/event-definitions/KnowledgeGraphEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/KnowledgeGraphEvents.js +49 -0
- package/dist/events/event-definitions/KnowledgeGraphEvents.js.map +1 -0
- package/dist/events/event-definitions/LlmEvents.d.ts +50 -0
- package/dist/events/event-definitions/LlmEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/LlmEvents.js +29 -0
- package/dist/events/event-definitions/LlmEvents.js.map +1 -0
- package/dist/events/event-definitions/McpEvents.d.ts +385 -0
- package/dist/events/event-definitions/McpEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/McpEvents.js +86 -0
- package/dist/events/event-definitions/McpEvents.js.map +1 -0
- package/dist/events/event-definitions/MeilisearchEvents.d.ts +49 -0
- package/dist/events/event-definitions/MeilisearchEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/MeilisearchEvents.js +34 -0
- package/dist/events/event-definitions/MeilisearchEvents.js.map +1 -0
- package/dist/events/event-definitions/MemoryEvents.d.ts +328 -0
- package/dist/events/event-definitions/MemoryEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/MemoryEvents.js +69 -0
- package/dist/events/event-definitions/MemoryEvents.js.map +1 -0
- package/dist/events/event-definitions/MemoryUtilityEvents.d.ts +233 -0
- package/dist/events/event-definitions/MemoryUtilityEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/MemoryUtilityEvents.js +37 -0
- package/dist/events/event-definitions/MemoryUtilityEvents.js.map +1 -0
- package/dist/events/event-definitions/MessageEvents.d.ts +86 -0
- package/dist/events/event-definitions/MessageEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/MessageEvents.js +42 -0
- package/dist/events/event-definitions/MessageEvents.js.map +1 -0
- package/dist/events/event-definitions/MxpEvents.d.ts +113 -0
- package/dist/events/event-definitions/MxpEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/MxpEvents.js +46 -0
- package/dist/events/event-definitions/MxpEvents.js.map +1 -0
- package/dist/events/event-definitions/OrparEvents.d.ts +222 -0
- package/dist/events/event-definitions/OrparEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/OrparEvents.js +58 -0
- package/dist/events/event-definitions/OrparEvents.js.map +1 -0
- package/dist/events/event-definitions/OrparMemoryEvents.d.ts +357 -0
- package/dist/events/event-definitions/OrparMemoryEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/OrparMemoryEvents.js +79 -0
- package/dist/events/event-definitions/OrparMemoryEvents.js.map +1 -0
- package/dist/events/event-definitions/PlanEvents.d.ts +109 -0
- package/dist/events/event-definitions/PlanEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/PlanEvents.js +41 -0
- package/dist/events/event-definitions/PlanEvents.js.map +1 -0
- package/dist/events/event-definitions/ProgressEvents.d.ts +44 -0
- package/dist/events/event-definitions/ProgressEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/ProgressEvents.js +30 -0
- package/dist/events/event-definitions/ProgressEvents.js.map +1 -0
- package/dist/events/event-definitions/ShellExecutionEvents.d.ts +280 -0
- package/dist/events/event-definitions/ShellExecutionEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/ShellExecutionEvents.js +41 -0
- package/dist/events/event-definitions/ShellExecutionEvents.js.map +1 -0
- package/dist/events/event-definitions/SystemEvents.d.ts +234 -0
- package/dist/events/event-definitions/SystemEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/SystemEvents.js +42 -0
- package/dist/events/event-definitions/SystemEvents.js.map +1 -0
- package/dist/events/event-definitions/TaskEvents.d.ts +239 -0
- package/dist/events/event-definitions/TaskEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/TaskEvents.js +58 -0
- package/dist/events/event-definitions/TaskEvents.js.map +1 -0
- package/dist/events/event-definitions/TensorFlowEvents.d.ts +144 -0
- package/dist/events/event-definitions/TensorFlowEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/TensorFlowEvents.js +45 -0
- package/dist/events/event-definitions/TensorFlowEvents.js.map +1 -0
- package/dist/events/event-definitions/UserInputEvents.d.ts +180 -0
- package/dist/events/event-definitions/UserInputEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/UserInputEvents.js +36 -0
- package/dist/events/event-definitions/UserInputEvents.js.map +1 -0
- package/dist/events/event-definitions/WorkflowEvents.d.ts +142 -0
- package/dist/events/event-definitions/WorkflowEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/WorkflowEvents.js +50 -0
- package/dist/events/event-definitions/WorkflowEvents.js.map +1 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/dist/interfaces/AgentContext.d.ts +154 -0
- package/dist/interfaces/AgentContext.d.ts.map +1 -0
- package/dist/interfaces/AgentContext.js +38 -0
- package/dist/interfaces/AgentContext.js.map +1 -0
- package/dist/interfaces/AgentInterfaces.d.ts +96 -0
- package/dist/interfaces/AgentInterfaces.d.ts.map +1 -0
- package/dist/interfaces/AgentInterfaces.js +21 -0
- package/dist/interfaces/AgentInterfaces.js.map +1 -0
- package/dist/interfaces/Channel.d.ts +34 -0
- package/dist/interfaces/Channel.d.ts.map +1 -0
- package/dist/interfaces/Channel.js +21 -0
- package/dist/interfaces/Channel.js.map +1 -0
- package/dist/interfaces/ChannelConfig.d.ts +50 -0
- package/dist/interfaces/ChannelConfig.d.ts.map +1 -0
- package/dist/interfaces/ChannelConfig.js +21 -0
- package/dist/interfaces/ChannelConfig.js.map +1 -0
- package/dist/interfaces/ChannelConnectionConfig.d.ts +36 -0
- package/dist/interfaces/ChannelConnectionConfig.d.ts.map +1 -0
- package/dist/interfaces/ChannelConnectionConfig.js +21 -0
- package/dist/interfaces/ChannelConnectionConfig.js.map +1 -0
- package/dist/interfaces/ChannelInfo.d.ts +32 -0
- package/dist/interfaces/ChannelInfo.d.ts.map +1 -0
- package/dist/interfaces/ChannelInfo.js +21 -0
- package/dist/interfaces/ChannelInfo.js.map +1 -0
- package/dist/interfaces/ConversationMessage.d.ts +74 -0
- package/dist/interfaces/ConversationMessage.d.ts.map +1 -0
- package/dist/interfaces/ConversationMessage.js +21 -0
- package/dist/interfaces/ConversationMessage.js.map +1 -0
- package/dist/interfaces/ILlmTopicExtractor.d.ts +65 -0
- package/dist/interfaces/ILlmTopicExtractor.d.ts.map +1 -0
- package/dist/interfaces/ILlmTopicExtractor.js +21 -0
- package/dist/interfaces/ILlmTopicExtractor.js.map +1 -0
- package/dist/interfaces/SocketServiceInterface.d.ts +93 -0
- package/dist/interfaces/SocketServiceInterface.d.ts.map +1 -0
- package/dist/interfaces/SocketServiceInterface.js +21 -0
- package/dist/interfaces/SocketServiceInterface.js.map +1 -0
- package/dist/interfaces/TaskInterfaces.d.ts +50 -0
- package/dist/interfaces/TaskInterfaces.d.ts.map +1 -0
- package/dist/interfaces/TaskInterfaces.js +21 -0
- package/dist/interfaces/TaskInterfaces.js.map +1 -0
- package/dist/middleware/MxpMiddleware.d.ts +84 -0
- package/dist/middleware/MxpMiddleware.d.ts.map +1 -0
- package/dist/middleware/MxpMiddleware.js +284 -0
- package/dist/middleware/MxpMiddleware.js.map +1 -0
- package/dist/models/PatternLearningModels.d.ts +163 -0
- package/dist/models/PatternLearningModels.d.ts.map +1 -0
- package/dist/models/PatternLearningModels.js +409 -0
- package/dist/models/PatternLearningModels.js.map +1 -0
- package/dist/models/agent.d.ts +59 -0
- package/dist/models/agent.d.ts.map +1 -0
- package/dist/models/agent.js +113 -0
- package/dist/models/agent.js.map +1 -0
- package/dist/models/auditLog.d.ts +46 -0
- package/dist/models/auditLog.d.ts.map +1 -0
- package/dist/models/auditLog.js +106 -0
- package/dist/models/auditLog.js.map +1 -0
- package/dist/models/channel.d.ts +91 -0
- package/dist/models/channel.d.ts.map +1 -0
- package/dist/models/channel.js +205 -0
- package/dist/models/channel.js.map +1 -0
- package/dist/models/channelKey.d.ts +57 -0
- package/dist/models/channelKey.d.ts.map +1 -0
- package/dist/models/channelKey.js +93 -0
- package/dist/models/channelKey.js.map +1 -0
- package/dist/models/codeExecution.d.ts +57 -0
- package/dist/models/codeExecution.d.ts.map +1 -0
- package/dist/models/codeExecution.js +197 -0
- package/dist/models/codeExecution.js.map +1 -0
- package/dist/models/controlLoop.d.ts +138 -0
- package/dist/models/controlLoop.d.ts.map +1 -0
- package/dist/models/controlLoop.js +38 -0
- package/dist/models/controlLoop.js.map +1 -0
- package/dist/models/coordination.d.ts +76 -0
- package/dist/models/coordination.d.ts.map +1 -0
- package/dist/models/coordination.js +130 -0
- package/dist/models/coordination.js.map +1 -0
- package/dist/models/document.d.ts +123 -0
- package/dist/models/document.d.ts.map +1 -0
- package/dist/models/document.js +191 -0
- package/dist/models/document.js.map +1 -0
- package/dist/models/entity.d.ts +60 -0
- package/dist/models/entity.d.ts.map +1 -0
- package/dist/models/entity.js +163 -0
- package/dist/models/entity.js.map +1 -0
- package/dist/models/mcpTool.d.ts +95 -0
- package/dist/models/mcpTool.d.ts.map +1 -0
- package/dist/models/mcpTool.js +175 -0
- package/dist/models/mcpTool.js.map +1 -0
- package/dist/models/mcpToolExecution.d.ts +77 -0
- package/dist/models/mcpToolExecution.d.ts.map +1 -0
- package/dist/models/mcpToolExecution.js +110 -0
- package/dist/models/mcpToolExecution.js.map +1 -0
- package/dist/models/memory.d.ts +47 -0
- package/dist/models/memory.d.ts.map +1 -0
- package/dist/models/memory.js +251 -0
- package/dist/models/memory.js.map +1 -0
- package/dist/models/memoryStrata.d.ts +130 -0
- package/dist/models/memoryStrata.d.ts.map +1 -0
- package/dist/models/memoryStrata.js +317 -0
- package/dist/models/memoryStrata.js.map +1 -0
- package/dist/models/personalAccessToken.d.ts +78 -0
- package/dist/models/personalAccessToken.d.ts.map +1 -0
- package/dist/models/personalAccessToken.js +155 -0
- package/dist/models/personalAccessToken.js.map +1 -0
- package/dist/models/plan.d.ts +53 -0
- package/dist/models/plan.d.ts.map +1 -0
- package/dist/models/plan.js +100 -0
- package/dist/models/plan.js.map +1 -0
- package/dist/models/relationship.d.ts +59 -0
- package/dist/models/relationship.d.ts.map +1 -0
- package/dist/models/relationship.js +132 -0
- package/dist/models/relationship.js.map +1 -0
- package/dist/models/shellOutput.d.ts +54 -0
- package/dist/models/shellOutput.d.ts.map +1 -0
- package/dist/models/shellOutput.js +76 -0
- package/dist/models/shellOutput.js.map +1 -0
- package/dist/models/task.d.ts +77 -0
- package/dist/models/task.d.ts.map +1 -0
- package/dist/models/task.js +297 -0
- package/dist/models/task.js.map +1 -0
- package/dist/models/taskEffectiveness.d.ts +45 -0
- package/dist/models/taskEffectiveness.d.ts.map +1 -0
- package/dist/models/taskEffectiveness.js +132 -0
- package/dist/models/taskEffectiveness.js.map +1 -0
- package/dist/models/tool.d.ts +57 -0
- package/dist/models/tool.d.ts.map +1 -0
- package/dist/models/tool.js +68 -0
- package/dist/models/tool.js.map +1 -0
- package/dist/models/toolExecution.d.ts +44 -0
- package/dist/models/toolExecution.d.ts.map +1 -0
- package/dist/models/toolExecution.js +46 -0
- package/dist/models/toolExecution.js.map +1 -0
- package/dist/models/toolModels.d.ts +130 -0
- package/dist/models/toolModels.d.ts.map +1 -0
- package/dist/models/toolModels.js +315 -0
- package/dist/models/toolModels.js.map +1 -0
- package/dist/models/user.d.ts +52 -0
- package/dist/models/user.d.ts.map +1 -0
- package/dist/models/user.js +118 -0
- package/dist/models/user.js.map +1 -0
- package/dist/models/userMemory.d.ts +57 -0
- package/dist/models/userMemory.d.ts.map +1 -0
- package/dist/models/userMemory.js +113 -0
- package/dist/models/userMemory.js.map +1 -0
- package/dist/mxp/BinaryProtocolLayer.d.ts +86 -0
- package/dist/mxp/BinaryProtocolLayer.d.ts.map +1 -0
- package/dist/mxp/BinaryProtocolLayer.js +313 -0
- package/dist/mxp/BinaryProtocolLayer.js.map +1 -0
- package/dist/mxp/ContextCompressionEngine.d.ts +134 -0
- package/dist/mxp/ContextCompressionEngine.d.ts.map +1 -0
- package/dist/mxp/ContextCompressionEngine.js +416 -0
- package/dist/mxp/ContextCompressionEngine.js.map +1 -0
- package/dist/mxp/MxpConfigManager.d.ts +109 -0
- package/dist/mxp/MxpConfigManager.d.ts.map +1 -0
- package/dist/mxp/MxpConfigManager.js +257 -0
- package/dist/mxp/MxpConfigManager.js.map +1 -0
- package/dist/mxp/MxpEventForwardingEnhancer.d.ts +134 -0
- package/dist/mxp/MxpEventForwardingEnhancer.d.ts.map +1 -0
- package/dist/mxp/MxpEventForwardingEnhancer.js +361 -0
- package/dist/mxp/MxpEventForwardingEnhancer.js.map +1 -0
- package/dist/mxp/MxpTokenOptimizer.d.ts +68 -0
- package/dist/mxp/MxpTokenOptimizer.d.ts.map +1 -0
- package/dist/mxp/MxpTokenOptimizer.js +198 -0
- package/dist/mxp/MxpTokenOptimizer.js.map +1 -0
- package/dist/prompts/ChannelContextProvider.d.ts +55 -0
- package/dist/prompts/ChannelContextProvider.d.ts.map +1 -0
- package/dist/prompts/ChannelContextProvider.js +159 -0
- package/dist/prompts/ChannelContextProvider.js.map +1 -0
- package/dist/prompts/DeferredToolSchemaRegistry.d.ts +84 -0
- package/dist/prompts/DeferredToolSchemaRegistry.d.ts.map +1 -0
- package/dist/prompts/DeferredToolSchemaRegistry.js +186 -0
- package/dist/prompts/DeferredToolSchemaRegistry.js.map +1 -0
- package/dist/prompts/DynamicContextProvider.d.ts +94 -0
- package/dist/prompts/DynamicContextProvider.d.ts.map +1 -0
- package/dist/prompts/DynamicContextProvider.js +124 -0
- package/dist/prompts/DynamicContextProvider.js.map +1 -0
- package/dist/prompts/MemoryPromptInjector.d.ts +77 -0
- package/dist/prompts/MemoryPromptInjector.d.ts.map +1 -0
- package/dist/prompts/MemoryPromptInjector.js +248 -0
- package/dist/prompts/MemoryPromptInjector.js.map +1 -0
- package/dist/prompts/MxfAgentSystemPrompt.d.ts +121 -0
- package/dist/prompts/MxfAgentSystemPrompt.d.ts.map +1 -0
- package/dist/prompts/MxfAgentSystemPrompt.js +922 -0
- package/dist/prompts/MxfAgentSystemPrompt.js.map +1 -0
- package/dist/prompts/PromptSegmentRegistry.d.ts +103 -0
- package/dist/prompts/PromptSegmentRegistry.d.ts.map +1 -0
- package/dist/prompts/PromptSegmentRegistry.js +303 -0
- package/dist/prompts/PromptSegmentRegistry.js.map +1 -0
- package/dist/prompts/ToolBehavioralGuidance.d.ts +68 -0
- package/dist/prompts/ToolBehavioralGuidance.d.ts.map +1 -0
- package/dist/prompts/ToolBehavioralGuidance.js +171 -0
- package/dist/prompts/ToolBehavioralGuidance.js.map +1 -0
- package/dist/protocols/binaryProtocol.d.ts +109 -0
- package/dist/protocols/binaryProtocol.d.ts.map +1 -0
- package/dist/protocols/binaryProtocol.js +329 -0
- package/dist/protocols/binaryProtocol.js.map +1 -0
- package/dist/protocols/mcp/ClientExecutableManifest.d.ts +68 -0
- package/dist/protocols/mcp/ClientExecutableManifest.d.ts.map +1 -0
- package/dist/protocols/mcp/ClientExecutableManifest.js +81 -0
- package/dist/protocols/mcp/ClientExecutableManifest.js.map +1 -0
- package/dist/protocols/mcp/IMcpClient.d.ts +285 -0
- package/dist/protocols/mcp/IMcpClient.d.ts.map +1 -0
- package/dist/protocols/mcp/IMcpClient.js +40 -0
- package/dist/protocols/mcp/IMcpClient.js.map +1 -0
- package/dist/protocols/mcp/LlmProviderFactory.d.ts +40 -0
- package/dist/protocols/mcp/LlmProviderFactory.d.ts.map +1 -0
- package/dist/protocols/mcp/LlmProviderFactory.js +78 -0
- package/dist/protocols/mcp/LlmProviderFactory.js.map +1 -0
- package/dist/protocols/mcp/LlmProviders.d.ts +42 -0
- package/dist/protocols/mcp/LlmProviders.d.ts.map +1 -0
- package/dist/protocols/mcp/LlmProviders.js +45 -0
- package/dist/protocols/mcp/LlmProviders.js.map +1 -0
- package/dist/protocols/mcp/McpClient.d.ts +106 -0
- package/dist/protocols/mcp/McpClient.d.ts.map +1 -0
- package/dist/protocols/mcp/McpClient.js +159 -0
- package/dist/protocols/mcp/McpClient.js.map +1 -0
- package/dist/protocols/mcp/McpClientFactory.d.ts +41 -0
- package/dist/protocols/mcp/McpClientFactory.d.ts.map +1 -0
- package/dist/protocols/mcp/McpClientFactory.js +51 -0
- package/dist/protocols/mcp/McpClientFactory.js.map +1 -0
- package/dist/protocols/mcp/McpServerTypes.d.ts +195 -0
- package/dist/protocols/mcp/McpServerTypes.d.ts.map +1 -0
- package/dist/protocols/mcp/McpServerTypes.js +21 -0
- package/dist/protocols/mcp/McpServerTypes.js.map +1 -0
- package/dist/protocols/mcp/McpToolCallParser.d.ts +68 -0
- package/dist/protocols/mcp/McpToolCallParser.d.ts.map +1 -0
- package/dist/protocols/mcp/McpToolCallParser.js +240 -0
- package/dist/protocols/mcp/McpToolCallParser.js.map +1 -0
- package/dist/protocols/mcp/McpToolSchema.d.ts +160 -0
- package/dist/protocols/mcp/McpToolSchema.d.ts.map +1 -0
- package/dist/protocols/mcp/McpToolSchema.js +512 -0
- package/dist/protocols/mcp/McpToolSchema.js.map +1 -0
- package/dist/protocols/mcp/converters/IFormatConverter.d.ts +309 -0
- package/dist/protocols/mcp/converters/IFormatConverter.d.ts.map +1 -0
- package/dist/protocols/mcp/converters/IFormatConverter.js +76 -0
- package/dist/protocols/mcp/converters/IFormatConverter.js.map +1 -0
- package/dist/protocols/mcp/converters/UnifiedMessageConverter.d.ts +80 -0
- package/dist/protocols/mcp/converters/UnifiedMessageConverter.d.ts.map +1 -0
- package/dist/protocols/mcp/converters/UnifiedMessageConverter.js +234 -0
- package/dist/protocols/mcp/converters/UnifiedMessageConverter.js.map +1 -0
- package/dist/protocols/mcp/converters/adapters/AnthropicMessageAdapter.d.ts +101 -0
- package/dist/protocols/mcp/converters/adapters/AnthropicMessageAdapter.d.ts.map +1 -0
- package/dist/protocols/mcp/converters/adapters/AnthropicMessageAdapter.js +434 -0
- package/dist/protocols/mcp/converters/adapters/AnthropicMessageAdapter.js.map +1 -0
- package/dist/protocols/mcp/converters/adapters/GeminiMessageAdapter.d.ts +34 -0
- package/dist/protocols/mcp/converters/adapters/GeminiMessageAdapter.d.ts.map +1 -0
- package/dist/protocols/mcp/converters/adapters/GeminiMessageAdapter.js +49 -0
- package/dist/protocols/mcp/converters/adapters/GeminiMessageAdapter.js.map +1 -0
- package/dist/protocols/mcp/converters/adapters/OpenAiMessageAdapter.d.ts +39 -0
- package/dist/protocols/mcp/converters/adapters/OpenAiMessageAdapter.d.ts.map +1 -0
- package/dist/protocols/mcp/converters/adapters/OpenAiMessageAdapter.js +43 -0
- package/dist/protocols/mcp/converters/adapters/OpenAiMessageAdapter.js.map +1 -0
- package/dist/protocols/mcp/converters/adapters/OpenRouterMessageAdapter.d.ts +96 -0
- package/dist/protocols/mcp/converters/adapters/OpenRouterMessageAdapter.d.ts.map +1 -0
- package/dist/protocols/mcp/converters/adapters/OpenRouterMessageAdapter.js +334 -0
- package/dist/protocols/mcp/converters/adapters/OpenRouterMessageAdapter.js.map +1 -0
- package/dist/protocols/mcp/converters/adapters/XaiMessageAdapter.d.ts +30 -0
- package/dist/protocols/mcp/converters/adapters/XaiMessageAdapter.d.ts.map +1 -0
- package/dist/protocols/mcp/converters/adapters/XaiMessageAdapter.js +34 -0
- package/dist/protocols/mcp/converters/adapters/XaiMessageAdapter.js.map +1 -0
- package/dist/protocols/mcp/providers/AnthropicMcpClient.d.ts +115 -0
- package/dist/protocols/mcp/providers/AnthropicMcpClient.d.ts.map +1 -0
- package/dist/protocols/mcp/providers/AnthropicMcpClient.js +514 -0
- package/dist/protocols/mcp/providers/AnthropicMcpClient.js.map +1 -0
- package/dist/protocols/mcp/providers/AzureOpenAiMcpClient.d.ts +151 -0
- package/dist/protocols/mcp/providers/AzureOpenAiMcpClient.d.ts.map +1 -0
- package/dist/protocols/mcp/providers/AzureOpenAiMcpClient.js +657 -0
- package/dist/protocols/mcp/providers/AzureOpenAiMcpClient.js.map +1 -0
- package/dist/protocols/mcp/providers/BaseMcpClient.d.ts +152 -0
- package/dist/protocols/mcp/providers/BaseMcpClient.d.ts.map +1 -0
- package/dist/protocols/mcp/providers/BaseMcpClient.js +219 -0
- package/dist/protocols/mcp/providers/BaseMcpClient.js.map +1 -0
- package/dist/protocols/mcp/providers/CustomMcpClient.d.ts +106 -0
- package/dist/protocols/mcp/providers/CustomMcpClient.d.ts.map +1 -0
- package/dist/protocols/mcp/providers/CustomMcpClient.js +282 -0
- package/dist/protocols/mcp/providers/CustomMcpClient.js.map +1 -0
- package/dist/protocols/mcp/providers/GeminiMcpClient.d.ts +121 -0
- package/dist/protocols/mcp/providers/GeminiMcpClient.d.ts.map +1 -0
- package/dist/protocols/mcp/providers/GeminiMcpClient.js +581 -0
- package/dist/protocols/mcp/providers/GeminiMcpClient.js.map +1 -0
- package/dist/protocols/mcp/providers/OllamaMcpClient.d.ts +97 -0
- package/dist/protocols/mcp/providers/OllamaMcpClient.d.ts.map +1 -0
- package/dist/protocols/mcp/providers/OllamaMcpClient.js +418 -0
- package/dist/protocols/mcp/providers/OllamaMcpClient.js.map +1 -0
- package/dist/protocols/mcp/providers/OpenAiMcpClient.d.ts +133 -0
- package/dist/protocols/mcp/providers/OpenAiMcpClient.d.ts.map +1 -0
- package/dist/protocols/mcp/providers/OpenAiMcpClient.js +672 -0
- package/dist/protocols/mcp/providers/OpenAiMcpClient.js.map +1 -0
- package/dist/protocols/mcp/providers/OpenRouterMcpClient.d.ts +164 -0
- package/dist/protocols/mcp/providers/OpenRouterMcpClient.d.ts.map +1 -0
- package/dist/protocols/mcp/providers/OpenRouterMcpClient.js +902 -0
- package/dist/protocols/mcp/providers/OpenRouterMcpClient.js.map +1 -0
- package/dist/protocols/mcp/providers/XaiMcpClient.d.ts +96 -0
- package/dist/protocols/mcp/providers/XaiMcpClient.d.ts.map +1 -0
- package/dist/protocols/mcp/providers/XaiMcpClient.js +474 -0
- package/dist/protocols/mcp/providers/XaiMcpClient.js.map +1 -0
- package/dist/protocols/mcp/security/McpConfirmationManager.d.ts +113 -0
- package/dist/protocols/mcp/security/McpConfirmationManager.d.ts.map +1 -0
- package/dist/protocols/mcp/security/McpConfirmationManager.js +238 -0
- package/dist/protocols/mcp/security/McpConfirmationManager.js.map +1 -0
- package/dist/protocols/mcp/security/McpSecurityConfig.d.ts +119 -0
- package/dist/protocols/mcp/security/McpSecurityConfig.d.ts.map +1 -0
- package/dist/protocols/mcp/security/McpSecurityConfig.js +306 -0
- package/dist/protocols/mcp/security/McpSecurityConfig.js.map +1 -0
- package/dist/protocols/mcp/security/McpSecurityGuard.d.ts +91 -0
- package/dist/protocols/mcp/security/McpSecurityGuard.d.ts.map +1 -0
- package/dist/protocols/mcp/security/McpSecurityGuard.js +458 -0
- package/dist/protocols/mcp/security/McpSecurityGuard.js.map +1 -0
- package/dist/protocols/mcp/security/index.d.ts +28 -0
- package/dist/protocols/mcp/security/index.d.ts.map +1 -0
- package/dist/protocols/mcp/security/index.js +28 -0
- package/dist/protocols/mcp/security/index.js.map +1 -0
- package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts +232 -0
- package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts.map +1 -0
- package/dist/protocols/mcp/services/ExternalMcpServerManager.js +1174 -0
- package/dist/protocols/mcp/services/ExternalMcpServerManager.js.map +1 -0
- package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts +109 -0
- package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts.map +1 -0
- package/dist/protocols/mcp/services/ExternalServerConfigs.js +321 -0
- package/dist/protocols/mcp/services/ExternalServerConfigs.js.map +1 -0
- package/dist/protocols/mcp/services/IToolEventEmitter.d.ts +50 -0
- package/dist/protocols/mcp/services/IToolEventEmitter.d.ts.map +1 -0
- package/dist/protocols/mcp/services/IToolEventEmitter.js +21 -0
- package/dist/protocols/mcp/services/IToolEventEmitter.js.map +1 -0
- package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts +56 -0
- package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts.map +1 -0
- package/dist/protocols/mcp/services/ToolSchemaEnhancements.js +57 -0
- package/dist/protocols/mcp/services/ToolSchemaEnhancements.js.map +1 -0
- package/dist/protocols/mcp/tools/AnalyticsTools.d.ts +68 -0
- package/dist/protocols/mcp/tools/AnalyticsTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/AnalyticsTools.js +725 -0
- package/dist/protocols/mcp/tools/AnalyticsTools.js.map +1 -0
- package/dist/protocols/mcp/tools/CodeAnalysisTools.d.ts +614 -0
- package/dist/protocols/mcp/tools/CodeAnalysisTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/CodeAnalysisTools.js +645 -0
- package/dist/protocols/mcp/tools/CodeAnalysisTools.js.map +1 -0
- package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts +270 -0
- package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/ControlLoopLifecycle.js +256 -0
- package/dist/protocols/mcp/tools/ControlLoopLifecycle.js.map +1 -0
- package/dist/protocols/mcp/tools/DateTimeTools.d.ts +431 -0
- package/dist/protocols/mcp/tools/DateTimeTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/DateTimeTools.js +525 -0
- package/dist/protocols/mcp/tools/DateTimeTools.js.map +1 -0
- package/dist/protocols/mcp/tools/EffectivenessTools.d.ts +51 -0
- package/dist/protocols/mcp/tools/EffectivenessTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/EffectivenessTools.js +403 -0
- package/dist/protocols/mcp/tools/EffectivenessTools.js.map +1 -0
- package/dist/protocols/mcp/tools/GitTools.d.ts +389 -0
- package/dist/protocols/mcp/tools/GitTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/GitTools.js +657 -0
- package/dist/protocols/mcp/tools/GitTools.js.map +1 -0
- package/dist/protocols/mcp/tools/InfrastructureTools.d.ts +826 -0
- package/dist/protocols/mcp/tools/InfrastructureTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/InfrastructureTools.js +689 -0
- package/dist/protocols/mcp/tools/InfrastructureTools.js.map +1 -0
- package/dist/protocols/mcp/tools/JsonTools.d.ts +339 -0
- package/dist/protocols/mcp/tools/JsonTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/JsonTools.js +304 -0
- package/dist/protocols/mcp/tools/JsonTools.js.map +1 -0
- package/dist/protocols/mcp/tools/KnowledgeGraphTools.d.ts +1295 -0
- package/dist/protocols/mcp/tools/KnowledgeGraphTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/KnowledgeGraphTools.js +929 -0
- package/dist/protocols/mcp/tools/KnowledgeGraphTools.js.map +1 -0
- package/dist/protocols/mcp/tools/LspTools.d.ts +495 -0
- package/dist/protocols/mcp/tools/LspTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/LspTools.js +469 -0
- package/dist/protocols/mcp/tools/LspTools.js.map +1 -0
- package/dist/protocols/mcp/tools/MemorySearchTools.d.ts +457 -0
- package/dist/protocols/mcp/tools/MemorySearchTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/MemorySearchTools.js +476 -0
- package/dist/protocols/mcp/tools/MemorySearchTools.js.map +1 -0
- package/dist/protocols/mcp/tools/MemoryUtilityTools.d.ts +47 -0
- package/dist/protocols/mcp/tools/MemoryUtilityTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/MemoryUtilityTools.js +480 -0
- package/dist/protocols/mcp/tools/MemoryUtilityTools.js.map +1 -0
- package/dist/protocols/mcp/tools/OrparTools.d.ts +396 -0
- package/dist/protocols/mcp/tools/OrparTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/OrparTools.js +963 -0
- package/dist/protocols/mcp/tools/OrparTools.js.map +1 -0
- package/dist/protocols/mcp/tools/PlanningTools.d.ts +63 -0
- package/dist/protocols/mcp/tools/PlanningTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/PlanningTools.js +533 -0
- package/dist/protocols/mcp/tools/PlanningTools.js.map +1 -0
- package/dist/protocols/mcp/tools/PredictiveTools.d.ts +74 -0
- package/dist/protocols/mcp/tools/PredictiveTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/PredictiveTools.js +316 -0
- package/dist/protocols/mcp/tools/PredictiveTools.js.map +1 -0
- package/dist/protocols/mcp/tools/ProgressTools.d.ts +41 -0
- package/dist/protocols/mcp/tools/ProgressTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/ProgressTools.js +85 -0
- package/dist/protocols/mcp/tools/ProgressTools.js.map +1 -0
- package/dist/protocols/mcp/tools/ProjectContextTools.d.ts +35 -0
- package/dist/protocols/mcp/tools/ProjectContextTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/ProjectContextTools.js +311 -0
- package/dist/protocols/mcp/tools/ProjectContextTools.js.map +1 -0
- package/dist/protocols/mcp/tools/SafetyTools.d.ts +545 -0
- package/dist/protocols/mcp/tools/SafetyTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/SafetyTools.js +959 -0
- package/dist/protocols/mcp/tools/SafetyTools.js.map +1 -0
- package/dist/protocols/mcp/tools/SearchProjectTools.d.ts +153 -0
- package/dist/protocols/mcp/tools/SearchProjectTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/SearchProjectTools.js +233 -0
- package/dist/protocols/mcp/tools/SearchProjectTools.js.map +1 -0
- package/dist/protocols/mcp/tools/TaskPlanningTools.d.ts +49 -0
- package/dist/protocols/mcp/tools/TaskPlanningTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/TaskPlanningTools.js +570 -0
- package/dist/protocols/mcp/tools/TaskPlanningTools.js.map +1 -0
- package/dist/protocols/mcp/tools/TestTools.d.ts +396 -0
- package/dist/protocols/mcp/tools/TestTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/TestTools.js +498 -0
- package/dist/protocols/mcp/tools/TestTools.js.map +1 -0
- package/dist/protocols/mcp/tools/ToolHelpTools.d.ts +164 -0
- package/dist/protocols/mcp/tools/ToolHelpTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/ToolHelpTools.js +269 -0
- package/dist/protocols/mcp/tools/ToolHelpTools.js.map +1 -0
- package/dist/protocols/mcp/tools/TypeScriptTools.d.ts +296 -0
- package/dist/protocols/mcp/tools/TypeScriptTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/TypeScriptTools.js +446 -0
- package/dist/protocols/mcp/tools/TypeScriptTools.js.map +1 -0
- package/dist/protocols/mcp/tools/UserInputTools.d.ts +306 -0
- package/dist/protocols/mcp/tools/UserInputTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/UserInputTools.js +354 -0
- package/dist/protocols/mcp/tools/UserInputTools.js.map +1 -0
- package/dist/protocols/mcp/tools/UserMemoryTools.d.ts +59 -0
- package/dist/protocols/mcp/tools/UserMemoryTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/UserMemoryTools.js +339 -0
- package/dist/protocols/mcp/tools/UserMemoryTools.js.map +1 -0
- package/dist/protocols/mcp/tools/WebTools.d.ts +758 -0
- package/dist/protocols/mcp/tools/WebTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/WebTools.js +494 -0
- package/dist/protocols/mcp/tools/WebTools.js.map +1 -0
- package/dist/protocols/mcp/tools/WolframTools.d.ts +175 -0
- package/dist/protocols/mcp/tools/WolframTools.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/WolframTools.js +200 -0
- package/dist/protocols/mcp/tools/WolframTools.js.map +1 -0
- package/dist/protocols/mcp/tools/shell/CommandClassification.d.ts +54 -0
- package/dist/protocols/mcp/tools/shell/CommandClassification.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/shell/CommandClassification.js +487 -0
- package/dist/protocols/mcp/tools/shell/CommandClassification.js.map +1 -0
- package/dist/protocols/mcp/tools/shell/CommandSemantics.d.ts +64 -0
- package/dist/protocols/mcp/tools/shell/CommandSemantics.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/shell/CommandSemantics.js +300 -0
- package/dist/protocols/mcp/tools/shell/CommandSemantics.js.map +1 -0
- package/dist/protocols/mcp/tools/shell/DestructiveCommandWarnings.d.ts +47 -0
- package/dist/protocols/mcp/tools/shell/DestructiveCommandWarnings.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/shell/DestructiveCommandWarnings.js +177 -0
- package/dist/protocols/mcp/tools/shell/DestructiveCommandWarnings.js.map +1 -0
- package/dist/protocols/mcp/tools/shell/LargeOutputHandler.d.ts +70 -0
- package/dist/protocols/mcp/tools/shell/LargeOutputHandler.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/shell/LargeOutputHandler.js +123 -0
- package/dist/protocols/mcp/tools/shell/LargeOutputHandler.js.map +1 -0
- package/dist/protocols/mcp/tools/shell/ShellCommandParser.d.ts +56 -0
- package/dist/protocols/mcp/tools/shell/ShellCommandParser.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/shell/ShellCommandParser.js +521 -0
- package/dist/protocols/mcp/tools/shell/ShellCommandParser.js.map +1 -0
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts +112 -0
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js +314 -0
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js.map +1 -0
- package/dist/protocols/mcp/tools/shell/ShellSandbox.d.ts +90 -0
- package/dist/protocols/mcp/tools/shell/ShellSandbox.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/shell/ShellSandbox.js +350 -0
- package/dist/protocols/mcp/tools/shell/ShellSandbox.js.map +1 -0
- package/dist/protocols/mcp/tools/shell/index.d.ts +46 -0
- package/dist/protocols/mcp/tools/shell/index.d.ts.map +1 -0
- package/dist/protocols/mcp/tools/shell/index.js +39 -0
- package/dist/protocols/mcp/tools/shell/index.js.map +1 -0
- package/dist/protocols/mcp/utils/JsonRecovery.d.ts +67 -0
- package/dist/protocols/mcp/utils/JsonRecovery.d.ts.map +1 -0
- package/dist/protocols/mcp/utils/JsonRecovery.js +230 -0
- package/dist/protocols/mcp/utils/JsonRecovery.js.map +1 -0
- package/dist/protocols/mcp/utils/MessageConverters.d.ts +99 -0
- package/dist/protocols/mcp/utils/MessageConverters.d.ts.map +1 -0
- package/dist/protocols/mcp/utils/MessageConverters.js +193 -0
- package/dist/protocols/mcp/utils/MessageConverters.js.map +1 -0
- package/dist/protocols/mcp/utils/NetworkRecovery.d.ts +76 -0
- package/dist/protocols/mcp/utils/NetworkRecovery.d.ts.map +1 -0
- package/dist/protocols/mcp/utils/NetworkRecovery.js +227 -0
- package/dist/protocols/mcp/utils/NetworkRecovery.js.map +1 -0
- package/dist/protocols/mcp/utils/ToolHandlers.d.ts +95 -0
- package/dist/protocols/mcp/utils/ToolHandlers.d.ts.map +1 -0
- package/dist/protocols/mcp/utils/ToolHandlers.js +231 -0
- package/dist/protocols/mcp/utils/ToolHandlers.js.map +1 -0
- package/dist/repositories/interfaces/IAgentRepository.d.ts +112 -0
- package/dist/repositories/interfaces/IAgentRepository.d.ts.map +1 -0
- package/dist/repositories/interfaces/IAgentRepository.js +21 -0
- package/dist/repositories/interfaces/IAgentRepository.js.map +1 -0
- package/dist/repositories/interfaces/IBaseRepository.d.ts +64 -0
- package/dist/repositories/interfaces/IBaseRepository.d.ts.map +1 -0
- package/dist/repositories/interfaces/IBaseRepository.js +21 -0
- package/dist/repositories/interfaces/IBaseRepository.js.map +1 -0
- package/dist/repositories/interfaces/IChannelRepository.d.ts +141 -0
- package/dist/repositories/interfaces/IChannelRepository.d.ts.map +1 -0
- package/dist/repositories/interfaces/IChannelRepository.js +21 -0
- package/dist/repositories/interfaces/IChannelRepository.js.map +1 -0
- package/dist/repositories/interfaces/IDagRepository.d.ts +153 -0
- package/dist/repositories/interfaces/IDagRepository.d.ts.map +1 -0
- package/dist/repositories/interfaces/IDagRepository.js +21 -0
- package/dist/repositories/interfaces/IDagRepository.js.map +1 -0
- package/dist/repositories/interfaces/IKnowledgeGraphRepository.d.ts +307 -0
- package/dist/repositories/interfaces/IKnowledgeGraphRepository.d.ts.map +1 -0
- package/dist/repositories/interfaces/IKnowledgeGraphRepository.js +21 -0
- package/dist/repositories/interfaces/IKnowledgeGraphRepository.js.map +1 -0
- package/dist/repositories/interfaces/IMemoryRepository.d.ts +156 -0
- package/dist/repositories/interfaces/IMemoryRepository.d.ts.map +1 -0
- package/dist/repositories/interfaces/IMemoryRepository.js +42 -0
- package/dist/repositories/interfaces/IMemoryRepository.js.map +1 -0
- package/dist/repositories/interfaces/ITaskRepository.d.ts +183 -0
- package/dist/repositories/interfaces/ITaskRepository.d.ts.map +1 -0
- package/dist/repositories/interfaces/ITaskRepository.js +21 -0
- package/dist/repositories/interfaces/ITaskRepository.js.map +1 -0
- package/dist/repositories/interfaces/index.d.ts +27 -0
- package/dist/repositories/interfaces/index.d.ts.map +1 -0
- package/dist/repositories/interfaces/index.js +27 -0
- package/dist/repositories/interfaces/index.js.map +1 -0
- package/dist/repositories/types/FilterTypes.d.ts +69 -0
- package/dist/repositories/types/FilterTypes.d.ts.map +1 -0
- package/dist/repositories/types/FilterTypes.js +21 -0
- package/dist/repositories/types/FilterTypes.js.map +1 -0
- package/dist/repositories/types/PaginationTypes.d.ts +55 -0
- package/dist/repositories/types/PaginationTypes.d.ts.map +1 -0
- package/dist/repositories/types/PaginationTypes.js +21 -0
- package/dist/repositories/types/PaginationTypes.js.map +1 -0
- package/dist/schemas/CodeExecutionEventPayloads.d.ts +108 -0
- package/dist/schemas/CodeExecutionEventPayloads.d.ts.map +1 -0
- package/dist/schemas/CodeExecutionEventPayloads.js +164 -0
- package/dist/schemas/CodeExecutionEventPayloads.js.map +1 -0
- package/dist/schemas/EventPayloadSchema.d.ts +2467 -0
- package/dist/schemas/EventPayloadSchema.d.ts.map +1 -0
- package/dist/schemas/EventPayloadSchema.js +2049 -0
- package/dist/schemas/EventPayloadSchema.js.map +1 -0
- package/dist/schemas/JsonResponseSchemas.d.ts +352 -0
- package/dist/schemas/JsonResponseSchemas.d.ts.map +1 -0
- package/dist/schemas/JsonResponseSchemas.js +256 -0
- package/dist/schemas/JsonResponseSchemas.js.map +1 -0
- package/dist/schemas/MessageSchemas.d.ts +180 -0
- package/dist/schemas/MessageSchemas.d.ts.map +1 -0
- package/dist/schemas/MessageSchemas.js +282 -0
- package/dist/schemas/MessageSchemas.js.map +1 -0
- package/dist/schemas/MxpProtocolSchemas.d.ts +340 -0
- package/dist/schemas/MxpProtocolSchemas.d.ts.map +1 -0
- package/dist/schemas/MxpProtocolSchemas.js +282 -0
- package/dist/schemas/MxpProtocolSchemas.js.map +1 -0
- package/dist/schemas/ShellExecutionEventPayloads.d.ts +117 -0
- package/dist/schemas/ShellExecutionEventPayloads.d.ts.map +1 -0
- package/dist/schemas/ShellExecutionEventPayloads.js +165 -0
- package/dist/schemas/ShellExecutionEventPayloads.js.map +1 -0
- package/dist/services/AgentPerformanceService.d.ts +73 -0
- package/dist/services/AgentPerformanceService.d.ts.map +1 -0
- package/dist/services/AgentPerformanceService.js +499 -0
- package/dist/services/AgentPerformanceService.js.map +1 -0
- package/dist/services/AutoCorrectionIntegrationService.d.ts +243 -0
- package/dist/services/AutoCorrectionIntegrationService.d.ts.map +1 -0
- package/dist/services/AutoCorrectionIntegrationService.js +594 -0
- package/dist/services/AutoCorrectionIntegrationService.js.map +1 -0
- package/dist/services/AutoCorrectionService.d.ts +178 -0
- package/dist/services/AutoCorrectionService.d.ts.map +1 -0
- package/dist/services/AutoCorrectionService.js +822 -0
- package/dist/services/AutoCorrectionService.js.map +1 -0
- package/dist/services/AutoMemoryCreator.d.ts +133 -0
- package/dist/services/AutoMemoryCreator.d.ts.map +1 -0
- package/dist/services/AutoMemoryCreator.js +453 -0
- package/dist/services/AutoMemoryCreator.js.map +1 -0
- package/dist/services/BackgroundTaskManager.d.ts +174 -0
- package/dist/services/BackgroundTaskManager.d.ts.map +1 -0
- package/dist/services/BackgroundTaskManager.js +443 -0
- package/dist/services/BackgroundTaskManager.js.map +1 -0
- package/dist/services/BrowserManager.d.ts +53 -0
- package/dist/services/BrowserManager.d.ts.map +1 -0
- package/dist/services/BrowserManager.js +203 -0
- package/dist/services/BrowserManager.js.map +1 -0
- package/dist/services/ChannelContextMemoryOperations.d.ts +63 -0
- package/dist/services/ChannelContextMemoryOperations.d.ts.map +1 -0
- package/dist/services/ChannelContextMemoryOperations.js +284 -0
- package/dist/services/ChannelContextMemoryOperations.js.map +1 -0
- package/dist/services/ChannelContextMessageOperations.d.ts +66 -0
- package/dist/services/ChannelContextMessageOperations.d.ts.map +1 -0
- package/dist/services/ChannelContextMessageOperations.js +331 -0
- package/dist/services/ChannelContextMessageOperations.js.map +1 -0
- package/dist/services/CodeExecutionSandboxService.d.ts +129 -0
- package/dist/services/CodeExecutionSandboxService.d.ts.map +1 -0
- package/dist/services/CodeExecutionSandboxService.js +314 -0
- package/dist/services/CodeExecutionSandboxService.js.map +1 -0
- package/dist/services/ContainerExecutionManager.d.ts +161 -0
- package/dist/services/ContainerExecutionManager.d.ts.map +1 -0
- package/dist/services/ContainerExecutionManager.js +594 -0
- package/dist/services/ContainerExecutionManager.js.map +1 -0
- package/dist/services/ContainerPoolManager.d.ts +9 -0
- package/dist/services/ContainerPoolManager.d.ts.map +1 -0
- package/dist/services/ContainerPoolManager.js +8 -0
- package/dist/services/ContainerPoolManager.js.map +1 -0
- package/dist/services/ContentProcessor.d.ts +133 -0
- package/dist/services/ContentProcessor.d.ts.map +1 -0
- package/dist/services/ContentProcessor.js +428 -0
- package/dist/services/ContentProcessor.js.map +1 -0
- package/dist/services/McpToolDocumentationService.d.ts +54 -0
- package/dist/services/McpToolDocumentationService.d.ts.map +1 -0
- package/dist/services/McpToolDocumentationService.js +202 -0
- package/dist/services/McpToolDocumentationService.js.map +1 -0
- package/dist/services/MemoryCompressor.d.ts +92 -0
- package/dist/services/MemoryCompressor.d.ts.map +1 -0
- package/dist/services/MemoryCompressor.js +283 -0
- package/dist/services/MemoryCompressor.js.map +1 -0
- package/dist/services/MemoryService.d.ts +328 -0
- package/dist/services/MemoryService.d.ts.map +1 -0
- package/dist/services/MemoryService.js +1424 -0
- package/dist/services/MemoryService.js.map +1 -0
- package/dist/services/MxfMLService.d.ts +236 -0
- package/dist/services/MxfMLService.d.ts.map +1 -0
- package/dist/services/MxfMLService.js +930 -0
- package/dist/services/MxfMLService.js.map +1 -0
- package/dist/services/MxfMeilisearchService.d.ts +232 -0
- package/dist/services/MxfMeilisearchService.d.ts.map +1 -0
- package/dist/services/MxfMeilisearchService.js +477 -0
- package/dist/services/MxfMeilisearchService.js.map +1 -0
- package/dist/services/MxfMessageAggregator.d.ts +86 -0
- package/dist/services/MxfMessageAggregator.d.ts.map +1 -0
- package/dist/services/MxfMessageAggregator.js +259 -0
- package/dist/services/MxfMessageAggregator.js.map +1 -0
- package/dist/services/PatternLearningService.d.ts +101 -0
- package/dist/services/PatternLearningService.d.ts.map +1 -0
- package/dist/services/PatternLearningService.js +893 -0
- package/dist/services/PatternLearningService.js.map +1 -0
- package/dist/services/PerformanceOptimizationService.d.ts +273 -0
- package/dist/services/PerformanceOptimizationService.d.ts.map +1 -0
- package/dist/services/PerformanceOptimizationService.js +861 -0
- package/dist/services/PerformanceOptimizationService.js.map +1 -0
- package/dist/services/PredictiveAnalyticsService.d.ts +513 -0
- package/dist/services/PredictiveAnalyticsService.d.ts.map +1 -0
- package/dist/services/PredictiveAnalyticsService.js +1656 -0
- package/dist/services/PredictiveAnalyticsService.js.map +1 -0
- package/dist/services/ProactiveValidationService.d.ts +266 -0
- package/dist/services/ProactiveValidationService.d.ts.map +1 -0
- package/dist/services/ProactiveValidationService.js +1012 -0
- package/dist/services/ProactiveValidationService.js.map +1 -0
- package/dist/services/PromptArgumentInferenceService.d.ts +51 -0
- package/dist/services/PromptArgumentInferenceService.d.ts.map +1 -0
- package/dist/services/PromptArgumentInferenceService.js +148 -0
- package/dist/services/PromptArgumentInferenceService.js.map +1 -0
- package/dist/services/QValueManager.d.ts +164 -0
- package/dist/services/QValueManager.d.ts.map +1 -0
- package/dist/services/QValueManager.js +502 -0
- package/dist/services/QValueManager.js.map +1 -0
- package/dist/services/ReasoningToolParser.d.ts +106 -0
- package/dist/services/ReasoningToolParser.d.ts.map +1 -0
- package/dist/services/ReasoningToolParser.js +354 -0
- package/dist/services/ReasoningToolParser.js.map +1 -0
- package/dist/services/RecoveryWorkflowService.d.ts +233 -0
- package/dist/services/RecoveryWorkflowService.d.ts.map +1 -0
- package/dist/services/RecoveryWorkflowService.js +655 -0
- package/dist/services/RecoveryWorkflowService.js.map +1 -0
- package/dist/services/ReflectionService.d.ts +66 -0
- package/dist/services/ReflectionService.d.ts.map +1 -0
- package/dist/services/ReflectionService.js +257 -0
- package/dist/services/ReflectionService.js.map +1 -0
- package/dist/services/RetentionGateService.d.ts +108 -0
- package/dist/services/RetentionGateService.d.ts.map +1 -0
- package/dist/services/RetentionGateService.js +306 -0
- package/dist/services/RetentionGateService.js.map +1 -0
- package/dist/services/RewardSignalProcessor.d.ts +164 -0
- package/dist/services/RewardSignalProcessor.d.ts.map +1 -0
- package/dist/services/RewardSignalProcessor.js +511 -0
- package/dist/services/RewardSignalProcessor.js.map +1 -0
- package/dist/services/SharedStateService.d.ts +79 -0
- package/dist/services/SharedStateService.d.ts.map +1 -0
- package/dist/services/SharedStateService.js +178 -0
- package/dist/services/SharedStateService.js.map +1 -0
- package/dist/services/StratumManager.d.ts +118 -0
- package/dist/services/StratumManager.d.ts.map +1 -0
- package/dist/services/StratumManager.js +392 -0
- package/dist/services/StratumManager.js.map +1 -0
- package/dist/services/StructuredSummaryBuilder.d.ts +90 -0
- package/dist/services/StructuredSummaryBuilder.d.ts.map +1 -0
- package/dist/services/StructuredSummaryBuilder.js +257 -0
- package/dist/services/StructuredSummaryBuilder.js.map +1 -0
- package/dist/services/SurpriseCalculator.d.ts +118 -0
- package/dist/services/SurpriseCalculator.d.ts.map +1 -0
- package/dist/services/SurpriseCalculator.js +303 -0
- package/dist/services/SurpriseCalculator.js.map +1 -0
- package/dist/services/SystemLlmMemoryAnalyzer.d.ts +73 -0
- package/dist/services/SystemLlmMemoryAnalyzer.d.ts.map +1 -0
- package/dist/services/SystemLlmMemoryAnalyzer.js +357 -0
- package/dist/services/SystemLlmMemoryAnalyzer.js.map +1 -0
- package/dist/services/TaskEffectivenessService.d.ts +122 -0
- package/dist/services/TaskEffectivenessService.d.ts.map +1 -0
- package/dist/services/TaskEffectivenessService.js +777 -0
- package/dist/services/TaskEffectivenessService.js.map +1 -0
- package/dist/services/ToolExecutionInterceptor.d.ts +158 -0
- package/dist/services/ToolExecutionInterceptor.d.ts.map +1 -0
- package/dist/services/ToolExecutionInterceptor.js +362 -0
- package/dist/services/ToolExecutionInterceptor.js.map +1 -0
- package/dist/services/UserInputRequestManager.d.ts +113 -0
- package/dist/services/UserInputRequestManager.d.ts.map +1 -0
- package/dist/services/UserInputRequestManager.js +392 -0
- package/dist/services/UserInputRequestManager.js.map +1 -0
- package/dist/services/UserMemoryService.d.ts +141 -0
- package/dist/services/UserMemoryService.d.ts.map +1 -0
- package/dist/services/UserMemoryService.js +398 -0
- package/dist/services/UserMemoryService.js.map +1 -0
- package/dist/services/UtilityScorerService.d.ts +120 -0
- package/dist/services/UtilityScorerService.d.ts.map +1 -0
- package/dist/services/UtilityScorerService.js +343 -0
- package/dist/services/UtilityScorerService.js.map +1 -0
- package/dist/services/ValidationAnalyticsService.d.ts +332 -0
- package/dist/services/ValidationAnalyticsService.d.ts.map +1 -0
- package/dist/services/ValidationAnalyticsService.js +859 -0
- package/dist/services/ValidationAnalyticsService.js.map +1 -0
- package/dist/services/ValidationCacheService.d.ts +250 -0
- package/dist/services/ValidationCacheService.d.ts.map +1 -0
- package/dist/services/ValidationCacheService.js +864 -0
- package/dist/services/ValidationCacheService.js.map +1 -0
- package/dist/services/ValidationMiddleware.d.ts +177 -0
- package/dist/services/ValidationMiddleware.d.ts.map +1 -0
- package/dist/services/ValidationMiddleware.js +671 -0
- package/dist/services/ValidationMiddleware.js.map +1 -0
- package/dist/services/ValidationPerformanceService.d.ts +84 -0
- package/dist/services/ValidationPerformanceService.d.ts.map +1 -0
- package/dist/services/ValidationPerformanceService.js +581 -0
- package/dist/services/ValidationPerformanceService.js.map +1 -0
- package/dist/services/WebSearchService.d.ts +76 -0
- package/dist/services/WebSearchService.d.ts.map +1 -0
- package/dist/services/WebSearchService.js +286 -0
- package/dist/services/WebSearchService.js.map +1 -0
- package/dist/services/dag/TaskDagService.d.ts +161 -0
- package/dist/services/dag/TaskDagService.d.ts.map +1 -0
- package/dist/services/dag/TaskDagService.js +771 -0
- package/dist/services/dag/TaskDagService.js.map +1 -0
- package/dist/services/dag/algorithms/TopologicalSort.d.ts +113 -0
- package/dist/services/dag/algorithms/TopologicalSort.d.ts.map +1 -0
- package/dist/services/dag/algorithms/TopologicalSort.js +460 -0
- package/dist/services/dag/algorithms/TopologicalSort.js.map +1 -0
- package/dist/services/kg/EntityExtractionService.d.ts +86 -0
- package/dist/services/kg/EntityExtractionService.d.ts.map +1 -0
- package/dist/services/kg/EntityExtractionService.js +385 -0
- package/dist/services/kg/EntityExtractionService.js.map +1 -0
- package/dist/services/kg/EntityQValueManager.d.ts +101 -0
- package/dist/services/kg/EntityQValueManager.d.ts.map +1 -0
- package/dist/services/kg/EntityQValueManager.js +263 -0
- package/dist/services/kg/EntityQValueManager.js.map +1 -0
- package/dist/services/kg/GraphSurpriseCalculator.d.ts +82 -0
- package/dist/services/kg/GraphSurpriseCalculator.d.ts.map +1 -0
- package/dist/services/kg/GraphSurpriseCalculator.js +278 -0
- package/dist/services/kg/GraphSurpriseCalculator.js.map +1 -0
- package/dist/services/kg/KnowledgeGraphService.d.ts +166 -0
- package/dist/services/kg/KnowledgeGraphService.d.ts.map +1 -0
- package/dist/services/kg/KnowledgeGraphService.js +555 -0
- package/dist/services/kg/KnowledgeGraphService.js.map +1 -0
- package/dist/services/kg/OrparGraphIntegration.d.ts +205 -0
- package/dist/services/kg/OrparGraphIntegration.d.ts.map +1 -0
- package/dist/services/kg/OrparGraphIntegration.js +571 -0
- package/dist/services/kg/OrparGraphIntegration.js.map +1 -0
- package/dist/services/lsp/LspDocumentManager.d.ts +75 -0
- package/dist/services/lsp/LspDocumentManager.d.ts.map +1 -0
- package/dist/services/lsp/LspDocumentManager.js +253 -0
- package/dist/services/lsp/LspDocumentManager.js.map +1 -0
- package/dist/services/lsp/LspProtocolAdapter.d.ts +117 -0
- package/dist/services/lsp/LspProtocolAdapter.d.ts.map +1 -0
- package/dist/services/lsp/LspProtocolAdapter.js +363 -0
- package/dist/services/lsp/LspProtocolAdapter.js.map +1 -0
- package/dist/services/lsp/LspServerManager.d.ts +87 -0
- package/dist/services/lsp/LspServerManager.d.ts.map +1 -0
- package/dist/services/lsp/LspServerManager.js +354 -0
- package/dist/services/lsp/LspServerManager.js.map +1 -0
- package/dist/services/lsp/interfaces/ILspConnection.d.ts +53 -0
- package/dist/services/lsp/interfaces/ILspConnection.d.ts.map +1 -0
- package/dist/services/lsp/interfaces/ILspConnection.js +7 -0
- package/dist/services/lsp/interfaces/ILspConnection.js.map +1 -0
- package/dist/services/lsp/interfaces/ILspDocumentManager.d.ts +65 -0
- package/dist/services/lsp/interfaces/ILspDocumentManager.d.ts.map +1 -0
- package/dist/services/lsp/interfaces/ILspDocumentManager.js +7 -0
- package/dist/services/lsp/interfaces/ILspDocumentManager.js.map +1 -0
- package/dist/services/lsp/interfaces/ILspServerManager.d.ts +56 -0
- package/dist/services/lsp/interfaces/ILspServerManager.d.ts.map +1 -0
- package/dist/services/lsp/interfaces/ILspServerManager.js +7 -0
- package/dist/services/lsp/interfaces/ILspServerManager.js.map +1 -0
- package/dist/services/orpar-memory/CycleConsolidationTrigger.d.ts +133 -0
- package/dist/services/orpar-memory/CycleConsolidationTrigger.d.ts.map +1 -0
- package/dist/services/orpar-memory/CycleConsolidationTrigger.js +505 -0
- package/dist/services/orpar-memory/CycleConsolidationTrigger.js.map +1 -0
- package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts +201 -0
- package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts.map +1 -0
- package/dist/services/orpar-memory/OrparMemoryCoordinator.js +783 -0
- package/dist/services/orpar-memory/OrparMemoryCoordinator.js.map +1 -0
- package/dist/services/orpar-memory/PhaseMemoryOperations.d.ts +163 -0
- package/dist/services/orpar-memory/PhaseMemoryOperations.d.ts.map +1 -0
- package/dist/services/orpar-memory/PhaseMemoryOperations.js +399 -0
- package/dist/services/orpar-memory/PhaseMemoryOperations.js.map +1 -0
- package/dist/services/orpar-memory/PhaseStrataRouter.d.ts +93 -0
- package/dist/services/orpar-memory/PhaseStrataRouter.d.ts.map +1 -0
- package/dist/services/orpar-memory/PhaseStrataRouter.js +317 -0
- package/dist/services/orpar-memory/PhaseStrataRouter.js.map +1 -0
- package/dist/services/orpar-memory/PhaseWeightedRewarder.d.ts +115 -0
- package/dist/services/orpar-memory/PhaseWeightedRewarder.d.ts.map +1 -0
- package/dist/services/orpar-memory/PhaseWeightedRewarder.js +333 -0
- package/dist/services/orpar-memory/PhaseWeightedRewarder.js.map +1 -0
- package/dist/services/orpar-memory/SurpriseOrparAdapter.d.ts +149 -0
- package/dist/services/orpar-memory/SurpriseOrparAdapter.d.ts.map +1 -0
- package/dist/services/orpar-memory/SurpriseOrparAdapter.js +436 -0
- package/dist/services/orpar-memory/SurpriseOrparAdapter.js.map +1 -0
- package/dist/services/orpar-memory/index.d.ts +75 -0
- package/dist/services/orpar-memory/index.d.ts.map +1 -0
- package/dist/services/orpar-memory/index.js +76 -0
- package/dist/services/orpar-memory/index.js.map +1 -0
- package/dist/types/Agent.d.ts +95 -0
- package/dist/types/Agent.d.ts.map +1 -0
- package/dist/types/Agent.js +34 -0
- package/dist/types/Agent.js.map +1 -0
- package/dist/types/AgentPerformanceTypes.d.ts +314 -0
- package/dist/types/AgentPerformanceTypes.d.ts.map +1 -0
- package/dist/types/AgentPerformanceTypes.js +21 -0
- package/dist/types/AgentPerformanceTypes.js.map +1 -0
- package/dist/types/AgentRegistry.d.ts +89 -0
- package/dist/types/AgentRegistry.d.ts.map +1 -0
- package/dist/types/AgentRegistry.js +246 -0
- package/dist/types/AgentRegistry.js.map +1 -0
- package/dist/types/AgentTypes.d.ts +46 -0
- package/dist/types/AgentTypes.d.ts.map +1 -0
- package/dist/types/AgentTypes.js +34 -0
- package/dist/types/AgentTypes.js.map +1 -0
- package/dist/types/ChannelContext.d.ts +221 -0
- package/dist/types/ChannelContext.d.ts.map +1 -0
- package/dist/types/ChannelContext.js +21 -0
- package/dist/types/ChannelContext.js.map +1 -0
- package/dist/types/ControlLoopTypes.d.ts +164 -0
- package/dist/types/ControlLoopTypes.d.ts.map +1 -0
- package/dist/types/ControlLoopTypes.js +37 -0
- package/dist/types/ControlLoopTypes.js.map +1 -0
- package/dist/types/DagTypes.d.ts +321 -0
- package/dist/types/DagTypes.d.ts.map +1 -0
- package/dist/types/DagTypes.js +82 -0
- package/dist/types/DagTypes.js.map +1 -0
- package/dist/types/EffectivenessTypes.d.ts +245 -0
- package/dist/types/EffectivenessTypes.d.ts.map +1 -0
- package/dist/types/EffectivenessTypes.js +21 -0
- package/dist/types/EffectivenessTypes.js.map +1 -0
- package/dist/types/InferenceParameterTypes.d.ts +510 -0
- package/dist/types/InferenceParameterTypes.d.ts.map +1 -0
- package/dist/types/InferenceParameterTypes.js +21 -0
- package/dist/types/InferenceParameterTypes.js.map +1 -0
- package/dist/types/KnowledgeGraphTypes.d.ts +455 -0
- package/dist/types/KnowledgeGraphTypes.d.ts.map +1 -0
- package/dist/types/KnowledgeGraphTypes.js +146 -0
- package/dist/types/KnowledgeGraphTypes.js.map +1 -0
- package/dist/types/LlmTypes.d.ts +144 -0
- package/dist/types/LlmTypes.d.ts.map +1 -0
- package/dist/types/LlmTypes.js +21 -0
- package/dist/types/LlmTypes.js.map +1 -0
- package/dist/types/LspTypes.d.ts +607 -0
- package/dist/types/LspTypes.d.ts.map +1 -0
- package/dist/types/LspTypes.js +80 -0
- package/dist/types/LspTypes.js.map +1 -0
- package/dist/types/McpPromptTypes.d.ts +275 -0
- package/dist/types/McpPromptTypes.d.ts.map +1 -0
- package/dist/types/McpPromptTypes.js +38 -0
- package/dist/types/McpPromptTypes.js.map +1 -0
- package/dist/types/MemoryStrataTypes.d.ts +340 -0
- package/dist/types/MemoryStrataTypes.d.ts.map +1 -0
- package/dist/types/MemoryStrataTypes.js +34 -0
- package/dist/types/MemoryStrataTypes.js.map +1 -0
- package/dist/types/MemoryTypes.d.ts +230 -0
- package/dist/types/MemoryTypes.d.ts.map +1 -0
- package/dist/types/MemoryTypes.js +118 -0
- package/dist/types/MemoryTypes.js.map +1 -0
- package/dist/types/MemoryUtilityTypes.d.ts +451 -0
- package/dist/types/MemoryUtilityTypes.d.ts.map +1 -0
- package/dist/types/MemoryUtilityTypes.js +122 -0
- package/dist/types/MemoryUtilityTypes.js.map +1 -0
- package/dist/types/MxpTypes.d.ts +264 -0
- package/dist/types/MxpTypes.d.ts.map +1 -0
- package/dist/types/MxpTypes.js +132 -0
- package/dist/types/MxpTypes.js.map +1 -0
- package/dist/types/NetworkRecoveryTypes.d.ts +133 -0
- package/dist/types/NetworkRecoveryTypes.d.ts.map +1 -0
- package/dist/types/NetworkRecoveryTypes.js +169 -0
- package/dist/types/NetworkRecoveryTypes.js.map +1 -0
- package/dist/types/OrparMemoryIntegrationTypes.d.ts +463 -0
- package/dist/types/OrparMemoryIntegrationTypes.d.ts.map +1 -0
- package/dist/types/OrparMemoryIntegrationTypes.js +260 -0
- package/dist/types/OrparMemoryIntegrationTypes.js.map +1 -0
- package/dist/types/PatternLearningTypes.d.ts +366 -0
- package/dist/types/PatternLearningTypes.d.ts.map +1 -0
- package/dist/types/PatternLearningTypes.js +21 -0
- package/dist/types/PatternLearningTypes.js.map +1 -0
- package/dist/types/PatternMemoryTypes.d.ts +245 -0
- package/dist/types/PatternMemoryTypes.d.ts.map +1 -0
- package/dist/types/PatternMemoryTypes.js +30 -0
- package/dist/types/PatternMemoryTypes.js.map +1 -0
- package/dist/types/ReflectionTypes.d.ts +61 -0
- package/dist/types/ReflectionTypes.d.ts.map +1 -0
- package/dist/types/ReflectionTypes.js +21 -0
- package/dist/types/ReflectionTypes.js.map +1 -0
- package/dist/types/TaskCompletionTypes.d.ts +122 -0
- package/dist/types/TaskCompletionTypes.d.ts.map +1 -0
- package/dist/types/TaskCompletionTypes.js +21 -0
- package/dist/types/TaskCompletionTypes.js.map +1 -0
- package/dist/types/TaskTypes.d.ts +237 -0
- package/dist/types/TaskTypes.d.ts.map +1 -0
- package/dist/types/TaskTypes.js +21 -0
- package/dist/types/TaskTypes.js.map +1 -0
- package/dist/types/TensorFlowTypes.d.ts +257 -0
- package/dist/types/TensorFlowTypes.d.ts.map +1 -0
- package/dist/types/TensorFlowTypes.js +115 -0
- package/dist/types/TensorFlowTypes.js.map +1 -0
- package/dist/types/ValidationPerformanceTypes.d.ts +168 -0
- package/dist/types/ValidationPerformanceTypes.d.ts.map +1 -0
- package/dist/types/ValidationPerformanceTypes.js +21 -0
- package/dist/types/ValidationPerformanceTypes.js.map +1 -0
- package/dist/types/WorkflowTypes.d.ts +291 -0
- package/dist/types/WorkflowTypes.d.ts.map +1 -0
- package/dist/types/WorkflowTypes.js +8 -0
- package/dist/types/WorkflowTypes.js.map +1 -0
- package/dist/types/toolTypes.d.ts +93 -0
- package/dist/types/toolTypes.d.ts.map +1 -0
- package/dist/types/toolTypes.js +82 -0
- package/dist/types/toolTypes.js.map +1 -0
- package/dist/types/types.d.ts +89 -0
- package/dist/types/types.d.ts.map +1 -0
- package/dist/types/types.js +31 -0
- package/dist/types/types.js.map +1 -0
- package/dist/utils/Logger.d.ts +125 -0
- package/dist/utils/Logger.d.ts.map +1 -0
- package/dist/utils/Logger.js +194 -0
- package/dist/utils/Logger.js.map +1 -0
- package/dist/utils/MxpEncryption.d.ts +63 -0
- package/dist/utils/MxpEncryption.d.ts.map +1 -0
- package/dist/utils/MxpEncryption.js +169 -0
- package/dist/utils/MxpEncryption.js.map +1 -0
- package/dist/utils/ParameterNormalizer.d.ts +85 -0
- package/dist/utils/ParameterNormalizer.d.ts.map +1 -0
- package/dist/utils/ParameterNormalizer.js +409 -0
- package/dist/utils/ParameterNormalizer.js.map +1 -0
- package/dist/utils/PromptTemplateReplacer.d.ts +119 -0
- package/dist/utils/PromptTemplateReplacer.d.ts.map +1 -0
- package/dist/utils/PromptTemplateReplacer.js +255 -0
- package/dist/utils/PromptTemplateReplacer.js.map +1 -0
- package/dist/utils/TokenEstimator.d.ts +43 -0
- package/dist/utils/TokenEstimator.d.ts.map +1 -0
- package/dist/utils/TokenEstimator.js +113 -0
- package/dist/utils/TokenEstimator.js.map +1 -0
- package/dist/utils/ToolPaginationUtils.d.ts +177 -0
- package/dist/utils/ToolPaginationUtils.d.ts.map +1 -0
- package/dist/utils/ToolPaginationUtils.js +180 -0
- package/dist/utils/ToolPaginationUtils.js.map +1 -0
- package/dist/utils/env.d.ts +19 -0
- package/dist/utils/env.d.ts.map +1 -0
- package/dist/utils/env.js +25 -0
- package/dist/utils/env.js.map +1 -0
- package/dist/utils/toon/eligibility.d.ts +65 -0
- package/dist/utils/toon/eligibility.d.ts.map +1 -0
- package/dist/utils/toon/eligibility.js +259 -0
- package/dist/utils/toon/eligibility.js.map +1 -0
- package/dist/utils/toon/encoder.d.ts +72 -0
- package/dist/utils/toon/encoder.d.ts.map +1 -0
- package/dist/utils/toon/encoder.js +321 -0
- package/dist/utils/toon/encoder.js.map +1 -0
- package/dist/utils/toon/formatter.d.ts +118 -0
- package/dist/utils/toon/formatter.d.ts.map +1 -0
- package/dist/utils/toon/formatter.js +214 -0
- package/dist/utils/toon/formatter.js.map +1 -0
- package/dist/utils/toon/index.d.ts +49 -0
- package/dist/utils/toon/index.d.ts.map +1 -0
- package/dist/utils/toon/index.js +55 -0
- package/dist/utils/toon/index.js.map +1 -0
- package/dist/utils/toon/metrics.d.ts +162 -0
- package/dist/utils/toon/metrics.d.ts.map +1 -0
- package/dist/utils/toon/metrics.js +283 -0
- package/dist/utils/toon/metrics.js.map +1 -0
- package/dist/utils/toon/types.d.ts +145 -0
- package/dist/utils/toon/types.d.ts.map +1 -0
- package/dist/utils/toon/types.js +21 -0
- package/dist/utils/toon/types.js.map +1 -0
- package/dist/utils/validation.d.ts +169 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +471 -0
- package/dist/utils/validation.js.map +1 -0
- package/package.json +84 -0
- package/src/adapters/FrameworkAdapter.ts +261 -0
- package/src/adapters/index.ts +26 -0
- package/src/config/ConfigManager.ts +1406 -0
- package/src/config/FeatureFlags.ts +180 -0
- package/src/config/McpPromptsConfig.ts +134 -0
- package/src/config/ModelContextLimits.ts +154 -0
- package/src/config/PromptCompactionConfig.ts +236 -0
- package/src/config/PromptConfig.ts +85 -0
- package/src/config/ServerConfig.ts +69 -0
- package/src/config/dag.config.ts +211 -0
- package/src/config/knowledge-graph.config.ts +290 -0
- package/src/config/orpar-memory.config.ts +365 -0
- package/src/config/tensorflow.config.ts +209 -0
- package/src/constants/CoreTools.ts +95 -0
- package/src/constants/DefaultPhaseProfiles.ts +699 -0
- package/src/constants/EnhancementConstants.ts +383 -0
- package/src/constants/ToolNames.ts +538 -0
- package/src/database/DatabaseAdapterFactory.ts +212 -0
- package/src/database/adapters/mongodb/MongoAgentRepository.ts +181 -0
- package/src/database/adapters/mongodb/MongoBaseRepository.ts +203 -0
- package/src/database/adapters/mongodb/MongoChannelRepository.ts +185 -0
- package/src/database/adapters/mongodb/MongoDagRepository.ts +370 -0
- package/src/database/adapters/mongodb/MongoKnowledgeGraphRepository.ts +975 -0
- package/src/database/adapters/mongodb/MongoMemoryRepository.ts +244 -0
- package/src/database/adapters/mongodb/MongoTaskRepository.ts +361 -0
- package/src/database/adapters/mongodb/index.ts +25 -0
- package/src/database/index.ts +22 -0
- package/src/events/ClientEventBus.ts +821 -0
- package/src/events/EventBus.ts +111 -0
- package/src/events/EventBusBase.ts +419 -0
- package/src/events/EventNames.ts +308 -0
- package/src/events/PublicEvents.ts +231 -0
- package/src/events/ServerEventBus.ts +606 -0
- package/src/events/event-definitions/AgentEvents.ts +187 -0
- package/src/events/event-definitions/AnalyticsEvents.ts +299 -0
- package/src/events/event-definitions/BulkEvents.ts +474 -0
- package/src/events/event-definitions/ChannelEvents.ts +230 -0
- package/src/events/event-definitions/CodeExecutionEvents.ts +360 -0
- package/src/events/event-definitions/CompactionEvents.ts +185 -0
- package/src/events/event-definitions/ConfigEvents.ts +343 -0
- package/src/events/event-definitions/ControlLoopEvents.ts +61 -0
- package/src/events/event-definitions/DagEvents.ts +275 -0
- package/src/events/event-definitions/HeartbeatEvents.ts +43 -0
- package/src/events/event-definitions/InferenceParameterEvents.ts +110 -0
- package/src/events/event-definitions/KeyEvents.ts +154 -0
- package/src/events/event-definitions/KnowledgeGraphEvents.ts +285 -0
- package/src/events/event-definitions/LlmEvents.ts +39 -0
- package/src/events/event-definitions/McpEvents.ts +234 -0
- package/src/events/event-definitions/MeilisearchEvents.ts +55 -0
- package/src/events/event-definitions/MemoryEvents.ts +379 -0
- package/src/events/event-definitions/MemoryUtilityEvents.ts +254 -0
- package/src/events/event-definitions/MessageEvents.ts +107 -0
- package/src/events/event-definitions/MxpEvents.ts +138 -0
- package/src/events/event-definitions/OrparEvents.ts +249 -0
- package/src/events/event-definitions/OrparMemoryEvents.ts +404 -0
- package/src/events/event-definitions/PlanEvents.ts +124 -0
- package/src/events/event-definitions/ProgressEvents.ts +67 -0
- package/src/events/event-definitions/ShellExecutionEvents.ts +383 -0
- package/src/events/event-definitions/SystemEvents.ts +263 -0
- package/src/events/event-definitions/TaskEvents.ts +201 -0
- package/src/events/event-definitions/TensorFlowEvents.ts +162 -0
- package/src/events/event-definitions/UserInputEvents.ts +218 -0
- package/src/events/event-definitions/WorkflowEvents.ts +139 -0
- package/src/index.ts +17 -0
- package/src/interfaces/AgentContext.ts +214 -0
- package/src/interfaces/AgentInterfaces.ts +132 -0
- package/src/interfaces/Channel.ts +36 -0
- package/src/interfaces/ChannelConfig.ts +59 -0
- package/src/interfaces/ChannelConnectionConfig.ts +36 -0
- package/src/interfaces/ChannelInfo.ts +33 -0
- package/src/interfaces/ConversationMessage.ts +109 -0
- package/src/interfaces/ILlmTopicExtractor.ts +76 -0
- package/src/interfaces/SocketServiceInterface.ts +104 -0
- package/src/interfaces/TaskInterfaces.ts +53 -0
- package/src/middleware/MxpMiddleware.ts +346 -0
- package/src/models/PatternLearningModels.ts +585 -0
- package/src/models/agent.ts +162 -0
- package/src/models/auditLog.ts +133 -0
- package/src/models/channel.ts +304 -0
- package/src/models/channelKey.ts +129 -0
- package/src/models/codeExecution.ts +272 -0
- package/src/models/controlLoop.ts +165 -0
- package/src/models/coordination.ts +166 -0
- package/src/models/document.ts +263 -0
- package/src/models/entity.ts +206 -0
- package/src/models/mcpTool.ts +254 -0
- package/src/models/mcpToolExecution.ts +162 -0
- package/src/models/memory.ts +310 -0
- package/src/models/memoryStrata.ts +432 -0
- package/src/models/personalAccessToken.ts +206 -0
- package/src/models/plan.ts +135 -0
- package/src/models/relationship.ts +165 -0
- package/src/models/shellOutput.ts +102 -0
- package/src/models/task.ts +397 -0
- package/src/models/taskEffectiveness.ts +152 -0
- package/src/models/tool.ts +102 -0
- package/src/models/toolExecution.ts +64 -0
- package/src/models/toolModels.ts +423 -0
- package/src/models/user.ts +147 -0
- package/src/models/userMemory.ts +165 -0
- package/src/mxp/BinaryProtocolLayer.ts +420 -0
- package/src/mxp/ContextCompressionEngine.ts +534 -0
- package/src/mxp/MxpConfigManager.ts +316 -0
- package/src/mxp/MxpEventForwardingEnhancer.ts +471 -0
- package/src/mxp/MxpTokenOptimizer.ts +266 -0
- package/src/prompts/ChannelContextProvider.ts +212 -0
- package/src/prompts/DeferredToolSchemaRegistry.ts +212 -0
- package/src/prompts/DynamicContextProvider.ts +186 -0
- package/src/prompts/MemoryPromptInjector.ts +332 -0
- package/src/prompts/MxfAgentSystemPrompt.ts +1037 -0
- package/src/prompts/PromptSegmentRegistry.ts +372 -0
- package/src/prompts/ToolBehavioralGuidance.ts +214 -0
- package/src/protocols/binaryProtocol.ts +402 -0
- package/src/protocols/mcp/ClientExecutableManifest.ts +85 -0
- package/src/protocols/mcp/IMcpClient.ts +332 -0
- package/src/protocols/mcp/LlmProviderFactory.ts +81 -0
- package/src/protocols/mcp/LlmProviders.ts +45 -0
- package/src/protocols/mcp/McpClient.ts +220 -0
- package/src/protocols/mcp/McpClientFactory.ts +59 -0
- package/src/protocols/mcp/McpServerTypes.ts +208 -0
- package/src/protocols/mcp/McpToolCallParser.ts +297 -0
- package/src/protocols/mcp/McpToolSchema.ts +666 -0
- package/src/protocols/mcp/converters/IFormatConverter.ts +384 -0
- package/src/protocols/mcp/converters/UnifiedMessageConverter.ts +286 -0
- package/src/protocols/mcp/converters/adapters/AnthropicMessageAdapter.ts +545 -0
- package/src/protocols/mcp/converters/adapters/GeminiMessageAdapter.ts +63 -0
- package/src/protocols/mcp/converters/adapters/OpenAiMessageAdapter.ts +49 -0
- package/src/protocols/mcp/converters/adapters/OpenRouterMessageAdapter.ts +394 -0
- package/src/protocols/mcp/converters/adapters/XaiMessageAdapter.ts +39 -0
- package/src/protocols/mcp/providers/AnthropicMcpClient.ts +632 -0
- package/src/protocols/mcp/providers/AzureOpenAiMcpClient.ts +760 -0
- package/src/protocols/mcp/providers/BaseMcpClient.ts +286 -0
- package/src/protocols/mcp/providers/CustomMcpClient.ts +326 -0
- package/src/protocols/mcp/providers/GeminiMcpClient.ts +687 -0
- package/src/protocols/mcp/providers/OllamaMcpClient.ts +564 -0
- package/src/protocols/mcp/providers/OpenAiMcpClient.ts +779 -0
- package/src/protocols/mcp/providers/OpenRouterMcpClient.ts +1151 -0
- package/src/protocols/mcp/providers/XaiMcpClient.ts +601 -0
- package/src/protocols/mcp/security/McpConfirmationManager.ts +315 -0
- package/src/protocols/mcp/security/McpSecurityConfig.ts +429 -0
- package/src/protocols/mcp/security/McpSecurityGuard.ts +527 -0
- package/src/protocols/mcp/security/README.md +274 -0
- package/src/protocols/mcp/security/index.ts +29 -0
- package/src/protocols/mcp/services/ExternalMcpServerManager.ts +1540 -0
- package/src/protocols/mcp/services/ExternalServerConfigs.ts +346 -0
- package/src/protocols/mcp/services/IToolEventEmitter.ts +75 -0
- package/src/protocols/mcp/services/ToolSchemaEnhancements.ts +92 -0
- package/src/protocols/mcp/tools/AnalyticsTools.ts +759 -0
- package/src/protocols/mcp/tools/CodeAnalysisTools.ts +715 -0
- package/src/protocols/mcp/tools/ControlLoopLifecycle.ts +302 -0
- package/src/protocols/mcp/tools/DateTimeTools.ts +554 -0
- package/src/protocols/mcp/tools/EffectivenessTools.ts +434 -0
- package/src/protocols/mcp/tools/GitTools.ts +727 -0
- package/src/protocols/mcp/tools/InfrastructureTools.ts +926 -0
- package/src/protocols/mcp/tools/JsonTools.ts +376 -0
- package/src/protocols/mcp/tools/KnowledgeGraphTools.ts +1015 -0
- package/src/protocols/mcp/tools/LspTools.ts +476 -0
- package/src/protocols/mcp/tools/MemorySearchTools.ts +510 -0
- package/src/protocols/mcp/tools/MemoryUtilityTools.ts +514 -0
- package/src/protocols/mcp/tools/OrparTools.ts +1115 -0
- package/src/protocols/mcp/tools/PlanningTools.ts +660 -0
- package/src/protocols/mcp/tools/PredictiveTools.ts +351 -0
- package/src/protocols/mcp/tools/ProgressTools.ts +115 -0
- package/src/protocols/mcp/tools/ProjectContextTools.ts +330 -0
- package/src/protocols/mcp/tools/README.md +566 -0
- package/src/protocols/mcp/tools/SafetyTools.ts +1073 -0
- package/src/protocols/mcp/tools/SearchProjectTools.ts +279 -0
- package/src/protocols/mcp/tools/TaskPlanningTools.ts +629 -0
- package/src/protocols/mcp/tools/TestTools.ts +556 -0
- package/src/protocols/mcp/tools/ToolHelpTools.ts +294 -0
- package/src/protocols/mcp/tools/TypeScriptTools.ts +490 -0
- package/src/protocols/mcp/tools/UserInputTools.ts +415 -0
- package/src/protocols/mcp/tools/UserMemoryTools.ts +396 -0
- package/src/protocols/mcp/tools/WebTools.ts +558 -0
- package/src/protocols/mcp/tools/WolframTools.ts +258 -0
- package/src/protocols/mcp/tools/shell/CommandClassification.ts +570 -0
- package/src/protocols/mcp/tools/shell/CommandSemantics.ts +363 -0
- package/src/protocols/mcp/tools/shell/DestructiveCommandWarnings.ts +214 -0
- package/src/protocols/mcp/tools/shell/LargeOutputHandler.ts +169 -0
- package/src/protocols/mcp/tools/shell/ShellCommandParser.ts +613 -0
- package/src/protocols/mcp/tools/shell/ShellExecuteHandler.ts +502 -0
- package/src/protocols/mcp/tools/shell/ShellSandbox.ts +448 -0
- package/src/protocols/mcp/tools/shell/index.ts +53 -0
- package/src/protocols/mcp/utils/JsonRecovery.ts +280 -0
- package/src/protocols/mcp/utils/MessageConverters.ts +217 -0
- package/src/protocols/mcp/utils/NetworkRecovery.ts +275 -0
- package/src/protocols/mcp/utils/ToolHandlers.ts +271 -0
- package/src/repositories/interfaces/IAgentRepository.ts +125 -0
- package/src/repositories/interfaces/IBaseRepository.ts +72 -0
- package/src/repositories/interfaces/IChannelRepository.ts +154 -0
- package/src/repositories/interfaces/IDagRepository.ts +195 -0
- package/src/repositories/interfaces/IKnowledgeGraphRepository.ts +439 -0
- package/src/repositories/interfaces/IMemoryRepository.ts +174 -0
- package/src/repositories/interfaces/ITaskRepository.ts +208 -0
- package/src/repositories/interfaces/index.ts +27 -0
- package/src/repositories/types/FilterTypes.ts +89 -0
- package/src/repositories/types/PaginationTypes.ts +64 -0
- package/src/schemas/CodeExecutionEventPayloads.ts +271 -0
- package/src/schemas/EventPayloadSchema.ts +4448 -0
- package/src/schemas/JsonResponseSchemas.ts +262 -0
- package/src/schemas/MessageSchemas.ts +441 -0
- package/src/schemas/MxpProtocolSchemas.ts +362 -0
- package/src/schemas/ShellExecutionEventPayloads.ts +271 -0
- package/src/services/AgentPerformanceService.ts +619 -0
- package/src/services/AutoCorrectionIntegrationService.ts +814 -0
- package/src/services/AutoCorrectionService.ts +1074 -0
- package/src/services/AutoMemoryCreator.ts +570 -0
- package/src/services/BackgroundTaskManager.ts +631 -0
- package/src/services/BrowserManager.ts +250 -0
- package/src/services/ChannelContextMemoryOperations.ts +366 -0
- package/src/services/ChannelContextMessageOperations.ts +435 -0
- package/src/services/CodeExecutionSandboxService.ts +408 -0
- package/src/services/ContainerExecutionManager.ts +725 -0
- package/src/services/ContainerPoolManager.ts +13 -0
- package/src/services/ContentProcessor.ts +549 -0
- package/src/services/McpToolDocumentationService.ts +238 -0
- package/src/services/MemoryCompressor.ts +385 -0
- package/src/services/MemoryService.ts +1876 -0
- package/src/services/MxfMLService.ts +1229 -0
- package/src/services/MxfMeilisearchService.ts +629 -0
- package/src/services/MxfMessageAggregator.ts +313 -0
- package/src/services/PatternLearningService.ts +1084 -0
- package/src/services/PerformanceOptimizationService.ts +1132 -0
- package/src/services/PredictiveAnalyticsService.ts +2299 -0
- package/src/services/ProactiveValidationService.ts +1385 -0
- package/src/services/PromptArgumentInferenceService.ts +192 -0
- package/src/services/QValueManager.ts +649 -0
- package/src/services/ReasoningToolParser.ts +457 -0
- package/src/services/RecoveryWorkflowService.ts +911 -0
- package/src/services/ReflectionService.ts +299 -0
- package/src/services/RetentionGateService.ts +393 -0
- package/src/services/RewardSignalProcessor.ts +648 -0
- package/src/services/SharedStateService.ts +241 -0
- package/src/services/StratumManager.ts +523 -0
- package/src/services/StructuredSummaryBuilder.ts +325 -0
- package/src/services/SurpriseCalculator.ts +436 -0
- package/src/services/SystemLlmMemoryAnalyzer.ts +421 -0
- package/src/services/TaskEffectivenessService.ts +968 -0
- package/src/services/ToolExecutionInterceptor.ts +513 -0
- package/src/services/UserInputRequestManager.ts +536 -0
- package/src/services/UserMemoryService.ts +506 -0
- package/src/services/UtilityScorerService.ts +427 -0
- package/src/services/ValidationAnalyticsService.ts +1173 -0
- package/src/services/ValidationCacheService.ts +1177 -0
- package/src/services/ValidationMiddleware.ts +876 -0
- package/src/services/ValidationPerformanceService.ts +751 -0
- package/src/services/WebSearchService.ts +382 -0
- package/src/services/dag/TaskDagService.ts +1057 -0
- package/src/services/dag/algorithms/TopologicalSort.ts +562 -0
- package/src/services/kg/EntityExtractionService.ts +511 -0
- package/src/services/kg/EntityQValueManager.ts +368 -0
- package/src/services/kg/GraphSurpriseCalculator.ts +381 -0
- package/src/services/kg/KnowledgeGraphService.ts +830 -0
- package/src/services/kg/OrparGraphIntegration.ts +815 -0
- package/src/services/lsp/LspDocumentManager.ts +304 -0
- package/src/services/lsp/LspProtocolAdapter.ts +471 -0
- package/src/services/lsp/LspServerManager.ts +442 -0
- package/src/services/lsp/interfaces/ILspConnection.ts +60 -0
- package/src/services/lsp/interfaces/ILspDocumentManager.ts +74 -0
- package/src/services/lsp/interfaces/ILspServerManager.ts +64 -0
- package/src/services/orpar-memory/CycleConsolidationTrigger.ts +693 -0
- package/src/services/orpar-memory/OrparMemoryCoordinator.ts +1001 -0
- package/src/services/orpar-memory/PhaseMemoryOperations.ts +531 -0
- package/src/services/orpar-memory/PhaseStrataRouter.ts +387 -0
- package/src/services/orpar-memory/PhaseWeightedRewarder.ts +430 -0
- package/src/services/orpar-memory/SurpriseOrparAdapter.ts +572 -0
- package/src/services/orpar-memory/index.ts +79 -0
- package/src/types/Agent.ts +102 -0
- package/src/types/AgentPerformanceTypes.ts +404 -0
- package/src/types/AgentRegistry.ts +319 -0
- package/src/types/AgentTypes.ts +49 -0
- package/src/types/ChannelContext.ts +289 -0
- package/src/types/ControlLoopTypes.ts +182 -0
- package/src/types/DagTypes.ts +427 -0
- package/src/types/EffectivenessTypes.ts +303 -0
- package/src/types/InferenceParameterTypes.ts +598 -0
- package/src/types/KnowledgeGraphTypes.ts +620 -0
- package/src/types/LlmTypes.ts +153 -0
- package/src/types/LspTypes.ts +640 -0
- package/src/types/McpPromptTypes.ts +299 -0
- package/src/types/MemoryStrataTypes.ts +378 -0
- package/src/types/MemoryTypes.ts +280 -0
- package/src/types/MemoryUtilityTypes.ts +577 -0
- package/src/types/MxpTypes.ts +404 -0
- package/src/types/NetworkRecoveryTypes.ts +268 -0
- package/src/types/OrparMemoryIntegrationTypes.ts +698 -0
- package/src/types/PatternLearningTypes.ts +445 -0
- package/src/types/PatternMemoryTypes.ts +314 -0
- package/src/types/ReflectionTypes.ts +74 -0
- package/src/types/TaskCompletionTypes.ts +163 -0
- package/src/types/TaskTypes.ts +311 -0
- package/src/types/TensorFlowTypes.ts +329 -0
- package/src/types/ValidationPerformanceTypes.ts +186 -0
- package/src/types/WorkflowTypes.ts +323 -0
- package/src/types/toolTypes.ts +118 -0
- package/src/types/types.ts +95 -0
- package/src/utils/Logger.ts +240 -0
- package/src/utils/MxpEncryption.ts +195 -0
- package/src/utils/ParameterNormalizer.ts +432 -0
- package/src/utils/PromptTemplateReplacer.ts +331 -0
- package/src/utils/TokenEstimator.ts +132 -0
- package/src/utils/ToolPaginationUtils.ts +252 -0
- package/src/utils/env.ts +27 -0
- package/src/utils/toon/eligibility.ts +316 -0
- package/src/utils/toon/encoder.ts +396 -0
- package/src/utils/toon/formatter.ts +258 -0
- package/src/utils/toon/index.ts +88 -0
- package/src/utils/toon/metrics.ts +339 -0
- package/src/utils/toon/types.ts +183 -0
- package/src/utils/validation.ts +548 -0
|
@@ -0,0 +1,1151 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2024 Brad Anderson
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*
|
|
16
|
+
* @author Brad Anderson <BradA1878@pm.me>
|
|
17
|
+
* @repository https://github.com/mxf-dev/mxf
|
|
18
|
+
* @documentation https://mxf-dev.github.io/mxf/
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* OpenRouter MCP Client
|
|
23
|
+
*
|
|
24
|
+
* This module implements the Model Context Protocol (MCP) client for OpenRouter's API.
|
|
25
|
+
* OpenRouter provides access to various AI models through a unified API interface.
|
|
26
|
+
*
|
|
27
|
+
* API Reference: https://openrouter.ai/docs/api-reference/overview
|
|
28
|
+
*/
|
|
29
|
+
|
|
30
|
+
import { Observable } from 'rxjs';
|
|
31
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
32
|
+
import { BaseMcpClient } from './BaseMcpClient.js';
|
|
33
|
+
import {
|
|
34
|
+
McpMessage,
|
|
35
|
+
McpTool,
|
|
36
|
+
McpApiResponse,
|
|
37
|
+
McpContentType,
|
|
38
|
+
McpRole,
|
|
39
|
+
McpContent,
|
|
40
|
+
McpTextContent,
|
|
41
|
+
McpStreamChunk,
|
|
42
|
+
McpStreamEmission
|
|
43
|
+
} from '../IMcpClient.js';
|
|
44
|
+
import { AgentContext } from '../../../interfaces/AgentContext.js';
|
|
45
|
+
import { ConversationMessage } from '../../../interfaces/ConversationMessage.js';
|
|
46
|
+
import { Logger } from '../../../utils/Logger.js';
|
|
47
|
+
import {
|
|
48
|
+
NetworkRecoveryConfig,
|
|
49
|
+
DEFAULT_NETWORK_RECOVERY_CONFIG
|
|
50
|
+
} from '../../../types/NetworkRecoveryTypes.js';
|
|
51
|
+
import { NetworkRecoveryManager, extractStatusCodeFromError } from '../utils/NetworkRecovery.js';
|
|
52
|
+
import { JsonRecoveryManager } from '../utils/JsonRecovery.js';
|
|
53
|
+
import {
|
|
54
|
+
extractToolCalls,
|
|
55
|
+
extractToolCallId,
|
|
56
|
+
extractToolResultText,
|
|
57
|
+
extractTextFromContent,
|
|
58
|
+
convertContentToText
|
|
59
|
+
} from '../utils/MessageConverters.js';
|
|
60
|
+
import { convertToolsToProviderFormat } from '../utils/ToolHandlers.js';
|
|
61
|
+
import { getMessageConverter } from '../converters/UnifiedMessageConverter.js';
|
|
62
|
+
import { MessageFormat, ExtendedMcpMessage } from '../converters/IFormatConverter.js';
|
|
63
|
+
import { OpenRouterMessageAdapter } from '../converters/adapters/OpenRouterMessageAdapter.js';
|
|
64
|
+
|
|
65
|
+
// Type definitions for OpenRouter API
|
|
66
|
+
interface OpenRouterMessage {
|
|
67
|
+
role: 'system' | 'user' | 'assistant' | 'tool';
|
|
68
|
+
content: string | Array<{
|
|
69
|
+
type: 'text' | 'image_url' | 'tool_call' | 'tool_result';
|
|
70
|
+
text?: string;
|
|
71
|
+
image_url?: {
|
|
72
|
+
url: string;
|
|
73
|
+
detail?: 'auto' | 'low' | 'high';
|
|
74
|
+
};
|
|
75
|
+
tool_call_id?: string;
|
|
76
|
+
name?: string;
|
|
77
|
+
arguments?: Record<string, any>;
|
|
78
|
+
}>;
|
|
79
|
+
name?: string;
|
|
80
|
+
tool_call_id?: string;
|
|
81
|
+
tool_calls?: Array<{
|
|
82
|
+
id: string;
|
|
83
|
+
type: 'function';
|
|
84
|
+
function: {
|
|
85
|
+
name: string;
|
|
86
|
+
arguments: string;
|
|
87
|
+
};
|
|
88
|
+
}>;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
interface OpenRouterTool {
|
|
92
|
+
type: 'function';
|
|
93
|
+
function: {
|
|
94
|
+
name: string;
|
|
95
|
+
description: string;
|
|
96
|
+
parameters: Record<string, any>;
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
interface OpenRouterResponse {
|
|
101
|
+
id: string;
|
|
102
|
+
model: string;
|
|
103
|
+
created: number;
|
|
104
|
+
object: string;
|
|
105
|
+
choices: Array<{
|
|
106
|
+
index: number;
|
|
107
|
+
message: OpenRouterMessage;
|
|
108
|
+
finish_reason: string;
|
|
109
|
+
}>;
|
|
110
|
+
usage: {
|
|
111
|
+
prompt_tokens: number;
|
|
112
|
+
completion_tokens: number;
|
|
113
|
+
total_tokens: number;
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* OpenRouter implementation of the MCP client with network recovery
|
|
119
|
+
*/
|
|
120
|
+
export class OpenRouterMcpClient extends BaseMcpClient {
|
|
121
|
+
// Base URL for the OpenRouter API
|
|
122
|
+
private readonly baseUrl = 'https://openrouter.ai/api/v1';
|
|
123
|
+
|
|
124
|
+
// Logger instance (using 'client' target so we can see server-side debug logs)
|
|
125
|
+
private logger = new Logger('debug', 'OpenRouterMcpClient', 'client');
|
|
126
|
+
|
|
127
|
+
// Exacto-supported models (as of October 2025)
|
|
128
|
+
// These models have vetted providers with superior tool-calling performance
|
|
129
|
+
private static readonly EXACTO_SUPPORTED_MODELS = [
|
|
130
|
+
'moonshotai/kimi-k2-0905',
|
|
131
|
+
'deepseek/deepseek-chat-v3.1-terminus',
|
|
132
|
+
'zhipuai/glm-4-6',
|
|
133
|
+
'gpt-oss/gpt-oss-120b',
|
|
134
|
+
'qwen/qwen3-coder'
|
|
135
|
+
];
|
|
136
|
+
|
|
137
|
+
constructor() {
|
|
138
|
+
super();
|
|
139
|
+
this.jsonRecovery = new JsonRecoveryManager('OpenRouterMcpClient');
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Check if a model supports the Exacto variant
|
|
144
|
+
* Strips any existing variant suffix before checking
|
|
145
|
+
*/
|
|
146
|
+
private static isExactoSupported(modelName: string): boolean {
|
|
147
|
+
// Remove existing variant suffixes (e.g., :free, :thinking, :exacto)
|
|
148
|
+
const baseModel = modelName.split(':')[0];
|
|
149
|
+
return OpenRouterMcpClient.EXACTO_SUPPORTED_MODELS.includes(baseModel);
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
/**
|
|
153
|
+
* Apply Exacto variant to a model name if supported and requested
|
|
154
|
+
*
|
|
155
|
+
* @param modelName - Original model name (may include existing variant)
|
|
156
|
+
* @param useExacto - Whether to apply Exacto variant
|
|
157
|
+
* @returns Model name with appropriate variant suffix
|
|
158
|
+
*/
|
|
159
|
+
private applyExactoVariant(modelName: string, useExacto: boolean): string {
|
|
160
|
+
if (!useExacto) {
|
|
161
|
+
return modelName;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
// Split model and existing variant
|
|
165
|
+
const parts = modelName.split(':');
|
|
166
|
+
const baseModel = parts[0];
|
|
167
|
+
const existingVariant = parts[1];
|
|
168
|
+
|
|
169
|
+
// Check if already has :exacto
|
|
170
|
+
if (existingVariant === 'exacto') {
|
|
171
|
+
return modelName;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
// Check if model supports Exacto
|
|
175
|
+
if (!OpenRouterMcpClient.isExactoSupported(baseModel)) {
|
|
176
|
+
// this.logger.warn(`ā ļø Model ${baseModel} does not support :exacto variant. Supported models: ${OpenRouterMcpClient.EXACTO_SUPPORTED_MODELS.join(', ')}`);
|
|
177
|
+
return modelName; // Return original model name
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
// If there's an existing variant (e.g., :free, :thinking), warn about replacement
|
|
181
|
+
if (existingVariant) {
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
const exactoModel = `${baseModel}:exacto`;
|
|
185
|
+
return exactoModel;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
/**
|
|
189
|
+
* Build the standard OpenRouter request headers.
|
|
190
|
+
*
|
|
191
|
+
* Precedence for app-attribution headers (X-Title and HTTP-Referer):
|
|
192
|
+
* 1. Per-request override via `options.title` / `options.referer`
|
|
193
|
+
* 2. Env vars `OPENROUTER_APP_TITLE` / `OPENROUTER_APP_URL`
|
|
194
|
+
* 3. MXF defaults
|
|
195
|
+
*
|
|
196
|
+
* Set the env vars when embedding MXF in another application so traffic
|
|
197
|
+
* attributes correctly in that application's OpenRouter dashboard.
|
|
198
|
+
*/
|
|
199
|
+
private buildOpenRouterHeaders(options?: Record<string, any>): Record<string, string> {
|
|
200
|
+
return {
|
|
201
|
+
'Content-Type': 'application/json',
|
|
202
|
+
'Authorization': `Bearer ${this.config.apiKey}`,
|
|
203
|
+
'HTTP-Referer': options?.referer || process.env.OPENROUTER_APP_URL || 'http://mxf.dev',
|
|
204
|
+
'X-Title': options?.title || process.env.OPENROUTER_APP_TITLE || 'MXF'
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
// Request queue to prevent concurrent requests that might cause JSON parsing issues
|
|
209
|
+
private static requestQueue: Array<() => Promise<any>> = [];
|
|
210
|
+
private static isProcessingQueue = false;
|
|
211
|
+
// Configurable delay between requests - reduced from 500ms to 100ms default for better performance
|
|
212
|
+
// Set OPENROUTER_REQUEST_QUEUE_DELAY_MS=0 to disable queueing delay entirely
|
|
213
|
+
private static readonly REQUEST_DELAY_MS = parseInt(process.env.OPENROUTER_REQUEST_QUEUE_DELAY_MS || '100', 10);
|
|
214
|
+
|
|
215
|
+
// Network recovery manager
|
|
216
|
+
private networkRecovery: NetworkRecoveryManager | null = null;
|
|
217
|
+
|
|
218
|
+
// JSON recovery manager
|
|
219
|
+
private jsonRecovery: JsonRecoveryManager;
|
|
220
|
+
|
|
221
|
+
/**
|
|
222
|
+
* Process the request queue sequentially to prevent concurrent requests
|
|
223
|
+
*/
|
|
224
|
+
private static async processQueue(): Promise<void> {
|
|
225
|
+
if (OpenRouterMcpClient.isProcessingQueue || OpenRouterMcpClient.requestQueue.length === 0) {
|
|
226
|
+
return;
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
OpenRouterMcpClient.isProcessingQueue = true;
|
|
230
|
+
|
|
231
|
+
while (OpenRouterMcpClient.requestQueue.length > 0) {
|
|
232
|
+
const request = OpenRouterMcpClient.requestQueue.shift()!;
|
|
233
|
+
try {
|
|
234
|
+
await request();
|
|
235
|
+
} catch (error) {
|
|
236
|
+
// Request will handle its own error, just continue processing
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
// Wait between requests to prevent rate limiting
|
|
240
|
+
if (OpenRouterMcpClient.requestQueue.length > 0) {
|
|
241
|
+
await new Promise(resolve => setTimeout(resolve, OpenRouterMcpClient.REQUEST_DELAY_MS));
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
OpenRouterMcpClient.isProcessingQueue = false;
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
/**
|
|
249
|
+
* Add a request to the queue and process it
|
|
250
|
+
*/
|
|
251
|
+
private static async queueRequest<T>(requestFn: () => Promise<T>): Promise<T> {
|
|
252
|
+
return new Promise<T>((resolve, reject) => {
|
|
253
|
+
const wrappedRequest = async () => {
|
|
254
|
+
try {
|
|
255
|
+
const result = await requestFn();
|
|
256
|
+
resolve(result);
|
|
257
|
+
} catch (error) {
|
|
258
|
+
reject(error);
|
|
259
|
+
}
|
|
260
|
+
};
|
|
261
|
+
|
|
262
|
+
OpenRouterMcpClient.requestQueue.push(wrappedRequest);
|
|
263
|
+
OpenRouterMcpClient.processQueue();
|
|
264
|
+
});
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
/**
|
|
268
|
+
* Initialize the OpenRouter provider
|
|
269
|
+
*/
|
|
270
|
+
protected async initializeProvider(): Promise<void> {
|
|
271
|
+
// Initialize network recovery configuration from environment or defaults
|
|
272
|
+
const networkRecoveryConfig: NetworkRecoveryConfig = {
|
|
273
|
+
...DEFAULT_NETWORK_RECOVERY_CONFIG,
|
|
274
|
+
maxRetries: parseInt(process.env.OPENROUTER_MAX_RETRIES || '3'),
|
|
275
|
+
baseDelayMs: parseInt(process.env.OPENROUTER_BASE_DELAY_MS || '1000'),
|
|
276
|
+
maxDelayMs: parseInt(process.env.OPENROUTER_MAX_DELAY_MS || '30000'),
|
|
277
|
+
retryMultiplier: parseFloat(process.env.OPENROUTER_RETRY_MULTIPLIER || '2'),
|
|
278
|
+
circuitBreakerThreshold: parseInt(process.env.OPENROUTER_CIRCUIT_BREAKER_THRESHOLD || '5'),
|
|
279
|
+
circuitBreakerCooldownMs: parseInt(process.env.OPENROUTER_CIRCUIT_BREAKER_COOLDOWN_MS || '60000'),
|
|
280
|
+
requestTimeoutMs: parseInt(process.env.OPENROUTER_REQUEST_TIMEOUT_MS || '30000'),
|
|
281
|
+
enableGracefulDegradation: process.env.OPENROUTER_ENABLE_GRACEFUL_DEGRADATION !== 'false',
|
|
282
|
+
enableDetailedLogging: process.env.OPENROUTER_ENABLE_DETAILED_LOGGING !== 'false'
|
|
283
|
+
};
|
|
284
|
+
|
|
285
|
+
// Create network recovery manager
|
|
286
|
+
this.networkRecovery = new NetworkRecoveryManager(networkRecoveryConfig, 'OpenRouterMcpClient');
|
|
287
|
+
|
|
288
|
+
|
|
289
|
+
// Register OpenRouter adapter with the unified converter
|
|
290
|
+
// Use 'client' context since MCP clients run in SDK (client-side)
|
|
291
|
+
const converter = getMessageConverter('client');
|
|
292
|
+
converter.registerAdapter(new OpenRouterMessageAdapter('client'));
|
|
293
|
+
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
/**
|
|
297
|
+
* Convert ConversationMessage directly to OpenRouter format
|
|
298
|
+
* No MCP intermediate step - preserves all metadata
|
|
299
|
+
*/
|
|
300
|
+
private convertConversationToOpenRouter(msg: ConversationMessage): any {
|
|
301
|
+
const role = msg.role === 'system' ? 'system' :
|
|
302
|
+
msg.role === 'assistant' ? 'assistant' :
|
|
303
|
+
msg.role === 'tool' ? 'tool' : 'user';
|
|
304
|
+
|
|
305
|
+
let content = msg.content;
|
|
306
|
+
|
|
307
|
+
// Preserve agent attribution for messages from other agents
|
|
308
|
+
if (role === 'user' && msg.metadata?.fromAgentId) {
|
|
309
|
+
const hasPrefix = content.startsWith('[') && content.includes(']:');
|
|
310
|
+
if (!hasPrefix) {
|
|
311
|
+
content = `[${msg.metadata.fromAgentId}]: ${content}`;
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
const openRouterMsg: any = { role, content };
|
|
316
|
+
|
|
317
|
+
// Preserve tool_calls for assistant messages
|
|
318
|
+
if (msg.role === 'assistant' && (msg as any).tool_calls) {
|
|
319
|
+
openRouterMsg.tool_calls = (msg as any).tool_calls;
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
// Preserve tool_call_id for tool messages
|
|
323
|
+
if (msg.role === 'tool' && msg.metadata?.tool_call_id) {
|
|
324
|
+
openRouterMsg.tool_call_id = msg.metadata.tool_call_id;
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
return openRouterMsg;
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
/**
|
|
331
|
+
* Convert MCP tools to OpenRouter tools (using utility)
|
|
332
|
+
*
|
|
333
|
+
* @param tools MCP tools
|
|
334
|
+
* @returns OpenRouter tools
|
|
335
|
+
*/
|
|
336
|
+
private convertToOpenRouterTools(tools: McpTool[]): OpenRouterTool[] {
|
|
337
|
+
return convertToolsToProviderFormat(tools, 'openrouter') as OpenRouterTool[];
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
/**
|
|
341
|
+
* Convert OpenRouter response to MCP response
|
|
342
|
+
*
|
|
343
|
+
* @param response OpenRouter response
|
|
344
|
+
* @returns MCP response
|
|
345
|
+
*/
|
|
346
|
+
private convertToMcpResponse(response: OpenRouterResponse): McpApiResponse {
|
|
347
|
+
// Get the choice with the assistant message
|
|
348
|
+
const choice = response.choices[0];
|
|
349
|
+
|
|
350
|
+
// Convert content to MCP format
|
|
351
|
+
const content: McpApiResponse['content'] = [];
|
|
352
|
+
|
|
353
|
+
// Handle reasoning tokens for reasoning models (e.g., o1, deepseek-reasoner, gpt-5)
|
|
354
|
+
// These models return both 'reasoning' and 'content' fields
|
|
355
|
+
const messageContent = choice.message.content;
|
|
356
|
+
const messageReasoning = (choice.message as any).reasoning;
|
|
357
|
+
|
|
358
|
+
|
|
359
|
+
if (messageReasoning) {
|
|
360
|
+
} else {
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
// Handle different response formats
|
|
364
|
+
if (typeof messageContent === 'string') {
|
|
365
|
+
// Simple text content (works for both normal and :thinking models)
|
|
366
|
+
content.push({
|
|
367
|
+
type: McpContentType.TEXT,
|
|
368
|
+
text: messageContent
|
|
369
|
+
});
|
|
370
|
+
} else if (Array.isArray(messageContent)) {
|
|
371
|
+
// Array of content blocks
|
|
372
|
+
messageContent.forEach(item => {
|
|
373
|
+
if (item.type === 'text' && item.text) {
|
|
374
|
+
content.push({
|
|
375
|
+
type: McpContentType.TEXT,
|
|
376
|
+
text: item.text
|
|
377
|
+
});
|
|
378
|
+
} else if (item.type === 'image_url' && item.image_url) {
|
|
379
|
+
content.push({
|
|
380
|
+
type: McpContentType.IMAGE,
|
|
381
|
+
source: {
|
|
382
|
+
type: 'url',
|
|
383
|
+
media_type: 'image/jpeg', // Assuming JPEG
|
|
384
|
+
data: item.image_url.url
|
|
385
|
+
}
|
|
386
|
+
});
|
|
387
|
+
}
|
|
388
|
+
});
|
|
389
|
+
}
|
|
390
|
+
|
|
391
|
+
// Handle tool calls if present
|
|
392
|
+
if (choice.message.tool_calls && choice.message.tool_calls.length > 0) {
|
|
393
|
+
choice.message.tool_calls.forEach(toolCall => {
|
|
394
|
+
if (toolCall.type === 'function') {
|
|
395
|
+
// Parse tool call arguments from OpenRouter response
|
|
396
|
+
let parsedInput = {};
|
|
397
|
+
try {
|
|
398
|
+
const args = toolCall.function.arguments?.trim();
|
|
399
|
+
if (args && args.length > 0) {
|
|
400
|
+
parsedInput = JSON.parse(args);
|
|
401
|
+
} else {
|
|
402
|
+
this.logger.warn(`ā ļø Tool call ${toolCall.function.name} (${toolCall.id}) has empty arguments string`);
|
|
403
|
+
}
|
|
404
|
+
} catch (error) {
|
|
405
|
+
// Log the parse failure ā silent {} fallback masks real bugs
|
|
406
|
+
this.logger.error(`ā JSON parse failed for tool ${toolCall.function.name} (${toolCall.id}) arguments: ${(error as Error).message}. Raw args: "${toolCall.function.arguments?.substring(0, 200)}"`);
|
|
407
|
+
parsedInput = {};
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
content.push({
|
|
411
|
+
type: McpContentType.TOOL_USE,
|
|
412
|
+
id: toolCall.id,
|
|
413
|
+
name: toolCall.function.name,
|
|
414
|
+
input: parsedInput
|
|
415
|
+
});
|
|
416
|
+
}
|
|
417
|
+
});
|
|
418
|
+
}
|
|
419
|
+
|
|
420
|
+
// Create MCP response
|
|
421
|
+
const mcpResponse: McpApiResponse = {
|
|
422
|
+
id: response.id,
|
|
423
|
+
type: 'completion',
|
|
424
|
+
role: 'assistant',
|
|
425
|
+
content,
|
|
426
|
+
model: response.model,
|
|
427
|
+
stop_reason: choice.finish_reason || null,
|
|
428
|
+
stop_sequence: null,
|
|
429
|
+
usage: {
|
|
430
|
+
input_tokens: response.usage.prompt_tokens,
|
|
431
|
+
output_tokens: response.usage.completion_tokens,
|
|
432
|
+
total_tokens: response.usage.total_tokens
|
|
433
|
+
}
|
|
434
|
+
};
|
|
435
|
+
|
|
436
|
+
// Include reasoning if present (for reasoning models like o1, gpt-5, deepseek-reasoner)
|
|
437
|
+
if (messageReasoning && typeof messageReasoning === 'string') {
|
|
438
|
+
mcpResponse.reasoning = messageReasoning;
|
|
439
|
+
}
|
|
440
|
+
|
|
441
|
+
return mcpResponse;
|
|
442
|
+
}
|
|
443
|
+
|
|
444
|
+
/**
|
|
445
|
+
* NEW APPROACH: Send message using full agent context
|
|
446
|
+
*
|
|
447
|
+
* This method structures messages for OpenRouter based on semantic metadata,
|
|
448
|
+
* eliminating the lossy reconstruction cycle.
|
|
449
|
+
*
|
|
450
|
+
* OpenRouter-specific structuring:
|
|
451
|
+
* - Combines system prompt + agent identity into single system message
|
|
452
|
+
* - Filters conversation to only dialogue and tool results
|
|
453
|
+
* - Applies OpenRouter's reordering for tool results
|
|
454
|
+
* - Skips framework/action messages (already in system context)
|
|
455
|
+
*
|
|
456
|
+
* @param context - Complete agent context from SDK
|
|
457
|
+
* @param options - Additional OpenRouter-specific options
|
|
458
|
+
* @returns Observable with OpenRouter response
|
|
459
|
+
*/
|
|
460
|
+
public sendWithContext(
|
|
461
|
+
context: AgentContext,
|
|
462
|
+
options?: Record<string, any>
|
|
463
|
+
): Observable<McpApiResponse> {
|
|
464
|
+
// When streaming is requested, return an Observable that emits McpStreamEmission values:
|
|
465
|
+
// N McpStreamChunk emissions followed by 1 final McpApiResponse, then completes.
|
|
466
|
+
// The caller can use `'streaming' in emission` to discriminate chunk vs final.
|
|
467
|
+
if (options?.stream) {
|
|
468
|
+
this.logger.debug('š” OpenRouter: stream=true detected, using streaming Observable');
|
|
469
|
+
return new Observable<McpApiResponse>(subscriber => {
|
|
470
|
+
this.sendWithContextStreaming(context, options, (chunk: McpStreamChunk) => {
|
|
471
|
+
// Emit chunks through the same Observable ā consumers must cast to McpStreamEmission
|
|
472
|
+
(subscriber as any).next(chunk);
|
|
473
|
+
})
|
|
474
|
+
.then(response => {
|
|
475
|
+
this.logger.debug('š” OpenRouter: streaming complete, emitting final response');
|
|
476
|
+
subscriber.next(response);
|
|
477
|
+
subscriber.complete();
|
|
478
|
+
})
|
|
479
|
+
.catch(error => {
|
|
480
|
+
this.logger.debug(`š” OpenRouter: streaming error: ${error?.message}`);
|
|
481
|
+
subscriber.error(error);
|
|
482
|
+
});
|
|
483
|
+
});
|
|
484
|
+
}
|
|
485
|
+
|
|
486
|
+
return new Observable<McpApiResponse>(subscriber => {
|
|
487
|
+
this.sendWithContextImpl(context, options)
|
|
488
|
+
.then(response => {
|
|
489
|
+
subscriber.next(response);
|
|
490
|
+
subscriber.complete();
|
|
491
|
+
})
|
|
492
|
+
.catch(error => subscriber.error(error));
|
|
493
|
+
});
|
|
494
|
+
}
|
|
495
|
+
|
|
496
|
+
/**
|
|
497
|
+
* Implementation of context-based sending for OpenRouter
|
|
498
|
+
*/
|
|
499
|
+
private async sendWithContextImpl(
|
|
500
|
+
context: AgentContext,
|
|
501
|
+
options?: Record<string, any>
|
|
502
|
+
): Promise<McpApiResponse> {
|
|
503
|
+
|
|
504
|
+
// Structure messages for OpenRouter based on context (returns OpenRouter format)
|
|
505
|
+
const openRouterMessages = this.structureMessagesFromContext(context);
|
|
506
|
+
|
|
507
|
+
|
|
508
|
+
// Apply OpenRouter-specific transformations using adapter
|
|
509
|
+
// CRITICAL: This reorders tool results to immediately follow tool calls
|
|
510
|
+
const converter = getMessageConverter('client');
|
|
511
|
+
const transformedMessages = converter.transform(openRouterMessages, MessageFormat.OPENROUTER);
|
|
512
|
+
|
|
513
|
+
|
|
514
|
+
// Message count may differ if orphaned tool results were dropped - this is expected
|
|
515
|
+
// and prevents API errors when conversation history is cleared between turns
|
|
516
|
+
if (transformedMessages.length !== openRouterMessages.length) {
|
|
517
|
+
this.logger.debug(`Messages adjusted during transformation: ${openRouterMessages.length} ā ${transformedMessages.length} (orphaned tool results dropped)`);
|
|
518
|
+
}
|
|
519
|
+
|
|
520
|
+
// Messages are already in OpenRouter format - send directly
|
|
521
|
+
return await OpenRouterMcpClient.queueRequest(async () => {
|
|
522
|
+
if (!this.networkRecovery) {
|
|
523
|
+
throw new Error('Network recovery not initialized');
|
|
524
|
+
}
|
|
525
|
+
|
|
526
|
+
const result = await this.networkRecovery.executeWithRetry(
|
|
527
|
+
() => this.executeOpenRouterRequestDirect(transformedMessages, context.availableTools as any, options),
|
|
528
|
+
extractStatusCodeFromError
|
|
529
|
+
);
|
|
530
|
+
|
|
531
|
+
if (!result.success) {
|
|
532
|
+
if (result.circuitBreakerTriggered) {
|
|
533
|
+
throw new Error(result.error!.message);
|
|
534
|
+
}
|
|
535
|
+
throw result.error?.originalError || new Error(result.error!.message);
|
|
536
|
+
}
|
|
537
|
+
|
|
538
|
+
return result.data!;
|
|
539
|
+
});
|
|
540
|
+
}
|
|
541
|
+
|
|
542
|
+
/**
|
|
543
|
+
* Streaming variant of sendWithContextImpl.
|
|
544
|
+
* Makes the same request but with `stream: true`, parses SSE chunks,
|
|
545
|
+
* calls onChunk for each partial token, and returns the accumulated final response.
|
|
546
|
+
*
|
|
547
|
+
* @param context - Complete agent context from SDK
|
|
548
|
+
* @param options - Additional options (must include stream: true)
|
|
549
|
+
* @param onChunk - Callback invoked for each streaming chunk
|
|
550
|
+
* @returns The final accumulated McpApiResponse
|
|
551
|
+
*/
|
|
552
|
+
private async sendWithContextStreaming(
|
|
553
|
+
context: AgentContext,
|
|
554
|
+
options: Record<string, any>,
|
|
555
|
+
onChunk: (chunk: McpStreamChunk) => void
|
|
556
|
+
): Promise<McpApiResponse> {
|
|
557
|
+
// Structure and transform messages same as non-streaming path
|
|
558
|
+
const openRouterMessages = this.structureMessagesFromContext(context);
|
|
559
|
+
const converter = getMessageConverter('client');
|
|
560
|
+
const transformedMessages = converter.transform(openRouterMessages, MessageFormat.OPENROUTER);
|
|
561
|
+
|
|
562
|
+
return await OpenRouterMcpClient.queueRequest(async () => {
|
|
563
|
+
return this.executeStreamingRequest(transformedMessages, context.availableTools as any, options, onChunk);
|
|
564
|
+
});
|
|
565
|
+
}
|
|
566
|
+
|
|
567
|
+
/**
|
|
568
|
+
* Execute an OpenRouter streaming request via SSE.
|
|
569
|
+
* Parses `data:` lines from the SSE stream, emits partial chunks via onChunk,
|
|
570
|
+
* accumulates the full response, and returns a complete McpApiResponse.
|
|
571
|
+
*/
|
|
572
|
+
private async executeStreamingRequest(
|
|
573
|
+
openRouterMessages: any[],
|
|
574
|
+
tools?: McpTool[],
|
|
575
|
+
options?: Record<string, any>,
|
|
576
|
+
onChunk?: (chunk: McpStreamChunk) => void
|
|
577
|
+
): Promise<McpApiResponse> {
|
|
578
|
+
// Build request body (same as executeOpenRouterRequestCore but with stream: true)
|
|
579
|
+
let model = options?.model || this.config.defaultModel || 'openai/gpt-4-turbo';
|
|
580
|
+
const useExacto = options?.useExactoVariant !== false;
|
|
581
|
+
model = this.applyExactoVariant(model, useExacto);
|
|
582
|
+
|
|
583
|
+
const temperature = options?.temperature || this.config.temperature || 0.7;
|
|
584
|
+
const maxTokens = options?.maxTokens || this.config.maxTokens || 4096;
|
|
585
|
+
|
|
586
|
+
const requestBody: Record<string, any> = {
|
|
587
|
+
model,
|
|
588
|
+
messages: openRouterMessages,
|
|
589
|
+
temperature,
|
|
590
|
+
max_tokens: maxTokens,
|
|
591
|
+
stream: true,
|
|
592
|
+
};
|
|
593
|
+
|
|
594
|
+
// Enable reasoning tokens if requested
|
|
595
|
+
if (options?.reasoning?.enabled === true) {
|
|
596
|
+
requestBody.reasoning = {
|
|
597
|
+
// effort and maxTokens are mutually exclusive per OpenRouter API
|
|
598
|
+
...(options.reasoning.maxTokens
|
|
599
|
+
? { max_tokens: options.reasoning.maxTokens }
|
|
600
|
+
: { effort: options.reasoning.effort || 'medium' }
|
|
601
|
+
),
|
|
602
|
+
...(options.reasoning.exclude !== undefined && { exclude: options.reasoning.exclude })
|
|
603
|
+
};
|
|
604
|
+
}
|
|
605
|
+
|
|
606
|
+
// Add tools if provided
|
|
607
|
+
const openRouterTools = tools ? this.convertToOpenRouterTools(tools) : undefined;
|
|
608
|
+
if (openRouterTools && openRouterTools.length > 0) {
|
|
609
|
+
requestBody.tools = openRouterTools;
|
|
610
|
+
requestBody.tool_choice = 'auto';
|
|
611
|
+
}
|
|
612
|
+
|
|
613
|
+
// Add provider-specific options
|
|
614
|
+
if (options?.providerOptions) {
|
|
615
|
+
Object.assign(requestBody, options.providerOptions);
|
|
616
|
+
}
|
|
617
|
+
|
|
618
|
+
const headers = this.buildOpenRouterHeaders(options);
|
|
619
|
+
|
|
620
|
+
const response = await fetch(`${this.baseUrl}/chat/completions`, {
|
|
621
|
+
method: 'POST',
|
|
622
|
+
headers,
|
|
623
|
+
body: JSON.stringify(requestBody)
|
|
624
|
+
});
|
|
625
|
+
|
|
626
|
+
if (!response.ok) {
|
|
627
|
+
const errorText = await response.text();
|
|
628
|
+
const error = new Error(`OpenRouter API error [${response.status}]: ${errorText}`);
|
|
629
|
+
(error as any).status = response.status;
|
|
630
|
+
(error as any).statusCode = response.status;
|
|
631
|
+
throw error;
|
|
632
|
+
}
|
|
633
|
+
|
|
634
|
+
if (!response.body) {
|
|
635
|
+
throw new Error('No response body for streaming request');
|
|
636
|
+
}
|
|
637
|
+
|
|
638
|
+
this.logger.debug(`š” OpenRouter SSE: Response received, status=${response.status}, starting stream parse`);
|
|
639
|
+
|
|
640
|
+
// Parse SSE stream and accumulate the full response
|
|
641
|
+
const reader = response.body.getReader();
|
|
642
|
+
const decoder = new TextDecoder();
|
|
643
|
+
let buffer = '';
|
|
644
|
+
let accumulatedContent = '';
|
|
645
|
+
let accumulatedReasoning = '';
|
|
646
|
+
let responseId = '';
|
|
647
|
+
let responseModel = model;
|
|
648
|
+
let finishReason: string | null = null;
|
|
649
|
+
let promptTokens = 0;
|
|
650
|
+
let completionTokens = 0;
|
|
651
|
+
let totalTokens = 0;
|
|
652
|
+
// Accumulated tool_calls built from streaming deltas
|
|
653
|
+
const toolCallAccumulators: Map<number, { id: string; type: string; functionName: string; functionArgs: string }> = new Map();
|
|
654
|
+
|
|
655
|
+
try {
|
|
656
|
+
while (true) {
|
|
657
|
+
const { done, value } = await reader.read();
|
|
658
|
+
if (done) break;
|
|
659
|
+
|
|
660
|
+
buffer += decoder.decode(value, { stream: true });
|
|
661
|
+
|
|
662
|
+
// Process complete SSE lines from the buffer
|
|
663
|
+
const lines = buffer.split('\n');
|
|
664
|
+
// Keep the last incomplete line in the buffer
|
|
665
|
+
buffer = lines.pop() || '';
|
|
666
|
+
|
|
667
|
+
for (const line of lines) {
|
|
668
|
+
const trimmed = line.trim();
|
|
669
|
+
|
|
670
|
+
// Skip empty lines and SSE comments
|
|
671
|
+
if (!trimmed || trimmed.startsWith(':')) continue;
|
|
672
|
+
|
|
673
|
+
// Handle the [DONE] signal
|
|
674
|
+
if (trimmed === 'data: [DONE]') continue;
|
|
675
|
+
|
|
676
|
+
// Parse data lines
|
|
677
|
+
if (trimmed.startsWith('data: ')) {
|
|
678
|
+
const jsonStr = trimmed.slice(6);
|
|
679
|
+
try {
|
|
680
|
+
const chunk = JSON.parse(jsonStr);
|
|
681
|
+
|
|
682
|
+
// Extract response metadata from first chunk
|
|
683
|
+
if (chunk.id && !responseId) {
|
|
684
|
+
responseId = chunk.id;
|
|
685
|
+
}
|
|
686
|
+
if (chunk.model) {
|
|
687
|
+
responseModel = chunk.model;
|
|
688
|
+
}
|
|
689
|
+
|
|
690
|
+
// Extract content delta
|
|
691
|
+
const delta = chunk.choices?.[0]?.delta;
|
|
692
|
+
const chunkFinishReason = chunk.choices?.[0]?.finish_reason;
|
|
693
|
+
|
|
694
|
+
if (chunkFinishReason) {
|
|
695
|
+
finishReason = chunkFinishReason;
|
|
696
|
+
}
|
|
697
|
+
|
|
698
|
+
if (delta) {
|
|
699
|
+
const contentDelta = delta.content || '';
|
|
700
|
+
|
|
701
|
+
// OpenRouter reasoning can arrive as:
|
|
702
|
+
// 1. delta.reasoning (string) ā some providers
|
|
703
|
+
// 2. delta.reasoning_content (string) ā Anthropic alias
|
|
704
|
+
// 3. delta.reasoning_details (array of {type, text}) ā Anthropic extended thinking
|
|
705
|
+
let reasoningDelta = delta.reasoning || delta.reasoning_content || '';
|
|
706
|
+
if (!reasoningDelta && delta.reasoning_details && Array.isArray(delta.reasoning_details)) {
|
|
707
|
+
reasoningDelta = delta.reasoning_details
|
|
708
|
+
.filter((d: any) => d.text)
|
|
709
|
+
.map((d: any) => d.text)
|
|
710
|
+
.join('');
|
|
711
|
+
}
|
|
712
|
+
|
|
713
|
+
if (contentDelta) {
|
|
714
|
+
accumulatedContent += contentDelta;
|
|
715
|
+
onChunk?.({ streaming: true, content: contentDelta });
|
|
716
|
+
}
|
|
717
|
+
if (reasoningDelta) {
|
|
718
|
+
accumulatedReasoning += reasoningDelta;
|
|
719
|
+
onChunk?.({ streaming: true, reasoning: reasoningDelta });
|
|
720
|
+
}
|
|
721
|
+
|
|
722
|
+
// Accumulate tool_calls from streaming deltas
|
|
723
|
+
if (delta.tool_calls && Array.isArray(delta.tool_calls)) {
|
|
724
|
+
for (const tc of delta.tool_calls) {
|
|
725
|
+
const idx = tc.index ?? 0;
|
|
726
|
+
if (!toolCallAccumulators.has(idx)) {
|
|
727
|
+
toolCallAccumulators.set(idx, {
|
|
728
|
+
id: tc.id || '',
|
|
729
|
+
type: tc.type || 'function',
|
|
730
|
+
functionName: tc.function?.name || '',
|
|
731
|
+
functionArgs: tc.function?.arguments || '',
|
|
732
|
+
});
|
|
733
|
+
} else {
|
|
734
|
+
const acc = toolCallAccumulators.get(idx)!;
|
|
735
|
+
if (tc.id) acc.id = tc.id;
|
|
736
|
+
if (tc.function?.name) acc.functionName += tc.function.name;
|
|
737
|
+
if (tc.function?.arguments) acc.functionArgs += tc.function.arguments;
|
|
738
|
+
}
|
|
739
|
+
}
|
|
740
|
+
}
|
|
741
|
+
}
|
|
742
|
+
|
|
743
|
+
// Extract usage from final chunk (OpenRouter includes it in the last SSE event)
|
|
744
|
+
if (chunk.usage) {
|
|
745
|
+
promptTokens = chunk.usage.prompt_tokens || 0;
|
|
746
|
+
completionTokens = chunk.usage.completion_tokens || 0;
|
|
747
|
+
totalTokens = chunk.usage.total_tokens || 0;
|
|
748
|
+
}
|
|
749
|
+
} catch {
|
|
750
|
+
// Skip malformed JSON lines ā they occasionally happen in SSE streams
|
|
751
|
+
this.logger.debug(`Skipping malformed SSE data line: ${jsonStr.substring(0, 100)}`);
|
|
752
|
+
}
|
|
753
|
+
}
|
|
754
|
+
}
|
|
755
|
+
}
|
|
756
|
+
} finally {
|
|
757
|
+
reader.releaseLock();
|
|
758
|
+
}
|
|
759
|
+
|
|
760
|
+
this.logger.debug(`š” OpenRouter SSE: Stream complete. Content=${accumulatedContent.length}chars, Reasoning=${accumulatedReasoning.length}chars, ToolCalls=${toolCallAccumulators.size}, Finish=${finishReason}`);
|
|
761
|
+
|
|
762
|
+
// Build accumulated tool_calls in OpenRouter format for convertToMcpResponse
|
|
763
|
+
const accumulatedToolCalls = Array.from(toolCallAccumulators.values()).map(tc => ({
|
|
764
|
+
id: tc.id,
|
|
765
|
+
type: tc.type as 'function',
|
|
766
|
+
function: {
|
|
767
|
+
name: tc.functionName,
|
|
768
|
+
arguments: tc.functionArgs,
|
|
769
|
+
}
|
|
770
|
+
}));
|
|
771
|
+
|
|
772
|
+
// Build a synthetic OpenRouterResponse from accumulated data for convertToMcpResponse
|
|
773
|
+
const syntheticResponse: OpenRouterResponse = {
|
|
774
|
+
id: responseId || `stream-${Date.now()}`,
|
|
775
|
+
model: responseModel,
|
|
776
|
+
created: Math.floor(Date.now() / 1000),
|
|
777
|
+
object: 'chat.completion',
|
|
778
|
+
choices: [{
|
|
779
|
+
index: 0,
|
|
780
|
+
message: {
|
|
781
|
+
role: 'assistant',
|
|
782
|
+
content: accumulatedContent,
|
|
783
|
+
...(accumulatedToolCalls.length > 0 ? { tool_calls: accumulatedToolCalls } : {}),
|
|
784
|
+
},
|
|
785
|
+
finish_reason: finishReason || 'stop',
|
|
786
|
+
}],
|
|
787
|
+
usage: {
|
|
788
|
+
prompt_tokens: promptTokens,
|
|
789
|
+
completion_tokens: completionTokens,
|
|
790
|
+
total_tokens: totalTokens,
|
|
791
|
+
},
|
|
792
|
+
};
|
|
793
|
+
|
|
794
|
+
const mcpResponse = this.convertToMcpResponse(syntheticResponse);
|
|
795
|
+
|
|
796
|
+
// Attach accumulated reasoning if present
|
|
797
|
+
if (accumulatedReasoning) {
|
|
798
|
+
mcpResponse.reasoning = accumulatedReasoning;
|
|
799
|
+
}
|
|
800
|
+
|
|
801
|
+
return mcpResponse;
|
|
802
|
+
}
|
|
803
|
+
|
|
804
|
+
/**
|
|
805
|
+
* Structure messages from AgentContext for OpenRouter
|
|
806
|
+
*
|
|
807
|
+
* Similar to Azure but applies OpenRouter-specific requirements
|
|
808
|
+
*/
|
|
809
|
+
private structureMessagesFromContext(context: AgentContext): any[] {
|
|
810
|
+
const messages: any[] = [];
|
|
811
|
+
|
|
812
|
+
// 1. System message: Combine framework rules + agent identity
|
|
813
|
+
const systemContent = [
|
|
814
|
+
context.systemPrompt,
|
|
815
|
+
'',
|
|
816
|
+
`## Your Agent Identity`,
|
|
817
|
+
`**You are**: ${(context.agentConfig as any).purpose || context.agentConfig.agentId}`,
|
|
818
|
+
`**Your Agent ID**: ${context.agentId}`,
|
|
819
|
+
...(context.agentConfig.capabilities ? [`**Capabilities**: ${context.agentConfig.capabilities.join(', ')}`] : [])
|
|
820
|
+
].join('\n');
|
|
821
|
+
|
|
822
|
+
messages.push({
|
|
823
|
+
role: 'system',
|
|
824
|
+
content: systemContent
|
|
825
|
+
});
|
|
826
|
+
|
|
827
|
+
// 2. Conversation history: Filter same as Azure for consistency
|
|
828
|
+
// NOTE: Task message is now added AFTER conversation history to maintain chronological order
|
|
829
|
+
// This fixes the bug where subsequent tasks appeared above existing conversation
|
|
830
|
+
const dialogueMessages = context.conversationHistory.filter(msg => {
|
|
831
|
+
const layer = msg.metadata?.contextLayer;
|
|
832
|
+
|
|
833
|
+
// INCLUDE: SystemLLM messages - they are "held" until the next real prompt
|
|
834
|
+
// and should be bundled with that prompt to provide coordination insights
|
|
835
|
+
// (Previously these were skipped, breaking the SystemLLM flow)
|
|
836
|
+
|
|
837
|
+
// INCLUDE: Messages with conversation, tool-result, or task layer
|
|
838
|
+
// Task messages must be included to prevent re-injection on every turn
|
|
839
|
+
if (layer === 'conversation' || layer === 'tool-result' || layer === 'task') {
|
|
840
|
+
return true;
|
|
841
|
+
}
|
|
842
|
+
|
|
843
|
+
// INCLUDE: Tool role messages (always part of tool execution flow)
|
|
844
|
+
if (msg.role === 'tool') {
|
|
845
|
+
return true;
|
|
846
|
+
}
|
|
847
|
+
|
|
848
|
+
// SKIP: Messages with system/identity/action layers (already in system context)
|
|
849
|
+
if (layer === 'system' || layer === 'identity' || layer === 'action') {
|
|
850
|
+
return false;
|
|
851
|
+
}
|
|
852
|
+
|
|
853
|
+
// INCLUDE: Messages without contextLayer (legacy or direct additions)
|
|
854
|
+
// These are likely channel messages, system errors, or other important context
|
|
855
|
+
if (!layer && msg.role !== 'system') {
|
|
856
|
+
return true;
|
|
857
|
+
}
|
|
858
|
+
|
|
859
|
+
// SKIP: Everything else
|
|
860
|
+
return false;
|
|
861
|
+
});
|
|
862
|
+
|
|
863
|
+
|
|
864
|
+
const toolMessagesInDialogue = dialogueMessages.filter(m => m.role === 'tool');
|
|
865
|
+
if (toolMessagesInDialogue.length > 0) {
|
|
866
|
+
toolMessagesInDialogue.forEach((msg, idx) => {
|
|
867
|
+
const size = msg.content?.length || 0;
|
|
868
|
+
const toolName = msg.metadata?.toolName || 'unknown';
|
|
869
|
+
});
|
|
870
|
+
}
|
|
871
|
+
|
|
872
|
+
// Convert directly to OpenRouter format (no MCP round-trip)
|
|
873
|
+
// Reordering will be handled by adapter.transform() in sendWithContextImpl
|
|
874
|
+
const openRouterDialogue = dialogueMessages.map(msg => this.convertConversationToOpenRouter(msg));
|
|
875
|
+
messages.push(...openRouterDialogue);
|
|
876
|
+
|
|
877
|
+
// 3. Task message (if present) - Only inject if NOT already in conversation history
|
|
878
|
+
// Task messages are now included in dialogueMessages, so they appear in their chronological position.
|
|
879
|
+
// This prevents the task from appearing AFTER tool results, which the LLM interprets as a new request.
|
|
880
|
+
const taskAlreadyInHistory = dialogueMessages.some(m =>
|
|
881
|
+
m.content?.includes('## Current Task') ||
|
|
882
|
+
m.metadata?.contextLayer === 'task'
|
|
883
|
+
);
|
|
884
|
+
if (context.currentTask && !taskAlreadyInHistory) {
|
|
885
|
+
messages.push({
|
|
886
|
+
role: 'user',
|
|
887
|
+
content: `## Current Task\n${context.currentTask.description}`
|
|
888
|
+
});
|
|
889
|
+
}
|
|
890
|
+
|
|
891
|
+
// 4. Recent actions (if needed for context)
|
|
892
|
+
if (context.recentActions.length > 0) {
|
|
893
|
+
const actionsContent = [
|
|
894
|
+
`## Your Recent Actions`,
|
|
895
|
+
...context.recentActions.map(a => `- ${a.action}${a.result ? `: ${a.result}` : ''}`)
|
|
896
|
+
].join('\n');
|
|
897
|
+
|
|
898
|
+
messages.push({
|
|
899
|
+
role: 'user',
|
|
900
|
+
content: actionsContent
|
|
901
|
+
});
|
|
902
|
+
}
|
|
903
|
+
|
|
904
|
+
return messages;
|
|
905
|
+
}
|
|
906
|
+
|
|
907
|
+
/**
|
|
908
|
+
* Legacy MCP message path for simple use cases (SystemLlm, etc.)
|
|
909
|
+
* For complex multi-turn conversations with tools, use sendWithContext()
|
|
910
|
+
*
|
|
911
|
+
* @param messages MCP messages
|
|
912
|
+
* @param tools Optional tools
|
|
913
|
+
* @param options Request options
|
|
914
|
+
*/
|
|
915
|
+
protected async sendProviderMessage(
|
|
916
|
+
messages: McpMessage[],
|
|
917
|
+
tools?: McpTool[],
|
|
918
|
+
options?: Record<string, any>
|
|
919
|
+
): Promise<McpApiResponse> {
|
|
920
|
+
// Convert MCP ā OpenRouter using adapter
|
|
921
|
+
const converter = getMessageConverter('client');
|
|
922
|
+
const openRouterMessages = converter.convert(
|
|
923
|
+
messages,
|
|
924
|
+
MessageFormat.MCP,
|
|
925
|
+
MessageFormat.OPENROUTER
|
|
926
|
+
);
|
|
927
|
+
|
|
928
|
+
// Apply transformations (reordering)
|
|
929
|
+
const transformedMessages = converter.transform(openRouterMessages, MessageFormat.OPENROUTER);
|
|
930
|
+
|
|
931
|
+
|
|
932
|
+
// Send directly
|
|
933
|
+
return await OpenRouterMcpClient.queueRequest(async () => {
|
|
934
|
+
if (!this.networkRecovery) {
|
|
935
|
+
throw new Error('Network recovery not initialized');
|
|
936
|
+
}
|
|
937
|
+
|
|
938
|
+
const result = await this.networkRecovery.executeWithRetry(
|
|
939
|
+
() => this.executeOpenRouterRequestDirect(transformedMessages, tools, options),
|
|
940
|
+
extractStatusCodeFromError
|
|
941
|
+
);
|
|
942
|
+
|
|
943
|
+
if (!result.success) {
|
|
944
|
+
if (result.circuitBreakerTriggered) {
|
|
945
|
+
throw new Error(result.error!.message);
|
|
946
|
+
}
|
|
947
|
+
throw result.error?.originalError || new Error(result.error!.message);
|
|
948
|
+
}
|
|
949
|
+
|
|
950
|
+
return result.data!;
|
|
951
|
+
});
|
|
952
|
+
}
|
|
953
|
+
|
|
954
|
+
/**
|
|
955
|
+
* Execute OpenRouter request with messages already in OpenRouter format
|
|
956
|
+
* Used by sendWithContextImpl to avoid lossy MCP round-trip
|
|
957
|
+
*/
|
|
958
|
+
private async executeOpenRouterRequestDirect(
|
|
959
|
+
openRouterMessages: any[],
|
|
960
|
+
tools?: McpTool[],
|
|
961
|
+
options?: Record<string, any>
|
|
962
|
+
): Promise<McpApiResponse> {
|
|
963
|
+
try {
|
|
964
|
+
// Validate inputs
|
|
965
|
+
if (!Array.isArray(openRouterMessages) || openRouterMessages.length === 0) {
|
|
966
|
+
throw new Error('Messages array cannot be empty');
|
|
967
|
+
}
|
|
968
|
+
|
|
969
|
+
// Messages are already in OpenRouter format - just convert tools
|
|
970
|
+
const openRouterTools = tools ? this.convertToOpenRouterTools(tools) : undefined;
|
|
971
|
+
|
|
972
|
+
return await this.executeOpenRouterRequestCore(openRouterMessages, openRouterTools, options);
|
|
973
|
+
} catch (error) {
|
|
974
|
+
this.logger.error(`OpenRouter request failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
975
|
+
throw error;
|
|
976
|
+
}
|
|
977
|
+
}
|
|
978
|
+
|
|
979
|
+
/**
|
|
980
|
+
* Core OpenRouter request execution with messages already in OpenRouter format
|
|
981
|
+
*/
|
|
982
|
+
private async executeOpenRouterRequestCore(
|
|
983
|
+
openRouterMessages: any[],
|
|
984
|
+
openRouterTools?: any[],
|
|
985
|
+
options?: Record<string, any>
|
|
986
|
+
): Promise<McpApiResponse> {
|
|
987
|
+
try {
|
|
988
|
+
|
|
989
|
+
// Prepare request parameters
|
|
990
|
+
let model = options?.model || this.config.defaultModel || 'openai/gpt-4-turbo';
|
|
991
|
+
|
|
992
|
+
// Apply Exacto variant if requested for enhanced tool-calling accuracy
|
|
993
|
+
// Default to true for MXF's tool-heavy architecture unless explicitly disabled
|
|
994
|
+
const useExacto = options?.useExactoVariant !== false; // Default: true
|
|
995
|
+
model = this.applyExactoVariant(model, useExacto);
|
|
996
|
+
|
|
997
|
+
const temperature = options?.temperature || this.config.temperature || 0.7;
|
|
998
|
+
const maxTokens = options?.maxTokens || this.config.maxTokens || 4096;
|
|
999
|
+
|
|
1000
|
+
// Prepare request body with model name as-is (OpenRouter handles model variants correctly)
|
|
1001
|
+
const requestBody: Record<string, any> = {
|
|
1002
|
+
model,
|
|
1003
|
+
messages: openRouterMessages,
|
|
1004
|
+
temperature,
|
|
1005
|
+
max_tokens: maxTokens
|
|
1006
|
+
};
|
|
1007
|
+
|
|
1008
|
+
// Enable reasoning tokens for models that support extended thinking
|
|
1009
|
+
// OpenRouter expects { effort, max_tokens?, exclude? } ā no 'enabled' field
|
|
1010
|
+
if (options?.reasoning?.enabled === true) {
|
|
1011
|
+
requestBody.reasoning = {
|
|
1012
|
+
// effort and maxTokens are mutually exclusive per OpenRouter API
|
|
1013
|
+
...(options.reasoning.maxTokens
|
|
1014
|
+
? { max_tokens: options.reasoning.maxTokens }
|
|
1015
|
+
: { effort: options.reasoning.effort || 'medium' }
|
|
1016
|
+
),
|
|
1017
|
+
...(options.reasoning.exclude !== undefined && { exclude: options.reasoning.exclude })
|
|
1018
|
+
};
|
|
1019
|
+
}
|
|
1020
|
+
|
|
1021
|
+
// Add JSON response format if requested
|
|
1022
|
+
if (options?.responseFormat === 'json') {
|
|
1023
|
+
requestBody.response_format = { type: 'json_object' };
|
|
1024
|
+
}
|
|
1025
|
+
|
|
1026
|
+
// Add structured output support using OpenRouter's JSON schema feature
|
|
1027
|
+
if (options?.providerOptions?.response_format?.type === 'json_schema') {
|
|
1028
|
+
requestBody.response_format = {
|
|
1029
|
+
type: 'json_schema',
|
|
1030
|
+
json_schema: {
|
|
1031
|
+
name: options.providerOptions.response_format.json_schema.name,
|
|
1032
|
+
schema: options.providerOptions.response_format.json_schema.schema,
|
|
1033
|
+
strict: options.providerOptions.response_format.json_schema.strict || true
|
|
1034
|
+
}
|
|
1035
|
+
};
|
|
1036
|
+
}
|
|
1037
|
+
|
|
1038
|
+
// Add tools if provided
|
|
1039
|
+
if (openRouterTools && openRouterTools.length > 0) {
|
|
1040
|
+
requestBody.tools = openRouterTools;
|
|
1041
|
+
// In MXF, agents are designed to work through tools, so prefer tool usage
|
|
1042
|
+
requestBody.tool_choice = options?.preferToolUse === false
|
|
1043
|
+
? 'auto' // Still allow some flexibility if explicitly disabled
|
|
1044
|
+
: options?.requireToolUse === true
|
|
1045
|
+
? { type: 'function', function: { name: openRouterTools[0].function.name } }
|
|
1046
|
+
: 'auto'; // Strong preference for tool usage in MXF
|
|
1047
|
+
|
|
1048
|
+
}
|
|
1049
|
+
|
|
1050
|
+
// Add provider-specific options if provided
|
|
1051
|
+
if (options?.providerOptions) {
|
|
1052
|
+
Object.assign(requestBody, options.providerOptions);
|
|
1053
|
+
}
|
|
1054
|
+
|
|
1055
|
+
// Add HTTP referer and title for OpenRouter tracking/attribution
|
|
1056
|
+
// HTTP-Referer is the primary identifier for app attribution
|
|
1057
|
+
// X-Title sets the display name in rankings and analytics
|
|
1058
|
+
// Both are needed for proper attribution - see https://openrouter.ai/docs/app-attribution
|
|
1059
|
+
// Customize via OPENROUTER_APP_TITLE / OPENROUTER_APP_URL env vars when
|
|
1060
|
+
// embedding MXF in another application.
|
|
1061
|
+
const headers = this.buildOpenRouterHeaders(options);
|
|
1062
|
+
|
|
1063
|
+
// Log basic request info
|
|
1064
|
+
// console.log ('')
|
|
1065
|
+
// console.log(`š OpenRouter request: ${requestBody.tools?.length || 0} tools`);
|
|
1066
|
+
// console.log(JSON.stringify(requestBody));
|
|
1067
|
+
// console.log ('')
|
|
1068
|
+
|
|
1069
|
+
|
|
1070
|
+
// console.log(`\nš§ REQUEST HAS ${requestBody.tools?.length || 0} TOOLS`);
|
|
1071
|
+
if (requestBody.tools && requestBody.tools.length > 0) {
|
|
1072
|
+
// console.log(` Tools: ${requestBody.tools.map((t: any) => t.function.name).join(', ')}`);
|
|
1073
|
+
}
|
|
1074
|
+
|
|
1075
|
+
// Make the API request
|
|
1076
|
+
const response = await fetch(`${this.baseUrl}/chat/completions`, {
|
|
1077
|
+
method: 'POST',
|
|
1078
|
+
headers,
|
|
1079
|
+
body: JSON.stringify(requestBody)
|
|
1080
|
+
});
|
|
1081
|
+
|
|
1082
|
+
// Log response status
|
|
1083
|
+
|
|
1084
|
+
// Check for errors with enhanced error information
|
|
1085
|
+
if (!response.ok) {
|
|
1086
|
+
let errorText = await response.text();
|
|
1087
|
+
this.logger.error(`š§ DEBUG: Error response text: ${errorText}`);
|
|
1088
|
+
|
|
1089
|
+
let errorMessage = errorText;
|
|
1090
|
+
let rateLimitInfo: Record<string, any> = {};
|
|
1091
|
+
|
|
1092
|
+
try {
|
|
1093
|
+
const errorJson = JSON.parse(errorText);
|
|
1094
|
+
errorMessage = errorJson.error?.message || errorText;
|
|
1095
|
+
|
|
1096
|
+
// Extract rate limit information if available
|
|
1097
|
+
if (response.status === 429) {
|
|
1098
|
+
rateLimitInfo = {
|
|
1099
|
+
retryAfter: response.headers.get('retry-after'),
|
|
1100
|
+
rateLimitLimit: response.headers.get('x-ratelimit-limit'),
|
|
1101
|
+
rateLimitRemaining: response.headers.get('x-ratelimit-remaining'),
|
|
1102
|
+
rateLimitReset: response.headers.get('x-ratelimit-reset')
|
|
1103
|
+
};
|
|
1104
|
+
}
|
|
1105
|
+
} catch (e) {
|
|
1106
|
+
// Use error text as is if not JSON
|
|
1107
|
+
}
|
|
1108
|
+
|
|
1109
|
+
// Create detailed error with status code
|
|
1110
|
+
const error = new Error(`OpenRouter API error [${response.status}]: ${errorMessage}`);
|
|
1111
|
+
(error as any).status = response.status;
|
|
1112
|
+
(error as any).statusCode = response.status;
|
|
1113
|
+
(error as any).rateLimitInfo = rateLimitInfo;
|
|
1114
|
+
|
|
1115
|
+
throw error;
|
|
1116
|
+
}
|
|
1117
|
+
|
|
1118
|
+
// Get response text for JSON parsing
|
|
1119
|
+
const responseText = await response.text();
|
|
1120
|
+
|
|
1121
|
+
// Check if response is empty
|
|
1122
|
+
if (!responseText || responseText.length === 0) {
|
|
1123
|
+
this.logger.error('š§ ERROR: Empty response from OpenRouter API');
|
|
1124
|
+
throw new Error('Empty response from OpenRouter API');
|
|
1125
|
+
}
|
|
1126
|
+
|
|
1127
|
+
const trimmedResponseText = responseText.trim();
|
|
1128
|
+
|
|
1129
|
+
// Only log if there's significant whitespace trimming
|
|
1130
|
+
if (trimmedResponseText.length < responseText.length - 10) {
|
|
1131
|
+
}
|
|
1132
|
+
|
|
1133
|
+
// Parse JSON response using utility with recovery strategies
|
|
1134
|
+
const parseResult = this.jsonRecovery.parseWithRecovery<OpenRouterResponse>(trimmedResponseText);
|
|
1135
|
+
|
|
1136
|
+
if (!parseResult.success || !parseResult.data) {
|
|
1137
|
+
throw parseResult.error || new Error('Failed to parse OpenRouter response: No valid JSON could be obtained');
|
|
1138
|
+
}
|
|
1139
|
+
|
|
1140
|
+
const openRouterResponse = parseResult.data;
|
|
1141
|
+
|
|
1142
|
+
return this.convertToMcpResponse(openRouterResponse);
|
|
1143
|
+
} catch (error) {
|
|
1144
|
+
this.logger.error(`š§ ERROR in executeOpenRouterRequest: ${error instanceof Error ? error.message : String(error)}`);
|
|
1145
|
+
if (error instanceof Error && error.stack) {
|
|
1146
|
+
this.logger.error(`š§ ERROR STACK: ${error.stack}`);
|
|
1147
|
+
}
|
|
1148
|
+
throw new Error(`Error processing OpenRouter request: ${error instanceof Error ? error.message : String(error)}`);
|
|
1149
|
+
}
|
|
1150
|
+
}
|
|
1151
|
+
}
|