@mxf-dev/core 1.0.1 → 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 (298) hide show
  1. package/README.md +18 -0
  2. package/dist/adapters/FrameworkAdapter.js +1 -1
  3. package/dist/adapters/FrameworkAdapter.js.map +1 -1
  4. package/dist/config/ConfigManager.d.ts +9 -8
  5. package/dist/config/ConfigManager.d.ts.map +1 -1
  6. package/dist/config/ConfigManager.js +47 -17
  7. package/dist/config/ConfigManager.js.map +1 -1
  8. package/dist/config/memory-strata.config.d.ts +25 -0
  9. package/dist/config/memory-strata.config.d.ts.map +1 -0
  10. package/dist/config/memory-strata.config.js +107 -0
  11. package/dist/config/memory-strata.config.js.map +1 -0
  12. package/dist/constants/ToolNames.d.ts +1 -29
  13. package/dist/constants/ToolNames.d.ts.map +1 -1
  14. package/dist/constants/ToolNames.js +4 -17
  15. package/dist/constants/ToolNames.js.map +1 -1
  16. package/dist/database/DatabaseAdapterFactory.d.ts +14 -2
  17. package/dist/database/DatabaseAdapterFactory.d.ts.map +1 -1
  18. package/dist/database/DatabaseAdapterFactory.js +21 -6
  19. package/dist/database/DatabaseAdapterFactory.js.map +1 -1
  20. package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts +7 -1
  21. package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts.map +1 -1
  22. package/dist/database/adapters/mongodb/MongoBaseRepository.js +12 -2
  23. package/dist/database/adapters/mongodb/MongoBaseRepository.js.map +1 -1
  24. package/dist/events/ClientEventBus.d.ts +16 -77
  25. package/dist/events/ClientEventBus.d.ts.map +1 -1
  26. package/dist/events/ClientEventBus.js +38 -311
  27. package/dist/events/ClientEventBus.js.map +1 -1
  28. package/dist/events/EventBus.d.ts +1 -1
  29. package/dist/events/EventBus.d.ts.map +1 -1
  30. package/dist/events/EventBus.js +5 -4
  31. package/dist/events/EventBus.js.map +1 -1
  32. package/dist/events/EventBusBase.d.ts +139 -34
  33. package/dist/events/EventBusBase.d.ts.map +1 -1
  34. package/dist/events/EventBusBase.js +366 -88
  35. package/dist/events/EventBusBase.js.map +1 -1
  36. package/dist/events/EventNames.d.ts +10 -1
  37. package/dist/events/EventNames.d.ts.map +1 -1
  38. package/dist/events/EventNames.js +3 -0
  39. package/dist/events/EventNames.js.map +1 -1
  40. package/dist/events/PublicEvents.d.ts +6 -2
  41. package/dist/events/PublicEvents.d.ts.map +1 -1
  42. package/dist/events/PublicEvents.js +7 -4
  43. package/dist/events/PublicEvents.js.map +1 -1
  44. package/dist/events/ServerEventBus.d.ts +23 -112
  45. package/dist/events/ServerEventBus.d.ts.map +1 -1
  46. package/dist/events/ServerEventBus.js +58 -323
  47. package/dist/events/ServerEventBus.js.map +1 -1
  48. package/dist/events/event-definitions/LlmBudgetEvents.d.ts +68 -0
  49. package/dist/events/event-definitions/LlmBudgetEvents.d.ts.map +1 -0
  50. package/dist/events/event-definitions/LlmBudgetEvents.js +35 -0
  51. package/dist/events/event-definitions/LlmBudgetEvents.js.map +1 -0
  52. package/dist/interfaces/IMemoryPersistence.d.ts +41 -0
  53. package/dist/interfaces/IMemoryPersistence.d.ts.map +1 -0
  54. package/dist/interfaces/IMemoryPersistence.js +15 -0
  55. package/dist/interfaces/IMemoryPersistence.js.map +1 -0
  56. package/dist/middleware/MxpMiddleware.d.ts +8 -1
  57. package/dist/middleware/MxpMiddleware.d.ts.map +1 -1
  58. package/dist/middleware/MxpMiddleware.js +42 -20
  59. package/dist/middleware/MxpMiddleware.js.map +1 -1
  60. package/dist/models/channelKey.d.ts +1 -0
  61. package/dist/models/channelKey.d.ts.map +1 -1
  62. package/dist/models/channelKey.js +5 -0
  63. package/dist/models/channelKey.js.map +1 -1
  64. package/dist/models/memoryUtility.d.ts +39 -0
  65. package/dist/models/memoryUtility.d.ts.map +1 -0
  66. package/dist/models/memoryUtility.js +39 -0
  67. package/dist/models/memoryUtility.js.map +1 -0
  68. package/dist/models/user.d.ts.map +1 -1
  69. package/dist/models/user.js +23 -1
  70. package/dist/models/user.js.map +1 -1
  71. package/dist/mxp/BinaryProtocolLayer.d.ts +24 -8
  72. package/dist/mxp/BinaryProtocolLayer.d.ts.map +1 -1
  73. package/dist/mxp/BinaryProtocolLayer.js +90 -103
  74. package/dist/mxp/BinaryProtocolLayer.js.map +1 -1
  75. package/dist/mxp/ContextCompressionEngine.d.ts +57 -10
  76. package/dist/mxp/ContextCompressionEngine.d.ts.map +1 -1
  77. package/dist/mxp/ContextCompressionEngine.js +170 -128
  78. package/dist/mxp/ContextCompressionEngine.js.map +1 -1
  79. package/dist/mxp/MxpTokenOptimizer.d.ts +7 -3
  80. package/dist/mxp/MxpTokenOptimizer.d.ts.map +1 -1
  81. package/dist/mxp/MxpTokenOptimizer.js +8 -5
  82. package/dist/mxp/MxpTokenOptimizer.js.map +1 -1
  83. package/dist/prompts/MxfAgentSystemPrompt.d.ts +1 -1
  84. package/dist/prompts/MxfAgentSystemPrompt.d.ts.map +1 -1
  85. package/dist/prompts/MxfAgentSystemPrompt.js +47 -57
  86. package/dist/prompts/MxfAgentSystemPrompt.js.map +1 -1
  87. package/dist/protocols/mcp/ToolError.d.ts +123 -0
  88. package/dist/protocols/mcp/ToolError.d.ts.map +1 -0
  89. package/dist/protocols/mcp/ToolError.js +108 -0
  90. package/dist/protocols/mcp/ToolError.js.map +1 -0
  91. package/dist/protocols/mcp/defineTool.d.ts +133 -0
  92. package/dist/protocols/mcp/defineTool.d.ts.map +1 -0
  93. package/dist/protocols/mcp/defineTool.js +236 -0
  94. package/dist/protocols/mcp/defineTool.js.map +1 -0
  95. package/dist/protocols/mcp/security/HttpTargetGuard.d.ts +38 -0
  96. package/dist/protocols/mcp/security/HttpTargetGuard.d.ts.map +1 -0
  97. package/dist/protocols/mcp/security/HttpTargetGuard.js +227 -0
  98. package/dist/protocols/mcp/security/HttpTargetGuard.js.map +1 -0
  99. package/dist/protocols/mcp/security/McpSecurityGuard.d.ts +9 -1
  100. package/dist/protocols/mcp/security/McpSecurityGuard.d.ts.map +1 -1
  101. package/dist/protocols/mcp/security/McpSecurityGuard.js +10 -2
  102. package/dist/protocols/mcp/security/McpSecurityGuard.js.map +1 -1
  103. package/dist/protocols/mcp/security/McpToolPolicy.d.ts +81 -0
  104. package/dist/protocols/mcp/security/McpToolPolicy.d.ts.map +1 -0
  105. package/dist/protocols/mcp/security/McpToolPolicy.js +202 -0
  106. package/dist/protocols/mcp/security/McpToolPolicy.js.map +1 -0
  107. package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts +51 -18
  108. package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts.map +1 -1
  109. package/dist/protocols/mcp/services/ExternalMcpServerManager.js +256 -283
  110. package/dist/protocols/mcp/services/ExternalMcpServerManager.js.map +1 -1
  111. package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts +39 -6
  112. package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts.map +1 -1
  113. package/dist/protocols/mcp/services/ExternalServerConfigs.js +76 -18
  114. package/dist/protocols/mcp/services/ExternalServerConfigs.js.map +1 -1
  115. package/dist/protocols/mcp/tools/AnalyticsTools.js +1 -1
  116. package/dist/protocols/mcp/tools/AnalyticsTools.js.map +1 -1
  117. package/dist/protocols/mcp/tools/CodeAnalysisTools.d.ts.map +1 -1
  118. package/dist/protocols/mcp/tools/CodeAnalysisTools.js +15 -0
  119. package/dist/protocols/mcp/tools/CodeAnalysisTools.js.map +1 -1
  120. package/dist/protocols/mcp/tools/EffectivenessTools.js +3 -3
  121. package/dist/protocols/mcp/tools/EffectivenessTools.js.map +1 -1
  122. package/dist/protocols/mcp/tools/GitTools.d.ts +9 -369
  123. package/dist/protocols/mcp/tools/GitTools.d.ts.map +1 -1
  124. package/dist/protocols/mcp/tools/GitTools.js +222 -517
  125. package/dist/protocols/mcp/tools/GitTools.js.map +1 -1
  126. package/dist/protocols/mcp/tools/InfrastructureTools.d.ts +56 -24
  127. package/dist/protocols/mcp/tools/InfrastructureTools.d.ts.map +1 -1
  128. package/dist/protocols/mcp/tools/InfrastructureTools.js +117 -26
  129. package/dist/protocols/mcp/tools/InfrastructureTools.js.map +1 -1
  130. package/dist/protocols/mcp/tools/MemorySearchTools.d.ts +0 -3
  131. package/dist/protocols/mcp/tools/MemorySearchTools.d.ts.map +1 -1
  132. package/dist/protocols/mcp/tools/MemorySearchTools.js +58 -1
  133. package/dist/protocols/mcp/tools/MemorySearchTools.js.map +1 -1
  134. package/dist/protocols/mcp/tools/OrparTools.d.ts +8 -0
  135. package/dist/protocols/mcp/tools/OrparTools.d.ts.map +1 -1
  136. package/dist/protocols/mcp/tools/OrparTools.js +66 -0
  137. package/dist/protocols/mcp/tools/OrparTools.js.map +1 -1
  138. package/dist/protocols/mcp/tools/SafetyTools.d.ts +7 -525
  139. package/dist/protocols/mcp/tools/SafetyTools.d.ts.map +1 -1
  140. package/dist/protocols/mcp/tools/SafetyTools.js +349 -514
  141. package/dist/protocols/mcp/tools/SafetyTools.js.map +1 -1
  142. package/dist/protocols/mcp/tools/TaskPlanningTools.d.ts.map +1 -1
  143. package/dist/protocols/mcp/tools/TaskPlanningTools.js +56 -26
  144. package/dist/protocols/mcp/tools/TaskPlanningTools.js.map +1 -1
  145. package/dist/protocols/mcp/tools/TestTools.d.ts +15 -376
  146. package/dist/protocols/mcp/tools/TestTools.d.ts.map +1 -1
  147. package/dist/protocols/mcp/tools/TestTools.js +241 -363
  148. package/dist/protocols/mcp/tools/TestTools.js.map +1 -1
  149. package/dist/protocols/mcp/tools/TypeScriptTools.d.ts +6 -276
  150. package/dist/protocols/mcp/tools/TypeScriptTools.d.ts.map +1 -1
  151. package/dist/protocols/mcp/tools/TypeScriptTools.js +223 -337
  152. package/dist/protocols/mcp/tools/TypeScriptTools.js.map +1 -1
  153. package/dist/protocols/mcp/tools/WebTools.d.ts +15 -728
  154. package/dist/protocols/mcp/tools/WebTools.d.ts.map +1 -1
  155. package/dist/protocols/mcp/tools/WebTools.js +151 -257
  156. package/dist/protocols/mcp/tools/WebTools.js.map +1 -1
  157. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts +5 -3
  158. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts.map +1 -1
  159. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js +31 -6
  160. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js.map +1 -1
  161. package/dist/schemas/EventPayloadSchema.d.ts +21 -0
  162. package/dist/schemas/EventPayloadSchema.d.ts.map +1 -1
  163. package/dist/schemas/EventPayloadSchema.js +14 -0
  164. package/dist/schemas/EventPayloadSchema.js.map +1 -1
  165. package/dist/services/BackgroundTaskManager.d.ts.map +1 -1
  166. package/dist/services/BackgroundTaskManager.js +12 -4
  167. package/dist/services/BackgroundTaskManager.js.map +1 -1
  168. package/dist/services/BrowserManager.d.ts +1 -1
  169. package/dist/services/BrowserManager.d.ts.map +1 -1
  170. package/dist/services/BrowserManager.js +26 -3
  171. package/dist/services/BrowserManager.js.map +1 -1
  172. package/dist/services/MemoryCompressor.d.ts +11 -2
  173. package/dist/services/MemoryCompressor.d.ts.map +1 -1
  174. package/dist/services/MemoryCompressor.js +8 -26
  175. package/dist/services/MemoryCompressor.js.map +1 -1
  176. package/dist/services/MemoryService.d.ts +16 -3
  177. package/dist/services/MemoryService.d.ts.map +1 -1
  178. package/dist/services/MemoryService.js +79 -55
  179. package/dist/services/MemoryService.js.map +1 -1
  180. package/dist/services/PredictiveAnalyticsService.d.ts +34 -4
  181. package/dist/services/PredictiveAnalyticsService.d.ts.map +1 -1
  182. package/dist/services/PredictiveAnalyticsService.js +41 -25
  183. package/dist/services/PredictiveAnalyticsService.js.map +1 -1
  184. package/dist/services/QValueManager.d.ts +7 -0
  185. package/dist/services/QValueManager.d.ts.map +1 -1
  186. package/dist/services/QValueManager.js +9 -0
  187. package/dist/services/QValueManager.js.map +1 -1
  188. package/dist/services/RewardSignalProcessor.d.ts +38 -1
  189. package/dist/services/RewardSignalProcessor.d.ts.map +1 -1
  190. package/dist/services/RewardSignalProcessor.js +109 -7
  191. package/dist/services/RewardSignalProcessor.js.map +1 -1
  192. package/dist/services/SharedStateService.d.ts +16 -2
  193. package/dist/services/SharedStateService.d.ts.map +1 -1
  194. package/dist/services/SharedStateService.js +44 -3
  195. package/dist/services/SharedStateService.js.map +1 -1
  196. package/dist/services/TaskEffectivenessService.d.ts +34 -18
  197. package/dist/services/TaskEffectivenessService.d.ts.map +1 -1
  198. package/dist/services/TaskEffectivenessService.js +91 -155
  199. package/dist/services/TaskEffectivenessService.js.map +1 -1
  200. package/dist/services/WebSearchService.d.ts.map +1 -1
  201. package/dist/services/WebSearchService.js.map +1 -1
  202. package/dist/services/dag/TaskDagService.d.ts.map +1 -1
  203. package/dist/services/dag/TaskDagService.js +2 -0
  204. package/dist/services/dag/TaskDagService.js.map +1 -1
  205. package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts +7 -0
  206. package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts.map +1 -1
  207. package/dist/services/orpar-memory/OrparMemoryCoordinator.js +71 -10
  208. package/dist/services/orpar-memory/OrparMemoryCoordinator.js.map +1 -1
  209. package/dist/types/MemoryUtilityTypes.d.ts +2 -0
  210. package/dist/types/MemoryUtilityTypes.d.ts.map +1 -1
  211. package/dist/types/MemoryUtilityTypes.js.map +1 -1
  212. package/dist/utils/Logger.d.ts +43 -3
  213. package/dist/utils/Logger.d.ts.map +1 -1
  214. package/dist/utils/Logger.js +78 -36
  215. package/dist/utils/Logger.js.map +1 -1
  216. package/dist/utils/MxpEncryption.d.ts +19 -6
  217. package/dist/utils/MxpEncryption.d.ts.map +1 -1
  218. package/dist/utils/MxpEncryption.js +48 -16
  219. package/dist/utils/MxpEncryption.js.map +1 -1
  220. package/package.json +19 -4
  221. package/src/adapters/FrameworkAdapter.ts +1 -1
  222. package/src/config/ConfigManager.ts +52 -19
  223. package/src/config/memory-strata.config.ts +136 -0
  224. package/src/constants/ToolNames.ts +4 -18
  225. package/src/database/DatabaseAdapterFactory.ts +23 -6
  226. package/src/database/adapters/mongodb/MongoBaseRepository.ts +16 -2
  227. package/src/events/ClientEventBus.ts +68 -403
  228. package/src/events/EventBus.ts +7 -8
  229. package/src/events/EventBusBase.ts +479 -116
  230. package/src/events/EventNames.ts +6 -0
  231. package/src/events/PublicEvents.ts +7 -4
  232. package/src/events/ServerEventBus.ts +78 -473
  233. package/src/events/event-definitions/LlmBudgetEvents.ts +74 -0
  234. package/src/interfaces/IMemoryPersistence.ts +51 -0
  235. package/src/middleware/MxpMiddleware.ts +51 -24
  236. package/src/models/channelKey.ts +18 -4
  237. package/src/models/memoryUtility.ts +64 -0
  238. package/src/models/user.ts +36 -4
  239. package/src/mxp/BinaryProtocolLayer.ts +108 -124
  240. package/src/mxp/ContextCompressionEngine.ts +219 -161
  241. package/src/mxp/MxpTokenOptimizer.ts +10 -10
  242. package/src/prompts/MxfAgentSystemPrompt.ts +45 -55
  243. package/src/protocols/mcp/ToolError.ts +201 -0
  244. package/src/protocols/mcp/defineTool.ts +379 -0
  245. package/src/protocols/mcp/security/HttpTargetGuard.ts +267 -0
  246. package/src/protocols/mcp/security/McpSecurityGuard.ts +10 -3
  247. package/src/protocols/mcp/security/McpToolPolicy.ts +221 -0
  248. package/src/protocols/mcp/services/ExternalMcpServerManager.ts +340 -322
  249. package/src/protocols/mcp/services/ExternalServerConfigs.ts +82 -19
  250. package/src/protocols/mcp/tools/AnalyticsTools.ts +1 -1
  251. package/src/protocols/mcp/tools/CodeAnalysisTools.ts +15 -0
  252. package/src/protocols/mcp/tools/EffectivenessTools.ts +3 -3
  253. package/src/protocols/mcp/tools/GitTools.ts +290 -569
  254. package/src/protocols/mcp/tools/InfrastructureTools.ts +189 -43
  255. package/src/protocols/mcp/tools/MemorySearchTools.ts +77 -1
  256. package/src/protocols/mcp/tools/OrparTools.ts +87 -0
  257. package/src/protocols/mcp/tools/SafetyTools.ts +501 -579
  258. package/src/protocols/mcp/tools/TaskPlanningTools.ts +81 -39
  259. package/src/protocols/mcp/tools/TestTools.ts +339 -419
  260. package/src/protocols/mcp/tools/TypeScriptTools.ts +316 -376
  261. package/src/protocols/mcp/tools/WebTools.ts +209 -307
  262. package/src/protocols/mcp/tools/shell/ShellExecuteHandler.ts +53 -14
  263. package/src/schemas/EventPayloadSchema.ts +37 -0
  264. package/src/services/BackgroundTaskManager.ts +12 -4
  265. package/src/services/BrowserManager.ts +41 -1
  266. package/src/services/MemoryCompressor.ts +20 -32
  267. package/src/services/MemoryService.ts +96 -58
  268. package/src/services/PredictiveAnalyticsService.ts +55 -32
  269. package/src/services/QValueManager.ts +10 -0
  270. package/src/services/RewardSignalProcessor.ts +138 -9
  271. package/src/services/SharedStateService.ts +56 -8
  272. package/src/services/TaskEffectivenessService.ts +114 -187
  273. package/src/services/WebSearchService.ts +2 -1
  274. package/src/services/dag/TaskDagService.ts +2 -0
  275. package/src/services/orpar-memory/OrparMemoryCoordinator.ts +86 -10
  276. package/src/types/MemoryUtilityTypes.ts +2 -0
  277. package/src/utils/Logger.ts +116 -40
  278. package/src/utils/MxpEncryption.ts +69 -34
  279. package/dist/mxp/MxpEventForwardingEnhancer.d.ts +0 -134
  280. package/dist/mxp/MxpEventForwardingEnhancer.d.ts.map +0 -1
  281. package/dist/mxp/MxpEventForwardingEnhancer.js +0 -361
  282. package/dist/mxp/MxpEventForwardingEnhancer.js.map +0 -1
  283. package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts +0 -56
  284. package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts.map +0 -1
  285. package/dist/protocols/mcp/services/ToolSchemaEnhancements.js +0 -57
  286. package/dist/protocols/mcp/services/ToolSchemaEnhancements.js.map +0 -1
  287. package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts +0 -270
  288. package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts.map +0 -1
  289. package/dist/protocols/mcp/tools/ControlLoopLifecycle.js +0 -256
  290. package/dist/protocols/mcp/tools/ControlLoopLifecycle.js.map +0 -1
  291. package/dist/protocols/mcp/tools/LspTools.d.ts +0 -495
  292. package/dist/protocols/mcp/tools/LspTools.d.ts.map +0 -1
  293. package/dist/protocols/mcp/tools/LspTools.js +0 -469
  294. package/dist/protocols/mcp/tools/LspTools.js.map +0 -1
  295. package/src/mxp/MxpEventForwardingEnhancer.ts +0 -471
  296. package/src/protocols/mcp/services/ToolSchemaEnhancements.ts +0 -92
  297. package/src/protocols/mcp/tools/ControlLoopLifecycle.ts +0 -302
  298. package/src/protocols/mcp/tools/LspTools.ts +0 -476
@@ -19,7 +19,7 @@
19
19
  */
20
20
  import { Logger } from '../utils/Logger.js';
21
21
  import { createStrictValidator } from '../utils/validation.js';
22
- import { COMMUNICATION_TOOLS, CONTROL_LOOP_TOOLS, CONTEXT_MEMORY_TOOLS, META_TOOLS } from '../constants/ToolNames.js';
22
+ import { COMMUNICATION_TOOLS, CONTEXT_MEMORY_TOOLS, META_TOOLS } from '../constants/ToolNames.js';
23
23
  import { CORE_MXF_TOOLS } from '../constants/CoreTools.js';
24
24
  import { PROMPT_TEMPLATES } from '../utils/PromptTemplateReplacer.js';
25
25
  import { ToolBehavioralGuidance } from './ToolBehavioralGuidance.js';
@@ -105,7 +105,7 @@ Execute immediately when you have sufficient information. Take decisive action b
105
105
  static buildMxfIdentity(agentConfig, availableTools) {
106
106
  // Determine available capabilities based on tools
107
107
  const toolSet = availableTools || [];
108
- const hasControlLoop = toolSet.some(tool => tool.startsWith('controlLoop_'));
108
+ const hasOrpar = toolSet.some(tool => tool.startsWith('orpar_'));
109
109
  const hasCommunication = toolSet.some(tool => tool.startsWith('messaging_') || tool.startsWith('agent_'));
110
110
  const hasMemoryContext = toolSet.some(tool => tool.includes('context_') || tool.includes('memory_'));
111
111
  // Build dynamic system description
@@ -124,7 +124,7 @@ Execute immediately when you have sufficient information. Take decisive action b
124
124
 
125
125
  MXF enables you to collaborate with other AI agents`;
126
126
  // Only mention ORPAR if control loop tools are available
127
- if (hasControlLoop) {
127
+ if (hasOrpar) {
128
128
  content += `, execute complex workflows through ORPAR cognitive cycles,`;
129
129
  }
130
130
  ` and intelligently coordinate tasks. You work alongside a SystemLLM service that provides intelligent coordination analysis, task assignment, and multi-agent orchestration capabilities.
@@ -215,17 +215,23 @@ Use tools to take actions - the system will automatically execute your tool requ
215
215
  }
216
216
  }
217
217
  // Control Loop - only if control loop tools are available
218
- const hasControlLoop = toolSet.some(tool => tool.startsWith('controlLoop_'));
219
- if (hasControlLoop) {
220
- const controlCapabilities = [];
221
- if (toolSet.includes('controlLoop_start'))
222
- controlCapabilities.push(`- **${CONTROL_LOOP_TOOLS.START}**: Start new ORPAR cognitive cycles`);
223
- if (toolSet.includes('controlLoop_observe'))
224
- controlCapabilities.push(`- **${CONTROL_LOOP_TOOLS.OBSERVE}**: Submit observations to active control loops`);
225
- if (toolSet.includes('controlLoop_execute'))
226
- controlCapabilities.push(`- **${CONTROL_LOOP_TOOLS.EXECUTE}**: Execute planned actions within control loops`);
227
- if (controlCapabilities.length > 0) {
228
- sections.push(`**Control Loop (ORPAR Integration):**\n${controlCapabilities.join('\n')}`);
218
+ const hasOrpar = toolSet.some(tool => tool.startsWith('orpar_'));
219
+ if (hasOrpar) {
220
+ const orparCapabilities = [];
221
+ if (toolSet.includes('orpar_observe'))
222
+ orparCapabilities.push('- **orpar_observe**: Record what you observed, starting a cognitive cycle');
223
+ if (toolSet.includes('orpar_reason'))
224
+ orparCapabilities.push('- **orpar_reason**: Record your reasoning about the observation');
225
+ if (toolSet.includes('orpar_plan'))
226
+ orparCapabilities.push('- **orpar_plan**: Record the plan you intend to carry out');
227
+ if (toolSet.includes('orpar_act'))
228
+ orparCapabilities.push('- **orpar_act**: Record the action you took');
229
+ if (toolSet.includes('orpar_reflect'))
230
+ orparCapabilities.push('- **orpar_reflect**: Record what you learned, completing the cycle');
231
+ if (toolSet.includes('orpar_status'))
232
+ orparCapabilities.push('- **orpar_status**: Check which phase of the cycle you are in');
233
+ if (orparCapabilities.length > 0) {
234
+ sections.push(`**ORPAR cognitive cycle:**\n${orparCapabilities.join('\n')}`);
229
235
  }
230
236
  }
231
237
  // Memory & Context - only if memory/context tools are available
@@ -263,43 +269,24 @@ Use tools to take actions - the system will automatically execute your tool requ
263
269
  }
264
270
  /**
265
271
  * Detailed Tool Schemas with JSON Examples
266
- * Now respects allowedTools to only show documentation for tools the agent can actually use
272
+ * Only documents tools the registry actually provided and the agent is allowed to use.
267
273
  */
268
274
  static async buildToolSchemas(config, availableTools, toolNames, agentConfig) {
269
275
  if (!config.includeToolSchemas)
270
276
  return '';
271
- // Use provided tools from the actual tool registry
272
- let tools = availableTools || [];
277
+ // Tools come from the registry. Nothing else is a valid source.
278
+ //
279
+ // An earlier version, when handed no tools, invented them: it took the
280
+ // list of tool NAMES and built "mock tool objects" with made-up
281
+ // descriptions and guessed input schemas, then presented them to the
282
+ // agent as documentation. The agent then called those tools with the
283
+ // guessed arguments, producing malformed calls. If the registry has no
284
+ // tools, the honest output is no tool-schema section at all.
285
+ const tools = availableTools || [];
273
286
  if (tools.length === 0) {
274
- // Core tools fallback - create mock tool objects for allowed tools (or all core tools if no allowedTools)
275
- const toolsToMock = (toolNames && toolNames.length > 0) ? toolNames : CORE_MXF_TOOLS;
276
- tools = toolsToMock.map(toolName => ({
277
- name: toolName,
278
- description: `${toolName} - Core MXF ${toolName.includes('memory') ? 'Memory Management' : toolName.includes('messaging') ? 'Communication' : toolName.includes('controlLoop') ? 'ORPAR Control Loop' : toolName.includes('task') ? 'Task Management' : 'Meta'} tool`,
279
- inputSchema: {
280
- type: 'object',
281
- properties: {
282
- ...(toolName.includes('messaging') && {
283
- targetAgentId: { type: 'string' },
284
- message: { type: 'string' }
285
- }),
286
- ...(toolName.includes('memory') && {
287
- key: { type: 'string' },
288
- value: { type: 'string' }
289
- }),
290
- ...(toolName.includes('controlLoop') && {
291
- observation: { type: 'string' },
292
- confidence: { type: 'number' }
293
- }),
294
- ...(toolName === 'task_complete' && {
295
- summary: { type: 'string', required: true },
296
- success: { type: 'boolean', default: true },
297
- details: { type: 'object', optional: true },
298
- nextSteps: { type: 'string', optional: true }
299
- })
300
- }
301
- }
302
- }));
287
+ logger.error('SYSTEM PROMPT: the tool registry returned no tools, so no tool schemas can be documented. ' +
288
+ 'Check that the agent has tools registered and that allowedTools is not empty.');
289
+ return '';
303
290
  }
304
291
  // Deduplicate tools by name (keep first occurrence)
305
292
  // This handles the case where same tool exists with different providerId/channelId
@@ -324,8 +311,11 @@ Use tools to take actions - the system will automatically execute your tool requ
324
311
  // No need for additional filtering - mxfCoreTools already filtered by toolNames above
325
312
  const finalToolsForDocumentation = mxfCoreTools;
326
313
  if (finalToolsForDocumentation.length === 0) {
327
- logger.error('❌ SYSTEM PROMPT: No allowed tools found for this agent - this indicates a configuration issue');
328
- return '## Tool Usage Reference\n\n❌ **ERROR: No allowed tools found**\n\nThis agent has no tools configured in its allowedTools list.';
314
+ // Emit no section rather than writing an error notice into the
315
+ // agent's system prompt, which the model would read as instructions.
316
+ logger.error('SYSTEM PROMPT: none of the registry tools match this agent\'s allowedTools, ' +
317
+ 'so no tool schemas can be documented. This is a configuration issue.');
318
+ return '';
329
319
  }
330
320
  // Apply deferred tool schema disclosure if enabled — tier-2 tools get
331
321
  // a name-only listing instead of full schemas to save prompt tokens
@@ -349,7 +339,7 @@ Use tools to take actions - the system will automatically execute your tool requ
349
339
  const toolSections = [];
350
340
  // Group allowed tools by category (only show documentation for tools this agent can actually use)
351
341
  const communicationTools = toolsForFullDocs.filter(t => t.name.startsWith('messaging_'));
352
- const controlLoopTools = toolsForFullDocs.filter(t => t.name.startsWith('controlLoop_'));
342
+ const orparTools = toolsForFullDocs.filter(t => t.name.startsWith('orpar_'));
353
343
  const infrastructureTools = toolsForFullDocs.filter(t => t.name === 'filesystem_read' || t.name === 'filesystem_write' ||
354
344
  t.name === 'filesystem_list' || t.name === 'shell_execute' ||
355
345
  t.name === 'memory_store' || t.name === 'memory_retrieve');
@@ -365,9 +355,9 @@ Use tools to take actions - the system will automatically execute your tool requ
365
355
  }
366
356
  }
367
357
  // Control Loop Tools Section
368
- if (controlLoopTools.length > 0) {
358
+ if (orparTools.length > 0) {
369
359
  toolSections.push('### Control Loop Tools\n');
370
- for (const tool of controlLoopTools) {
360
+ for (const tool of orparTools) {
371
361
  toolSections.push(this.buildToolExample(tool, agentConfig?.mxpEnabled, compactionConfig.toolBehavioralGuidanceEnabled));
372
362
  }
373
363
  }
@@ -461,12 +451,12 @@ ${toolSections.join('\n')}${deferredSummary}`;
461
451
  sections.push(commPattern);
462
452
  }
463
453
  // Pattern 2: ORPAR Integration - only if control loop tools are available
464
- const hasControlLoop = toolSet.some(tool => tool.startsWith('controlLoop_'));
465
- if (hasControlLoop) {
466
- const observeTool = toolSet.find(tool => tool === 'controlLoop_observe');
454
+ const hasOrpar = toolSet.some(tool => tool.startsWith('orpar_'));
455
+ if (hasOrpar) {
456
+ const observeTool = toolSet.find(tool => tool === 'orpar_observe');
467
457
  if (observeTool) {
468
458
  sections.push(`**Pattern 2: ORPAR Integration**
469
- - Submit observations using 'controlLoop_observe'
459
+ - Submit observations using 'orpar_observe'
470
460
  - Include confidence scores and data sources
471
461
  - Provide rich metadata for better reasoning`);
472
462
  }
@@ -553,8 +543,8 @@ When you need capabilities beyond your core tools:
553
543
  return '';
554
544
  // Only include ORPAR if control loop tools are available
555
545
  const toolSet = availableTools || [];
556
- const hasControlLoop = toolSet.some(tool => tool.startsWith('controlLoop_'));
557
- if (!hasControlLoop)
546
+ const hasOrpar = toolSet.some(tool => tool.startsWith('orpar_'));
547
+ if (!hasOrpar)
558
548
  return '';
559
549
  return `## MXF Operational Guidelines
560
550
 
@@ -1 +1 @@
1
- {"version":3,"file":"MxfAgentSystemPrompt.js","sourceRoot":"","sources":["../../src/prompts/MxfAgentSystemPrompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MxfAgentSystemPrompt.js","sourceRoot":"","sources":["../../src/prompts/MxfAgentSystemPrompt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,123 @@
1
+ /**
2
+ * Copyright 2024 Brad Anderson
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ *
16
+ * @author Brad Anderson <BradA1878@pm.me>
17
+ * @repository https://github.com/BradA1878/model-exchange-framework
18
+ * @documentation https://mxf-dev.github.io/mxf/
19
+ */
20
+ /**
21
+ * ToolError.ts
22
+ *
23
+ * The single error type for MCP tool handlers.
24
+ *
25
+ * Before this existed, tool failures were encoded three different ways — a thrown
26
+ * Error, a `{ success: false }` object, or a result whose `data` happened to hold
27
+ * an `error` string — so callers could not tell a failure from a result. Handlers
28
+ * written with `defineTool` throw a ToolError; the factory turns it into one
29
+ * result envelope with `isError: true`.
30
+ *
31
+ * `code` is a stable, machine-readable classification. `message` is written for
32
+ * the model that will read it: say what failed and what to do next.
33
+ */
34
+ /**
35
+ * Machine-readable failure classifications.
36
+ *
37
+ * These map to how a caller should react, not to where the failure happened:
38
+ * - INVALID_INPUT: arguments did not satisfy the tool's schema or its own checks.
39
+ * The model should fix the arguments and retry.
40
+ * - NOT_FOUND: a referenced entity (task, plan, file, server) does not exist.
41
+ * - PERMISSION_DENIED: the operation was blocked by a security policy.
42
+ * - PRECONDITION_FAILED: the system is not in a state where this can run
43
+ * (for example a required service is not initialized).
44
+ * - EXECUTION_FAILED: the tool ran but the underlying operation failed.
45
+ * - UPSTREAM_ERROR: a dependency the tool calls out to failed (external MCP
46
+ * server, HTTP API, database).
47
+ * - NOT_IMPLEMENTED: the requested mode or option is not supported.
48
+ */
49
+ export type ToolErrorCode = 'INVALID_INPUT' | 'NOT_FOUND' | 'PERMISSION_DENIED' | 'PRECONDITION_FAILED' | 'EXECUTION_FAILED' | 'UPSTREAM_ERROR' | 'NOT_IMPLEMENTED';
50
+ /**
51
+ * Serialized form of a ToolError, carried as the `data` of an error envelope.
52
+ */
53
+ export interface ToolErrorData {
54
+ /** Always true — lets a reader detect an error payload without shape sniffing */
55
+ error: true;
56
+ /** Stable classification */
57
+ code: ToolErrorCode;
58
+ /** Human/model-readable description of what failed */
59
+ message: string;
60
+ /** Name of the tool that failed */
61
+ tool?: string;
62
+ /** Structured, tool-specific context (never secrets) */
63
+ details?: Record<string, unknown>;
64
+ }
65
+ /**
66
+ * The error type thrown by tool handlers.
67
+ *
68
+ * Use the static constructors rather than `new ToolError(...)` where one fits —
69
+ * they keep codes consistent across the ~184 tools.
70
+ */
71
+ export declare class ToolError extends Error {
72
+ /** Stable, machine-readable classification */
73
+ readonly code: ToolErrorCode;
74
+ /** Structured context for the caller. Must not contain secrets. */
75
+ readonly details?: Record<string, unknown>;
76
+ /**
77
+ * The original error, when this ToolError wraps one.
78
+ *
79
+ * Set as a plain property rather than through the ES2022 `Error(msg, { cause })`
80
+ * option, because the test tsconfig compiles against an older lib where that
81
+ * constructor overload does not exist.
82
+ */
83
+ readonly cause?: unknown;
84
+ /** Tool name, set by defineTool when the error passes through the factory */
85
+ toolName?: string;
86
+ constructor(code: ToolErrorCode, message: string, options?: {
87
+ details?: Record<string, unknown>;
88
+ cause?: unknown;
89
+ });
90
+ /** Arguments did not satisfy the schema or the handler's own checks. */
91
+ static invalidInput(message: string, details?: Record<string, unknown>): ToolError;
92
+ /** A referenced entity does not exist. */
93
+ static notFound(message: string, details?: Record<string, unknown>): ToolError;
94
+ /** Blocked by a security policy. */
95
+ static permissionDenied(message: string, details?: Record<string, unknown>): ToolError;
96
+ /** The system is not in a state where this operation can run. */
97
+ static preconditionFailed(message: string, details?: Record<string, unknown>): ToolError;
98
+ /** The tool ran but the underlying operation failed. */
99
+ static executionFailed(message: string, options?: {
100
+ details?: Record<string, unknown>;
101
+ cause?: unknown;
102
+ }): ToolError;
103
+ /** A dependency the tool calls out to failed. */
104
+ static upstream(message: string, options?: {
105
+ details?: Record<string, unknown>;
106
+ cause?: unknown;
107
+ }): ToolError;
108
+ /** The requested mode or option is not supported. */
109
+ static notImplemented(message: string, details?: Record<string, unknown>): ToolError;
110
+ /**
111
+ * Serialize to the payload carried in an error result envelope.
112
+ */
113
+ toData(): ToolErrorData;
114
+ }
115
+ /**
116
+ * Coerce any thrown value into a ToolError.
117
+ *
118
+ * A plain `throw new Error(...)` from a handler (or from a library it calls)
119
+ * becomes an EXECUTION_FAILED ToolError with the original attached as `cause`,
120
+ * so every failure leaves the factory in the same shape.
121
+ */
122
+ export declare function toToolError(thrown: unknown): ToolError;
123
+ //# sourceMappingURL=ToolError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolError.d.ts","sourceRoot":"","sources":["../../../src/protocols/mcp/ToolError.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;;;;;;;;GAaG;AAEH;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,aAAa,GACnB,eAAe,GACf,WAAW,GACX,mBAAmB,GACnB,qBAAqB,GACrB,kBAAkB,GAClB,gBAAgB,GAChB,iBAAiB,CAAC;AAExB;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,iFAAiF;IACjF,KAAK,EAAE,IAAI,CAAC;IACZ,4BAA4B;IAC5B,IAAI,EAAE,aAAa,CAAC;IACpB,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wDAAwD;IACxD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED;;;;;GAKG;AACH,qBAAa,SAAU,SAAQ,KAAK;IAChC,8CAA8C;IAC9C,SAAgB,IAAI,EAAE,aAAa,CAAC;IACpC,mEAAmE;IACnE,SAAgB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClD;;;;;;OAMG;IACH,SAAgB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChC,6EAA6E;IACtE,QAAQ,CAAC,EAAE,MAAM,CAAC;gBAGrB,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;IAapE,wEAAwE;WAC1D,YAAY,CACtB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,SAAS;IAIZ,0CAA0C;WAC5B,QAAQ,CAClB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,SAAS;IAIZ,oCAAoC;WACtB,gBAAgB,CAC1B,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,SAAS;IAIZ,iEAAiE;WACnD,kBAAkB,CAC5B,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,SAAS;IAIZ,wDAAwD;WAC1C,eAAe,CACzB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GACjE,SAAS;IAIZ,iDAAiD;WACnC,QAAQ,CAClB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GACjE,SAAS;IAIZ,qDAAqD;WACvC,cAAc,CACxB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,SAAS;IAIZ;;OAEG;IACI,MAAM,IAAI,aAAa;CASjC;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,CAUtD"}
@@ -0,0 +1,108 @@
1
+ /**
2
+ * Copyright 2024 Brad Anderson
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ *
16
+ * @author Brad Anderson <BradA1878@pm.me>
17
+ * @repository https://github.com/BradA1878/model-exchange-framework
18
+ * @documentation https://mxf-dev.github.io/mxf/
19
+ */
20
+ /**
21
+ * The error type thrown by tool handlers.
22
+ *
23
+ * Use the static constructors rather than `new ToolError(...)` where one fits —
24
+ * they keep codes consistent across the ~184 tools.
25
+ */
26
+ export class ToolError extends Error {
27
+ /** Stable, machine-readable classification */
28
+ code;
29
+ /** Structured context for the caller. Must not contain secrets. */
30
+ details;
31
+ /**
32
+ * The original error, when this ToolError wraps one.
33
+ *
34
+ * Set as a plain property rather than through the ES2022 `Error(msg, { cause })`
35
+ * option, because the test tsconfig compiles against an older lib where that
36
+ * constructor overload does not exist.
37
+ */
38
+ cause;
39
+ /** Tool name, set by defineTool when the error passes through the factory */
40
+ toolName;
41
+ constructor(code, message, options) {
42
+ super(message);
43
+ this.name = 'ToolError';
44
+ this.code = code;
45
+ this.details = options?.details;
46
+ this.cause = options?.cause;
47
+ // Restore the prototype chain — required for `instanceof` to work when
48
+ // the compile target is ES5/ES2015 and Error is subclassed.
49
+ Object.setPrototypeOf(this, ToolError.prototype);
50
+ }
51
+ /** Arguments did not satisfy the schema or the handler's own checks. */
52
+ static invalidInput(message, details) {
53
+ return new ToolError('INVALID_INPUT', message, { details });
54
+ }
55
+ /** A referenced entity does not exist. */
56
+ static notFound(message, details) {
57
+ return new ToolError('NOT_FOUND', message, { details });
58
+ }
59
+ /** Blocked by a security policy. */
60
+ static permissionDenied(message, details) {
61
+ return new ToolError('PERMISSION_DENIED', message, { details });
62
+ }
63
+ /** The system is not in a state where this operation can run. */
64
+ static preconditionFailed(message, details) {
65
+ return new ToolError('PRECONDITION_FAILED', message, { details });
66
+ }
67
+ /** The tool ran but the underlying operation failed. */
68
+ static executionFailed(message, options) {
69
+ return new ToolError('EXECUTION_FAILED', message, options);
70
+ }
71
+ /** A dependency the tool calls out to failed. */
72
+ static upstream(message, options) {
73
+ return new ToolError('UPSTREAM_ERROR', message, options);
74
+ }
75
+ /** The requested mode or option is not supported. */
76
+ static notImplemented(message, details) {
77
+ return new ToolError('NOT_IMPLEMENTED', message, { details });
78
+ }
79
+ /**
80
+ * Serialize to the payload carried in an error result envelope.
81
+ */
82
+ toData() {
83
+ return {
84
+ error: true,
85
+ code: this.code,
86
+ message: this.message,
87
+ ...(this.toolName ? { tool: this.toolName } : {}),
88
+ ...(this.details ? { details: this.details } : {})
89
+ };
90
+ }
91
+ }
92
+ /**
93
+ * Coerce any thrown value into a ToolError.
94
+ *
95
+ * A plain `throw new Error(...)` from a handler (or from a library it calls)
96
+ * becomes an EXECUTION_FAILED ToolError with the original attached as `cause`,
97
+ * so every failure leaves the factory in the same shape.
98
+ */
99
+ export function toToolError(thrown) {
100
+ if (thrown instanceof ToolError) {
101
+ return thrown;
102
+ }
103
+ if (thrown instanceof Error) {
104
+ return new ToolError('EXECUTION_FAILED', thrown.message, { cause: thrown });
105
+ }
106
+ return new ToolError('EXECUTION_FAILED', String(thrown), { cause: thrown });
107
+ }
108
+ //# sourceMappingURL=ToolError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolError.js","sourceRoot":"","sources":["../../../src/protocols/mcp/ToolError.ts"],"names":[],"mappings":"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"}