@mxf-dev/core 1.0.0 → 2.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/README.md +19 -1
- package/dist/adapters/FrameworkAdapter.d.ts +1 -1
- package/dist/adapters/FrameworkAdapter.js +2 -2
- package/dist/adapters/FrameworkAdapter.js.map +1 -1
- package/dist/adapters/index.d.ts +1 -1
- package/dist/adapters/index.js +1 -1
- package/dist/config/ConfigManager.d.ts +10 -9
- package/dist/config/ConfigManager.d.ts.map +1 -1
- package/dist/config/ConfigManager.js +48 -18
- package/dist/config/ConfigManager.js.map +1 -1
- package/dist/config/McpPromptsConfig.d.ts +1 -1
- package/dist/config/McpPromptsConfig.js +1 -1
- package/dist/config/ModelContextLimits.d.ts +1 -1
- package/dist/config/ModelContextLimits.js +1 -1
- package/dist/config/PromptCompactionConfig.d.ts +1 -1
- package/dist/config/PromptCompactionConfig.js +1 -1
- package/dist/config/PromptConfig.d.ts +1 -1
- package/dist/config/PromptConfig.js +1 -1
- package/dist/config/ServerConfig.d.ts +1 -1
- package/dist/config/ServerConfig.js +1 -1
- package/dist/config/dag.config.d.ts +1 -1
- package/dist/config/dag.config.js +1 -1
- package/dist/config/knowledge-graph.config.d.ts +1 -1
- package/dist/config/knowledge-graph.config.js +1 -1
- package/dist/config/memory-strata.config.d.ts +25 -0
- package/dist/config/memory-strata.config.d.ts.map +1 -0
- package/dist/config/memory-strata.config.js +107 -0
- package/dist/config/memory-strata.config.js.map +1 -0
- package/dist/config/orpar-memory.config.d.ts +1 -1
- package/dist/config/orpar-memory.config.js +1 -1
- package/dist/config/tensorflow.config.d.ts +1 -1
- package/dist/config/tensorflow.config.js +1 -1
- package/dist/constants/CoreTools.d.ts +1 -1
- package/dist/constants/CoreTools.js +1 -1
- package/dist/constants/DefaultPhaseProfiles.d.ts +1 -1
- package/dist/constants/DefaultPhaseProfiles.js +1 -1
- package/dist/constants/ToolNames.d.ts +2 -30
- package/dist/constants/ToolNames.d.ts.map +1 -1
- package/dist/constants/ToolNames.js +5 -18
- package/dist/constants/ToolNames.js.map +1 -1
- package/dist/database/DatabaseAdapterFactory.d.ts +15 -3
- package/dist/database/DatabaseAdapterFactory.d.ts.map +1 -1
- package/dist/database/DatabaseAdapterFactory.js +22 -7
- package/dist/database/DatabaseAdapterFactory.js.map +1 -1
- package/dist/database/adapters/mongodb/MongoAgentRepository.d.ts +1 -1
- package/dist/database/adapters/mongodb/MongoAgentRepository.js +1 -1
- package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts +8 -2
- package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts.map +1 -1
- package/dist/database/adapters/mongodb/MongoBaseRepository.js +13 -3
- package/dist/database/adapters/mongodb/MongoBaseRepository.js.map +1 -1
- package/dist/database/adapters/mongodb/MongoChannelRepository.d.ts +1 -1
- package/dist/database/adapters/mongodb/MongoChannelRepository.js +1 -1
- package/dist/database/adapters/mongodb/MongoDagRepository.d.ts +1 -1
- package/dist/database/adapters/mongodb/MongoDagRepository.js +1 -1
- package/dist/database/adapters/mongodb/MongoKnowledgeGraphRepository.d.ts +1 -1
- package/dist/database/adapters/mongodb/MongoKnowledgeGraphRepository.js +1 -1
- package/dist/database/adapters/mongodb/MongoMemoryRepository.d.ts +1 -1
- package/dist/database/adapters/mongodb/MongoMemoryRepository.js +1 -1
- package/dist/database/adapters/mongodb/MongoTaskRepository.d.ts +1 -1
- package/dist/database/adapters/mongodb/MongoTaskRepository.js +1 -1
- package/dist/database/adapters/mongodb/index.d.ts +1 -1
- package/dist/database/adapters/mongodb/index.js +1 -1
- package/dist/database/index.d.ts +1 -1
- package/dist/database/index.js +1 -1
- package/dist/events/ClientEventBus.d.ts +17 -78
- package/dist/events/ClientEventBus.d.ts.map +1 -1
- package/dist/events/ClientEventBus.js +39 -312
- package/dist/events/ClientEventBus.js.map +1 -1
- package/dist/events/EventBus.d.ts +2 -2
- package/dist/events/EventBus.d.ts.map +1 -1
- package/dist/events/EventBus.js +6 -5
- package/dist/events/EventBus.js.map +1 -1
- package/dist/events/EventBusBase.d.ts +140 -35
- package/dist/events/EventBusBase.d.ts.map +1 -1
- package/dist/events/EventBusBase.js +367 -89
- package/dist/events/EventBusBase.js.map +1 -1
- package/dist/events/EventNames.d.ts +11 -2
- package/dist/events/EventNames.d.ts.map +1 -1
- package/dist/events/EventNames.js +4 -1
- package/dist/events/EventNames.js.map +1 -1
- package/dist/events/PublicEvents.d.ts +7 -3
- package/dist/events/PublicEvents.d.ts.map +1 -1
- package/dist/events/PublicEvents.js +8 -5
- package/dist/events/PublicEvents.js.map +1 -1
- package/dist/events/ServerEventBus.d.ts +24 -113
- package/dist/events/ServerEventBus.d.ts.map +1 -1
- package/dist/events/ServerEventBus.js +59 -324
- package/dist/events/ServerEventBus.js.map +1 -1
- package/dist/events/event-definitions/AgentEvents.d.ts +1 -1
- package/dist/events/event-definitions/AgentEvents.js +1 -1
- package/dist/events/event-definitions/AnalyticsEvents.d.ts +1 -1
- package/dist/events/event-definitions/AnalyticsEvents.js +1 -1
- package/dist/events/event-definitions/BulkEvents.d.ts +1 -1
- package/dist/events/event-definitions/BulkEvents.js +1 -1
- package/dist/events/event-definitions/ChannelEvents.d.ts +1 -1
- package/dist/events/event-definitions/ChannelEvents.js +1 -1
- package/dist/events/event-definitions/CodeExecutionEvents.d.ts +1 -1
- package/dist/events/event-definitions/CodeExecutionEvents.js +1 -1
- package/dist/events/event-definitions/CompactionEvents.d.ts +1 -1
- package/dist/events/event-definitions/CompactionEvents.js +1 -1
- package/dist/events/event-definitions/ConfigEvents.d.ts +1 -1
- package/dist/events/event-definitions/ConfigEvents.js +1 -1
- package/dist/events/event-definitions/ControlLoopEvents.d.ts +1 -1
- package/dist/events/event-definitions/ControlLoopEvents.js +1 -1
- package/dist/events/event-definitions/DagEvents.d.ts +1 -1
- package/dist/events/event-definitions/DagEvents.js +1 -1
- package/dist/events/event-definitions/HeartbeatEvents.d.ts +1 -1
- package/dist/events/event-definitions/HeartbeatEvents.js +1 -1
- package/dist/events/event-definitions/InferenceParameterEvents.d.ts +1 -1
- package/dist/events/event-definitions/InferenceParameterEvents.js +1 -1
- package/dist/events/event-definitions/KeyEvents.d.ts +1 -1
- package/dist/events/event-definitions/KeyEvents.js +1 -1
- package/dist/events/event-definitions/KnowledgeGraphEvents.d.ts +1 -1
- package/dist/events/event-definitions/KnowledgeGraphEvents.js +1 -1
- package/dist/events/event-definitions/LlmBudgetEvents.d.ts +68 -0
- package/dist/events/event-definitions/LlmBudgetEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/LlmBudgetEvents.js +35 -0
- package/dist/events/event-definitions/LlmBudgetEvents.js.map +1 -0
- package/dist/events/event-definitions/LlmEvents.d.ts +1 -1
- package/dist/events/event-definitions/LlmEvents.js +1 -1
- package/dist/events/event-definitions/McpEvents.d.ts +1 -1
- package/dist/events/event-definitions/McpEvents.js +1 -1
- package/dist/events/event-definitions/MeilisearchEvents.d.ts +1 -1
- package/dist/events/event-definitions/MeilisearchEvents.js +1 -1
- package/dist/events/event-definitions/MemoryEvents.d.ts +1 -1
- package/dist/events/event-definitions/MemoryEvents.js +1 -1
- package/dist/events/event-definitions/MemoryUtilityEvents.d.ts +1 -1
- package/dist/events/event-definitions/MemoryUtilityEvents.js +1 -1
- package/dist/events/event-definitions/MessageEvents.d.ts +1 -1
- package/dist/events/event-definitions/MessageEvents.js +1 -1
- package/dist/events/event-definitions/MxpEvents.d.ts +1 -1
- package/dist/events/event-definitions/MxpEvents.js +1 -1
- package/dist/events/event-definitions/OrparEvents.d.ts +1 -1
- package/dist/events/event-definitions/OrparEvents.js +1 -1
- package/dist/events/event-definitions/OrparMemoryEvents.d.ts +1 -1
- package/dist/events/event-definitions/OrparMemoryEvents.js +1 -1
- package/dist/events/event-definitions/PlanEvents.d.ts +1 -1
- package/dist/events/event-definitions/PlanEvents.js +1 -1
- package/dist/events/event-definitions/ProgressEvents.d.ts +1 -1
- package/dist/events/event-definitions/ProgressEvents.js +1 -1
- package/dist/events/event-definitions/ShellExecutionEvents.d.ts +1 -1
- package/dist/events/event-definitions/ShellExecutionEvents.js +1 -1
- package/dist/events/event-definitions/SystemEvents.d.ts +1 -1
- package/dist/events/event-definitions/SystemEvents.js +1 -1
- package/dist/events/event-definitions/TaskEvents.d.ts +1 -1
- package/dist/events/event-definitions/TaskEvents.js +1 -1
- package/dist/events/event-definitions/TensorFlowEvents.d.ts +1 -1
- package/dist/events/event-definitions/TensorFlowEvents.js +1 -1
- package/dist/events/event-definitions/UserInputEvents.d.ts +1 -1
- package/dist/events/event-definitions/UserInputEvents.js +1 -1
- package/dist/events/event-definitions/WorkflowEvents.d.ts +1 -1
- package/dist/events/event-definitions/WorkflowEvents.js +1 -1
- package/dist/interfaces/AgentContext.d.ts +1 -1
- package/dist/interfaces/AgentContext.js +1 -1
- package/dist/interfaces/AgentInterfaces.d.ts +8 -1
- package/dist/interfaces/AgentInterfaces.d.ts.map +1 -1
- package/dist/interfaces/AgentInterfaces.js +1 -1
- package/dist/interfaces/Channel.d.ts +1 -1
- package/dist/interfaces/Channel.js +1 -1
- package/dist/interfaces/ChannelConfig.d.ts +1 -1
- package/dist/interfaces/ChannelConfig.js +1 -1
- package/dist/interfaces/ChannelConnectionConfig.d.ts +1 -1
- package/dist/interfaces/ChannelConnectionConfig.js +1 -1
- package/dist/interfaces/ChannelInfo.d.ts +1 -1
- package/dist/interfaces/ChannelInfo.js +1 -1
- package/dist/interfaces/ConversationMessage.d.ts +1 -1
- package/dist/interfaces/ConversationMessage.js +1 -1
- package/dist/interfaces/ILlmTopicExtractor.d.ts +1 -1
- package/dist/interfaces/ILlmTopicExtractor.js +1 -1
- package/dist/interfaces/IMemoryPersistence.d.ts +41 -0
- package/dist/interfaces/IMemoryPersistence.d.ts.map +1 -0
- package/dist/interfaces/IMemoryPersistence.js +15 -0
- package/dist/interfaces/IMemoryPersistence.js.map +1 -0
- package/dist/interfaces/SocketServiceInterface.d.ts +1 -1
- package/dist/interfaces/SocketServiceInterface.js +1 -1
- package/dist/interfaces/TaskInterfaces.d.ts +1 -1
- package/dist/interfaces/TaskInterfaces.js +1 -1
- package/dist/middleware/MxpMiddleware.d.ts +9 -2
- package/dist/middleware/MxpMiddleware.d.ts.map +1 -1
- package/dist/middleware/MxpMiddleware.js +43 -21
- package/dist/middleware/MxpMiddleware.js.map +1 -1
- package/dist/models/PatternLearningModels.d.ts +1 -1
- package/dist/models/PatternLearningModels.js +1 -1
- package/dist/models/agent.d.ts +1 -1
- package/dist/models/agent.js +1 -1
- package/dist/models/auditLog.d.ts +1 -1
- package/dist/models/auditLog.js +1 -1
- package/dist/models/channel.d.ts +1 -1
- package/dist/models/channel.js +1 -1
- package/dist/models/channelKey.d.ts +2 -1
- package/dist/models/channelKey.d.ts.map +1 -1
- package/dist/models/channelKey.js +6 -1
- package/dist/models/channelKey.js.map +1 -1
- package/dist/models/codeExecution.d.ts +1 -1
- package/dist/models/codeExecution.js +1 -1
- package/dist/models/controlLoop.d.ts +1 -1
- package/dist/models/controlLoop.js +1 -1
- package/dist/models/coordination.d.ts +1 -1
- package/dist/models/coordination.js +1 -1
- package/dist/models/document.d.ts +1 -1
- package/dist/models/document.js +1 -1
- package/dist/models/entity.d.ts +1 -1
- package/dist/models/entity.js +1 -1
- package/dist/models/mcpTool.d.ts +1 -1
- package/dist/models/mcpTool.js +1 -1
- package/dist/models/mcpToolExecution.d.ts +1 -1
- package/dist/models/mcpToolExecution.js +1 -1
- package/dist/models/memory.d.ts +1 -1
- package/dist/models/memory.js +1 -1
- package/dist/models/memoryStrata.d.ts +1 -1
- package/dist/models/memoryStrata.js +1 -1
- package/dist/models/memoryUtility.d.ts +39 -0
- package/dist/models/memoryUtility.d.ts.map +1 -0
- package/dist/models/memoryUtility.js +39 -0
- package/dist/models/memoryUtility.js.map +1 -0
- package/dist/models/personalAccessToken.d.ts +1 -1
- package/dist/models/personalAccessToken.js +1 -1
- package/dist/models/plan.d.ts +1 -1
- package/dist/models/plan.js +1 -1
- package/dist/models/relationship.d.ts +1 -1
- package/dist/models/relationship.js +1 -1
- package/dist/models/shellOutput.d.ts +1 -1
- package/dist/models/shellOutput.js +1 -1
- package/dist/models/task.d.ts +1 -1
- package/dist/models/task.js +1 -1
- package/dist/models/taskEffectiveness.d.ts +1 -1
- package/dist/models/taskEffectiveness.js +1 -1
- package/dist/models/tool.d.ts +1 -1
- package/dist/models/tool.js +1 -1
- package/dist/models/toolExecution.d.ts +1 -1
- package/dist/models/toolExecution.js +1 -1
- package/dist/models/toolModels.d.ts +1 -1
- package/dist/models/toolModels.js +1 -1
- package/dist/models/user.d.ts +1 -1
- package/dist/models/user.d.ts.map +1 -1
- package/dist/models/user.js +24 -2
- package/dist/models/user.js.map +1 -1
- package/dist/models/userMemory.d.ts +1 -1
- package/dist/models/userMemory.js +1 -1
- package/dist/mxp/BinaryProtocolLayer.d.ts +25 -9
- package/dist/mxp/BinaryProtocolLayer.d.ts.map +1 -1
- package/dist/mxp/BinaryProtocolLayer.js +91 -104
- package/dist/mxp/BinaryProtocolLayer.js.map +1 -1
- package/dist/mxp/ContextCompressionEngine.d.ts +58 -11
- package/dist/mxp/ContextCompressionEngine.d.ts.map +1 -1
- package/dist/mxp/ContextCompressionEngine.js +171 -129
- package/dist/mxp/ContextCompressionEngine.js.map +1 -1
- package/dist/mxp/MxpConfigManager.d.ts +1 -1
- package/dist/mxp/MxpConfigManager.js +1 -1
- package/dist/mxp/MxpTokenOptimizer.d.ts +8 -4
- package/dist/mxp/MxpTokenOptimizer.d.ts.map +1 -1
- package/dist/mxp/MxpTokenOptimizer.js +9 -6
- package/dist/mxp/MxpTokenOptimizer.js.map +1 -1
- package/dist/prompts/ChannelContextProvider.d.ts +1 -1
- package/dist/prompts/ChannelContextProvider.js +1 -1
- package/dist/prompts/DeferredToolSchemaRegistry.d.ts +1 -1
- package/dist/prompts/DeferredToolSchemaRegistry.js +1 -1
- package/dist/prompts/DynamicContextProvider.d.ts +1 -1
- package/dist/prompts/DynamicContextProvider.js +1 -1
- package/dist/prompts/MemoryPromptInjector.d.ts +1 -1
- package/dist/prompts/MemoryPromptInjector.js +1 -1
- package/dist/prompts/MxfAgentSystemPrompt.d.ts +2 -2
- package/dist/prompts/MxfAgentSystemPrompt.d.ts.map +1 -1
- package/dist/prompts/MxfAgentSystemPrompt.js +48 -58
- package/dist/prompts/MxfAgentSystemPrompt.js.map +1 -1
- package/dist/prompts/PromptSegmentRegistry.d.ts +1 -1
- package/dist/prompts/PromptSegmentRegistry.js +1 -1
- package/dist/prompts/ToolBehavioralGuidance.d.ts +1 -1
- package/dist/prompts/ToolBehavioralGuidance.js +1 -1
- package/dist/protocols/binaryProtocol.d.ts +1 -1
- package/dist/protocols/binaryProtocol.js +1 -1
- package/dist/protocols/mcp/ClientExecutableManifest.d.ts +1 -1
- package/dist/protocols/mcp/ClientExecutableManifest.js +1 -1
- package/dist/protocols/mcp/IMcpClient.d.ts +1 -1
- package/dist/protocols/mcp/IMcpClient.js +1 -1
- package/dist/protocols/mcp/LlmProviderFactory.d.ts +1 -1
- package/dist/protocols/mcp/LlmProviderFactory.js +1 -1
- package/dist/protocols/mcp/LlmProviders.d.ts +1 -1
- package/dist/protocols/mcp/LlmProviders.js +1 -1
- package/dist/protocols/mcp/McpClient.d.ts +1 -1
- package/dist/protocols/mcp/McpClient.js +1 -1
- package/dist/protocols/mcp/McpClientFactory.d.ts +1 -1
- package/dist/protocols/mcp/McpClientFactory.js +1 -1
- package/dist/protocols/mcp/McpServerTypes.d.ts +1 -1
- package/dist/protocols/mcp/McpServerTypes.js +1 -1
- package/dist/protocols/mcp/McpToolCallParser.d.ts +1 -1
- package/dist/protocols/mcp/McpToolCallParser.js +1 -1
- package/dist/protocols/mcp/McpToolSchema.d.ts +1 -1
- package/dist/protocols/mcp/McpToolSchema.js +1 -1
- package/dist/protocols/mcp/ToolError.d.ts +123 -0
- package/dist/protocols/mcp/ToolError.d.ts.map +1 -0
- package/dist/protocols/mcp/ToolError.js +108 -0
- package/dist/protocols/mcp/ToolError.js.map +1 -0
- package/dist/protocols/mcp/converters/IFormatConverter.d.ts +1 -1
- package/dist/protocols/mcp/converters/IFormatConverter.js +1 -1
- package/dist/protocols/mcp/converters/UnifiedMessageConverter.d.ts +1 -1
- package/dist/protocols/mcp/converters/UnifiedMessageConverter.js +1 -1
- package/dist/protocols/mcp/converters/adapters/AnthropicMessageAdapter.d.ts +1 -1
- package/dist/protocols/mcp/converters/adapters/AnthropicMessageAdapter.js +1 -1
- package/dist/protocols/mcp/converters/adapters/GeminiMessageAdapter.d.ts +1 -1
- package/dist/protocols/mcp/converters/adapters/GeminiMessageAdapter.js +1 -1
- package/dist/protocols/mcp/converters/adapters/OpenAiMessageAdapter.d.ts +1 -1
- package/dist/protocols/mcp/converters/adapters/OpenAiMessageAdapter.js +1 -1
- package/dist/protocols/mcp/converters/adapters/OpenRouterMessageAdapter.d.ts +1 -1
- package/dist/protocols/mcp/converters/adapters/OpenRouterMessageAdapter.js +1 -1
- package/dist/protocols/mcp/converters/adapters/XaiMessageAdapter.d.ts +1 -1
- package/dist/protocols/mcp/converters/adapters/XaiMessageAdapter.js +1 -1
- package/dist/protocols/mcp/defineTool.d.ts +133 -0
- package/dist/protocols/mcp/defineTool.d.ts.map +1 -0
- package/dist/protocols/mcp/defineTool.js +236 -0
- package/dist/protocols/mcp/defineTool.js.map +1 -0
- package/dist/protocols/mcp/providers/AnthropicMcpClient.d.ts +1 -1
- package/dist/protocols/mcp/providers/AnthropicMcpClient.js +1 -1
- package/dist/protocols/mcp/providers/AzureOpenAiMcpClient.d.ts +1 -1
- package/dist/protocols/mcp/providers/AzureOpenAiMcpClient.js +1 -1
- package/dist/protocols/mcp/providers/BaseMcpClient.d.ts +1 -1
- package/dist/protocols/mcp/providers/BaseMcpClient.js +1 -1
- package/dist/protocols/mcp/providers/CustomMcpClient.d.ts +1 -1
- package/dist/protocols/mcp/providers/CustomMcpClient.js +1 -1
- package/dist/protocols/mcp/providers/GeminiMcpClient.d.ts +1 -1
- package/dist/protocols/mcp/providers/GeminiMcpClient.js +1 -1
- package/dist/protocols/mcp/providers/OllamaMcpClient.d.ts +1 -1
- package/dist/protocols/mcp/providers/OllamaMcpClient.js +1 -1
- package/dist/protocols/mcp/providers/OpenAiMcpClient.d.ts +1 -1
- package/dist/protocols/mcp/providers/OpenAiMcpClient.js +1 -1
- package/dist/protocols/mcp/providers/OpenRouterMcpClient.d.ts +15 -1
- package/dist/protocols/mcp/providers/OpenRouterMcpClient.d.ts.map +1 -1
- package/dist/protocols/mcp/providers/OpenRouterMcpClient.js +32 -22
- package/dist/protocols/mcp/providers/OpenRouterMcpClient.js.map +1 -1
- package/dist/protocols/mcp/providers/XaiMcpClient.d.ts +1 -1
- package/dist/protocols/mcp/providers/XaiMcpClient.js +1 -1
- package/dist/protocols/mcp/security/HttpTargetGuard.d.ts +38 -0
- package/dist/protocols/mcp/security/HttpTargetGuard.d.ts.map +1 -0
- package/dist/protocols/mcp/security/HttpTargetGuard.js +227 -0
- package/dist/protocols/mcp/security/HttpTargetGuard.js.map +1 -0
- package/dist/protocols/mcp/security/McpConfirmationManager.d.ts +1 -1
- package/dist/protocols/mcp/security/McpConfirmationManager.js +1 -1
- package/dist/protocols/mcp/security/McpSecurityConfig.d.ts +1 -1
- package/dist/protocols/mcp/security/McpSecurityConfig.js +1 -1
- package/dist/protocols/mcp/security/McpSecurityGuard.d.ts +10 -2
- package/dist/protocols/mcp/security/McpSecurityGuard.d.ts.map +1 -1
- package/dist/protocols/mcp/security/McpSecurityGuard.js +11 -3
- package/dist/protocols/mcp/security/McpSecurityGuard.js.map +1 -1
- package/dist/protocols/mcp/security/McpToolPolicy.d.ts +81 -0
- package/dist/protocols/mcp/security/McpToolPolicy.d.ts.map +1 -0
- package/dist/protocols/mcp/security/McpToolPolicy.js +202 -0
- package/dist/protocols/mcp/security/McpToolPolicy.js.map +1 -0
- package/dist/protocols/mcp/security/index.d.ts +1 -1
- package/dist/protocols/mcp/security/index.js +1 -1
- package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts +52 -19
- package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts.map +1 -1
- package/dist/protocols/mcp/services/ExternalMcpServerManager.js +257 -284
- package/dist/protocols/mcp/services/ExternalMcpServerManager.js.map +1 -1
- package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts +40 -7
- package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts.map +1 -1
- package/dist/protocols/mcp/services/ExternalServerConfigs.js +77 -19
- package/dist/protocols/mcp/services/ExternalServerConfigs.js.map +1 -1
- package/dist/protocols/mcp/services/IToolEventEmitter.d.ts +1 -1
- package/dist/protocols/mcp/services/IToolEventEmitter.js +1 -1
- package/dist/protocols/mcp/tools/AnalyticsTools.d.ts +1 -1
- package/dist/protocols/mcp/tools/AnalyticsTools.js +2 -2
- package/dist/protocols/mcp/tools/AnalyticsTools.js.map +1 -1
- package/dist/protocols/mcp/tools/CodeAnalysisTools.d.ts +1 -1
- package/dist/protocols/mcp/tools/CodeAnalysisTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/CodeAnalysisTools.js +16 -1
- package/dist/protocols/mcp/tools/CodeAnalysisTools.js.map +1 -1
- package/dist/protocols/mcp/tools/DateTimeTools.d.ts +1 -1
- package/dist/protocols/mcp/tools/DateTimeTools.js +1 -1
- package/dist/protocols/mcp/tools/EffectivenessTools.d.ts +1 -1
- package/dist/protocols/mcp/tools/EffectivenessTools.js +4 -4
- package/dist/protocols/mcp/tools/EffectivenessTools.js.map +1 -1
- package/dist/protocols/mcp/tools/GitTools.d.ts +10 -370
- package/dist/protocols/mcp/tools/GitTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/GitTools.js +223 -518
- package/dist/protocols/mcp/tools/GitTools.js.map +1 -1
- package/dist/protocols/mcp/tools/InfrastructureTools.d.ts +57 -25
- package/dist/protocols/mcp/tools/InfrastructureTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/InfrastructureTools.js +118 -27
- package/dist/protocols/mcp/tools/InfrastructureTools.js.map +1 -1
- package/dist/protocols/mcp/tools/JsonTools.d.ts +1 -1
- package/dist/protocols/mcp/tools/JsonTools.js +1 -1
- package/dist/protocols/mcp/tools/KnowledgeGraphTools.d.ts +1 -1
- package/dist/protocols/mcp/tools/KnowledgeGraphTools.js +1 -1
- package/dist/protocols/mcp/tools/MemorySearchTools.d.ts +1 -4
- package/dist/protocols/mcp/tools/MemorySearchTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/MemorySearchTools.js +59 -2
- package/dist/protocols/mcp/tools/MemorySearchTools.js.map +1 -1
- package/dist/protocols/mcp/tools/MemoryUtilityTools.d.ts +1 -1
- package/dist/protocols/mcp/tools/MemoryUtilityTools.js +1 -1
- package/dist/protocols/mcp/tools/OrparTools.d.ts +9 -1
- package/dist/protocols/mcp/tools/OrparTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/OrparTools.js +67 -1
- package/dist/protocols/mcp/tools/OrparTools.js.map +1 -1
- package/dist/protocols/mcp/tools/PlanningTools.d.ts +1 -1
- package/dist/protocols/mcp/tools/PlanningTools.js +1 -1
- package/dist/protocols/mcp/tools/PredictiveTools.d.ts +1 -1
- package/dist/protocols/mcp/tools/PredictiveTools.js +1 -1
- package/dist/protocols/mcp/tools/ProgressTools.d.ts +1 -1
- package/dist/protocols/mcp/tools/ProgressTools.js +1 -1
- package/dist/protocols/mcp/tools/ProjectContextTools.d.ts +1 -1
- package/dist/protocols/mcp/tools/ProjectContextTools.js +1 -1
- package/dist/protocols/mcp/tools/SafetyTools.d.ts +8 -526
- package/dist/protocols/mcp/tools/SafetyTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/SafetyTools.js +350 -515
- package/dist/protocols/mcp/tools/SafetyTools.js.map +1 -1
- package/dist/protocols/mcp/tools/SearchProjectTools.d.ts +1 -1
- package/dist/protocols/mcp/tools/SearchProjectTools.js +1 -1
- package/dist/protocols/mcp/tools/TaskPlanningTools.d.ts +1 -1
- package/dist/protocols/mcp/tools/TaskPlanningTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/TaskPlanningTools.js +57 -27
- package/dist/protocols/mcp/tools/TaskPlanningTools.js.map +1 -1
- package/dist/protocols/mcp/tools/TestTools.d.ts +16 -377
- package/dist/protocols/mcp/tools/TestTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/TestTools.js +242 -364
- package/dist/protocols/mcp/tools/TestTools.js.map +1 -1
- package/dist/protocols/mcp/tools/ToolHelpTools.d.ts +1 -1
- package/dist/protocols/mcp/tools/ToolHelpTools.js +1 -1
- package/dist/protocols/mcp/tools/TypeScriptTools.d.ts +7 -277
- package/dist/protocols/mcp/tools/TypeScriptTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/TypeScriptTools.js +224 -338
- package/dist/protocols/mcp/tools/TypeScriptTools.js.map +1 -1
- package/dist/protocols/mcp/tools/UserInputTools.d.ts +1 -1
- package/dist/protocols/mcp/tools/UserInputTools.js +1 -1
- package/dist/protocols/mcp/tools/UserMemoryTools.d.ts +1 -1
- package/dist/protocols/mcp/tools/UserMemoryTools.js +1 -1
- package/dist/protocols/mcp/tools/WebTools.d.ts +16 -729
- package/dist/protocols/mcp/tools/WebTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/WebTools.js +152 -258
- package/dist/protocols/mcp/tools/WebTools.js.map +1 -1
- package/dist/protocols/mcp/tools/WolframTools.d.ts +1 -1
- package/dist/protocols/mcp/tools/WolframTools.js +1 -1
- package/dist/protocols/mcp/tools/shell/CommandClassification.d.ts +1 -1
- package/dist/protocols/mcp/tools/shell/CommandClassification.js +1 -1
- package/dist/protocols/mcp/tools/shell/CommandSemantics.d.ts +1 -1
- package/dist/protocols/mcp/tools/shell/CommandSemantics.js +1 -1
- package/dist/protocols/mcp/tools/shell/DestructiveCommandWarnings.d.ts +1 -1
- package/dist/protocols/mcp/tools/shell/DestructiveCommandWarnings.js +1 -1
- package/dist/protocols/mcp/tools/shell/LargeOutputHandler.d.ts +1 -1
- package/dist/protocols/mcp/tools/shell/LargeOutputHandler.js +1 -1
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts +6 -4
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js +32 -7
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js.map +1 -1
- package/dist/protocols/mcp/tools/shell/ShellSandbox.d.ts +1 -1
- package/dist/protocols/mcp/tools/shell/ShellSandbox.js +1 -1
- package/dist/protocols/mcp/tools/shell/index.d.ts +1 -1
- package/dist/protocols/mcp/tools/shell/index.js +1 -1
- package/dist/protocols/mcp/utils/JsonRecovery.d.ts +1 -1
- package/dist/protocols/mcp/utils/JsonRecovery.js +1 -1
- package/dist/protocols/mcp/utils/MessageConverters.d.ts +1 -1
- package/dist/protocols/mcp/utils/MessageConverters.js +1 -1
- package/dist/protocols/mcp/utils/NetworkRecovery.d.ts +1 -1
- package/dist/protocols/mcp/utils/NetworkRecovery.js +1 -1
- package/dist/protocols/mcp/utils/ToolHandlers.d.ts +1 -1
- package/dist/protocols/mcp/utils/ToolHandlers.js +1 -1
- package/dist/repositories/interfaces/IAgentRepository.d.ts +1 -1
- package/dist/repositories/interfaces/IAgentRepository.js +1 -1
- package/dist/repositories/interfaces/IBaseRepository.d.ts +1 -1
- package/dist/repositories/interfaces/IBaseRepository.js +1 -1
- package/dist/repositories/interfaces/IChannelRepository.d.ts +1 -1
- package/dist/repositories/interfaces/IChannelRepository.js +1 -1
- package/dist/repositories/interfaces/IDagRepository.d.ts +1 -1
- package/dist/repositories/interfaces/IDagRepository.js +1 -1
- package/dist/repositories/interfaces/IKnowledgeGraphRepository.d.ts +1 -1
- package/dist/repositories/interfaces/IKnowledgeGraphRepository.js +1 -1
- package/dist/repositories/interfaces/IMemoryRepository.d.ts +1 -1
- package/dist/repositories/interfaces/IMemoryRepository.js +1 -1
- package/dist/repositories/interfaces/ITaskRepository.d.ts +1 -1
- package/dist/repositories/interfaces/ITaskRepository.js +1 -1
- package/dist/repositories/interfaces/index.d.ts +1 -1
- package/dist/repositories/interfaces/index.js +1 -1
- package/dist/repositories/types/FilterTypes.d.ts +1 -1
- package/dist/repositories/types/FilterTypes.js +1 -1
- package/dist/repositories/types/PaginationTypes.d.ts +1 -1
- package/dist/repositories/types/PaginationTypes.js +1 -1
- package/dist/schemas/CodeExecutionEventPayloads.d.ts +1 -1
- package/dist/schemas/CodeExecutionEventPayloads.js +1 -1
- package/dist/schemas/EventPayloadSchema.d.ts +22 -1
- package/dist/schemas/EventPayloadSchema.d.ts.map +1 -1
- package/dist/schemas/EventPayloadSchema.js +15 -1
- package/dist/schemas/EventPayloadSchema.js.map +1 -1
- package/dist/schemas/JsonResponseSchemas.d.ts +1 -1
- package/dist/schemas/JsonResponseSchemas.js +1 -1
- package/dist/schemas/MessageSchemas.d.ts +1 -1
- package/dist/schemas/MessageSchemas.js +1 -1
- package/dist/schemas/MxpProtocolSchemas.d.ts +1 -1
- package/dist/schemas/MxpProtocolSchemas.js +1 -1
- package/dist/schemas/ShellExecutionEventPayloads.d.ts +1 -1
- package/dist/schemas/ShellExecutionEventPayloads.js +1 -1
- package/dist/services/AgentPerformanceService.d.ts +1 -1
- package/dist/services/AgentPerformanceService.js +1 -1
- package/dist/services/AutoCorrectionIntegrationService.d.ts +1 -1
- package/dist/services/AutoCorrectionIntegrationService.js +1 -1
- package/dist/services/AutoCorrectionService.d.ts +1 -1
- package/dist/services/AutoCorrectionService.js +1 -1
- package/dist/services/AutoMemoryCreator.d.ts +1 -1
- package/dist/services/AutoMemoryCreator.js +1 -1
- package/dist/services/BackgroundTaskManager.d.ts +1 -1
- package/dist/services/BackgroundTaskManager.d.ts.map +1 -1
- package/dist/services/BackgroundTaskManager.js +13 -5
- package/dist/services/BackgroundTaskManager.js.map +1 -1
- package/dist/services/BrowserManager.d.ts +2 -2
- package/dist/services/BrowserManager.d.ts.map +1 -1
- package/dist/services/BrowserManager.js +27 -4
- package/dist/services/BrowserManager.js.map +1 -1
- package/dist/services/ChannelContextMemoryOperations.d.ts +1 -1
- package/dist/services/ChannelContextMemoryOperations.js +1 -1
- package/dist/services/ChannelContextMessageOperations.d.ts +1 -1
- package/dist/services/ChannelContextMessageOperations.js +1 -1
- package/dist/services/CodeExecutionSandboxService.d.ts +1 -1
- package/dist/services/CodeExecutionSandboxService.js +1 -1
- package/dist/services/ContainerExecutionManager.d.ts +1 -1
- package/dist/services/ContainerExecutionManager.js +1 -1
- package/dist/services/ContentProcessor.d.ts +1 -1
- package/dist/services/ContentProcessor.js +1 -1
- package/dist/services/McpToolDocumentationService.d.ts +1 -1
- package/dist/services/McpToolDocumentationService.js +1 -1
- package/dist/services/MemoryCompressor.d.ts +12 -3
- package/dist/services/MemoryCompressor.d.ts.map +1 -1
- package/dist/services/MemoryCompressor.js +9 -27
- package/dist/services/MemoryCompressor.js.map +1 -1
- package/dist/services/MemoryService.d.ts +17 -4
- package/dist/services/MemoryService.d.ts.map +1 -1
- package/dist/services/MemoryService.js +80 -56
- package/dist/services/MemoryService.js.map +1 -1
- package/dist/services/MxfMLService.d.ts +16 -1
- package/dist/services/MxfMLService.d.ts.map +1 -1
- package/dist/services/MxfMLService.js +55 -16
- package/dist/services/MxfMLService.js.map +1 -1
- package/dist/services/MxfMeilisearchService.d.ts +1 -1
- package/dist/services/MxfMeilisearchService.js +1 -1
- package/dist/services/MxfMessageAggregator.d.ts +1 -1
- package/dist/services/MxfMessageAggregator.js +1 -1
- package/dist/services/PatternLearningService.d.ts +1 -1
- package/dist/services/PatternLearningService.js +1 -1
- package/dist/services/PerformanceOptimizationService.d.ts +1 -1
- package/dist/services/PerformanceOptimizationService.js +1 -1
- package/dist/services/PredictiveAnalyticsService.d.ts +35 -5
- package/dist/services/PredictiveAnalyticsService.d.ts.map +1 -1
- package/dist/services/PredictiveAnalyticsService.js +42 -26
- package/dist/services/PredictiveAnalyticsService.js.map +1 -1
- package/dist/services/ProactiveValidationService.d.ts +1 -1
- package/dist/services/ProactiveValidationService.js +1 -1
- package/dist/services/PromptArgumentInferenceService.d.ts +1 -1
- package/dist/services/PromptArgumentInferenceService.js +1 -1
- package/dist/services/QValueManager.d.ts +8 -1
- package/dist/services/QValueManager.d.ts.map +1 -1
- package/dist/services/QValueManager.js +10 -1
- package/dist/services/QValueManager.js.map +1 -1
- package/dist/services/ReasoningToolParser.d.ts +1 -1
- package/dist/services/ReasoningToolParser.js +1 -1
- package/dist/services/RecoveryWorkflowService.d.ts +1 -1
- package/dist/services/RecoveryWorkflowService.js +1 -1
- package/dist/services/ReflectionService.d.ts +1 -1
- package/dist/services/ReflectionService.js +1 -1
- package/dist/services/RetentionGateService.d.ts +1 -1
- package/dist/services/RetentionGateService.js +1 -1
- package/dist/services/RewardSignalProcessor.d.ts +39 -2
- package/dist/services/RewardSignalProcessor.d.ts.map +1 -1
- package/dist/services/RewardSignalProcessor.js +110 -8
- package/dist/services/RewardSignalProcessor.js.map +1 -1
- package/dist/services/SharedStateService.d.ts +17 -3
- package/dist/services/SharedStateService.d.ts.map +1 -1
- package/dist/services/SharedStateService.js +45 -4
- package/dist/services/SharedStateService.js.map +1 -1
- package/dist/services/StratumManager.d.ts +1 -1
- package/dist/services/StratumManager.js +1 -1
- package/dist/services/StructuredSummaryBuilder.d.ts +1 -1
- package/dist/services/StructuredSummaryBuilder.js +1 -1
- package/dist/services/SurpriseCalculator.d.ts +1 -1
- package/dist/services/SurpriseCalculator.js +1 -1
- package/dist/services/SystemLlmMemoryAnalyzer.d.ts +1 -1
- package/dist/services/SystemLlmMemoryAnalyzer.js +1 -1
- package/dist/services/TaskEffectivenessService.d.ts +35 -19
- package/dist/services/TaskEffectivenessService.d.ts.map +1 -1
- package/dist/services/TaskEffectivenessService.js +92 -156
- package/dist/services/TaskEffectivenessService.js.map +1 -1
- package/dist/services/ToolExecutionInterceptor.d.ts +1 -1
- package/dist/services/ToolExecutionInterceptor.js +1 -1
- package/dist/services/UserInputRequestManager.d.ts +1 -1
- package/dist/services/UserInputRequestManager.js +1 -1
- package/dist/services/UserMemoryService.d.ts +1 -1
- package/dist/services/UserMemoryService.js +1 -1
- package/dist/services/UtilityScorerService.d.ts +1 -1
- package/dist/services/UtilityScorerService.js +1 -1
- package/dist/services/ValidationAnalyticsService.d.ts +1 -1
- package/dist/services/ValidationAnalyticsService.js +1 -1
- package/dist/services/ValidationCacheService.d.ts +1 -1
- package/dist/services/ValidationCacheService.js +1 -1
- package/dist/services/ValidationMiddleware.d.ts +1 -1
- package/dist/services/ValidationMiddleware.js +1 -1
- package/dist/services/ValidationPerformanceService.d.ts +1 -1
- package/dist/services/ValidationPerformanceService.js +1 -1
- package/dist/services/WebSearchService.d.ts +1 -1
- package/dist/services/WebSearchService.d.ts.map +1 -1
- package/dist/services/WebSearchService.js +1 -1
- package/dist/services/WebSearchService.js.map +1 -1
- package/dist/services/dag/TaskDagService.d.ts +1 -1
- package/dist/services/dag/TaskDagService.d.ts.map +1 -1
- package/dist/services/dag/TaskDagService.js +3 -1
- package/dist/services/dag/TaskDagService.js.map +1 -1
- package/dist/services/dag/algorithms/TopologicalSort.d.ts +1 -1
- package/dist/services/dag/algorithms/TopologicalSort.js +1 -1
- package/dist/services/kg/EntityExtractionService.d.ts +1 -1
- package/dist/services/kg/EntityExtractionService.js +1 -1
- package/dist/services/kg/EntityQValueManager.d.ts +1 -1
- package/dist/services/kg/EntityQValueManager.js +1 -1
- package/dist/services/kg/GraphSurpriseCalculator.d.ts +1 -1
- package/dist/services/kg/GraphSurpriseCalculator.js +1 -1
- package/dist/services/kg/KnowledgeGraphService.d.ts +1 -1
- package/dist/services/kg/KnowledgeGraphService.js +1 -1
- package/dist/services/kg/OrparGraphIntegration.d.ts +1 -1
- package/dist/services/kg/OrparGraphIntegration.js +1 -1
- package/dist/services/orpar-memory/CycleConsolidationTrigger.d.ts +1 -1
- package/dist/services/orpar-memory/CycleConsolidationTrigger.js +1 -1
- package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts +8 -1
- package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts.map +1 -1
- package/dist/services/orpar-memory/OrparMemoryCoordinator.js +72 -11
- package/dist/services/orpar-memory/OrparMemoryCoordinator.js.map +1 -1
- package/dist/services/orpar-memory/PhaseMemoryOperations.d.ts +1 -1
- package/dist/services/orpar-memory/PhaseMemoryOperations.js +1 -1
- package/dist/services/orpar-memory/PhaseStrataRouter.d.ts +1 -1
- package/dist/services/orpar-memory/PhaseStrataRouter.js +1 -1
- package/dist/services/orpar-memory/PhaseWeightedRewarder.d.ts +1 -1
- package/dist/services/orpar-memory/PhaseWeightedRewarder.js +1 -1
- package/dist/services/orpar-memory/SurpriseOrparAdapter.d.ts +1 -1
- package/dist/services/orpar-memory/SurpriseOrparAdapter.js +1 -1
- package/dist/services/orpar-memory/index.d.ts +1 -1
- package/dist/services/orpar-memory/index.js +1 -1
- package/dist/types/Agent.d.ts +1 -1
- package/dist/types/Agent.js +1 -1
- package/dist/types/AgentPerformanceTypes.d.ts +1 -1
- package/dist/types/AgentPerformanceTypes.js +1 -1
- package/dist/types/AgentRegistry.d.ts +1 -1
- package/dist/types/AgentRegistry.js +1 -1
- package/dist/types/AgentTypes.d.ts +1 -1
- package/dist/types/AgentTypes.js +1 -1
- package/dist/types/ChannelContext.d.ts +1 -1
- package/dist/types/ChannelContext.js +1 -1
- package/dist/types/ControlLoopTypes.d.ts +1 -1
- package/dist/types/ControlLoopTypes.js +1 -1
- package/dist/types/DagTypes.d.ts +1 -1
- package/dist/types/DagTypes.js +1 -1
- package/dist/types/EffectivenessTypes.d.ts +1 -1
- package/dist/types/EffectivenessTypes.js +1 -1
- package/dist/types/InferenceParameterTypes.d.ts +1 -1
- package/dist/types/InferenceParameterTypes.js +1 -1
- package/dist/types/KnowledgeGraphTypes.d.ts +1 -1
- package/dist/types/KnowledgeGraphTypes.js +1 -1
- package/dist/types/LlmTypes.d.ts +1 -1
- package/dist/types/LlmTypes.js +1 -1
- package/dist/types/McpPromptTypes.d.ts +1 -1
- package/dist/types/McpPromptTypes.js +1 -1
- package/dist/types/MemoryTypes.d.ts +1 -1
- package/dist/types/MemoryTypes.js +1 -1
- package/dist/types/MemoryUtilityTypes.d.ts +3 -1
- package/dist/types/MemoryUtilityTypes.d.ts.map +1 -1
- package/dist/types/MemoryUtilityTypes.js +1 -1
- package/dist/types/MemoryUtilityTypes.js.map +1 -1
- package/dist/types/MxpTypes.d.ts +1 -1
- package/dist/types/MxpTypes.js +1 -1
- package/dist/types/NetworkRecoveryTypes.d.ts +1 -1
- package/dist/types/NetworkRecoveryTypes.js +1 -1
- package/dist/types/OrparMemoryIntegrationTypes.d.ts +1 -1
- package/dist/types/OrparMemoryIntegrationTypes.js +1 -1
- package/dist/types/PatternLearningTypes.d.ts +1 -1
- package/dist/types/PatternLearningTypes.js +1 -1
- package/dist/types/PatternMemoryTypes.d.ts +1 -1
- package/dist/types/PatternMemoryTypes.js +1 -1
- package/dist/types/ReflectionTypes.d.ts +1 -1
- package/dist/types/ReflectionTypes.js +1 -1
- package/dist/types/TaskCompletionTypes.d.ts +1 -1
- package/dist/types/TaskCompletionTypes.js +1 -1
- package/dist/types/TaskTypes.d.ts +1 -1
- package/dist/types/TaskTypes.js +1 -1
- package/dist/types/TensorFlowTypes.d.ts +1 -1
- package/dist/types/TensorFlowTypes.js +1 -1
- package/dist/types/ValidationPerformanceTypes.d.ts +1 -1
- package/dist/types/ValidationPerformanceTypes.js +1 -1
- package/dist/types/toolTypes.d.ts +1 -1
- package/dist/types/toolTypes.js +1 -1
- package/dist/types/types.d.ts +1 -1
- package/dist/types/types.js +1 -1
- package/dist/utils/Logger.d.ts +44 -4
- package/dist/utils/Logger.d.ts.map +1 -1
- package/dist/utils/Logger.js +79 -37
- package/dist/utils/Logger.js.map +1 -1
- package/dist/utils/MxpEncryption.d.ts +20 -7
- package/dist/utils/MxpEncryption.d.ts.map +1 -1
- package/dist/utils/MxpEncryption.js +49 -17
- package/dist/utils/MxpEncryption.js.map +1 -1
- package/dist/utils/ParameterNormalizer.d.ts +1 -1
- package/dist/utils/ParameterNormalizer.js +1 -1
- package/dist/utils/PromptTemplateReplacer.d.ts +1 -1
- package/dist/utils/PromptTemplateReplacer.js +1 -1
- package/dist/utils/TokenEstimator.d.ts +1 -1
- package/dist/utils/TokenEstimator.js +1 -1
- package/dist/utils/ToolPaginationUtils.d.ts +1 -1
- package/dist/utils/ToolPaginationUtils.js +1 -1
- package/dist/utils/toon/eligibility.d.ts +1 -1
- package/dist/utils/toon/eligibility.js +1 -1
- package/dist/utils/toon/encoder.d.ts +1 -1
- package/dist/utils/toon/encoder.js +1 -1
- package/dist/utils/toon/formatter.d.ts +1 -1
- package/dist/utils/toon/formatter.js +1 -1
- package/dist/utils/toon/index.d.ts +1 -1
- package/dist/utils/toon/index.js +1 -1
- package/dist/utils/toon/metrics.d.ts +1 -1
- package/dist/utils/toon/metrics.js +1 -1
- package/dist/utils/toon/types.d.ts +1 -1
- package/dist/utils/toon/types.js +1 -1
- package/dist/utils/validation.d.ts +1 -1
- package/dist/utils/validation.js +1 -1
- package/package.json +20 -5
- package/src/adapters/FrameworkAdapter.ts +2 -2
- package/src/adapters/index.ts +1 -1
- package/src/config/ConfigManager.ts +53 -20
- package/src/config/McpPromptsConfig.ts +1 -1
- package/src/config/ModelContextLimits.ts +1 -1
- package/src/config/PromptCompactionConfig.ts +1 -1
- package/src/config/PromptConfig.ts +1 -1
- package/src/config/ServerConfig.ts +1 -1
- package/src/config/dag.config.ts +1 -1
- package/src/config/knowledge-graph.config.ts +1 -1
- package/src/config/memory-strata.config.ts +136 -0
- package/src/config/orpar-memory.config.ts +1 -1
- package/src/config/tensorflow.config.ts +1 -1
- package/src/constants/CoreTools.ts +1 -1
- package/src/constants/DefaultPhaseProfiles.ts +1 -1
- package/src/constants/ToolNames.ts +5 -19
- package/src/database/DatabaseAdapterFactory.ts +24 -7
- package/src/database/adapters/mongodb/MongoAgentRepository.ts +1 -1
- package/src/database/adapters/mongodb/MongoBaseRepository.ts +17 -3
- package/src/database/adapters/mongodb/MongoChannelRepository.ts +1 -1
- package/src/database/adapters/mongodb/MongoDagRepository.ts +1 -1
- package/src/database/adapters/mongodb/MongoKnowledgeGraphRepository.ts +1 -1
- package/src/database/adapters/mongodb/MongoMemoryRepository.ts +1 -1
- package/src/database/adapters/mongodb/MongoTaskRepository.ts +1 -1
- package/src/database/adapters/mongodb/index.ts +1 -1
- package/src/database/index.ts +1 -1
- package/src/events/ClientEventBus.ts +69 -404
- package/src/events/EventBus.ts +8 -9
- package/src/events/EventBusBase.ts +480 -117
- package/src/events/EventNames.ts +7 -1
- package/src/events/PublicEvents.ts +8 -5
- package/src/events/ServerEventBus.ts +79 -474
- package/src/events/event-definitions/AgentEvents.ts +1 -1
- package/src/events/event-definitions/AnalyticsEvents.ts +1 -1
- package/src/events/event-definitions/BulkEvents.ts +1 -1
- package/src/events/event-definitions/ChannelEvents.ts +1 -1
- package/src/events/event-definitions/CodeExecutionEvents.ts +1 -1
- package/src/events/event-definitions/CompactionEvents.ts +1 -1
- package/src/events/event-definitions/ConfigEvents.ts +1 -1
- package/src/events/event-definitions/ControlLoopEvents.ts +1 -1
- package/src/events/event-definitions/DagEvents.ts +1 -1
- package/src/events/event-definitions/HeartbeatEvents.ts +1 -1
- package/src/events/event-definitions/InferenceParameterEvents.ts +1 -1
- package/src/events/event-definitions/KeyEvents.ts +1 -1
- package/src/events/event-definitions/KnowledgeGraphEvents.ts +1 -1
- package/src/events/event-definitions/LlmBudgetEvents.ts +74 -0
- package/src/events/event-definitions/LlmEvents.ts +1 -1
- package/src/events/event-definitions/McpEvents.ts +1 -1
- package/src/events/event-definitions/MeilisearchEvents.ts +1 -1
- package/src/events/event-definitions/MemoryEvents.ts +1 -1
- package/src/events/event-definitions/MemoryUtilityEvents.ts +1 -1
- package/src/events/event-definitions/MessageEvents.ts +1 -1
- package/src/events/event-definitions/MxpEvents.ts +1 -1
- package/src/events/event-definitions/OrparEvents.ts +1 -1
- package/src/events/event-definitions/OrparMemoryEvents.ts +1 -1
- package/src/events/event-definitions/PlanEvents.ts +1 -1
- package/src/events/event-definitions/ProgressEvents.ts +1 -1
- package/src/events/event-definitions/ShellExecutionEvents.ts +1 -1
- package/src/events/event-definitions/SystemEvents.ts +1 -1
- package/src/events/event-definitions/TaskEvents.ts +1 -1
- package/src/events/event-definitions/TensorFlowEvents.ts +1 -1
- package/src/events/event-definitions/UserInputEvents.ts +1 -1
- package/src/events/event-definitions/WorkflowEvents.ts +1 -1
- package/src/interfaces/AgentContext.ts +1 -1
- package/src/interfaces/AgentInterfaces.ts +9 -2
- package/src/interfaces/Channel.ts +1 -1
- package/src/interfaces/ChannelConfig.ts +1 -1
- package/src/interfaces/ChannelConnectionConfig.ts +1 -1
- package/src/interfaces/ChannelInfo.ts +1 -1
- package/src/interfaces/ConversationMessage.ts +1 -1
- package/src/interfaces/ILlmTopicExtractor.ts +1 -1
- package/src/interfaces/IMemoryPersistence.ts +51 -0
- package/src/interfaces/SocketServiceInterface.ts +1 -1
- package/src/interfaces/TaskInterfaces.ts +1 -1
- package/src/middleware/MxpMiddleware.ts +52 -25
- package/src/models/PatternLearningModels.ts +1 -1
- package/src/models/agent.ts +1 -1
- package/src/models/auditLog.ts +1 -1
- package/src/models/channel.ts +1 -1
- package/src/models/channelKey.ts +19 -5
- package/src/models/codeExecution.ts +1 -1
- package/src/models/controlLoop.ts +1 -1
- package/src/models/coordination.ts +1 -1
- package/src/models/document.ts +1 -1
- package/src/models/entity.ts +1 -1
- package/src/models/mcpTool.ts +1 -1
- package/src/models/mcpToolExecution.ts +1 -1
- package/src/models/memory.ts +1 -1
- package/src/models/memoryStrata.ts +1 -1
- package/src/models/memoryUtility.ts +64 -0
- package/src/models/personalAccessToken.ts +1 -1
- package/src/models/plan.ts +1 -1
- package/src/models/relationship.ts +1 -1
- package/src/models/shellOutput.ts +1 -1
- package/src/models/task.ts +1 -1
- package/src/models/taskEffectiveness.ts +1 -1
- package/src/models/tool.ts +1 -1
- package/src/models/toolExecution.ts +1 -1
- package/src/models/toolModels.ts +1 -1
- package/src/models/user.ts +37 -5
- package/src/models/userMemory.ts +1 -1
- package/src/mxp/BinaryProtocolLayer.ts +109 -125
- package/src/mxp/ContextCompressionEngine.ts +220 -162
- package/src/mxp/MxpConfigManager.ts +1 -1
- package/src/mxp/MxpTokenOptimizer.ts +11 -11
- package/src/prompts/ChannelContextProvider.ts +1 -1
- package/src/prompts/DeferredToolSchemaRegistry.ts +1 -1
- package/src/prompts/DynamicContextProvider.ts +1 -1
- package/src/prompts/MemoryPromptInjector.ts +1 -1
- package/src/prompts/MxfAgentSystemPrompt.ts +46 -56
- package/src/prompts/PromptSegmentRegistry.ts +1 -1
- package/src/prompts/ToolBehavioralGuidance.ts +1 -1
- package/src/protocols/binaryProtocol.ts +1 -1
- package/src/protocols/mcp/ClientExecutableManifest.ts +1 -1
- package/src/protocols/mcp/IMcpClient.ts +1 -1
- package/src/protocols/mcp/LlmProviderFactory.ts +1 -1
- package/src/protocols/mcp/LlmProviders.ts +1 -1
- package/src/protocols/mcp/McpClient.ts +1 -1
- package/src/protocols/mcp/McpClientFactory.ts +1 -1
- package/src/protocols/mcp/McpServerTypes.ts +1 -1
- package/src/protocols/mcp/McpToolCallParser.ts +1 -1
- package/src/protocols/mcp/McpToolSchema.ts +1 -1
- package/src/protocols/mcp/ToolError.ts +201 -0
- package/src/protocols/mcp/converters/IFormatConverter.ts +1 -1
- package/src/protocols/mcp/converters/UnifiedMessageConverter.ts +1 -1
- package/src/protocols/mcp/converters/adapters/AnthropicMessageAdapter.ts +1 -1
- package/src/protocols/mcp/converters/adapters/GeminiMessageAdapter.ts +1 -1
- package/src/protocols/mcp/converters/adapters/OpenAiMessageAdapter.ts +1 -1
- package/src/protocols/mcp/converters/adapters/OpenRouterMessageAdapter.ts +1 -1
- package/src/protocols/mcp/converters/adapters/XaiMessageAdapter.ts +1 -1
- package/src/protocols/mcp/defineTool.ts +379 -0
- package/src/protocols/mcp/providers/AnthropicMcpClient.ts +1 -1
- package/src/protocols/mcp/providers/AzureOpenAiMcpClient.ts +1 -1
- package/src/protocols/mcp/providers/BaseMcpClient.ts +1 -1
- package/src/protocols/mcp/providers/CustomMcpClient.ts +1 -1
- package/src/protocols/mcp/providers/GeminiMcpClient.ts +1 -1
- package/src/protocols/mcp/providers/OllamaMcpClient.ts +1 -1
- package/src/protocols/mcp/providers/OpenAiMcpClient.ts +1 -1
- package/src/protocols/mcp/providers/OpenRouterMcpClient.ts +33 -24
- package/src/protocols/mcp/providers/XaiMcpClient.ts +1 -1
- package/src/protocols/mcp/security/HttpTargetGuard.ts +267 -0
- package/src/protocols/mcp/security/McpConfirmationManager.ts +1 -1
- package/src/protocols/mcp/security/McpSecurityConfig.ts +1 -1
- package/src/protocols/mcp/security/McpSecurityGuard.ts +11 -4
- package/src/protocols/mcp/security/McpToolPolicy.ts +221 -0
- package/src/protocols/mcp/security/index.ts +1 -1
- package/src/protocols/mcp/services/ExternalMcpServerManager.ts +341 -323
- package/src/protocols/mcp/services/ExternalServerConfigs.ts +83 -20
- package/src/protocols/mcp/services/IToolEventEmitter.ts +1 -1
- package/src/protocols/mcp/tools/AnalyticsTools.ts +2 -2
- package/src/protocols/mcp/tools/CodeAnalysisTools.ts +16 -1
- package/src/protocols/mcp/tools/DateTimeTools.ts +1 -1
- package/src/protocols/mcp/tools/EffectivenessTools.ts +4 -4
- package/src/protocols/mcp/tools/GitTools.ts +291 -570
- package/src/protocols/mcp/tools/InfrastructureTools.ts +190 -44
- package/src/protocols/mcp/tools/JsonTools.ts +1 -1
- package/src/protocols/mcp/tools/KnowledgeGraphTools.ts +1 -1
- package/src/protocols/mcp/tools/MemorySearchTools.ts +78 -2
- package/src/protocols/mcp/tools/MemoryUtilityTools.ts +1 -1
- package/src/protocols/mcp/tools/OrparTools.ts +88 -1
- package/src/protocols/mcp/tools/PlanningTools.ts +1 -1
- package/src/protocols/mcp/tools/PredictiveTools.ts +1 -1
- package/src/protocols/mcp/tools/ProgressTools.ts +1 -1
- package/src/protocols/mcp/tools/ProjectContextTools.ts +1 -1
- package/src/protocols/mcp/tools/README.md +3 -3
- package/src/protocols/mcp/tools/SafetyTools.ts +502 -580
- package/src/protocols/mcp/tools/SearchProjectTools.ts +1 -1
- package/src/protocols/mcp/tools/TaskPlanningTools.ts +82 -40
- package/src/protocols/mcp/tools/TestTools.ts +340 -420
- package/src/protocols/mcp/tools/ToolHelpTools.ts +1 -1
- package/src/protocols/mcp/tools/TypeScriptTools.ts +317 -377
- package/src/protocols/mcp/tools/UserInputTools.ts +1 -1
- package/src/protocols/mcp/tools/UserMemoryTools.ts +1 -1
- package/src/protocols/mcp/tools/WebTools.ts +210 -308
- package/src/protocols/mcp/tools/WolframTools.ts +1 -1
- package/src/protocols/mcp/tools/shell/CommandClassification.ts +1 -1
- package/src/protocols/mcp/tools/shell/CommandSemantics.ts +1 -1
- package/src/protocols/mcp/tools/shell/DestructiveCommandWarnings.ts +1 -1
- package/src/protocols/mcp/tools/shell/LargeOutputHandler.ts +1 -1
- package/src/protocols/mcp/tools/shell/ShellExecuteHandler.ts +54 -15
- package/src/protocols/mcp/tools/shell/ShellSandbox.ts +1 -1
- package/src/protocols/mcp/tools/shell/index.ts +1 -1
- package/src/protocols/mcp/utils/JsonRecovery.ts +1 -1
- package/src/protocols/mcp/utils/MessageConverters.ts +1 -1
- package/src/protocols/mcp/utils/NetworkRecovery.ts +1 -1
- package/src/protocols/mcp/utils/ToolHandlers.ts +1 -1
- package/src/repositories/interfaces/IAgentRepository.ts +1 -1
- package/src/repositories/interfaces/IBaseRepository.ts +1 -1
- package/src/repositories/interfaces/IChannelRepository.ts +1 -1
- package/src/repositories/interfaces/IDagRepository.ts +1 -1
- package/src/repositories/interfaces/IKnowledgeGraphRepository.ts +1 -1
- package/src/repositories/interfaces/IMemoryRepository.ts +1 -1
- package/src/repositories/interfaces/ITaskRepository.ts +1 -1
- package/src/repositories/interfaces/index.ts +1 -1
- package/src/repositories/types/FilterTypes.ts +1 -1
- package/src/repositories/types/PaginationTypes.ts +1 -1
- package/src/schemas/CodeExecutionEventPayloads.ts +1 -1
- package/src/schemas/EventPayloadSchema.ts +38 -1
- package/src/schemas/JsonResponseSchemas.ts +1 -1
- package/src/schemas/MessageSchemas.ts +1 -1
- package/src/schemas/MxpProtocolSchemas.ts +1 -1
- package/src/schemas/ShellExecutionEventPayloads.ts +1 -1
- package/src/services/AgentPerformanceService.ts +1 -1
- package/src/services/AutoCorrectionIntegrationService.ts +1 -1
- package/src/services/AutoCorrectionService.ts +1 -1
- package/src/services/AutoMemoryCreator.ts +1 -1
- package/src/services/BackgroundTaskManager.ts +13 -5
- package/src/services/BrowserManager.ts +42 -2
- package/src/services/ChannelContextMemoryOperations.ts +1 -1
- package/src/services/ChannelContextMessageOperations.ts +1 -1
- package/src/services/CodeExecutionSandboxService.ts +1 -1
- package/src/services/ContainerExecutionManager.ts +1 -1
- package/src/services/ContentProcessor.ts +1 -1
- package/src/services/McpToolDocumentationService.ts +1 -1
- package/src/services/MemoryCompressor.ts +21 -33
- package/src/services/MemoryService.ts +97 -59
- package/src/services/MxfMLService.ts +62 -18
- package/src/services/MxfMeilisearchService.ts +1 -1
- package/src/services/MxfMessageAggregator.ts +1 -1
- package/src/services/PatternLearningService.ts +1 -1
- package/src/services/PerformanceOptimizationService.ts +1 -1
- package/src/services/PredictiveAnalyticsService.ts +56 -33
- package/src/services/ProactiveValidationService.ts +1 -1
- package/src/services/PromptArgumentInferenceService.ts +1 -1
- package/src/services/QValueManager.ts +11 -1
- package/src/services/ReasoningToolParser.ts +1 -1
- package/src/services/RecoveryWorkflowService.ts +1 -1
- package/src/services/ReflectionService.ts +1 -1
- package/src/services/RetentionGateService.ts +1 -1
- package/src/services/RewardSignalProcessor.ts +139 -10
- package/src/services/SharedStateService.ts +57 -9
- package/src/services/StratumManager.ts +1 -1
- package/src/services/StructuredSummaryBuilder.ts +1 -1
- package/src/services/SurpriseCalculator.ts +1 -1
- package/src/services/SystemLlmMemoryAnalyzer.ts +1 -1
- package/src/services/TaskEffectivenessService.ts +115 -188
- package/src/services/ToolExecutionInterceptor.ts +1 -1
- package/src/services/UserInputRequestManager.ts +1 -1
- package/src/services/UserMemoryService.ts +1 -1
- package/src/services/UtilityScorerService.ts +1 -1
- package/src/services/ValidationAnalyticsService.ts +1 -1
- package/src/services/ValidationCacheService.ts +1 -1
- package/src/services/ValidationMiddleware.ts +1 -1
- package/src/services/ValidationPerformanceService.ts +1 -1
- package/src/services/WebSearchService.ts +3 -2
- package/src/services/dag/TaskDagService.ts +3 -1
- package/src/services/dag/algorithms/TopologicalSort.ts +1 -1
- package/src/services/kg/EntityExtractionService.ts +1 -1
- package/src/services/kg/EntityQValueManager.ts +1 -1
- package/src/services/kg/GraphSurpriseCalculator.ts +1 -1
- package/src/services/kg/KnowledgeGraphService.ts +1 -1
- package/src/services/kg/OrparGraphIntegration.ts +1 -1
- package/src/services/orpar-memory/CycleConsolidationTrigger.ts +1 -1
- package/src/services/orpar-memory/OrparMemoryCoordinator.ts +87 -11
- package/src/services/orpar-memory/PhaseMemoryOperations.ts +1 -1
- package/src/services/orpar-memory/PhaseStrataRouter.ts +1 -1
- package/src/services/orpar-memory/PhaseWeightedRewarder.ts +1 -1
- package/src/services/orpar-memory/SurpriseOrparAdapter.ts +1 -1
- package/src/services/orpar-memory/index.ts +1 -1
- package/src/types/Agent.ts +1 -1
- package/src/types/AgentPerformanceTypes.ts +1 -1
- package/src/types/AgentRegistry.ts +1 -1
- package/src/types/AgentTypes.ts +1 -1
- package/src/types/ChannelContext.ts +1 -1
- package/src/types/ControlLoopTypes.ts +1 -1
- package/src/types/DagTypes.ts +1 -1
- package/src/types/EffectivenessTypes.ts +1 -1
- package/src/types/InferenceParameterTypes.ts +1 -1
- package/src/types/KnowledgeGraphTypes.ts +1 -1
- package/src/types/LlmTypes.ts +1 -1
- package/src/types/McpPromptTypes.ts +1 -1
- package/src/types/MemoryTypes.ts +1 -1
- package/src/types/MemoryUtilityTypes.ts +3 -1
- package/src/types/MxpTypes.ts +1 -1
- package/src/types/NetworkRecoveryTypes.ts +1 -1
- package/src/types/OrparMemoryIntegrationTypes.ts +1 -1
- package/src/types/PatternLearningTypes.ts +1 -1
- package/src/types/PatternMemoryTypes.ts +1 -1
- package/src/types/ReflectionTypes.ts +1 -1
- package/src/types/TaskCompletionTypes.ts +1 -1
- package/src/types/TaskTypes.ts +1 -1
- package/src/types/TensorFlowTypes.ts +1 -1
- package/src/types/ValidationPerformanceTypes.ts +1 -1
- package/src/types/toolTypes.ts +1 -1
- package/src/types/types.ts +1 -1
- package/src/utils/Logger.ts +117 -41
- package/src/utils/MxpEncryption.ts +70 -35
- package/src/utils/ParameterNormalizer.ts +1 -1
- package/src/utils/PromptTemplateReplacer.ts +1 -1
- package/src/utils/TokenEstimator.ts +1 -1
- package/src/utils/ToolPaginationUtils.ts +1 -1
- package/src/utils/toon/eligibility.ts +1 -1
- package/src/utils/toon/encoder.ts +1 -1
- package/src/utils/toon/formatter.ts +1 -1
- package/src/utils/toon/index.ts +1 -1
- package/src/utils/toon/metrics.ts +1 -1
- package/src/utils/toon/types.ts +1 -1
- package/src/utils/validation.ts +1 -1
- package/dist/mxp/MxpEventForwardingEnhancer.d.ts +0 -134
- package/dist/mxp/MxpEventForwardingEnhancer.d.ts.map +0 -1
- package/dist/mxp/MxpEventForwardingEnhancer.js +0 -361
- package/dist/mxp/MxpEventForwardingEnhancer.js.map +0 -1
- package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts +0 -56
- package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts.map +0 -1
- package/dist/protocols/mcp/services/ToolSchemaEnhancements.js +0 -57
- package/dist/protocols/mcp/services/ToolSchemaEnhancements.js.map +0 -1
- package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts +0 -270
- package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts.map +0 -1
- package/dist/protocols/mcp/tools/ControlLoopLifecycle.js +0 -256
- package/dist/protocols/mcp/tools/ControlLoopLifecycle.js.map +0 -1
- package/dist/protocols/mcp/tools/LspTools.d.ts +0 -495
- package/dist/protocols/mcp/tools/LspTools.d.ts.map +0 -1
- package/dist/protocols/mcp/tools/LspTools.js +0 -469
- package/dist/protocols/mcp/tools/LspTools.js.map +0 -1
- package/src/mxp/MxpEventForwardingEnhancer.ts +0 -471
- package/src/protocols/mcp/services/ToolSchemaEnhancements.ts +0 -92
- package/src/protocols/mcp/tools/ControlLoopLifecycle.ts +0 -302
- package/src/protocols/mcp/tools/LspTools.ts +0 -476
|
@@ -14,473 +14,413 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*
|
|
16
16
|
* @author Brad Anderson <BradA1878@pm.me>
|
|
17
|
-
* @repository https://github.com/
|
|
17
|
+
* @repository https://github.com/BradA1878/model-exchange-framework
|
|
18
18
|
* @documentation https://mxf-dev.github.io/mxf/
|
|
19
19
|
*/
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
/**
|
|
22
|
+
* TypeScriptTools.ts
|
|
23
|
+
*
|
|
24
|
+
* TypeScript checking, building, formatting, linting and test running. Each tool
|
|
25
|
+
* shells out to the real binary (tsc, prettier, eslint, jest) through
|
|
26
|
+
* executeShellCommand, which validates the command and strips the child's
|
|
27
|
+
* environment.
|
|
28
|
+
*
|
|
29
|
+
* On exit codes: tsc, eslint and jest all exit non-zero to mean "I found
|
|
30
|
+
* problems". That is a successful tool call with a negative finding, not a tool
|
|
31
|
+
* failure — so those tools return `passed: false` with the diagnostics, and
|
|
32
|
+
* `isError` stays false. `isError` is reserved for the tool genuinely not
|
|
33
|
+
* working: the binary is missing, the working directory does not exist, output
|
|
34
|
+
* cannot be parsed.
|
|
35
|
+
*/
|
|
36
|
+
|
|
37
|
+
import { TOOL_CATEGORIES } from '../../../constants/ToolNames.js';
|
|
38
|
+
import { defineTool, ToolRunContext } from '../defineTool.js';
|
|
39
|
+
import { ToolError } from '../ToolError.js';
|
|
40
|
+
import { executeShellCommand, ShellCommandResult } from './InfrastructureTools.js';
|
|
24
41
|
|
|
25
|
-
|
|
42
|
+
/** Exit code the shell reports when a command could not be found or spawned. */
|
|
43
|
+
const COMMAND_NOT_FOUND = 127;
|
|
44
|
+
|
|
45
|
+
const workingDirectoryProperty = {
|
|
46
|
+
type: 'string',
|
|
47
|
+
description: 'Working directory path (defaults to the server working directory)'
|
|
48
|
+
};
|
|
26
49
|
|
|
27
50
|
/**
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
* Full implementation would integrate with shell_execute tool
|
|
51
|
+
* Run one of the node toolchain binaries via npx.
|
|
52
|
+
*
|
|
53
|
+
* Throws only when the binary could not be run at all. A non-zero exit that the
|
|
54
|
+
* binary uses to report findings is handed back to the caller to interpret.
|
|
33
55
|
*/
|
|
56
|
+
async function runNpx(
|
|
57
|
+
args: string[],
|
|
58
|
+
workingDirectory: string | undefined,
|
|
59
|
+
context: ToolRunContext
|
|
60
|
+
): Promise<ShellCommandResult> {
|
|
61
|
+
const result = await executeShellCommand('npx', args, {
|
|
62
|
+
context: {
|
|
63
|
+
agentId: context.agentId,
|
|
64
|
+
channelId: context.channelId,
|
|
65
|
+
requestId: context.requestId
|
|
66
|
+
},
|
|
67
|
+
workingDirectory: workingDirectory || process.cwd(),
|
|
68
|
+
captureOutput: true
|
|
69
|
+
});
|
|
70
|
+
|
|
71
|
+
if (result.exitCode === COMMAND_NOT_FOUND) {
|
|
72
|
+
throw ToolError.preconditionFailed(
|
|
73
|
+
`Could not run "npx ${args[0]}" — the command was not found. ` +
|
|
74
|
+
`${result.stderr?.trim() ?? ''}`.trim(),
|
|
75
|
+
{ command: args[0] }
|
|
76
|
+
);
|
|
77
|
+
}
|
|
34
78
|
|
|
35
|
-
|
|
79
|
+
return result;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/** Pull `file(line,col): error TSxxxx: message` diagnostics out of tsc output. */
|
|
83
|
+
function parseTscDiagnostics(output: string): Array<{
|
|
84
|
+
type: 'error' | 'warning';
|
|
85
|
+
file: string;
|
|
86
|
+
line: number;
|
|
87
|
+
column: number;
|
|
88
|
+
code: string;
|
|
89
|
+
message: string;
|
|
90
|
+
}> {
|
|
91
|
+
const diagnostics: Array<{
|
|
92
|
+
type: 'error' | 'warning';
|
|
93
|
+
file: string;
|
|
94
|
+
line: number;
|
|
95
|
+
column: number;
|
|
96
|
+
code: string;
|
|
97
|
+
message: string;
|
|
98
|
+
}> = [];
|
|
99
|
+
|
|
100
|
+
// tsc --pretty false emits: path/file.ts(12,5): error TS2304: Cannot find name 'x'.
|
|
101
|
+
const pattern = /^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+(TS\d+):\s+(.*)$/;
|
|
102
|
+
|
|
103
|
+
for (const line of output.split('\n')) {
|
|
104
|
+
const match = line.match(pattern);
|
|
105
|
+
if (!match) {
|
|
106
|
+
continue;
|
|
107
|
+
}
|
|
108
|
+
diagnostics.push({
|
|
109
|
+
type: match[4] as 'error' | 'warning',
|
|
110
|
+
file: match[1],
|
|
111
|
+
line: parseInt(match[2], 10),
|
|
112
|
+
column: parseInt(match[3], 10),
|
|
113
|
+
code: match[5],
|
|
114
|
+
message: match[6].trim()
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
return diagnostics;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
export const typescriptCheckTool = defineTool<
|
|
122
|
+
{ workingDirectory?: string; files?: string[] },
|
|
123
|
+
{
|
|
124
|
+
passed: boolean;
|
|
125
|
+
totalErrors: number;
|
|
126
|
+
totalWarnings: number;
|
|
127
|
+
diagnostics: ReturnType<typeof parseTscDiagnostics>;
|
|
128
|
+
}
|
|
129
|
+
>({
|
|
36
130
|
name: 'typescript_check',
|
|
37
|
-
|
|
131
|
+
category: TOOL_CATEGORIES.INFRASTRUCTURE,
|
|
132
|
+
description:
|
|
133
|
+
'Type-check TypeScript with `tsc --noEmit` and return the diagnostics. ' +
|
|
134
|
+
'passed is false when there are type errors.',
|
|
38
135
|
inputSchema: {
|
|
39
136
|
type: 'object',
|
|
40
137
|
properties: {
|
|
41
|
-
workingDirectory:
|
|
42
|
-
type: 'string',
|
|
43
|
-
description: 'Working directory path (defaults to current directory)'
|
|
44
|
-
},
|
|
138
|
+
workingDirectory: workingDirectoryProperty,
|
|
45
139
|
files: {
|
|
46
140
|
type: 'array',
|
|
47
141
|
items: { type: 'string' },
|
|
48
|
-
description: 'Specific files to check
|
|
142
|
+
description: 'Specific files to check. Checks the whole project when omitted.'
|
|
49
143
|
}
|
|
50
144
|
}
|
|
51
145
|
},
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
files
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
if (args.files && args.files.length > 0) {
|
|
60
|
-
tscArgs.push(...args.files);
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
const result = await executeShellCommand('npx', ['tsc', ...tscArgs], {
|
|
64
|
-
workingDirectory: args.workingDirectory || process.cwd(),
|
|
65
|
-
captureOutput: true
|
|
66
|
-
});
|
|
67
|
-
|
|
68
|
-
// TypeScript compiler exits with code 1 if there are errors, but this is expected
|
|
69
|
-
const diagnostics = [];
|
|
70
|
-
let totalErrors = 0;
|
|
71
|
-
let totalWarnings = 0;
|
|
72
|
-
let filesChecked = 0;
|
|
73
|
-
|
|
74
|
-
if (result.stdout) {
|
|
75
|
-
// Parse TypeScript compiler output
|
|
76
|
-
const lines = result.stdout.split('\n');
|
|
77
|
-
for (const line of lines) {
|
|
78
|
-
if (line.includes('error TS')) {
|
|
79
|
-
totalErrors++;
|
|
80
|
-
diagnostics.push({
|
|
81
|
-
type: 'error',
|
|
82
|
-
message: line.trim(),
|
|
83
|
-
file: line.split('(')[0] || '',
|
|
84
|
-
line: 0,
|
|
85
|
-
column: 0
|
|
86
|
-
});
|
|
87
|
-
} else if (line.includes('warning TS')) {
|
|
88
|
-
totalWarnings++;
|
|
89
|
-
diagnostics.push({
|
|
90
|
-
type: 'warning',
|
|
91
|
-
message: line.trim(),
|
|
92
|
-
file: line.split('(')[0] || '',
|
|
93
|
-
line: 0,
|
|
94
|
-
column: 0
|
|
95
|
-
});
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
}
|
|
146
|
+
run: async (input, context) => {
|
|
147
|
+
const tscArgs = ['tsc', '--noEmit', '--pretty', 'false'];
|
|
148
|
+
if (input.files && input.files.length > 0) {
|
|
149
|
+
tscArgs.push(...input.files);
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
const result = await runNpx(tscArgs, input.workingDirectory, context);
|
|
99
153
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
logger.error('TypeScript check failed', { error });
|
|
114
|
-
const content: McpToolResultContent = {
|
|
115
|
-
type: 'application/json',
|
|
116
|
-
data: {
|
|
117
|
-
success: false,
|
|
118
|
-
diagnostics: [],
|
|
119
|
-
totalErrors: 0,
|
|
120
|
-
totalWarnings: 0,
|
|
121
|
-
filesChecked: 0,
|
|
122
|
-
error: error instanceof Error ? error.message : String(error)
|
|
123
|
-
}
|
|
124
|
-
};
|
|
125
|
-
return { content };
|
|
154
|
+
// tsc writes diagnostics to stdout and exits 1 when it finds any. That is
|
|
155
|
+
// the tool working, not the tool failing.
|
|
156
|
+
const diagnostics = parseTscDiagnostics(result.stdout ?? '');
|
|
157
|
+
const totalErrors = diagnostics.filter(d => d.type === 'error').length;
|
|
158
|
+
const totalWarnings = diagnostics.filter(d => d.type === 'warning').length;
|
|
159
|
+
|
|
160
|
+
// A non-zero exit with nothing parseable means tsc fell over for some other
|
|
161
|
+
// reason (bad tsconfig, unreadable directory). That is a real failure.
|
|
162
|
+
if (result.exitCode !== 0 && diagnostics.length === 0) {
|
|
163
|
+
throw ToolError.executionFailed(
|
|
164
|
+
`tsc exited ${result.exitCode} without producing diagnostics: ` +
|
|
165
|
+
`${(result.stderr || result.stdout)?.trim() || 'no output'}`
|
|
166
|
+
);
|
|
126
167
|
}
|
|
168
|
+
|
|
169
|
+
return {
|
|
170
|
+
passed: totalErrors === 0,
|
|
171
|
+
totalErrors,
|
|
172
|
+
totalWarnings,
|
|
173
|
+
diagnostics
|
|
174
|
+
};
|
|
127
175
|
}
|
|
128
|
-
};
|
|
176
|
+
});
|
|
129
177
|
|
|
130
|
-
export const typescriptBuildTool =
|
|
178
|
+
export const typescriptBuildTool = defineTool<
|
|
179
|
+
{ workingDirectory?: string; clean?: boolean },
|
|
180
|
+
{ passed: boolean; buildTimeMs: number; errors: string[]; output: string }
|
|
181
|
+
>({
|
|
131
182
|
name: 'typescript_build',
|
|
132
|
-
|
|
183
|
+
category: TOOL_CATEGORIES.INFRASTRUCTURE,
|
|
184
|
+
description: 'Build the TypeScript project with `tsc --build` and emit JavaScript.',
|
|
133
185
|
inputSchema: {
|
|
134
186
|
type: 'object',
|
|
135
187
|
properties: {
|
|
136
|
-
workingDirectory:
|
|
137
|
-
type: 'string',
|
|
138
|
-
description: 'Working directory path (defaults to current directory)'
|
|
139
|
-
},
|
|
188
|
+
workingDirectory: workingDirectoryProperty,
|
|
140
189
|
clean: {
|
|
141
190
|
type: 'boolean',
|
|
142
191
|
default: false,
|
|
143
|
-
description: '
|
|
192
|
+
description: 'Run `tsc --build --clean` first'
|
|
144
193
|
}
|
|
145
194
|
}
|
|
146
195
|
},
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
clean?: boolean;
|
|
150
|
-
}, context: McpToolHandlerContext): Promise<McpToolHandlerResult> => {
|
|
151
|
-
|
|
152
|
-
try {
|
|
153
|
-
const startTime = Date.now();
|
|
154
|
-
|
|
155
|
-
// Clean output directory if requested
|
|
156
|
-
if (args.clean) {
|
|
157
|
-
const cleanResult = await executeShellCommand('npx', ['tsc', '--build', '--clean'], {
|
|
158
|
-
workingDirectory: args.workingDirectory || process.cwd(),
|
|
159
|
-
captureOutput: true
|
|
160
|
-
});
|
|
161
|
-
if (cleanResult.exitCode !== 0) {
|
|
162
|
-
logger.warn('Clean command failed', { error: cleanResult.stderr });
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
const result = await executeShellCommand('npx', ['tsc', '--build'], {
|
|
167
|
-
workingDirectory: args.workingDirectory || process.cwd(),
|
|
168
|
-
captureOutput: true
|
|
169
|
-
});
|
|
170
|
-
|
|
171
|
-
const buildTime = Date.now() - startTime;
|
|
172
|
-
|
|
173
|
-
const errors = [];
|
|
174
|
-
const warnings = [];
|
|
175
|
-
|
|
176
|
-
if (result.stdout) {
|
|
177
|
-
const lines = result.stdout.split('\n');
|
|
178
|
-
for (const line of lines) {
|
|
179
|
-
if (line.includes('error TS')) {
|
|
180
|
-
errors.push(line.trim());
|
|
181
|
-
} else if (line.includes('warning TS')) {
|
|
182
|
-
warnings.push(line.trim());
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
}
|
|
196
|
+
run: async (input, context) => {
|
|
197
|
+
const startedAt = Date.now();
|
|
186
198
|
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
const content: McpToolResultContent = {
|
|
202
|
-
type: 'application/json',
|
|
203
|
-
data: {
|
|
204
|
-
success: false,
|
|
205
|
-
output: '',
|
|
206
|
-
errors: [],
|
|
207
|
-
warnings: [],
|
|
208
|
-
buildTime: 0,
|
|
209
|
-
error: error instanceof Error ? error.message : String(error)
|
|
210
|
-
}
|
|
211
|
-
};
|
|
212
|
-
return { content };
|
|
199
|
+
if (input.clean) {
|
|
200
|
+
const cleanResult = await runNpx(
|
|
201
|
+
['tsc', '--build', '--clean'],
|
|
202
|
+
input.workingDirectory,
|
|
203
|
+
context
|
|
204
|
+
);
|
|
205
|
+
// A failed clean leaves stale output behind, which makes the build's
|
|
206
|
+
// result meaningless. Say so rather than building on top of it.
|
|
207
|
+
if (cleanResult.exitCode !== 0) {
|
|
208
|
+
throw ToolError.executionFailed(
|
|
209
|
+
`tsc --build --clean failed (exit ${cleanResult.exitCode}): ` +
|
|
210
|
+
`${(cleanResult.stderr || cleanResult.stdout)?.trim() || 'no output'}`
|
|
211
|
+
);
|
|
212
|
+
}
|
|
213
213
|
}
|
|
214
|
+
|
|
215
|
+
const result = await runNpx(['tsc', '--build'], input.workingDirectory, context);
|
|
216
|
+
|
|
217
|
+
const errors = (result.stdout ?? '')
|
|
218
|
+
.split('\n')
|
|
219
|
+
.filter(line => line.includes('error TS'))
|
|
220
|
+
.map(line => line.trim());
|
|
221
|
+
|
|
222
|
+
return {
|
|
223
|
+
passed: result.exitCode === 0,
|
|
224
|
+
buildTimeMs: Date.now() - startedAt,
|
|
225
|
+
errors,
|
|
226
|
+
output: result.stdout ?? ''
|
|
227
|
+
};
|
|
214
228
|
}
|
|
215
|
-
};
|
|
229
|
+
});
|
|
216
230
|
|
|
217
|
-
export const typescriptFormatTool =
|
|
231
|
+
export const typescriptFormatTool = defineTool<
|
|
232
|
+
{ files?: string[]; check?: boolean; workingDirectory?: string },
|
|
233
|
+
{ mode: 'check' | 'write'; formatted: boolean; files: string[]; output: string }
|
|
234
|
+
>({
|
|
218
235
|
name: 'typescript_format',
|
|
219
|
-
|
|
236
|
+
category: TOOL_CATEGORIES.INFRASTRUCTURE,
|
|
237
|
+
description:
|
|
238
|
+
'Format TypeScript/JavaScript files with prettier. ' +
|
|
239
|
+
'With check: true it reports whether files are formatted without changing them.',
|
|
220
240
|
inputSchema: {
|
|
221
241
|
type: 'object',
|
|
222
242
|
properties: {
|
|
223
243
|
files: {
|
|
224
244
|
type: 'array',
|
|
225
245
|
items: { type: 'string' },
|
|
226
|
-
description: 'Files to format (
|
|
246
|
+
description: 'Files to format (glob patterns allowed). Defaults to all TS/JS sources.'
|
|
227
247
|
},
|
|
228
248
|
check: {
|
|
229
249
|
type: 'boolean',
|
|
230
250
|
default: false,
|
|
231
|
-
description: '
|
|
251
|
+
description: 'Report formatting problems instead of rewriting files'
|
|
232
252
|
},
|
|
233
|
-
workingDirectory:
|
|
234
|
-
type: 'string',
|
|
235
|
-
description: 'Working directory path (defaults to current directory)'
|
|
236
|
-
}
|
|
253
|
+
workingDirectory: workingDirectoryProperty
|
|
237
254
|
}
|
|
238
255
|
},
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
check
|
|
242
|
-
workingDirectory?: string;
|
|
243
|
-
}, context: McpToolHandlerContext): Promise<McpToolHandlerResult> => {
|
|
244
|
-
|
|
245
|
-
try {
|
|
246
|
-
const prettierArgs = args.check ? ['--check'] : ['--write'];
|
|
247
|
-
if (args.files && args.files.length > 0) {
|
|
248
|
-
prettierArgs.push(...args.files);
|
|
249
|
-
} else {
|
|
250
|
-
prettierArgs.push('**/*.{ts,tsx,js,jsx}');
|
|
251
|
-
}
|
|
252
|
-
|
|
253
|
-
const result = await executeShellCommand('npx', ['prettier', ...prettierArgs], {
|
|
254
|
-
workingDirectory: args.workingDirectory || process.cwd(),
|
|
255
|
-
captureOutput: true
|
|
256
|
-
});
|
|
257
|
-
|
|
258
|
-
const formattedFiles = [];
|
|
259
|
-
const unchanged = [];
|
|
260
|
-
|
|
261
|
-
if (result.stdout) {
|
|
262
|
-
const lines = result.stdout.split('\n');
|
|
263
|
-
for (const line of lines) {
|
|
264
|
-
if (line.includes('unchanged')) {
|
|
265
|
-
unchanged.push(line.trim());
|
|
266
|
-
} else if (line.trim() && !line.startsWith('Checking')) {
|
|
267
|
-
formattedFiles.push(line.trim());
|
|
268
|
-
}
|
|
269
|
-
}
|
|
270
|
-
}
|
|
256
|
+
run: async (input, context) => {
|
|
257
|
+
const mode: 'check' | 'write' = input.check ? 'check' : 'write';
|
|
258
|
+
const prettierArgs = ['prettier', input.check ? '--check' : '--write'];
|
|
271
259
|
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
formattedFiles,
|
|
277
|
-
unchanged,
|
|
278
|
-
error: result.exitCode !== 0 ? result.stderr : null
|
|
279
|
-
}
|
|
280
|
-
};
|
|
281
|
-
return { content };
|
|
282
|
-
} catch (error) {
|
|
283
|
-
logger.error('TypeScript format failed', { error });
|
|
284
|
-
const content: McpToolResultContent = {
|
|
285
|
-
type: 'application/json',
|
|
286
|
-
data: {
|
|
287
|
-
success: false,
|
|
288
|
-
formattedFiles: [],
|
|
289
|
-
unchanged: [],
|
|
290
|
-
error: error instanceof Error ? error.message : String(error)
|
|
291
|
-
}
|
|
292
|
-
};
|
|
293
|
-
return { content };
|
|
260
|
+
if (input.files && input.files.length > 0) {
|
|
261
|
+
prettierArgs.push(...input.files);
|
|
262
|
+
} else {
|
|
263
|
+
prettierArgs.push('**/*.{ts,tsx,js,jsx}');
|
|
294
264
|
}
|
|
265
|
+
|
|
266
|
+
const result = await runNpx(prettierArgs, input.workingDirectory, context);
|
|
267
|
+
|
|
268
|
+
// In check mode prettier exits 1 when files need formatting — a finding,
|
|
269
|
+
// not a failure. In write mode a non-zero exit means it could not write.
|
|
270
|
+
if (mode === 'write' && result.exitCode !== 0) {
|
|
271
|
+
throw ToolError.executionFailed(
|
|
272
|
+
`prettier --write failed (exit ${result.exitCode}): ` +
|
|
273
|
+
`${(result.stderr || result.stdout)?.trim() || 'no output'}`
|
|
274
|
+
);
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
const files = (result.stdout ?? '')
|
|
278
|
+
.split('\n')
|
|
279
|
+
.map(line => line.trim())
|
|
280
|
+
.filter(line => line.length > 0 && !line.startsWith('Checking'));
|
|
281
|
+
|
|
282
|
+
return {
|
|
283
|
+
mode,
|
|
284
|
+
formatted: result.exitCode === 0,
|
|
285
|
+
files,
|
|
286
|
+
output: result.stdout ?? ''
|
|
287
|
+
};
|
|
295
288
|
}
|
|
296
|
-
};
|
|
289
|
+
});
|
|
297
290
|
|
|
298
|
-
export const typescriptLintTool =
|
|
291
|
+
export const typescriptLintTool = defineTool<
|
|
292
|
+
{ files?: string[]; fix?: boolean; workingDirectory?: string },
|
|
293
|
+
{ passed: boolean; errorCount: number; warningCount: number; results: unknown[] }
|
|
294
|
+
>({
|
|
299
295
|
name: 'typescript_lint',
|
|
300
|
-
|
|
296
|
+
category: TOOL_CATEGORIES.INFRASTRUCTURE,
|
|
297
|
+
description:
|
|
298
|
+
'Lint TypeScript/JavaScript with ESLint and return the findings. ' +
|
|
299
|
+
'passed is false when there are lint errors.',
|
|
301
300
|
inputSchema: {
|
|
302
301
|
type: 'object',
|
|
303
302
|
properties: {
|
|
304
303
|
files: {
|
|
305
304
|
type: 'array',
|
|
306
305
|
items: { type: 'string' },
|
|
307
|
-
description: 'Files to lint (
|
|
306
|
+
description: 'Files to lint (glob patterns allowed). Defaults to all TS/JS sources.'
|
|
308
307
|
},
|
|
309
308
|
fix: {
|
|
310
309
|
type: 'boolean',
|
|
311
310
|
default: false,
|
|
312
|
-
description: 'Automatically fix problems'
|
|
311
|
+
description: 'Automatically fix the problems ESLint can fix'
|
|
313
312
|
},
|
|
314
|
-
workingDirectory:
|
|
315
|
-
type: 'string',
|
|
316
|
-
description: 'Working directory path (defaults to current directory)'
|
|
317
|
-
}
|
|
313
|
+
workingDirectory: workingDirectoryProperty
|
|
318
314
|
}
|
|
319
315
|
},
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
fix
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
eslintArgs.push(...args.files);
|
|
334
|
-
} else {
|
|
335
|
-
eslintArgs.push('**/*.{ts,tsx,js,jsx}');
|
|
336
|
-
}
|
|
337
|
-
|
|
338
|
-
const result = await executeShellCommand('npx', ['eslint', ...eslintArgs], {
|
|
339
|
-
workingDirectory: args.workingDirectory || process.cwd(),
|
|
340
|
-
captureOutput: true
|
|
341
|
-
});
|
|
342
|
-
|
|
343
|
-
let results = [];
|
|
344
|
-
try {
|
|
345
|
-
if (result.stdout) {
|
|
346
|
-
results = JSON.parse(result.stdout);
|
|
347
|
-
}
|
|
348
|
-
} catch (parseError) {
|
|
349
|
-
logger.warn('Could not parse ESLint output as JSON', { output: result.stdout });
|
|
350
|
-
results = [{
|
|
351
|
-
filePath: 'unknown',
|
|
352
|
-
messages: [{
|
|
353
|
-
message: result.stdout,
|
|
354
|
-
severity: 1,
|
|
355
|
-
line: 0,
|
|
356
|
-
column: 0
|
|
357
|
-
}]
|
|
358
|
-
}];
|
|
359
|
-
}
|
|
316
|
+
run: async (input, context) => {
|
|
317
|
+
const eslintArgs = ['eslint', '--format', 'json'];
|
|
318
|
+
if (input.fix) {
|
|
319
|
+
eslintArgs.push('--fix');
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
if (input.files && input.files.length > 0) {
|
|
323
|
+
eslintArgs.push(...input.files);
|
|
324
|
+
} else {
|
|
325
|
+
eslintArgs.push('**/*.{ts,tsx,js,jsx}');
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
const result = await runNpx(eslintArgs, input.workingDirectory, context);
|
|
360
329
|
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
}
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
} catch (error) {
|
|
371
|
-
logger.error('TypeScript lint failed', { error });
|
|
372
|
-
const content: McpToolResultContent = {
|
|
373
|
-
type: 'application/json',
|
|
374
|
-
data: {
|
|
375
|
-
success: false,
|
|
376
|
-
results: [],
|
|
377
|
-
error: error instanceof Error ? error.message : String(error)
|
|
378
|
-
}
|
|
379
|
-
};
|
|
380
|
-
return { content };
|
|
330
|
+
// ESLint exits 1 when it finds errors, but always prints its JSON report.
|
|
331
|
+
// No parseable report means ESLint itself fell over — that is a failure,
|
|
332
|
+
// and it must not be reported as "no lint problems".
|
|
333
|
+
const raw = (result.stdout ?? '').trim();
|
|
334
|
+
if (raw.length === 0) {
|
|
335
|
+
throw ToolError.executionFailed(
|
|
336
|
+
`eslint produced no report (exit ${result.exitCode}): ` +
|
|
337
|
+
`${result.stderr?.trim() || 'no error output'}`
|
|
338
|
+
);
|
|
381
339
|
}
|
|
340
|
+
|
|
341
|
+
let results: Array<{ errorCount?: number; warningCount?: number }>;
|
|
342
|
+
try {
|
|
343
|
+
results = JSON.parse(raw);
|
|
344
|
+
} catch (parseError) {
|
|
345
|
+
throw ToolError.executionFailed(
|
|
346
|
+
`Could not parse the ESLint JSON report: ` +
|
|
347
|
+
`${parseError instanceof Error ? parseError.message : String(parseError)}`,
|
|
348
|
+
{ details: { outputPreview: raw.slice(0, 200) } }
|
|
349
|
+
);
|
|
350
|
+
}
|
|
351
|
+
|
|
352
|
+
const errorCount = results.reduce((sum, file) => sum + (file.errorCount ?? 0), 0);
|
|
353
|
+
const warningCount = results.reduce((sum, file) => sum + (file.warningCount ?? 0), 0);
|
|
354
|
+
|
|
355
|
+
return {
|
|
356
|
+
passed: errorCount === 0,
|
|
357
|
+
errorCount,
|
|
358
|
+
warningCount,
|
|
359
|
+
results
|
|
360
|
+
};
|
|
382
361
|
}
|
|
383
|
-
};
|
|
362
|
+
});
|
|
384
363
|
|
|
385
|
-
export const typescriptTestTool =
|
|
364
|
+
export const typescriptTestTool = defineTool<
|
|
365
|
+
{ testFiles?: string[]; coverage?: boolean; workingDirectory?: string },
|
|
366
|
+
{ passed: boolean; testsRun: number; testsPassed: number; testsFailed: number; output: string }
|
|
367
|
+
>({
|
|
386
368
|
name: 'typescript_test',
|
|
387
|
-
|
|
369
|
+
category: TOOL_CATEGORIES.INFRASTRUCTURE,
|
|
370
|
+
description:
|
|
371
|
+
'Run Jest tests and return the counts. passed is false when any test fails.',
|
|
388
372
|
inputSchema: {
|
|
389
373
|
type: 'object',
|
|
390
374
|
properties: {
|
|
391
375
|
testFiles: {
|
|
392
376
|
type: 'array',
|
|
393
377
|
items: { type: 'string' },
|
|
394
|
-
description: 'Specific test files to run'
|
|
378
|
+
description: 'Specific test files to run. Runs the whole suite when omitted.'
|
|
395
379
|
},
|
|
396
380
|
coverage: {
|
|
397
381
|
type: 'boolean',
|
|
398
382
|
default: false,
|
|
399
|
-
description: 'Generate
|
|
383
|
+
description: 'Generate a coverage report'
|
|
400
384
|
},
|
|
401
|
-
workingDirectory:
|
|
402
|
-
type: 'string',
|
|
403
|
-
description: 'Working directory path (defaults to current directory)'
|
|
404
|
-
}
|
|
385
|
+
workingDirectory: workingDirectoryProperty
|
|
405
386
|
}
|
|
406
387
|
},
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
coverage?: boolean;
|
|
410
|
-
workingDirectory?: string;
|
|
411
|
-
}, context: McpToolHandlerContext): Promise<McpToolHandlerResult> => {
|
|
412
|
-
|
|
413
|
-
try {
|
|
414
|
-
const jestArgs = ['--no-watchman', '--passWithNoTests'];
|
|
415
|
-
|
|
416
|
-
if (args.coverage) {
|
|
417
|
-
jestArgs.push('--coverage');
|
|
418
|
-
}
|
|
419
|
-
|
|
420
|
-
if (args.testFiles && args.testFiles.length > 0) {
|
|
421
|
-
jestArgs.push(...args.testFiles);
|
|
422
|
-
}
|
|
423
|
-
|
|
424
|
-
const result = await executeShellCommand('npx', ['jest', ...jestArgs], {
|
|
425
|
-
workingDirectory: args.workingDirectory || process.cwd(),
|
|
426
|
-
captureOutput: true
|
|
427
|
-
});
|
|
428
|
-
|
|
429
|
-
// Parse Jest output for test results
|
|
430
|
-
let testsRun = 0;
|
|
431
|
-
let testsPassed = 0;
|
|
432
|
-
let testsFailed = 0;
|
|
433
|
-
|
|
434
|
-
if (result.stdout) {
|
|
435
|
-
const runMatch = result.stdout.match(/Tests:\s+(\d+)\s+total/);
|
|
436
|
-
const passMatch = result.stdout.match(/Tests:\s+\d+\s+failed,\s+(\d+)\s+passed/);
|
|
437
|
-
const failMatch = result.stdout.match(/Tests:\s+(\d+)\s+failed/);
|
|
438
|
-
|
|
439
|
-
if (runMatch) testsRun = parseInt(runMatch[1]);
|
|
440
|
-
if (passMatch) testsPassed = parseInt(passMatch[1]);
|
|
441
|
-
if (failMatch) testsFailed = parseInt(failMatch[1]);
|
|
442
|
-
|
|
443
|
-
// Alternative parsing for different Jest output formats
|
|
444
|
-
if (testsRun === 0) {
|
|
445
|
-
const totalMatch = result.stdout.match(/(\d+)\s+tests?\s+passed/);
|
|
446
|
-
if (totalMatch) {
|
|
447
|
-
testsRun = parseInt(totalMatch[1]);
|
|
448
|
-
testsPassed = testsRun;
|
|
449
|
-
}
|
|
450
|
-
}
|
|
451
|
-
}
|
|
388
|
+
run: async (input, context) => {
|
|
389
|
+
const jestArgs = ['jest', '--no-watchman', '--passWithNoTests'];
|
|
452
390
|
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
testsRun,
|
|
459
|
-
testsPassed,
|
|
460
|
-
testsFailed,
|
|
461
|
-
error: result.exitCode !== 0 ? result.stderr : null
|
|
462
|
-
}
|
|
463
|
-
};
|
|
464
|
-
return { content };
|
|
465
|
-
} catch (error) {
|
|
466
|
-
logger.error('TypeScript test failed', { error });
|
|
467
|
-
const content: McpToolResultContent = {
|
|
468
|
-
type: 'application/json',
|
|
469
|
-
data: {
|
|
470
|
-
success: false,
|
|
471
|
-
output: '',
|
|
472
|
-
testsRun: 0,
|
|
473
|
-
testsPassed: 0,
|
|
474
|
-
testsFailed: 0,
|
|
475
|
-
error: error instanceof Error ? error.message : String(error)
|
|
476
|
-
}
|
|
477
|
-
};
|
|
478
|
-
return { content };
|
|
391
|
+
if (input.coverage) {
|
|
392
|
+
jestArgs.push('--coverage');
|
|
393
|
+
}
|
|
394
|
+
if (input.testFiles && input.testFiles.length > 0) {
|
|
395
|
+
jestArgs.push(...input.testFiles);
|
|
479
396
|
}
|
|
397
|
+
|
|
398
|
+
const result = await runNpx(jestArgs, input.workingDirectory, context);
|
|
399
|
+
|
|
400
|
+
// Jest writes its summary to stderr, not stdout.
|
|
401
|
+
const output = [result.stdout, result.stderr].filter(Boolean).join('\n');
|
|
402
|
+
|
|
403
|
+
// Summary line: "Tests: 1 failed, 2 skipped, 17 passed, 20 total"
|
|
404
|
+
const summary = output.match(/^Tests:\s+(.+)$/m)?.[1] ?? '';
|
|
405
|
+
const readCount = (label: string): number => {
|
|
406
|
+
const match = summary.match(new RegExp(`(\\d+)\\s+${label}`));
|
|
407
|
+
return match ? parseInt(match[1], 10) : 0;
|
|
408
|
+
};
|
|
409
|
+
|
|
410
|
+
const testsRun = readCount('total');
|
|
411
|
+
const testsPassed = readCount('passed');
|
|
412
|
+
const testsFailed = readCount('failed');
|
|
413
|
+
|
|
414
|
+
return {
|
|
415
|
+
passed: result.exitCode === 0,
|
|
416
|
+
testsRun,
|
|
417
|
+
testsPassed,
|
|
418
|
+
testsFailed,
|
|
419
|
+
output
|
|
420
|
+
};
|
|
480
421
|
}
|
|
481
|
-
};
|
|
422
|
+
});
|
|
482
423
|
|
|
483
|
-
// Export all TypeScript tools
|
|
484
424
|
export const typescriptTools = [
|
|
485
425
|
typescriptCheckTool,
|
|
486
426
|
typescriptBuildTool,
|