@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.
Files changed (1032) hide show
  1. package/README.md +19 -1
  2. package/dist/adapters/FrameworkAdapter.d.ts +1 -1
  3. package/dist/adapters/FrameworkAdapter.js +2 -2
  4. package/dist/adapters/FrameworkAdapter.js.map +1 -1
  5. package/dist/adapters/index.d.ts +1 -1
  6. package/dist/adapters/index.js +1 -1
  7. package/dist/config/ConfigManager.d.ts +10 -9
  8. package/dist/config/ConfigManager.d.ts.map +1 -1
  9. package/dist/config/ConfigManager.js +48 -18
  10. package/dist/config/ConfigManager.js.map +1 -1
  11. package/dist/config/McpPromptsConfig.d.ts +1 -1
  12. package/dist/config/McpPromptsConfig.js +1 -1
  13. package/dist/config/ModelContextLimits.d.ts +1 -1
  14. package/dist/config/ModelContextLimits.js +1 -1
  15. package/dist/config/PromptCompactionConfig.d.ts +1 -1
  16. package/dist/config/PromptCompactionConfig.js +1 -1
  17. package/dist/config/PromptConfig.d.ts +1 -1
  18. package/dist/config/PromptConfig.js +1 -1
  19. package/dist/config/ServerConfig.d.ts +1 -1
  20. package/dist/config/ServerConfig.js +1 -1
  21. package/dist/config/dag.config.d.ts +1 -1
  22. package/dist/config/dag.config.js +1 -1
  23. package/dist/config/knowledge-graph.config.d.ts +1 -1
  24. package/dist/config/knowledge-graph.config.js +1 -1
  25. package/dist/config/memory-strata.config.d.ts +25 -0
  26. package/dist/config/memory-strata.config.d.ts.map +1 -0
  27. package/dist/config/memory-strata.config.js +107 -0
  28. package/dist/config/memory-strata.config.js.map +1 -0
  29. package/dist/config/orpar-memory.config.d.ts +1 -1
  30. package/dist/config/orpar-memory.config.js +1 -1
  31. package/dist/config/tensorflow.config.d.ts +1 -1
  32. package/dist/config/tensorflow.config.js +1 -1
  33. package/dist/constants/CoreTools.d.ts +1 -1
  34. package/dist/constants/CoreTools.js +1 -1
  35. package/dist/constants/DefaultPhaseProfiles.d.ts +1 -1
  36. package/dist/constants/DefaultPhaseProfiles.js +1 -1
  37. package/dist/constants/ToolNames.d.ts +2 -30
  38. package/dist/constants/ToolNames.d.ts.map +1 -1
  39. package/dist/constants/ToolNames.js +5 -18
  40. package/dist/constants/ToolNames.js.map +1 -1
  41. package/dist/database/DatabaseAdapterFactory.d.ts +15 -3
  42. package/dist/database/DatabaseAdapterFactory.d.ts.map +1 -1
  43. package/dist/database/DatabaseAdapterFactory.js +22 -7
  44. package/dist/database/DatabaseAdapterFactory.js.map +1 -1
  45. package/dist/database/adapters/mongodb/MongoAgentRepository.d.ts +1 -1
  46. package/dist/database/adapters/mongodb/MongoAgentRepository.js +1 -1
  47. package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts +8 -2
  48. package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts.map +1 -1
  49. package/dist/database/adapters/mongodb/MongoBaseRepository.js +13 -3
  50. package/dist/database/adapters/mongodb/MongoBaseRepository.js.map +1 -1
  51. package/dist/database/adapters/mongodb/MongoChannelRepository.d.ts +1 -1
  52. package/dist/database/adapters/mongodb/MongoChannelRepository.js +1 -1
  53. package/dist/database/adapters/mongodb/MongoDagRepository.d.ts +1 -1
  54. package/dist/database/adapters/mongodb/MongoDagRepository.js +1 -1
  55. package/dist/database/adapters/mongodb/MongoKnowledgeGraphRepository.d.ts +1 -1
  56. package/dist/database/adapters/mongodb/MongoKnowledgeGraphRepository.js +1 -1
  57. package/dist/database/adapters/mongodb/MongoMemoryRepository.d.ts +1 -1
  58. package/dist/database/adapters/mongodb/MongoMemoryRepository.js +1 -1
  59. package/dist/database/adapters/mongodb/MongoTaskRepository.d.ts +1 -1
  60. package/dist/database/adapters/mongodb/MongoTaskRepository.js +1 -1
  61. package/dist/database/adapters/mongodb/index.d.ts +1 -1
  62. package/dist/database/adapters/mongodb/index.js +1 -1
  63. package/dist/database/index.d.ts +1 -1
  64. package/dist/database/index.js +1 -1
  65. package/dist/events/ClientEventBus.d.ts +17 -78
  66. package/dist/events/ClientEventBus.d.ts.map +1 -1
  67. package/dist/events/ClientEventBus.js +39 -312
  68. package/dist/events/ClientEventBus.js.map +1 -1
  69. package/dist/events/EventBus.d.ts +2 -2
  70. package/dist/events/EventBus.d.ts.map +1 -1
  71. package/dist/events/EventBus.js +6 -5
  72. package/dist/events/EventBus.js.map +1 -1
  73. package/dist/events/EventBusBase.d.ts +140 -35
  74. package/dist/events/EventBusBase.d.ts.map +1 -1
  75. package/dist/events/EventBusBase.js +367 -89
  76. package/dist/events/EventBusBase.js.map +1 -1
  77. package/dist/events/EventNames.d.ts +11 -2
  78. package/dist/events/EventNames.d.ts.map +1 -1
  79. package/dist/events/EventNames.js +4 -1
  80. package/dist/events/EventNames.js.map +1 -1
  81. package/dist/events/PublicEvents.d.ts +7 -3
  82. package/dist/events/PublicEvents.d.ts.map +1 -1
  83. package/dist/events/PublicEvents.js +8 -5
  84. package/dist/events/PublicEvents.js.map +1 -1
  85. package/dist/events/ServerEventBus.d.ts +24 -113
  86. package/dist/events/ServerEventBus.d.ts.map +1 -1
  87. package/dist/events/ServerEventBus.js +59 -324
  88. package/dist/events/ServerEventBus.js.map +1 -1
  89. package/dist/events/event-definitions/AgentEvents.d.ts +1 -1
  90. package/dist/events/event-definitions/AgentEvents.js +1 -1
  91. package/dist/events/event-definitions/AnalyticsEvents.d.ts +1 -1
  92. package/dist/events/event-definitions/AnalyticsEvents.js +1 -1
  93. package/dist/events/event-definitions/BulkEvents.d.ts +1 -1
  94. package/dist/events/event-definitions/BulkEvents.js +1 -1
  95. package/dist/events/event-definitions/ChannelEvents.d.ts +1 -1
  96. package/dist/events/event-definitions/ChannelEvents.js +1 -1
  97. package/dist/events/event-definitions/CodeExecutionEvents.d.ts +1 -1
  98. package/dist/events/event-definitions/CodeExecutionEvents.js +1 -1
  99. package/dist/events/event-definitions/CompactionEvents.d.ts +1 -1
  100. package/dist/events/event-definitions/CompactionEvents.js +1 -1
  101. package/dist/events/event-definitions/ConfigEvents.d.ts +1 -1
  102. package/dist/events/event-definitions/ConfigEvents.js +1 -1
  103. package/dist/events/event-definitions/ControlLoopEvents.d.ts +1 -1
  104. package/dist/events/event-definitions/ControlLoopEvents.js +1 -1
  105. package/dist/events/event-definitions/DagEvents.d.ts +1 -1
  106. package/dist/events/event-definitions/DagEvents.js +1 -1
  107. package/dist/events/event-definitions/HeartbeatEvents.d.ts +1 -1
  108. package/dist/events/event-definitions/HeartbeatEvents.js +1 -1
  109. package/dist/events/event-definitions/InferenceParameterEvents.d.ts +1 -1
  110. package/dist/events/event-definitions/InferenceParameterEvents.js +1 -1
  111. package/dist/events/event-definitions/KeyEvents.d.ts +1 -1
  112. package/dist/events/event-definitions/KeyEvents.js +1 -1
  113. package/dist/events/event-definitions/KnowledgeGraphEvents.d.ts +1 -1
  114. package/dist/events/event-definitions/KnowledgeGraphEvents.js +1 -1
  115. package/dist/events/event-definitions/LlmBudgetEvents.d.ts +68 -0
  116. package/dist/events/event-definitions/LlmBudgetEvents.d.ts.map +1 -0
  117. package/dist/events/event-definitions/LlmBudgetEvents.js +35 -0
  118. package/dist/events/event-definitions/LlmBudgetEvents.js.map +1 -0
  119. package/dist/events/event-definitions/LlmEvents.d.ts +1 -1
  120. package/dist/events/event-definitions/LlmEvents.js +1 -1
  121. package/dist/events/event-definitions/McpEvents.d.ts +1 -1
  122. package/dist/events/event-definitions/McpEvents.js +1 -1
  123. package/dist/events/event-definitions/MeilisearchEvents.d.ts +1 -1
  124. package/dist/events/event-definitions/MeilisearchEvents.js +1 -1
  125. package/dist/events/event-definitions/MemoryEvents.d.ts +1 -1
  126. package/dist/events/event-definitions/MemoryEvents.js +1 -1
  127. package/dist/events/event-definitions/MemoryUtilityEvents.d.ts +1 -1
  128. package/dist/events/event-definitions/MemoryUtilityEvents.js +1 -1
  129. package/dist/events/event-definitions/MessageEvents.d.ts +1 -1
  130. package/dist/events/event-definitions/MessageEvents.js +1 -1
  131. package/dist/events/event-definitions/MxpEvents.d.ts +1 -1
  132. package/dist/events/event-definitions/MxpEvents.js +1 -1
  133. package/dist/events/event-definitions/OrparEvents.d.ts +1 -1
  134. package/dist/events/event-definitions/OrparEvents.js +1 -1
  135. package/dist/events/event-definitions/OrparMemoryEvents.d.ts +1 -1
  136. package/dist/events/event-definitions/OrparMemoryEvents.js +1 -1
  137. package/dist/events/event-definitions/PlanEvents.d.ts +1 -1
  138. package/dist/events/event-definitions/PlanEvents.js +1 -1
  139. package/dist/events/event-definitions/ProgressEvents.d.ts +1 -1
  140. package/dist/events/event-definitions/ProgressEvents.js +1 -1
  141. package/dist/events/event-definitions/ShellExecutionEvents.d.ts +1 -1
  142. package/dist/events/event-definitions/ShellExecutionEvents.js +1 -1
  143. package/dist/events/event-definitions/SystemEvents.d.ts +1 -1
  144. package/dist/events/event-definitions/SystemEvents.js +1 -1
  145. package/dist/events/event-definitions/TaskEvents.d.ts +1 -1
  146. package/dist/events/event-definitions/TaskEvents.js +1 -1
  147. package/dist/events/event-definitions/TensorFlowEvents.d.ts +1 -1
  148. package/dist/events/event-definitions/TensorFlowEvents.js +1 -1
  149. package/dist/events/event-definitions/UserInputEvents.d.ts +1 -1
  150. package/dist/events/event-definitions/UserInputEvents.js +1 -1
  151. package/dist/events/event-definitions/WorkflowEvents.d.ts +1 -1
  152. package/dist/events/event-definitions/WorkflowEvents.js +1 -1
  153. package/dist/interfaces/AgentContext.d.ts +1 -1
  154. package/dist/interfaces/AgentContext.js +1 -1
  155. package/dist/interfaces/AgentInterfaces.d.ts +8 -1
  156. package/dist/interfaces/AgentInterfaces.d.ts.map +1 -1
  157. package/dist/interfaces/AgentInterfaces.js +1 -1
  158. package/dist/interfaces/Channel.d.ts +1 -1
  159. package/dist/interfaces/Channel.js +1 -1
  160. package/dist/interfaces/ChannelConfig.d.ts +1 -1
  161. package/dist/interfaces/ChannelConfig.js +1 -1
  162. package/dist/interfaces/ChannelConnectionConfig.d.ts +1 -1
  163. package/dist/interfaces/ChannelConnectionConfig.js +1 -1
  164. package/dist/interfaces/ChannelInfo.d.ts +1 -1
  165. package/dist/interfaces/ChannelInfo.js +1 -1
  166. package/dist/interfaces/ConversationMessage.d.ts +1 -1
  167. package/dist/interfaces/ConversationMessage.js +1 -1
  168. package/dist/interfaces/ILlmTopicExtractor.d.ts +1 -1
  169. package/dist/interfaces/ILlmTopicExtractor.js +1 -1
  170. package/dist/interfaces/IMemoryPersistence.d.ts +41 -0
  171. package/dist/interfaces/IMemoryPersistence.d.ts.map +1 -0
  172. package/dist/interfaces/IMemoryPersistence.js +15 -0
  173. package/dist/interfaces/IMemoryPersistence.js.map +1 -0
  174. package/dist/interfaces/SocketServiceInterface.d.ts +1 -1
  175. package/dist/interfaces/SocketServiceInterface.js +1 -1
  176. package/dist/interfaces/TaskInterfaces.d.ts +1 -1
  177. package/dist/interfaces/TaskInterfaces.js +1 -1
  178. package/dist/middleware/MxpMiddleware.d.ts +9 -2
  179. package/dist/middleware/MxpMiddleware.d.ts.map +1 -1
  180. package/dist/middleware/MxpMiddleware.js +43 -21
  181. package/dist/middleware/MxpMiddleware.js.map +1 -1
  182. package/dist/models/PatternLearningModels.d.ts +1 -1
  183. package/dist/models/PatternLearningModels.js +1 -1
  184. package/dist/models/agent.d.ts +1 -1
  185. package/dist/models/agent.js +1 -1
  186. package/dist/models/auditLog.d.ts +1 -1
  187. package/dist/models/auditLog.js +1 -1
  188. package/dist/models/channel.d.ts +1 -1
  189. package/dist/models/channel.js +1 -1
  190. package/dist/models/channelKey.d.ts +2 -1
  191. package/dist/models/channelKey.d.ts.map +1 -1
  192. package/dist/models/channelKey.js +6 -1
  193. package/dist/models/channelKey.js.map +1 -1
  194. package/dist/models/codeExecution.d.ts +1 -1
  195. package/dist/models/codeExecution.js +1 -1
  196. package/dist/models/controlLoop.d.ts +1 -1
  197. package/dist/models/controlLoop.js +1 -1
  198. package/dist/models/coordination.d.ts +1 -1
  199. package/dist/models/coordination.js +1 -1
  200. package/dist/models/document.d.ts +1 -1
  201. package/dist/models/document.js +1 -1
  202. package/dist/models/entity.d.ts +1 -1
  203. package/dist/models/entity.js +1 -1
  204. package/dist/models/mcpTool.d.ts +1 -1
  205. package/dist/models/mcpTool.js +1 -1
  206. package/dist/models/mcpToolExecution.d.ts +1 -1
  207. package/dist/models/mcpToolExecution.js +1 -1
  208. package/dist/models/memory.d.ts +1 -1
  209. package/dist/models/memory.js +1 -1
  210. package/dist/models/memoryStrata.d.ts +1 -1
  211. package/dist/models/memoryStrata.js +1 -1
  212. package/dist/models/memoryUtility.d.ts +39 -0
  213. package/dist/models/memoryUtility.d.ts.map +1 -0
  214. package/dist/models/memoryUtility.js +39 -0
  215. package/dist/models/memoryUtility.js.map +1 -0
  216. package/dist/models/personalAccessToken.d.ts +1 -1
  217. package/dist/models/personalAccessToken.js +1 -1
  218. package/dist/models/plan.d.ts +1 -1
  219. package/dist/models/plan.js +1 -1
  220. package/dist/models/relationship.d.ts +1 -1
  221. package/dist/models/relationship.js +1 -1
  222. package/dist/models/shellOutput.d.ts +1 -1
  223. package/dist/models/shellOutput.js +1 -1
  224. package/dist/models/task.d.ts +1 -1
  225. package/dist/models/task.js +1 -1
  226. package/dist/models/taskEffectiveness.d.ts +1 -1
  227. package/dist/models/taskEffectiveness.js +1 -1
  228. package/dist/models/tool.d.ts +1 -1
  229. package/dist/models/tool.js +1 -1
  230. package/dist/models/toolExecution.d.ts +1 -1
  231. package/dist/models/toolExecution.js +1 -1
  232. package/dist/models/toolModels.d.ts +1 -1
  233. package/dist/models/toolModels.js +1 -1
  234. package/dist/models/user.d.ts +1 -1
  235. package/dist/models/user.d.ts.map +1 -1
  236. package/dist/models/user.js +24 -2
  237. package/dist/models/user.js.map +1 -1
  238. package/dist/models/userMemory.d.ts +1 -1
  239. package/dist/models/userMemory.js +1 -1
  240. package/dist/mxp/BinaryProtocolLayer.d.ts +25 -9
  241. package/dist/mxp/BinaryProtocolLayer.d.ts.map +1 -1
  242. package/dist/mxp/BinaryProtocolLayer.js +91 -104
  243. package/dist/mxp/BinaryProtocolLayer.js.map +1 -1
  244. package/dist/mxp/ContextCompressionEngine.d.ts +58 -11
  245. package/dist/mxp/ContextCompressionEngine.d.ts.map +1 -1
  246. package/dist/mxp/ContextCompressionEngine.js +171 -129
  247. package/dist/mxp/ContextCompressionEngine.js.map +1 -1
  248. package/dist/mxp/MxpConfigManager.d.ts +1 -1
  249. package/dist/mxp/MxpConfigManager.js +1 -1
  250. package/dist/mxp/MxpTokenOptimizer.d.ts +8 -4
  251. package/dist/mxp/MxpTokenOptimizer.d.ts.map +1 -1
  252. package/dist/mxp/MxpTokenOptimizer.js +9 -6
  253. package/dist/mxp/MxpTokenOptimizer.js.map +1 -1
  254. package/dist/prompts/ChannelContextProvider.d.ts +1 -1
  255. package/dist/prompts/ChannelContextProvider.js +1 -1
  256. package/dist/prompts/DeferredToolSchemaRegistry.d.ts +1 -1
  257. package/dist/prompts/DeferredToolSchemaRegistry.js +1 -1
  258. package/dist/prompts/DynamicContextProvider.d.ts +1 -1
  259. package/dist/prompts/DynamicContextProvider.js +1 -1
  260. package/dist/prompts/MemoryPromptInjector.d.ts +1 -1
  261. package/dist/prompts/MemoryPromptInjector.js +1 -1
  262. package/dist/prompts/MxfAgentSystemPrompt.d.ts +2 -2
  263. package/dist/prompts/MxfAgentSystemPrompt.d.ts.map +1 -1
  264. package/dist/prompts/MxfAgentSystemPrompt.js +48 -58
  265. package/dist/prompts/MxfAgentSystemPrompt.js.map +1 -1
  266. package/dist/prompts/PromptSegmentRegistry.d.ts +1 -1
  267. package/dist/prompts/PromptSegmentRegistry.js +1 -1
  268. package/dist/prompts/ToolBehavioralGuidance.d.ts +1 -1
  269. package/dist/prompts/ToolBehavioralGuidance.js +1 -1
  270. package/dist/protocols/binaryProtocol.d.ts +1 -1
  271. package/dist/protocols/binaryProtocol.js +1 -1
  272. package/dist/protocols/mcp/ClientExecutableManifest.d.ts +1 -1
  273. package/dist/protocols/mcp/ClientExecutableManifest.js +1 -1
  274. package/dist/protocols/mcp/IMcpClient.d.ts +1 -1
  275. package/dist/protocols/mcp/IMcpClient.js +1 -1
  276. package/dist/protocols/mcp/LlmProviderFactory.d.ts +1 -1
  277. package/dist/protocols/mcp/LlmProviderFactory.js +1 -1
  278. package/dist/protocols/mcp/LlmProviders.d.ts +1 -1
  279. package/dist/protocols/mcp/LlmProviders.js +1 -1
  280. package/dist/protocols/mcp/McpClient.d.ts +1 -1
  281. package/dist/protocols/mcp/McpClient.js +1 -1
  282. package/dist/protocols/mcp/McpClientFactory.d.ts +1 -1
  283. package/dist/protocols/mcp/McpClientFactory.js +1 -1
  284. package/dist/protocols/mcp/McpServerTypes.d.ts +1 -1
  285. package/dist/protocols/mcp/McpServerTypes.js +1 -1
  286. package/dist/protocols/mcp/McpToolCallParser.d.ts +1 -1
  287. package/dist/protocols/mcp/McpToolCallParser.js +1 -1
  288. package/dist/protocols/mcp/McpToolSchema.d.ts +1 -1
  289. package/dist/protocols/mcp/McpToolSchema.js +1 -1
  290. package/dist/protocols/mcp/ToolError.d.ts +123 -0
  291. package/dist/protocols/mcp/ToolError.d.ts.map +1 -0
  292. package/dist/protocols/mcp/ToolError.js +108 -0
  293. package/dist/protocols/mcp/ToolError.js.map +1 -0
  294. package/dist/protocols/mcp/converters/IFormatConverter.d.ts +1 -1
  295. package/dist/protocols/mcp/converters/IFormatConverter.js +1 -1
  296. package/dist/protocols/mcp/converters/UnifiedMessageConverter.d.ts +1 -1
  297. package/dist/protocols/mcp/converters/UnifiedMessageConverter.js +1 -1
  298. package/dist/protocols/mcp/converters/adapters/AnthropicMessageAdapter.d.ts +1 -1
  299. package/dist/protocols/mcp/converters/adapters/AnthropicMessageAdapter.js +1 -1
  300. package/dist/protocols/mcp/converters/adapters/GeminiMessageAdapter.d.ts +1 -1
  301. package/dist/protocols/mcp/converters/adapters/GeminiMessageAdapter.js +1 -1
  302. package/dist/protocols/mcp/converters/adapters/OpenAiMessageAdapter.d.ts +1 -1
  303. package/dist/protocols/mcp/converters/adapters/OpenAiMessageAdapter.js +1 -1
  304. package/dist/protocols/mcp/converters/adapters/OpenRouterMessageAdapter.d.ts +1 -1
  305. package/dist/protocols/mcp/converters/adapters/OpenRouterMessageAdapter.js +1 -1
  306. package/dist/protocols/mcp/converters/adapters/XaiMessageAdapter.d.ts +1 -1
  307. package/dist/protocols/mcp/converters/adapters/XaiMessageAdapter.js +1 -1
  308. package/dist/protocols/mcp/defineTool.d.ts +133 -0
  309. package/dist/protocols/mcp/defineTool.d.ts.map +1 -0
  310. package/dist/protocols/mcp/defineTool.js +236 -0
  311. package/dist/protocols/mcp/defineTool.js.map +1 -0
  312. package/dist/protocols/mcp/providers/AnthropicMcpClient.d.ts +1 -1
  313. package/dist/protocols/mcp/providers/AnthropicMcpClient.js +1 -1
  314. package/dist/protocols/mcp/providers/AzureOpenAiMcpClient.d.ts +1 -1
  315. package/dist/protocols/mcp/providers/AzureOpenAiMcpClient.js +1 -1
  316. package/dist/protocols/mcp/providers/BaseMcpClient.d.ts +1 -1
  317. package/dist/protocols/mcp/providers/BaseMcpClient.js +1 -1
  318. package/dist/protocols/mcp/providers/CustomMcpClient.d.ts +1 -1
  319. package/dist/protocols/mcp/providers/CustomMcpClient.js +1 -1
  320. package/dist/protocols/mcp/providers/GeminiMcpClient.d.ts +1 -1
  321. package/dist/protocols/mcp/providers/GeminiMcpClient.js +1 -1
  322. package/dist/protocols/mcp/providers/OllamaMcpClient.d.ts +1 -1
  323. package/dist/protocols/mcp/providers/OllamaMcpClient.js +1 -1
  324. package/dist/protocols/mcp/providers/OpenAiMcpClient.d.ts +1 -1
  325. package/dist/protocols/mcp/providers/OpenAiMcpClient.js +1 -1
  326. package/dist/protocols/mcp/providers/OpenRouterMcpClient.d.ts +15 -1
  327. package/dist/protocols/mcp/providers/OpenRouterMcpClient.d.ts.map +1 -1
  328. package/dist/protocols/mcp/providers/OpenRouterMcpClient.js +32 -22
  329. package/dist/protocols/mcp/providers/OpenRouterMcpClient.js.map +1 -1
  330. package/dist/protocols/mcp/providers/XaiMcpClient.d.ts +1 -1
  331. package/dist/protocols/mcp/providers/XaiMcpClient.js +1 -1
  332. package/dist/protocols/mcp/security/HttpTargetGuard.d.ts +38 -0
  333. package/dist/protocols/mcp/security/HttpTargetGuard.d.ts.map +1 -0
  334. package/dist/protocols/mcp/security/HttpTargetGuard.js +227 -0
  335. package/dist/protocols/mcp/security/HttpTargetGuard.js.map +1 -0
  336. package/dist/protocols/mcp/security/McpConfirmationManager.d.ts +1 -1
  337. package/dist/protocols/mcp/security/McpConfirmationManager.js +1 -1
  338. package/dist/protocols/mcp/security/McpSecurityConfig.d.ts +1 -1
  339. package/dist/protocols/mcp/security/McpSecurityConfig.js +1 -1
  340. package/dist/protocols/mcp/security/McpSecurityGuard.d.ts +10 -2
  341. package/dist/protocols/mcp/security/McpSecurityGuard.d.ts.map +1 -1
  342. package/dist/protocols/mcp/security/McpSecurityGuard.js +11 -3
  343. package/dist/protocols/mcp/security/McpSecurityGuard.js.map +1 -1
  344. package/dist/protocols/mcp/security/McpToolPolicy.d.ts +81 -0
  345. package/dist/protocols/mcp/security/McpToolPolicy.d.ts.map +1 -0
  346. package/dist/protocols/mcp/security/McpToolPolicy.js +202 -0
  347. package/dist/protocols/mcp/security/McpToolPolicy.js.map +1 -0
  348. package/dist/protocols/mcp/security/index.d.ts +1 -1
  349. package/dist/protocols/mcp/security/index.js +1 -1
  350. package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts +52 -19
  351. package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts.map +1 -1
  352. package/dist/protocols/mcp/services/ExternalMcpServerManager.js +257 -284
  353. package/dist/protocols/mcp/services/ExternalMcpServerManager.js.map +1 -1
  354. package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts +40 -7
  355. package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts.map +1 -1
  356. package/dist/protocols/mcp/services/ExternalServerConfigs.js +77 -19
  357. package/dist/protocols/mcp/services/ExternalServerConfigs.js.map +1 -1
  358. package/dist/protocols/mcp/services/IToolEventEmitter.d.ts +1 -1
  359. package/dist/protocols/mcp/services/IToolEventEmitter.js +1 -1
  360. package/dist/protocols/mcp/tools/AnalyticsTools.d.ts +1 -1
  361. package/dist/protocols/mcp/tools/AnalyticsTools.js +2 -2
  362. package/dist/protocols/mcp/tools/AnalyticsTools.js.map +1 -1
  363. package/dist/protocols/mcp/tools/CodeAnalysisTools.d.ts +1 -1
  364. package/dist/protocols/mcp/tools/CodeAnalysisTools.d.ts.map +1 -1
  365. package/dist/protocols/mcp/tools/CodeAnalysisTools.js +16 -1
  366. package/dist/protocols/mcp/tools/CodeAnalysisTools.js.map +1 -1
  367. package/dist/protocols/mcp/tools/DateTimeTools.d.ts +1 -1
  368. package/dist/protocols/mcp/tools/DateTimeTools.js +1 -1
  369. package/dist/protocols/mcp/tools/EffectivenessTools.d.ts +1 -1
  370. package/dist/protocols/mcp/tools/EffectivenessTools.js +4 -4
  371. package/dist/protocols/mcp/tools/EffectivenessTools.js.map +1 -1
  372. package/dist/protocols/mcp/tools/GitTools.d.ts +10 -370
  373. package/dist/protocols/mcp/tools/GitTools.d.ts.map +1 -1
  374. package/dist/protocols/mcp/tools/GitTools.js +223 -518
  375. package/dist/protocols/mcp/tools/GitTools.js.map +1 -1
  376. package/dist/protocols/mcp/tools/InfrastructureTools.d.ts +57 -25
  377. package/dist/protocols/mcp/tools/InfrastructureTools.d.ts.map +1 -1
  378. package/dist/protocols/mcp/tools/InfrastructureTools.js +118 -27
  379. package/dist/protocols/mcp/tools/InfrastructureTools.js.map +1 -1
  380. package/dist/protocols/mcp/tools/JsonTools.d.ts +1 -1
  381. package/dist/protocols/mcp/tools/JsonTools.js +1 -1
  382. package/dist/protocols/mcp/tools/KnowledgeGraphTools.d.ts +1 -1
  383. package/dist/protocols/mcp/tools/KnowledgeGraphTools.js +1 -1
  384. package/dist/protocols/mcp/tools/MemorySearchTools.d.ts +1 -4
  385. package/dist/protocols/mcp/tools/MemorySearchTools.d.ts.map +1 -1
  386. package/dist/protocols/mcp/tools/MemorySearchTools.js +59 -2
  387. package/dist/protocols/mcp/tools/MemorySearchTools.js.map +1 -1
  388. package/dist/protocols/mcp/tools/MemoryUtilityTools.d.ts +1 -1
  389. package/dist/protocols/mcp/tools/MemoryUtilityTools.js +1 -1
  390. package/dist/protocols/mcp/tools/OrparTools.d.ts +9 -1
  391. package/dist/protocols/mcp/tools/OrparTools.d.ts.map +1 -1
  392. package/dist/protocols/mcp/tools/OrparTools.js +67 -1
  393. package/dist/protocols/mcp/tools/OrparTools.js.map +1 -1
  394. package/dist/protocols/mcp/tools/PlanningTools.d.ts +1 -1
  395. package/dist/protocols/mcp/tools/PlanningTools.js +1 -1
  396. package/dist/protocols/mcp/tools/PredictiveTools.d.ts +1 -1
  397. package/dist/protocols/mcp/tools/PredictiveTools.js +1 -1
  398. package/dist/protocols/mcp/tools/ProgressTools.d.ts +1 -1
  399. package/dist/protocols/mcp/tools/ProgressTools.js +1 -1
  400. package/dist/protocols/mcp/tools/ProjectContextTools.d.ts +1 -1
  401. package/dist/protocols/mcp/tools/ProjectContextTools.js +1 -1
  402. package/dist/protocols/mcp/tools/SafetyTools.d.ts +8 -526
  403. package/dist/protocols/mcp/tools/SafetyTools.d.ts.map +1 -1
  404. package/dist/protocols/mcp/tools/SafetyTools.js +350 -515
  405. package/dist/protocols/mcp/tools/SafetyTools.js.map +1 -1
  406. package/dist/protocols/mcp/tools/SearchProjectTools.d.ts +1 -1
  407. package/dist/protocols/mcp/tools/SearchProjectTools.js +1 -1
  408. package/dist/protocols/mcp/tools/TaskPlanningTools.d.ts +1 -1
  409. package/dist/protocols/mcp/tools/TaskPlanningTools.d.ts.map +1 -1
  410. package/dist/protocols/mcp/tools/TaskPlanningTools.js +57 -27
  411. package/dist/protocols/mcp/tools/TaskPlanningTools.js.map +1 -1
  412. package/dist/protocols/mcp/tools/TestTools.d.ts +16 -377
  413. package/dist/protocols/mcp/tools/TestTools.d.ts.map +1 -1
  414. package/dist/protocols/mcp/tools/TestTools.js +242 -364
  415. package/dist/protocols/mcp/tools/TestTools.js.map +1 -1
  416. package/dist/protocols/mcp/tools/ToolHelpTools.d.ts +1 -1
  417. package/dist/protocols/mcp/tools/ToolHelpTools.js +1 -1
  418. package/dist/protocols/mcp/tools/TypeScriptTools.d.ts +7 -277
  419. package/dist/protocols/mcp/tools/TypeScriptTools.d.ts.map +1 -1
  420. package/dist/protocols/mcp/tools/TypeScriptTools.js +224 -338
  421. package/dist/protocols/mcp/tools/TypeScriptTools.js.map +1 -1
  422. package/dist/protocols/mcp/tools/UserInputTools.d.ts +1 -1
  423. package/dist/protocols/mcp/tools/UserInputTools.js +1 -1
  424. package/dist/protocols/mcp/tools/UserMemoryTools.d.ts +1 -1
  425. package/dist/protocols/mcp/tools/UserMemoryTools.js +1 -1
  426. package/dist/protocols/mcp/tools/WebTools.d.ts +16 -729
  427. package/dist/protocols/mcp/tools/WebTools.d.ts.map +1 -1
  428. package/dist/protocols/mcp/tools/WebTools.js +152 -258
  429. package/dist/protocols/mcp/tools/WebTools.js.map +1 -1
  430. package/dist/protocols/mcp/tools/WolframTools.d.ts +1 -1
  431. package/dist/protocols/mcp/tools/WolframTools.js +1 -1
  432. package/dist/protocols/mcp/tools/shell/CommandClassification.d.ts +1 -1
  433. package/dist/protocols/mcp/tools/shell/CommandClassification.js +1 -1
  434. package/dist/protocols/mcp/tools/shell/CommandSemantics.d.ts +1 -1
  435. package/dist/protocols/mcp/tools/shell/CommandSemantics.js +1 -1
  436. package/dist/protocols/mcp/tools/shell/DestructiveCommandWarnings.d.ts +1 -1
  437. package/dist/protocols/mcp/tools/shell/DestructiveCommandWarnings.js +1 -1
  438. package/dist/protocols/mcp/tools/shell/LargeOutputHandler.d.ts +1 -1
  439. package/dist/protocols/mcp/tools/shell/LargeOutputHandler.js +1 -1
  440. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts +6 -4
  441. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts.map +1 -1
  442. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js +32 -7
  443. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js.map +1 -1
  444. package/dist/protocols/mcp/tools/shell/ShellSandbox.d.ts +1 -1
  445. package/dist/protocols/mcp/tools/shell/ShellSandbox.js +1 -1
  446. package/dist/protocols/mcp/tools/shell/index.d.ts +1 -1
  447. package/dist/protocols/mcp/tools/shell/index.js +1 -1
  448. package/dist/protocols/mcp/utils/JsonRecovery.d.ts +1 -1
  449. package/dist/protocols/mcp/utils/JsonRecovery.js +1 -1
  450. package/dist/protocols/mcp/utils/MessageConverters.d.ts +1 -1
  451. package/dist/protocols/mcp/utils/MessageConverters.js +1 -1
  452. package/dist/protocols/mcp/utils/NetworkRecovery.d.ts +1 -1
  453. package/dist/protocols/mcp/utils/NetworkRecovery.js +1 -1
  454. package/dist/protocols/mcp/utils/ToolHandlers.d.ts +1 -1
  455. package/dist/protocols/mcp/utils/ToolHandlers.js +1 -1
  456. package/dist/repositories/interfaces/IAgentRepository.d.ts +1 -1
  457. package/dist/repositories/interfaces/IAgentRepository.js +1 -1
  458. package/dist/repositories/interfaces/IBaseRepository.d.ts +1 -1
  459. package/dist/repositories/interfaces/IBaseRepository.js +1 -1
  460. package/dist/repositories/interfaces/IChannelRepository.d.ts +1 -1
  461. package/dist/repositories/interfaces/IChannelRepository.js +1 -1
  462. package/dist/repositories/interfaces/IDagRepository.d.ts +1 -1
  463. package/dist/repositories/interfaces/IDagRepository.js +1 -1
  464. package/dist/repositories/interfaces/IKnowledgeGraphRepository.d.ts +1 -1
  465. package/dist/repositories/interfaces/IKnowledgeGraphRepository.js +1 -1
  466. package/dist/repositories/interfaces/IMemoryRepository.d.ts +1 -1
  467. package/dist/repositories/interfaces/IMemoryRepository.js +1 -1
  468. package/dist/repositories/interfaces/ITaskRepository.d.ts +1 -1
  469. package/dist/repositories/interfaces/ITaskRepository.js +1 -1
  470. package/dist/repositories/interfaces/index.d.ts +1 -1
  471. package/dist/repositories/interfaces/index.js +1 -1
  472. package/dist/repositories/types/FilterTypes.d.ts +1 -1
  473. package/dist/repositories/types/FilterTypes.js +1 -1
  474. package/dist/repositories/types/PaginationTypes.d.ts +1 -1
  475. package/dist/repositories/types/PaginationTypes.js +1 -1
  476. package/dist/schemas/CodeExecutionEventPayloads.d.ts +1 -1
  477. package/dist/schemas/CodeExecutionEventPayloads.js +1 -1
  478. package/dist/schemas/EventPayloadSchema.d.ts +22 -1
  479. package/dist/schemas/EventPayloadSchema.d.ts.map +1 -1
  480. package/dist/schemas/EventPayloadSchema.js +15 -1
  481. package/dist/schemas/EventPayloadSchema.js.map +1 -1
  482. package/dist/schemas/JsonResponseSchemas.d.ts +1 -1
  483. package/dist/schemas/JsonResponseSchemas.js +1 -1
  484. package/dist/schemas/MessageSchemas.d.ts +1 -1
  485. package/dist/schemas/MessageSchemas.js +1 -1
  486. package/dist/schemas/MxpProtocolSchemas.d.ts +1 -1
  487. package/dist/schemas/MxpProtocolSchemas.js +1 -1
  488. package/dist/schemas/ShellExecutionEventPayloads.d.ts +1 -1
  489. package/dist/schemas/ShellExecutionEventPayloads.js +1 -1
  490. package/dist/services/AgentPerformanceService.d.ts +1 -1
  491. package/dist/services/AgentPerformanceService.js +1 -1
  492. package/dist/services/AutoCorrectionIntegrationService.d.ts +1 -1
  493. package/dist/services/AutoCorrectionIntegrationService.js +1 -1
  494. package/dist/services/AutoCorrectionService.d.ts +1 -1
  495. package/dist/services/AutoCorrectionService.js +1 -1
  496. package/dist/services/AutoMemoryCreator.d.ts +1 -1
  497. package/dist/services/AutoMemoryCreator.js +1 -1
  498. package/dist/services/BackgroundTaskManager.d.ts +1 -1
  499. package/dist/services/BackgroundTaskManager.d.ts.map +1 -1
  500. package/dist/services/BackgroundTaskManager.js +13 -5
  501. package/dist/services/BackgroundTaskManager.js.map +1 -1
  502. package/dist/services/BrowserManager.d.ts +2 -2
  503. package/dist/services/BrowserManager.d.ts.map +1 -1
  504. package/dist/services/BrowserManager.js +27 -4
  505. package/dist/services/BrowserManager.js.map +1 -1
  506. package/dist/services/ChannelContextMemoryOperations.d.ts +1 -1
  507. package/dist/services/ChannelContextMemoryOperations.js +1 -1
  508. package/dist/services/ChannelContextMessageOperations.d.ts +1 -1
  509. package/dist/services/ChannelContextMessageOperations.js +1 -1
  510. package/dist/services/CodeExecutionSandboxService.d.ts +1 -1
  511. package/dist/services/CodeExecutionSandboxService.js +1 -1
  512. package/dist/services/ContainerExecutionManager.d.ts +1 -1
  513. package/dist/services/ContainerExecutionManager.js +1 -1
  514. package/dist/services/ContentProcessor.d.ts +1 -1
  515. package/dist/services/ContentProcessor.js +1 -1
  516. package/dist/services/McpToolDocumentationService.d.ts +1 -1
  517. package/dist/services/McpToolDocumentationService.js +1 -1
  518. package/dist/services/MemoryCompressor.d.ts +12 -3
  519. package/dist/services/MemoryCompressor.d.ts.map +1 -1
  520. package/dist/services/MemoryCompressor.js +9 -27
  521. package/dist/services/MemoryCompressor.js.map +1 -1
  522. package/dist/services/MemoryService.d.ts +17 -4
  523. package/dist/services/MemoryService.d.ts.map +1 -1
  524. package/dist/services/MemoryService.js +80 -56
  525. package/dist/services/MemoryService.js.map +1 -1
  526. package/dist/services/MxfMLService.d.ts +16 -1
  527. package/dist/services/MxfMLService.d.ts.map +1 -1
  528. package/dist/services/MxfMLService.js +55 -16
  529. package/dist/services/MxfMLService.js.map +1 -1
  530. package/dist/services/MxfMeilisearchService.d.ts +1 -1
  531. package/dist/services/MxfMeilisearchService.js +1 -1
  532. package/dist/services/MxfMessageAggregator.d.ts +1 -1
  533. package/dist/services/MxfMessageAggregator.js +1 -1
  534. package/dist/services/PatternLearningService.d.ts +1 -1
  535. package/dist/services/PatternLearningService.js +1 -1
  536. package/dist/services/PerformanceOptimizationService.d.ts +1 -1
  537. package/dist/services/PerformanceOptimizationService.js +1 -1
  538. package/dist/services/PredictiveAnalyticsService.d.ts +35 -5
  539. package/dist/services/PredictiveAnalyticsService.d.ts.map +1 -1
  540. package/dist/services/PredictiveAnalyticsService.js +42 -26
  541. package/dist/services/PredictiveAnalyticsService.js.map +1 -1
  542. package/dist/services/ProactiveValidationService.d.ts +1 -1
  543. package/dist/services/ProactiveValidationService.js +1 -1
  544. package/dist/services/PromptArgumentInferenceService.d.ts +1 -1
  545. package/dist/services/PromptArgumentInferenceService.js +1 -1
  546. package/dist/services/QValueManager.d.ts +8 -1
  547. package/dist/services/QValueManager.d.ts.map +1 -1
  548. package/dist/services/QValueManager.js +10 -1
  549. package/dist/services/QValueManager.js.map +1 -1
  550. package/dist/services/ReasoningToolParser.d.ts +1 -1
  551. package/dist/services/ReasoningToolParser.js +1 -1
  552. package/dist/services/RecoveryWorkflowService.d.ts +1 -1
  553. package/dist/services/RecoveryWorkflowService.js +1 -1
  554. package/dist/services/ReflectionService.d.ts +1 -1
  555. package/dist/services/ReflectionService.js +1 -1
  556. package/dist/services/RetentionGateService.d.ts +1 -1
  557. package/dist/services/RetentionGateService.js +1 -1
  558. package/dist/services/RewardSignalProcessor.d.ts +39 -2
  559. package/dist/services/RewardSignalProcessor.d.ts.map +1 -1
  560. package/dist/services/RewardSignalProcessor.js +110 -8
  561. package/dist/services/RewardSignalProcessor.js.map +1 -1
  562. package/dist/services/SharedStateService.d.ts +17 -3
  563. package/dist/services/SharedStateService.d.ts.map +1 -1
  564. package/dist/services/SharedStateService.js +45 -4
  565. package/dist/services/SharedStateService.js.map +1 -1
  566. package/dist/services/StratumManager.d.ts +1 -1
  567. package/dist/services/StratumManager.js +1 -1
  568. package/dist/services/StructuredSummaryBuilder.d.ts +1 -1
  569. package/dist/services/StructuredSummaryBuilder.js +1 -1
  570. package/dist/services/SurpriseCalculator.d.ts +1 -1
  571. package/dist/services/SurpriseCalculator.js +1 -1
  572. package/dist/services/SystemLlmMemoryAnalyzer.d.ts +1 -1
  573. package/dist/services/SystemLlmMemoryAnalyzer.js +1 -1
  574. package/dist/services/TaskEffectivenessService.d.ts +35 -19
  575. package/dist/services/TaskEffectivenessService.d.ts.map +1 -1
  576. package/dist/services/TaskEffectivenessService.js +92 -156
  577. package/dist/services/TaskEffectivenessService.js.map +1 -1
  578. package/dist/services/ToolExecutionInterceptor.d.ts +1 -1
  579. package/dist/services/ToolExecutionInterceptor.js +1 -1
  580. package/dist/services/UserInputRequestManager.d.ts +1 -1
  581. package/dist/services/UserInputRequestManager.js +1 -1
  582. package/dist/services/UserMemoryService.d.ts +1 -1
  583. package/dist/services/UserMemoryService.js +1 -1
  584. package/dist/services/UtilityScorerService.d.ts +1 -1
  585. package/dist/services/UtilityScorerService.js +1 -1
  586. package/dist/services/ValidationAnalyticsService.d.ts +1 -1
  587. package/dist/services/ValidationAnalyticsService.js +1 -1
  588. package/dist/services/ValidationCacheService.d.ts +1 -1
  589. package/dist/services/ValidationCacheService.js +1 -1
  590. package/dist/services/ValidationMiddleware.d.ts +1 -1
  591. package/dist/services/ValidationMiddleware.js +1 -1
  592. package/dist/services/ValidationPerformanceService.d.ts +1 -1
  593. package/dist/services/ValidationPerformanceService.js +1 -1
  594. package/dist/services/WebSearchService.d.ts +1 -1
  595. package/dist/services/WebSearchService.d.ts.map +1 -1
  596. package/dist/services/WebSearchService.js +1 -1
  597. package/dist/services/WebSearchService.js.map +1 -1
  598. package/dist/services/dag/TaskDagService.d.ts +1 -1
  599. package/dist/services/dag/TaskDagService.d.ts.map +1 -1
  600. package/dist/services/dag/TaskDagService.js +3 -1
  601. package/dist/services/dag/TaskDagService.js.map +1 -1
  602. package/dist/services/dag/algorithms/TopologicalSort.d.ts +1 -1
  603. package/dist/services/dag/algorithms/TopologicalSort.js +1 -1
  604. package/dist/services/kg/EntityExtractionService.d.ts +1 -1
  605. package/dist/services/kg/EntityExtractionService.js +1 -1
  606. package/dist/services/kg/EntityQValueManager.d.ts +1 -1
  607. package/dist/services/kg/EntityQValueManager.js +1 -1
  608. package/dist/services/kg/GraphSurpriseCalculator.d.ts +1 -1
  609. package/dist/services/kg/GraphSurpriseCalculator.js +1 -1
  610. package/dist/services/kg/KnowledgeGraphService.d.ts +1 -1
  611. package/dist/services/kg/KnowledgeGraphService.js +1 -1
  612. package/dist/services/kg/OrparGraphIntegration.d.ts +1 -1
  613. package/dist/services/kg/OrparGraphIntegration.js +1 -1
  614. package/dist/services/orpar-memory/CycleConsolidationTrigger.d.ts +1 -1
  615. package/dist/services/orpar-memory/CycleConsolidationTrigger.js +1 -1
  616. package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts +8 -1
  617. package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts.map +1 -1
  618. package/dist/services/orpar-memory/OrparMemoryCoordinator.js +72 -11
  619. package/dist/services/orpar-memory/OrparMemoryCoordinator.js.map +1 -1
  620. package/dist/services/orpar-memory/PhaseMemoryOperations.d.ts +1 -1
  621. package/dist/services/orpar-memory/PhaseMemoryOperations.js +1 -1
  622. package/dist/services/orpar-memory/PhaseStrataRouter.d.ts +1 -1
  623. package/dist/services/orpar-memory/PhaseStrataRouter.js +1 -1
  624. package/dist/services/orpar-memory/PhaseWeightedRewarder.d.ts +1 -1
  625. package/dist/services/orpar-memory/PhaseWeightedRewarder.js +1 -1
  626. package/dist/services/orpar-memory/SurpriseOrparAdapter.d.ts +1 -1
  627. package/dist/services/orpar-memory/SurpriseOrparAdapter.js +1 -1
  628. package/dist/services/orpar-memory/index.d.ts +1 -1
  629. package/dist/services/orpar-memory/index.js +1 -1
  630. package/dist/types/Agent.d.ts +1 -1
  631. package/dist/types/Agent.js +1 -1
  632. package/dist/types/AgentPerformanceTypes.d.ts +1 -1
  633. package/dist/types/AgentPerformanceTypes.js +1 -1
  634. package/dist/types/AgentRegistry.d.ts +1 -1
  635. package/dist/types/AgentRegistry.js +1 -1
  636. package/dist/types/AgentTypes.d.ts +1 -1
  637. package/dist/types/AgentTypes.js +1 -1
  638. package/dist/types/ChannelContext.d.ts +1 -1
  639. package/dist/types/ChannelContext.js +1 -1
  640. package/dist/types/ControlLoopTypes.d.ts +1 -1
  641. package/dist/types/ControlLoopTypes.js +1 -1
  642. package/dist/types/DagTypes.d.ts +1 -1
  643. package/dist/types/DagTypes.js +1 -1
  644. package/dist/types/EffectivenessTypes.d.ts +1 -1
  645. package/dist/types/EffectivenessTypes.js +1 -1
  646. package/dist/types/InferenceParameterTypes.d.ts +1 -1
  647. package/dist/types/InferenceParameterTypes.js +1 -1
  648. package/dist/types/KnowledgeGraphTypes.d.ts +1 -1
  649. package/dist/types/KnowledgeGraphTypes.js +1 -1
  650. package/dist/types/LlmTypes.d.ts +1 -1
  651. package/dist/types/LlmTypes.js +1 -1
  652. package/dist/types/McpPromptTypes.d.ts +1 -1
  653. package/dist/types/McpPromptTypes.js +1 -1
  654. package/dist/types/MemoryTypes.d.ts +1 -1
  655. package/dist/types/MemoryTypes.js +1 -1
  656. package/dist/types/MemoryUtilityTypes.d.ts +3 -1
  657. package/dist/types/MemoryUtilityTypes.d.ts.map +1 -1
  658. package/dist/types/MemoryUtilityTypes.js +1 -1
  659. package/dist/types/MemoryUtilityTypes.js.map +1 -1
  660. package/dist/types/MxpTypes.d.ts +1 -1
  661. package/dist/types/MxpTypes.js +1 -1
  662. package/dist/types/NetworkRecoveryTypes.d.ts +1 -1
  663. package/dist/types/NetworkRecoveryTypes.js +1 -1
  664. package/dist/types/OrparMemoryIntegrationTypes.d.ts +1 -1
  665. package/dist/types/OrparMemoryIntegrationTypes.js +1 -1
  666. package/dist/types/PatternLearningTypes.d.ts +1 -1
  667. package/dist/types/PatternLearningTypes.js +1 -1
  668. package/dist/types/PatternMemoryTypes.d.ts +1 -1
  669. package/dist/types/PatternMemoryTypes.js +1 -1
  670. package/dist/types/ReflectionTypes.d.ts +1 -1
  671. package/dist/types/ReflectionTypes.js +1 -1
  672. package/dist/types/TaskCompletionTypes.d.ts +1 -1
  673. package/dist/types/TaskCompletionTypes.js +1 -1
  674. package/dist/types/TaskTypes.d.ts +1 -1
  675. package/dist/types/TaskTypes.js +1 -1
  676. package/dist/types/TensorFlowTypes.d.ts +1 -1
  677. package/dist/types/TensorFlowTypes.js +1 -1
  678. package/dist/types/ValidationPerformanceTypes.d.ts +1 -1
  679. package/dist/types/ValidationPerformanceTypes.js +1 -1
  680. package/dist/types/toolTypes.d.ts +1 -1
  681. package/dist/types/toolTypes.js +1 -1
  682. package/dist/types/types.d.ts +1 -1
  683. package/dist/types/types.js +1 -1
  684. package/dist/utils/Logger.d.ts +44 -4
  685. package/dist/utils/Logger.d.ts.map +1 -1
  686. package/dist/utils/Logger.js +79 -37
  687. package/dist/utils/Logger.js.map +1 -1
  688. package/dist/utils/MxpEncryption.d.ts +20 -7
  689. package/dist/utils/MxpEncryption.d.ts.map +1 -1
  690. package/dist/utils/MxpEncryption.js +49 -17
  691. package/dist/utils/MxpEncryption.js.map +1 -1
  692. package/dist/utils/ParameterNormalizer.d.ts +1 -1
  693. package/dist/utils/ParameterNormalizer.js +1 -1
  694. package/dist/utils/PromptTemplateReplacer.d.ts +1 -1
  695. package/dist/utils/PromptTemplateReplacer.js +1 -1
  696. package/dist/utils/TokenEstimator.d.ts +1 -1
  697. package/dist/utils/TokenEstimator.js +1 -1
  698. package/dist/utils/ToolPaginationUtils.d.ts +1 -1
  699. package/dist/utils/ToolPaginationUtils.js +1 -1
  700. package/dist/utils/toon/eligibility.d.ts +1 -1
  701. package/dist/utils/toon/eligibility.js +1 -1
  702. package/dist/utils/toon/encoder.d.ts +1 -1
  703. package/dist/utils/toon/encoder.js +1 -1
  704. package/dist/utils/toon/formatter.d.ts +1 -1
  705. package/dist/utils/toon/formatter.js +1 -1
  706. package/dist/utils/toon/index.d.ts +1 -1
  707. package/dist/utils/toon/index.js +1 -1
  708. package/dist/utils/toon/metrics.d.ts +1 -1
  709. package/dist/utils/toon/metrics.js +1 -1
  710. package/dist/utils/toon/types.d.ts +1 -1
  711. package/dist/utils/toon/types.js +1 -1
  712. package/dist/utils/validation.d.ts +1 -1
  713. package/dist/utils/validation.js +1 -1
  714. package/package.json +20 -5
  715. package/src/adapters/FrameworkAdapter.ts +2 -2
  716. package/src/adapters/index.ts +1 -1
  717. package/src/config/ConfigManager.ts +53 -20
  718. package/src/config/McpPromptsConfig.ts +1 -1
  719. package/src/config/ModelContextLimits.ts +1 -1
  720. package/src/config/PromptCompactionConfig.ts +1 -1
  721. package/src/config/PromptConfig.ts +1 -1
  722. package/src/config/ServerConfig.ts +1 -1
  723. package/src/config/dag.config.ts +1 -1
  724. package/src/config/knowledge-graph.config.ts +1 -1
  725. package/src/config/memory-strata.config.ts +136 -0
  726. package/src/config/orpar-memory.config.ts +1 -1
  727. package/src/config/tensorflow.config.ts +1 -1
  728. package/src/constants/CoreTools.ts +1 -1
  729. package/src/constants/DefaultPhaseProfiles.ts +1 -1
  730. package/src/constants/ToolNames.ts +5 -19
  731. package/src/database/DatabaseAdapterFactory.ts +24 -7
  732. package/src/database/adapters/mongodb/MongoAgentRepository.ts +1 -1
  733. package/src/database/adapters/mongodb/MongoBaseRepository.ts +17 -3
  734. package/src/database/adapters/mongodb/MongoChannelRepository.ts +1 -1
  735. package/src/database/adapters/mongodb/MongoDagRepository.ts +1 -1
  736. package/src/database/adapters/mongodb/MongoKnowledgeGraphRepository.ts +1 -1
  737. package/src/database/adapters/mongodb/MongoMemoryRepository.ts +1 -1
  738. package/src/database/adapters/mongodb/MongoTaskRepository.ts +1 -1
  739. package/src/database/adapters/mongodb/index.ts +1 -1
  740. package/src/database/index.ts +1 -1
  741. package/src/events/ClientEventBus.ts +69 -404
  742. package/src/events/EventBus.ts +8 -9
  743. package/src/events/EventBusBase.ts +480 -117
  744. package/src/events/EventNames.ts +7 -1
  745. package/src/events/PublicEvents.ts +8 -5
  746. package/src/events/ServerEventBus.ts +79 -474
  747. package/src/events/event-definitions/AgentEvents.ts +1 -1
  748. package/src/events/event-definitions/AnalyticsEvents.ts +1 -1
  749. package/src/events/event-definitions/BulkEvents.ts +1 -1
  750. package/src/events/event-definitions/ChannelEvents.ts +1 -1
  751. package/src/events/event-definitions/CodeExecutionEvents.ts +1 -1
  752. package/src/events/event-definitions/CompactionEvents.ts +1 -1
  753. package/src/events/event-definitions/ConfigEvents.ts +1 -1
  754. package/src/events/event-definitions/ControlLoopEvents.ts +1 -1
  755. package/src/events/event-definitions/DagEvents.ts +1 -1
  756. package/src/events/event-definitions/HeartbeatEvents.ts +1 -1
  757. package/src/events/event-definitions/InferenceParameterEvents.ts +1 -1
  758. package/src/events/event-definitions/KeyEvents.ts +1 -1
  759. package/src/events/event-definitions/KnowledgeGraphEvents.ts +1 -1
  760. package/src/events/event-definitions/LlmBudgetEvents.ts +74 -0
  761. package/src/events/event-definitions/LlmEvents.ts +1 -1
  762. package/src/events/event-definitions/McpEvents.ts +1 -1
  763. package/src/events/event-definitions/MeilisearchEvents.ts +1 -1
  764. package/src/events/event-definitions/MemoryEvents.ts +1 -1
  765. package/src/events/event-definitions/MemoryUtilityEvents.ts +1 -1
  766. package/src/events/event-definitions/MessageEvents.ts +1 -1
  767. package/src/events/event-definitions/MxpEvents.ts +1 -1
  768. package/src/events/event-definitions/OrparEvents.ts +1 -1
  769. package/src/events/event-definitions/OrparMemoryEvents.ts +1 -1
  770. package/src/events/event-definitions/PlanEvents.ts +1 -1
  771. package/src/events/event-definitions/ProgressEvents.ts +1 -1
  772. package/src/events/event-definitions/ShellExecutionEvents.ts +1 -1
  773. package/src/events/event-definitions/SystemEvents.ts +1 -1
  774. package/src/events/event-definitions/TaskEvents.ts +1 -1
  775. package/src/events/event-definitions/TensorFlowEvents.ts +1 -1
  776. package/src/events/event-definitions/UserInputEvents.ts +1 -1
  777. package/src/events/event-definitions/WorkflowEvents.ts +1 -1
  778. package/src/interfaces/AgentContext.ts +1 -1
  779. package/src/interfaces/AgentInterfaces.ts +9 -2
  780. package/src/interfaces/Channel.ts +1 -1
  781. package/src/interfaces/ChannelConfig.ts +1 -1
  782. package/src/interfaces/ChannelConnectionConfig.ts +1 -1
  783. package/src/interfaces/ChannelInfo.ts +1 -1
  784. package/src/interfaces/ConversationMessage.ts +1 -1
  785. package/src/interfaces/ILlmTopicExtractor.ts +1 -1
  786. package/src/interfaces/IMemoryPersistence.ts +51 -0
  787. package/src/interfaces/SocketServiceInterface.ts +1 -1
  788. package/src/interfaces/TaskInterfaces.ts +1 -1
  789. package/src/middleware/MxpMiddleware.ts +52 -25
  790. package/src/models/PatternLearningModels.ts +1 -1
  791. package/src/models/agent.ts +1 -1
  792. package/src/models/auditLog.ts +1 -1
  793. package/src/models/channel.ts +1 -1
  794. package/src/models/channelKey.ts +19 -5
  795. package/src/models/codeExecution.ts +1 -1
  796. package/src/models/controlLoop.ts +1 -1
  797. package/src/models/coordination.ts +1 -1
  798. package/src/models/document.ts +1 -1
  799. package/src/models/entity.ts +1 -1
  800. package/src/models/mcpTool.ts +1 -1
  801. package/src/models/mcpToolExecution.ts +1 -1
  802. package/src/models/memory.ts +1 -1
  803. package/src/models/memoryStrata.ts +1 -1
  804. package/src/models/memoryUtility.ts +64 -0
  805. package/src/models/personalAccessToken.ts +1 -1
  806. package/src/models/plan.ts +1 -1
  807. package/src/models/relationship.ts +1 -1
  808. package/src/models/shellOutput.ts +1 -1
  809. package/src/models/task.ts +1 -1
  810. package/src/models/taskEffectiveness.ts +1 -1
  811. package/src/models/tool.ts +1 -1
  812. package/src/models/toolExecution.ts +1 -1
  813. package/src/models/toolModels.ts +1 -1
  814. package/src/models/user.ts +37 -5
  815. package/src/models/userMemory.ts +1 -1
  816. package/src/mxp/BinaryProtocolLayer.ts +109 -125
  817. package/src/mxp/ContextCompressionEngine.ts +220 -162
  818. package/src/mxp/MxpConfigManager.ts +1 -1
  819. package/src/mxp/MxpTokenOptimizer.ts +11 -11
  820. package/src/prompts/ChannelContextProvider.ts +1 -1
  821. package/src/prompts/DeferredToolSchemaRegistry.ts +1 -1
  822. package/src/prompts/DynamicContextProvider.ts +1 -1
  823. package/src/prompts/MemoryPromptInjector.ts +1 -1
  824. package/src/prompts/MxfAgentSystemPrompt.ts +46 -56
  825. package/src/prompts/PromptSegmentRegistry.ts +1 -1
  826. package/src/prompts/ToolBehavioralGuidance.ts +1 -1
  827. package/src/protocols/binaryProtocol.ts +1 -1
  828. package/src/protocols/mcp/ClientExecutableManifest.ts +1 -1
  829. package/src/protocols/mcp/IMcpClient.ts +1 -1
  830. package/src/protocols/mcp/LlmProviderFactory.ts +1 -1
  831. package/src/protocols/mcp/LlmProviders.ts +1 -1
  832. package/src/protocols/mcp/McpClient.ts +1 -1
  833. package/src/protocols/mcp/McpClientFactory.ts +1 -1
  834. package/src/protocols/mcp/McpServerTypes.ts +1 -1
  835. package/src/protocols/mcp/McpToolCallParser.ts +1 -1
  836. package/src/protocols/mcp/McpToolSchema.ts +1 -1
  837. package/src/protocols/mcp/ToolError.ts +201 -0
  838. package/src/protocols/mcp/converters/IFormatConverter.ts +1 -1
  839. package/src/protocols/mcp/converters/UnifiedMessageConverter.ts +1 -1
  840. package/src/protocols/mcp/converters/adapters/AnthropicMessageAdapter.ts +1 -1
  841. package/src/protocols/mcp/converters/adapters/GeminiMessageAdapter.ts +1 -1
  842. package/src/protocols/mcp/converters/adapters/OpenAiMessageAdapter.ts +1 -1
  843. package/src/protocols/mcp/converters/adapters/OpenRouterMessageAdapter.ts +1 -1
  844. package/src/protocols/mcp/converters/adapters/XaiMessageAdapter.ts +1 -1
  845. package/src/protocols/mcp/defineTool.ts +379 -0
  846. package/src/protocols/mcp/providers/AnthropicMcpClient.ts +1 -1
  847. package/src/protocols/mcp/providers/AzureOpenAiMcpClient.ts +1 -1
  848. package/src/protocols/mcp/providers/BaseMcpClient.ts +1 -1
  849. package/src/protocols/mcp/providers/CustomMcpClient.ts +1 -1
  850. package/src/protocols/mcp/providers/GeminiMcpClient.ts +1 -1
  851. package/src/protocols/mcp/providers/OllamaMcpClient.ts +1 -1
  852. package/src/protocols/mcp/providers/OpenAiMcpClient.ts +1 -1
  853. package/src/protocols/mcp/providers/OpenRouterMcpClient.ts +33 -24
  854. package/src/protocols/mcp/providers/XaiMcpClient.ts +1 -1
  855. package/src/protocols/mcp/security/HttpTargetGuard.ts +267 -0
  856. package/src/protocols/mcp/security/McpConfirmationManager.ts +1 -1
  857. package/src/protocols/mcp/security/McpSecurityConfig.ts +1 -1
  858. package/src/protocols/mcp/security/McpSecurityGuard.ts +11 -4
  859. package/src/protocols/mcp/security/McpToolPolicy.ts +221 -0
  860. package/src/protocols/mcp/security/index.ts +1 -1
  861. package/src/protocols/mcp/services/ExternalMcpServerManager.ts +341 -323
  862. package/src/protocols/mcp/services/ExternalServerConfigs.ts +83 -20
  863. package/src/protocols/mcp/services/IToolEventEmitter.ts +1 -1
  864. package/src/protocols/mcp/tools/AnalyticsTools.ts +2 -2
  865. package/src/protocols/mcp/tools/CodeAnalysisTools.ts +16 -1
  866. package/src/protocols/mcp/tools/DateTimeTools.ts +1 -1
  867. package/src/protocols/mcp/tools/EffectivenessTools.ts +4 -4
  868. package/src/protocols/mcp/tools/GitTools.ts +291 -570
  869. package/src/protocols/mcp/tools/InfrastructureTools.ts +190 -44
  870. package/src/protocols/mcp/tools/JsonTools.ts +1 -1
  871. package/src/protocols/mcp/tools/KnowledgeGraphTools.ts +1 -1
  872. package/src/protocols/mcp/tools/MemorySearchTools.ts +78 -2
  873. package/src/protocols/mcp/tools/MemoryUtilityTools.ts +1 -1
  874. package/src/protocols/mcp/tools/OrparTools.ts +88 -1
  875. package/src/protocols/mcp/tools/PlanningTools.ts +1 -1
  876. package/src/protocols/mcp/tools/PredictiveTools.ts +1 -1
  877. package/src/protocols/mcp/tools/ProgressTools.ts +1 -1
  878. package/src/protocols/mcp/tools/ProjectContextTools.ts +1 -1
  879. package/src/protocols/mcp/tools/README.md +3 -3
  880. package/src/protocols/mcp/tools/SafetyTools.ts +502 -580
  881. package/src/protocols/mcp/tools/SearchProjectTools.ts +1 -1
  882. package/src/protocols/mcp/tools/TaskPlanningTools.ts +82 -40
  883. package/src/protocols/mcp/tools/TestTools.ts +340 -420
  884. package/src/protocols/mcp/tools/ToolHelpTools.ts +1 -1
  885. package/src/protocols/mcp/tools/TypeScriptTools.ts +317 -377
  886. package/src/protocols/mcp/tools/UserInputTools.ts +1 -1
  887. package/src/protocols/mcp/tools/UserMemoryTools.ts +1 -1
  888. package/src/protocols/mcp/tools/WebTools.ts +210 -308
  889. package/src/protocols/mcp/tools/WolframTools.ts +1 -1
  890. package/src/protocols/mcp/tools/shell/CommandClassification.ts +1 -1
  891. package/src/protocols/mcp/tools/shell/CommandSemantics.ts +1 -1
  892. package/src/protocols/mcp/tools/shell/DestructiveCommandWarnings.ts +1 -1
  893. package/src/protocols/mcp/tools/shell/LargeOutputHandler.ts +1 -1
  894. package/src/protocols/mcp/tools/shell/ShellExecuteHandler.ts +54 -15
  895. package/src/protocols/mcp/tools/shell/ShellSandbox.ts +1 -1
  896. package/src/protocols/mcp/tools/shell/index.ts +1 -1
  897. package/src/protocols/mcp/utils/JsonRecovery.ts +1 -1
  898. package/src/protocols/mcp/utils/MessageConverters.ts +1 -1
  899. package/src/protocols/mcp/utils/NetworkRecovery.ts +1 -1
  900. package/src/protocols/mcp/utils/ToolHandlers.ts +1 -1
  901. package/src/repositories/interfaces/IAgentRepository.ts +1 -1
  902. package/src/repositories/interfaces/IBaseRepository.ts +1 -1
  903. package/src/repositories/interfaces/IChannelRepository.ts +1 -1
  904. package/src/repositories/interfaces/IDagRepository.ts +1 -1
  905. package/src/repositories/interfaces/IKnowledgeGraphRepository.ts +1 -1
  906. package/src/repositories/interfaces/IMemoryRepository.ts +1 -1
  907. package/src/repositories/interfaces/ITaskRepository.ts +1 -1
  908. package/src/repositories/interfaces/index.ts +1 -1
  909. package/src/repositories/types/FilterTypes.ts +1 -1
  910. package/src/repositories/types/PaginationTypes.ts +1 -1
  911. package/src/schemas/CodeExecutionEventPayloads.ts +1 -1
  912. package/src/schemas/EventPayloadSchema.ts +38 -1
  913. package/src/schemas/JsonResponseSchemas.ts +1 -1
  914. package/src/schemas/MessageSchemas.ts +1 -1
  915. package/src/schemas/MxpProtocolSchemas.ts +1 -1
  916. package/src/schemas/ShellExecutionEventPayloads.ts +1 -1
  917. package/src/services/AgentPerformanceService.ts +1 -1
  918. package/src/services/AutoCorrectionIntegrationService.ts +1 -1
  919. package/src/services/AutoCorrectionService.ts +1 -1
  920. package/src/services/AutoMemoryCreator.ts +1 -1
  921. package/src/services/BackgroundTaskManager.ts +13 -5
  922. package/src/services/BrowserManager.ts +42 -2
  923. package/src/services/ChannelContextMemoryOperations.ts +1 -1
  924. package/src/services/ChannelContextMessageOperations.ts +1 -1
  925. package/src/services/CodeExecutionSandboxService.ts +1 -1
  926. package/src/services/ContainerExecutionManager.ts +1 -1
  927. package/src/services/ContentProcessor.ts +1 -1
  928. package/src/services/McpToolDocumentationService.ts +1 -1
  929. package/src/services/MemoryCompressor.ts +21 -33
  930. package/src/services/MemoryService.ts +97 -59
  931. package/src/services/MxfMLService.ts +62 -18
  932. package/src/services/MxfMeilisearchService.ts +1 -1
  933. package/src/services/MxfMessageAggregator.ts +1 -1
  934. package/src/services/PatternLearningService.ts +1 -1
  935. package/src/services/PerformanceOptimizationService.ts +1 -1
  936. package/src/services/PredictiveAnalyticsService.ts +56 -33
  937. package/src/services/ProactiveValidationService.ts +1 -1
  938. package/src/services/PromptArgumentInferenceService.ts +1 -1
  939. package/src/services/QValueManager.ts +11 -1
  940. package/src/services/ReasoningToolParser.ts +1 -1
  941. package/src/services/RecoveryWorkflowService.ts +1 -1
  942. package/src/services/ReflectionService.ts +1 -1
  943. package/src/services/RetentionGateService.ts +1 -1
  944. package/src/services/RewardSignalProcessor.ts +139 -10
  945. package/src/services/SharedStateService.ts +57 -9
  946. package/src/services/StratumManager.ts +1 -1
  947. package/src/services/StructuredSummaryBuilder.ts +1 -1
  948. package/src/services/SurpriseCalculator.ts +1 -1
  949. package/src/services/SystemLlmMemoryAnalyzer.ts +1 -1
  950. package/src/services/TaskEffectivenessService.ts +115 -188
  951. package/src/services/ToolExecutionInterceptor.ts +1 -1
  952. package/src/services/UserInputRequestManager.ts +1 -1
  953. package/src/services/UserMemoryService.ts +1 -1
  954. package/src/services/UtilityScorerService.ts +1 -1
  955. package/src/services/ValidationAnalyticsService.ts +1 -1
  956. package/src/services/ValidationCacheService.ts +1 -1
  957. package/src/services/ValidationMiddleware.ts +1 -1
  958. package/src/services/ValidationPerformanceService.ts +1 -1
  959. package/src/services/WebSearchService.ts +3 -2
  960. package/src/services/dag/TaskDagService.ts +3 -1
  961. package/src/services/dag/algorithms/TopologicalSort.ts +1 -1
  962. package/src/services/kg/EntityExtractionService.ts +1 -1
  963. package/src/services/kg/EntityQValueManager.ts +1 -1
  964. package/src/services/kg/GraphSurpriseCalculator.ts +1 -1
  965. package/src/services/kg/KnowledgeGraphService.ts +1 -1
  966. package/src/services/kg/OrparGraphIntegration.ts +1 -1
  967. package/src/services/orpar-memory/CycleConsolidationTrigger.ts +1 -1
  968. package/src/services/orpar-memory/OrparMemoryCoordinator.ts +87 -11
  969. package/src/services/orpar-memory/PhaseMemoryOperations.ts +1 -1
  970. package/src/services/orpar-memory/PhaseStrataRouter.ts +1 -1
  971. package/src/services/orpar-memory/PhaseWeightedRewarder.ts +1 -1
  972. package/src/services/orpar-memory/SurpriseOrparAdapter.ts +1 -1
  973. package/src/services/orpar-memory/index.ts +1 -1
  974. package/src/types/Agent.ts +1 -1
  975. package/src/types/AgentPerformanceTypes.ts +1 -1
  976. package/src/types/AgentRegistry.ts +1 -1
  977. package/src/types/AgentTypes.ts +1 -1
  978. package/src/types/ChannelContext.ts +1 -1
  979. package/src/types/ControlLoopTypes.ts +1 -1
  980. package/src/types/DagTypes.ts +1 -1
  981. package/src/types/EffectivenessTypes.ts +1 -1
  982. package/src/types/InferenceParameterTypes.ts +1 -1
  983. package/src/types/KnowledgeGraphTypes.ts +1 -1
  984. package/src/types/LlmTypes.ts +1 -1
  985. package/src/types/McpPromptTypes.ts +1 -1
  986. package/src/types/MemoryTypes.ts +1 -1
  987. package/src/types/MemoryUtilityTypes.ts +3 -1
  988. package/src/types/MxpTypes.ts +1 -1
  989. package/src/types/NetworkRecoveryTypes.ts +1 -1
  990. package/src/types/OrparMemoryIntegrationTypes.ts +1 -1
  991. package/src/types/PatternLearningTypes.ts +1 -1
  992. package/src/types/PatternMemoryTypes.ts +1 -1
  993. package/src/types/ReflectionTypes.ts +1 -1
  994. package/src/types/TaskCompletionTypes.ts +1 -1
  995. package/src/types/TaskTypes.ts +1 -1
  996. package/src/types/TensorFlowTypes.ts +1 -1
  997. package/src/types/ValidationPerformanceTypes.ts +1 -1
  998. package/src/types/toolTypes.ts +1 -1
  999. package/src/types/types.ts +1 -1
  1000. package/src/utils/Logger.ts +117 -41
  1001. package/src/utils/MxpEncryption.ts +70 -35
  1002. package/src/utils/ParameterNormalizer.ts +1 -1
  1003. package/src/utils/PromptTemplateReplacer.ts +1 -1
  1004. package/src/utils/TokenEstimator.ts +1 -1
  1005. package/src/utils/ToolPaginationUtils.ts +1 -1
  1006. package/src/utils/toon/eligibility.ts +1 -1
  1007. package/src/utils/toon/encoder.ts +1 -1
  1008. package/src/utils/toon/formatter.ts +1 -1
  1009. package/src/utils/toon/index.ts +1 -1
  1010. package/src/utils/toon/metrics.ts +1 -1
  1011. package/src/utils/toon/types.ts +1 -1
  1012. package/src/utils/validation.ts +1 -1
  1013. package/dist/mxp/MxpEventForwardingEnhancer.d.ts +0 -134
  1014. package/dist/mxp/MxpEventForwardingEnhancer.d.ts.map +0 -1
  1015. package/dist/mxp/MxpEventForwardingEnhancer.js +0 -361
  1016. package/dist/mxp/MxpEventForwardingEnhancer.js.map +0 -1
  1017. package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts +0 -56
  1018. package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts.map +0 -1
  1019. package/dist/protocols/mcp/services/ToolSchemaEnhancements.js +0 -57
  1020. package/dist/protocols/mcp/services/ToolSchemaEnhancements.js.map +0 -1
  1021. package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts +0 -270
  1022. package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts.map +0 -1
  1023. package/dist/protocols/mcp/tools/ControlLoopLifecycle.js +0 -256
  1024. package/dist/protocols/mcp/tools/ControlLoopLifecycle.js.map +0 -1
  1025. package/dist/protocols/mcp/tools/LspTools.d.ts +0 -495
  1026. package/dist/protocols/mcp/tools/LspTools.d.ts.map +0 -1
  1027. package/dist/protocols/mcp/tools/LspTools.js +0 -469
  1028. package/dist/protocols/mcp/tools/LspTools.js.map +0 -1
  1029. package/src/mxp/MxpEventForwardingEnhancer.ts +0 -471
  1030. package/src/protocols/mcp/services/ToolSchemaEnhancements.ts +0 -92
  1031. package/src/protocols/mcp/tools/ControlLoopLifecycle.ts +0 -302
  1032. 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/mxf-dev/mxf
17
+ * @repository https://github.com/BradA1878/model-exchange-framework
18
18
  * @documentation https://mxf-dev.github.io/mxf/
19
19
  */
20
20
 
21
- import { Logger } from '../../../utils/Logger.js';
22
- import { executeShellCommand } from './InfrastructureTools.js';
23
- import { McpToolHandlerContext, McpToolHandlerResult, McpToolResultContent } from '../McpServerTypes.js';
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
- const logger = new Logger('info', 'TypeScriptTools', 'server');
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
- * TypeScript Language Server Tools for MXF
29
- *
30
- * Provides TypeScript analysis, diagnostics, and code intelligence
31
- * These tools are placeholders that demonstrate the interface
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
- export const typescriptCheckTool = {
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
- description: 'Type-check TypeScript files and report diagnostics',
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 (optional, checks all if not provided)'
142
+ description: 'Specific files to check. Checks the whole project when omitted.'
49
143
  }
50
144
  }
51
145
  },
52
- handler: async (args: {
53
- workingDirectory?: string;
54
- files?: string[];
55
- }, context: McpToolHandlerContext): Promise<McpToolHandlerResult> => {
56
-
57
- try {
58
- const tscArgs = ['--noEmit', '--pretty', 'false'];
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
- const content: McpToolResultContent = {
101
- type: 'application/json',
102
- data: {
103
- success: result.exitCode === 0,
104
- diagnostics,
105
- totalErrors,
106
- totalWarnings,
107
- filesChecked: args.files ? args.files.length : 0,
108
- error: result.exitCode !== 0 ? result.stderr : null
109
- }
110
- };
111
- return { content };
112
- } catch (error) {
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
- description: 'Build TypeScript project and emit JavaScript files',
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: 'Clean output directory before build'
192
+ description: 'Run `tsc --build --clean` first'
144
193
  }
145
194
  }
146
195
  },
147
- handler: async (args: {
148
- workingDirectory?: string;
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
- const content: McpToolResultContent = {
188
- type: 'application/json',
189
- data: {
190
- success: result.exitCode === 0,
191
- output: result.stdout || '',
192
- errors,
193
- warnings,
194
- buildTime,
195
- error: result.exitCode !== 0 ? result.stderr : null
196
- }
197
- };
198
- return { content };
199
- } catch (error) {
200
- logger.error('TypeScript build failed', { error });
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
- description: 'Format TypeScript files using prettier or similar formatter',
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 (supports glob patterns)'
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: 'Check if files are formatted without modifying them'
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
- handler: async (args: {
240
- files?: string[];
241
- check?: boolean;
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
- const content: McpToolResultContent = {
273
- type: 'application/json',
274
- data: {
275
- success: result.exitCode === 0,
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
- description: 'Lint TypeScript files using ESLint',
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 (supports glob patterns)'
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
- handler: async (args: {
321
- files?: string[];
322
- fix?: boolean;
323
- workingDirectory?: string;
324
- }, context: McpToolHandlerContext): Promise<McpToolHandlerResult> => {
325
-
326
- try {
327
- const eslintArgs = ['--format', 'json'];
328
- if (args.fix) {
329
- eslintArgs.push('--fix');
330
- }
331
-
332
- if (args.files && args.files.length > 0) {
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
- const content: McpToolResultContent = {
362
- type: 'application/json',
363
- data: {
364
- success: result.exitCode === 0,
365
- results,
366
- error: result.exitCode !== 0 ? result.stderr : null
367
- }
368
- };
369
- return { content };
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
- description: 'Run TypeScript tests using Jest or other test runners',
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 test coverage report'
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
- handler: async (args: {
408
- testFiles?: string[];
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
- const content: McpToolResultContent = {
454
- type: 'application/json',
455
- data: {
456
- success: result.exitCode === 0,
457
- output: result.stdout || '',
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,