@nexus-cortex/executors 4.26.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 (365) hide show
  1. package/LICENSE +202 -0
  2. package/NOTICE +2 -0
  3. package/README.md +13 -0
  4. package/dist/ExecutorRegistry.d.ts +89 -0
  5. package/dist/ExecutorRegistry.d.ts.map +1 -0
  6. package/dist/ExecutorRegistry.js +219 -0
  7. package/dist/ExecutorRegistry.js.map +1 -0
  8. package/dist/base/BaseTool.d.ts +108 -0
  9. package/dist/base/BaseTool.d.ts.map +1 -0
  10. package/dist/base/BaseTool.js +111 -0
  11. package/dist/base/BaseTool.js.map +1 -0
  12. package/dist/base/ToolRegistry.d.ts +141 -0
  13. package/dist/base/ToolRegistry.d.ts.map +1 -0
  14. package/dist/base/ToolRegistry.js +241 -0
  15. package/dist/base/ToolRegistry.js.map +1 -0
  16. package/dist/base/ToolResult.d.ts +63 -0
  17. package/dist/base/ToolResult.d.ts.map +1 -0
  18. package/dist/base/ToolResult.js +8 -0
  19. package/dist/base/ToolResult.js.map +1 -0
  20. package/dist/base/index.d.ts +10 -0
  21. package/dist/base/index.d.ts.map +1 -0
  22. package/dist/base/index.js +8 -0
  23. package/dist/base/index.js.map +1 -0
  24. package/dist/implementations/addon/CreateArtifactTool.d.ts +221 -0
  25. package/dist/implementations/addon/CreateArtifactTool.d.ts.map +1 -0
  26. package/dist/implementations/addon/CreateArtifactTool.js +1042 -0
  27. package/dist/implementations/addon/CreateArtifactTool.js.map +1 -0
  28. package/dist/implementations/addon/FrameDiffCache.d.ts +166 -0
  29. package/dist/implementations/addon/FrameDiffCache.d.ts.map +1 -0
  30. package/dist/implementations/addon/FrameDiffCache.js +395 -0
  31. package/dist/implementations/addon/FrameDiffCache.js.map +1 -0
  32. package/dist/implementations/addon/H264StreamEncoder.d.ts +84 -0
  33. package/dist/implementations/addon/H264StreamEncoder.d.ts.map +1 -0
  34. package/dist/implementations/addon/H264StreamEncoder.js +203 -0
  35. package/dist/implementations/addon/H264StreamEncoder.js.map +1 -0
  36. package/dist/implementations/addon/HybridScreenshotManager.d.ts +197 -0
  37. package/dist/implementations/addon/HybridScreenshotManager.d.ts.map +1 -0
  38. package/dist/implementations/addon/HybridScreenshotManager.js +415 -0
  39. package/dist/implementations/addon/HybridScreenshotManager.js.map +1 -0
  40. package/dist/implementations/addon/InspectSandboxTool.d.ts +54 -0
  41. package/dist/implementations/addon/InspectSandboxTool.d.ts.map +1 -0
  42. package/dist/implementations/addon/InspectSandboxTool.js +226 -0
  43. package/dist/implementations/addon/InspectSandboxTool.js.map +1 -0
  44. package/dist/implementations/addon/InteractWithSandboxTool.d.ts +90 -0
  45. package/dist/implementations/addon/InteractWithSandboxTool.d.ts.map +1 -0
  46. package/dist/implementations/addon/InteractWithSandboxTool.js +367 -0
  47. package/dist/implementations/addon/InteractWithSandboxTool.js.map +1 -0
  48. package/dist/implementations/addon/KeyframeDetector.d.ts +140 -0
  49. package/dist/implementations/addon/KeyframeDetector.d.ts.map +1 -0
  50. package/dist/implementations/addon/KeyframeDetector.js +390 -0
  51. package/dist/implementations/addon/KeyframeDetector.js.map +1 -0
  52. package/dist/implementations/addon/ModifySandboxTool.d.ts +62 -0
  53. package/dist/implementations/addon/ModifySandboxTool.d.ts.map +1 -0
  54. package/dist/implementations/addon/ModifySandboxTool.js +266 -0
  55. package/dist/implementations/addon/ModifySandboxTool.js.map +1 -0
  56. package/dist/implementations/addon/ReactArtifactBuilder.d.ts +27 -0
  57. package/dist/implementations/addon/ReactArtifactBuilder.d.ts.map +1 -0
  58. package/dist/implementations/addon/ReactArtifactBuilder.js +198 -0
  59. package/dist/implementations/addon/ReactArtifactBuilder.js.map +1 -0
  60. package/dist/implementations/addon/SandboxEventBroadcaster.d.ts +143 -0
  61. package/dist/implementations/addon/SandboxEventBroadcaster.d.ts.map +1 -0
  62. package/dist/implementations/addon/SandboxEventBroadcaster.js +258 -0
  63. package/dist/implementations/addon/SandboxEventBroadcaster.js.map +1 -0
  64. package/dist/implementations/addon/SandboxIntrospectionTools.d.ts +77 -0
  65. package/dist/implementations/addon/SandboxIntrospectionTools.d.ts.map +1 -0
  66. package/dist/implementations/addon/SandboxIntrospectionTools.js +292 -0
  67. package/dist/implementations/addon/SandboxIntrospectionTools.js.map +1 -0
  68. package/dist/implementations/addon/SandboxViewServer.d.ts +127 -0
  69. package/dist/implementations/addon/SandboxViewServer.d.ts.map +1 -0
  70. package/dist/implementations/addon/SandboxViewServer.js +775 -0
  71. package/dist/implementations/addon/SandboxViewServer.js.map +1 -0
  72. package/dist/implementations/addon/ScreenStream.d.ts +149 -0
  73. package/dist/implementations/addon/ScreenStream.d.ts.map +1 -0
  74. package/dist/implementations/addon/ScreenStream.js +306 -0
  75. package/dist/implementations/addon/ScreenStream.js.map +1 -0
  76. package/dist/implementations/addon/StopSandboxTool.d.ts +61 -0
  77. package/dist/implementations/addon/StopSandboxTool.d.ts.map +1 -0
  78. package/dist/implementations/addon/StopSandboxTool.js +252 -0
  79. package/dist/implementations/addon/StopSandboxTool.js.map +1 -0
  80. package/dist/implementations/addon/TerminalSandbox.d.ts +111 -0
  81. package/dist/implementations/addon/TerminalSandbox.d.ts.map +1 -0
  82. package/dist/implementations/addon/TerminalSandbox.js +345 -0
  83. package/dist/implementations/addon/TerminalSandbox.js.map +1 -0
  84. package/dist/implementations/addon/VisualFeedbackBridge.d.ts +367 -0
  85. package/dist/implementations/addon/VisualFeedbackBridge.d.ts.map +1 -0
  86. package/dist/implementations/addon/VisualFeedbackBridge.js +888 -0
  87. package/dist/implementations/addon/VisualFeedbackBridge.js.map +1 -0
  88. package/dist/implementations/addon/WindowManager.d.ts +138 -0
  89. package/dist/implementations/addon/WindowManager.d.ts.map +1 -0
  90. package/dist/implementations/addon/WindowManager.js +276 -0
  91. package/dist/implementations/addon/WindowManager.js.map +1 -0
  92. package/dist/implementations/addon/index.d.ts +29 -0
  93. package/dist/implementations/addon/index.d.ts.map +1 -0
  94. package/dist/implementations/addon/index.js +29 -0
  95. package/dist/implementations/addon/index.js.map +1 -0
  96. package/dist/implementations/addon/injectables/reactIntrospection.d.ts +57 -0
  97. package/dist/implementations/addon/injectables/reactIntrospection.d.ts.map +1 -0
  98. package/dist/implementations/addon/injectables/reactIntrospection.js +480 -0
  99. package/dist/implementations/addon/injectables/reactIntrospection.js.map +1 -0
  100. package/dist/implementations/addon/terminal-client.html +253 -0
  101. package/dist/implementations/agent/PRAgentTool.d.ts +37 -0
  102. package/dist/implementations/agent/PRAgentTool.d.ts.map +1 -0
  103. package/dist/implementations/agent/PRAgentTool.js +257 -0
  104. package/dist/implementations/agent/PRAgentTool.js.map +1 -0
  105. package/dist/implementations/agent/TaskTool.d.ts +76 -0
  106. package/dist/implementations/agent/TaskTool.d.ts.map +1 -0
  107. package/dist/implementations/agent/TaskTool.js +424 -0
  108. package/dist/implementations/agent/TaskTool.js.map +1 -0
  109. package/dist/implementations/agent/index.d.ts +5 -0
  110. package/dist/implementations/agent/index.d.ts.map +1 -0
  111. package/dist/implementations/agent/index.js +3 -0
  112. package/dist/implementations/agent/index.js.map +1 -0
  113. package/dist/implementations/execution/BackgroundProcessRegistry.d.ts +68 -0
  114. package/dist/implementations/execution/BackgroundProcessRegistry.d.ts.map +1 -0
  115. package/dist/implementations/execution/BackgroundProcessRegistry.js +146 -0
  116. package/dist/implementations/execution/BackgroundProcessRegistry.js.map +1 -0
  117. package/dist/implementations/execution/BashOutputTool.d.ts +42 -0
  118. package/dist/implementations/execution/BashOutputTool.d.ts.map +1 -0
  119. package/dist/implementations/execution/BashOutputTool.js +168 -0
  120. package/dist/implementations/execution/BashOutputTool.js.map +1 -0
  121. package/dist/implementations/execution/CodeExecuteTool.d.ts +31 -0
  122. package/dist/implementations/execution/CodeExecuteTool.d.ts.map +1 -0
  123. package/dist/implementations/execution/CodeExecuteTool.js +127 -0
  124. package/dist/implementations/execution/CodeExecuteTool.js.map +1 -0
  125. package/dist/implementations/execution/KillShellTool.d.ts +37 -0
  126. package/dist/implementations/execution/KillShellTool.d.ts.map +1 -0
  127. package/dist/implementations/execution/KillShellTool.js +144 -0
  128. package/dist/implementations/execution/KillShellTool.js.map +1 -0
  129. package/dist/implementations/execution/SearchToolsTool.d.ts +32 -0
  130. package/dist/implementations/execution/SearchToolsTool.d.ts.map +1 -0
  131. package/dist/implementations/execution/SearchToolsTool.js +109 -0
  132. package/dist/implementations/execution/SearchToolsTool.js.map +1 -0
  133. package/dist/implementations/execution/ShellTool.d.ts +108 -0
  134. package/dist/implementations/execution/ShellTool.d.ts.map +1 -0
  135. package/dist/implementations/execution/ShellTool.js +546 -0
  136. package/dist/implementations/execution/ShellTool.js.map +1 -0
  137. package/dist/implementations/execution/WorkspaceManagerTool.d.ts +40 -0
  138. package/dist/implementations/execution/WorkspaceManagerTool.d.ts.map +1 -0
  139. package/dist/implementations/execution/WorkspaceManagerTool.js +370 -0
  140. package/dist/implementations/execution/WorkspaceManagerTool.js.map +1 -0
  141. package/dist/implementations/execution/index.d.ts +13 -0
  142. package/dist/implementations/execution/index.d.ts.map +1 -0
  143. package/dist/implementations/execution/index.js +13 -0
  144. package/dist/implementations/execution/index.js.map +1 -0
  145. package/dist/implementations/extensions/EndTurnTool.d.ts +62 -0
  146. package/dist/implementations/extensions/EndTurnTool.d.ts.map +1 -0
  147. package/dist/implementations/extensions/EndTurnTool.js +172 -0
  148. package/dist/implementations/extensions/EndTurnTool.js.map +1 -0
  149. package/dist/implementations/extensions/ResearchBacklogTool.d.ts +37 -0
  150. package/dist/implementations/extensions/ResearchBacklogTool.d.ts.map +1 -0
  151. package/dist/implementations/extensions/ResearchBacklogTool.js +102 -0
  152. package/dist/implementations/extensions/ResearchBacklogTool.js.map +1 -0
  153. package/dist/implementations/extensions/SkillTool.d.ts +108 -0
  154. package/dist/implementations/extensions/SkillTool.d.ts.map +1 -0
  155. package/dist/implementations/extensions/SkillTool.js +351 -0
  156. package/dist/implementations/extensions/SkillTool.js.map +1 -0
  157. package/dist/implementations/extensions/SlashCommandTool.d.ts +112 -0
  158. package/dist/implementations/extensions/SlashCommandTool.d.ts.map +1 -0
  159. package/dist/implementations/extensions/SlashCommandTool.js +315 -0
  160. package/dist/implementations/extensions/SlashCommandTool.js.map +1 -0
  161. package/dist/implementations/extensions/index.d.ts +14 -0
  162. package/dist/implementations/extensions/index.d.ts.map +1 -0
  163. package/dist/implementations/extensions/index.js +10 -0
  164. package/dist/implementations/extensions/index.js.map +1 -0
  165. package/dist/implementations/file/EditTool.d.ts +232 -0
  166. package/dist/implementations/file/EditTool.d.ts.map +1 -0
  167. package/dist/implementations/file/EditTool.js +707 -0
  168. package/dist/implementations/file/EditTool.js.map +1 -0
  169. package/dist/implementations/file/ReadFileTool.d.ts +49 -0
  170. package/dist/implementations/file/ReadFileTool.d.ts.map +1 -0
  171. package/dist/implementations/file/ReadFileTool.js +225 -0
  172. package/dist/implementations/file/ReadFileTool.js.map +1 -0
  173. package/dist/implementations/file/WriteBinaryTool.d.ts +21 -0
  174. package/dist/implementations/file/WriteBinaryTool.d.ts.map +1 -0
  175. package/dist/implementations/file/WriteBinaryTool.js +153 -0
  176. package/dist/implementations/file/WriteBinaryTool.js.map +1 -0
  177. package/dist/implementations/file/WriteFileTool.d.ts +41 -0
  178. package/dist/implementations/file/WriteFileTool.d.ts.map +1 -0
  179. package/dist/implementations/file/WriteFileTool.js +220 -0
  180. package/dist/implementations/file/WriteFileTool.js.map +1 -0
  181. package/dist/implementations/file/index.d.ts +8 -0
  182. package/dist/implementations/file/index.d.ts.map +1 -0
  183. package/dist/implementations/file/index.js +8 -0
  184. package/dist/implementations/file/index.js.map +1 -0
  185. package/dist/implementations/historical/GetConversationSegmentTool.d.ts +44 -0
  186. package/dist/implementations/historical/GetConversationSegmentTool.d.ts.map +1 -0
  187. package/dist/implementations/historical/GetConversationSegmentTool.js +220 -0
  188. package/dist/implementations/historical/GetConversationSegmentTool.js.map +1 -0
  189. package/dist/implementations/historical/ListCompactionBoundariesTool.d.ts +36 -0
  190. package/dist/implementations/historical/ListCompactionBoundariesTool.d.ts.map +1 -0
  191. package/dist/implementations/historical/ListCompactionBoundariesTool.js +174 -0
  192. package/dist/implementations/historical/ListCompactionBoundariesTool.js.map +1 -0
  193. package/dist/implementations/historical/ListSessionsTool.d.ts +38 -0
  194. package/dist/implementations/historical/ListSessionsTool.d.ts.map +1 -0
  195. package/dist/implementations/historical/ListSessionsTool.js +140 -0
  196. package/dist/implementations/historical/ListSessionsTool.js.map +1 -0
  197. package/dist/implementations/historical/LoadSessionTool.d.ts +39 -0
  198. package/dist/implementations/historical/LoadSessionTool.d.ts.map +1 -0
  199. package/dist/implementations/historical/LoadSessionTool.js +171 -0
  200. package/dist/implementations/historical/LoadSessionTool.js.map +1 -0
  201. package/dist/implementations/historical/RequestHistoricalContextTool.d.ts +46 -0
  202. package/dist/implementations/historical/RequestHistoricalContextTool.d.ts.map +1 -0
  203. package/dist/implementations/historical/RequestHistoricalContextTool.js +224 -0
  204. package/dist/implementations/historical/RequestHistoricalContextTool.js.map +1 -0
  205. package/dist/implementations/historical/SearchConversationHistoryTool.d.ts +51 -0
  206. package/dist/implementations/historical/SearchConversationHistoryTool.d.ts.map +1 -0
  207. package/dist/implementations/historical/SearchConversationHistoryTool.js +306 -0
  208. package/dist/implementations/historical/SearchConversationHistoryTool.js.map +1 -0
  209. package/dist/implementations/historical/index.d.ts +12 -0
  210. package/dist/implementations/historical/index.d.ts.map +1 -0
  211. package/dist/implementations/historical/index.js +12 -0
  212. package/dist/implementations/historical/index.js.map +1 -0
  213. package/dist/implementations/index.d.ts +16 -0
  214. package/dist/implementations/index.d.ts.map +1 -0
  215. package/dist/implementations/index.js +28 -0
  216. package/dist/implementations/index.js.map +1 -0
  217. package/dist/implementations/mcp/DiscoveredMcpTool.d.ts +58 -0
  218. package/dist/implementations/mcp/DiscoveredMcpTool.d.ts.map +1 -0
  219. package/dist/implementations/mcp/DiscoveredMcpTool.js +269 -0
  220. package/dist/implementations/mcp/DiscoveredMcpTool.js.map +1 -0
  221. package/dist/implementations/mcp/index.d.ts +9 -0
  222. package/dist/implementations/mcp/index.d.ts.map +1 -0
  223. package/dist/implementations/mcp/index.js +8 -0
  224. package/dist/implementations/mcp/index.js.map +1 -0
  225. package/dist/implementations/notebook/NotebookEditTool.d.ts +96 -0
  226. package/dist/implementations/notebook/NotebookEditTool.d.ts.map +1 -0
  227. package/dist/implementations/notebook/NotebookEditTool.js +390 -0
  228. package/dist/implementations/notebook/NotebookEditTool.js.map +1 -0
  229. package/dist/implementations/notebook/index.d.ts +7 -0
  230. package/dist/implementations/notebook/index.d.ts.map +1 -0
  231. package/dist/implementations/notebook/index.js +7 -0
  232. package/dist/implementations/notebook/index.js.map +1 -0
  233. package/dist/implementations/search/GlobTool.d.ts +73 -0
  234. package/dist/implementations/search/GlobTool.d.ts.map +1 -0
  235. package/dist/implementations/search/GlobTool.js +213 -0
  236. package/dist/implementations/search/GlobTool.js.map +1 -0
  237. package/dist/implementations/search/GrepTool.d.ts +102 -0
  238. package/dist/implementations/search/GrepTool.d.ts.map +1 -0
  239. package/dist/implementations/search/GrepTool.js +754 -0
  240. package/dist/implementations/search/GrepTool.js.map +1 -0
  241. package/dist/implementations/search/index.d.ts +6 -0
  242. package/dist/implementations/search/index.d.ts.map +1 -0
  243. package/dist/implementations/search/index.js +6 -0
  244. package/dist/implementations/search/index.js.map +1 -0
  245. package/dist/implementations/tmux/TmuxSessionTool.d.ts +82 -0
  246. package/dist/implementations/tmux/TmuxSessionTool.d.ts.map +1 -0
  247. package/dist/implementations/tmux/TmuxSessionTool.js +371 -0
  248. package/dist/implementations/tmux/TmuxSessionTool.js.map +1 -0
  249. package/dist/implementations/tmux/TmuxViewServer.d.ts +86 -0
  250. package/dist/implementations/tmux/TmuxViewServer.d.ts.map +1 -0
  251. package/dist/implementations/tmux/TmuxViewServer.js +480 -0
  252. package/dist/implementations/tmux/TmuxViewServer.js.map +1 -0
  253. package/dist/implementations/tmux/index.d.ts +6 -0
  254. package/dist/implementations/tmux/index.d.ts.map +1 -0
  255. package/dist/implementations/tmux/index.js +6 -0
  256. package/dist/implementations/tmux/index.js.map +1 -0
  257. package/dist/implementations/ui/AskUserQuestionTool.d.ts +77 -0
  258. package/dist/implementations/ui/AskUserQuestionTool.d.ts.map +1 -0
  259. package/dist/implementations/ui/AskUserQuestionTool.js +241 -0
  260. package/dist/implementations/ui/AskUserQuestionTool.js.map +1 -0
  261. package/dist/implementations/ui/ExitPlanModeTool.d.ts +44 -0
  262. package/dist/implementations/ui/ExitPlanModeTool.d.ts.map +1 -0
  263. package/dist/implementations/ui/ExitPlanModeTool.js +150 -0
  264. package/dist/implementations/ui/ExitPlanModeTool.js.map +1 -0
  265. package/dist/implementations/ui/TodoWriteTool.d.ts +59 -0
  266. package/dist/implementations/ui/TodoWriteTool.d.ts.map +1 -0
  267. package/dist/implementations/ui/TodoWriteTool.js +315 -0
  268. package/dist/implementations/ui/TodoWriteTool.js.map +1 -0
  269. package/dist/implementations/ui/index.d.ts +9 -0
  270. package/dist/implementations/ui/index.d.ts.map +1 -0
  271. package/dist/implementations/ui/index.js +9 -0
  272. package/dist/implementations/ui/index.js.map +1 -0
  273. package/dist/implementations/web/BrowseTool.d.ts +43 -0
  274. package/dist/implementations/web/BrowseTool.d.ts.map +1 -0
  275. package/dist/implementations/web/BrowseTool.js +181 -0
  276. package/dist/implementations/web/BrowseTool.js.map +1 -0
  277. package/dist/implementations/web/SandboxTransferTool.d.ts +30 -0
  278. package/dist/implementations/web/SandboxTransferTool.d.ts.map +1 -0
  279. package/dist/implementations/web/SandboxTransferTool.js +261 -0
  280. package/dist/implementations/web/SandboxTransferTool.js.map +1 -0
  281. package/dist/implementations/web/WebFetchTool.d.ts +93 -0
  282. package/dist/implementations/web/WebFetchTool.d.ts.map +1 -0
  283. package/dist/implementations/web/WebFetchTool.js +484 -0
  284. package/dist/implementations/web/WebFetchTool.js.map +1 -0
  285. package/dist/implementations/web/WebSearchTool.d.ts +53 -0
  286. package/dist/implementations/web/WebSearchTool.d.ts.map +1 -0
  287. package/dist/implementations/web/WebSearchTool.js +227 -0
  288. package/dist/implementations/web/WebSearchTool.js.map +1 -0
  289. package/dist/implementations/web/escalateDirective.d.ts +11 -0
  290. package/dist/implementations/web/escalateDirective.d.ts.map +1 -0
  291. package/dist/implementations/web/escalateDirective.js +20 -0
  292. package/dist/implementations/web/escalateDirective.js.map +1 -0
  293. package/dist/implementations/web/index.d.ts +10 -0
  294. package/dist/implementations/web/index.d.ts.map +1 -0
  295. package/dist/implementations/web/index.js +10 -0
  296. package/dist/implementations/web/index.js.map +1 -0
  297. package/dist/implementations/web/webBackends.d.ts +65 -0
  298. package/dist/implementations/web/webBackends.d.ts.map +1 -0
  299. package/dist/implementations/web/webBackends.js +430 -0
  300. package/dist/implementations/web/webBackends.js.map +1 -0
  301. package/dist/implementations/web/webFetchRequestInit.d.ts +9 -0
  302. package/dist/implementations/web/webFetchRequestInit.d.ts.map +1 -0
  303. package/dist/implementations/web/webFetchRequestInit.js +21 -0
  304. package/dist/implementations/web/webFetchRequestInit.js.map +1 -0
  305. package/dist/index.d.ts +14 -0
  306. package/dist/index.d.ts.map +1 -0
  307. package/dist/index.js +18 -0
  308. package/dist/index.js.map +1 -0
  309. package/dist/utils/ArtifactRegistry.d.ts +138 -0
  310. package/dist/utils/ArtifactRegistry.d.ts.map +1 -0
  311. package/dist/utils/ArtifactRegistry.js +259 -0
  312. package/dist/utils/ArtifactRegistry.js.map +1 -0
  313. package/dist/utils/ChromiumBrowserManager.d.ts +56 -0
  314. package/dist/utils/ChromiumBrowserManager.d.ts.map +1 -0
  315. package/dist/utils/ChromiumBrowserManager.js +243 -0
  316. package/dist/utils/ChromiumBrowserManager.js.map +1 -0
  317. package/dist/utils/FileUtils.d.ts +81 -0
  318. package/dist/utils/FileUtils.d.ts.map +1 -0
  319. package/dist/utils/FileUtils.js +148 -0
  320. package/dist/utils/FileUtils.js.map +1 -0
  321. package/dist/utils/GitPolicy.d.ts +70 -0
  322. package/dist/utils/GitPolicy.d.ts.map +1 -0
  323. package/dist/utils/GitPolicy.js +166 -0
  324. package/dist/utils/GitPolicy.js.map +1 -0
  325. package/dist/utils/GitUtils.d.ts +18 -0
  326. package/dist/utils/GitUtils.d.ts.map +1 -0
  327. package/dist/utils/GitUtils.js +62 -0
  328. package/dist/utils/GitUtils.js.map +1 -0
  329. package/dist/utils/SandboxRegistry.d.ts +110 -0
  330. package/dist/utils/SandboxRegistry.d.ts.map +1 -0
  331. package/dist/utils/SandboxRegistry.js +220 -0
  332. package/dist/utils/SandboxRegistry.js.map +1 -0
  333. package/dist/utils/SchemaValidator.d.ts +21 -0
  334. package/dist/utils/SchemaValidator.d.ts.map +1 -0
  335. package/dist/utils/SchemaValidator.js +67 -0
  336. package/dist/utils/SchemaValidator.js.map +1 -0
  337. package/dist/utils/SessionLock.d.ts +96 -0
  338. package/dist/utils/SessionLock.d.ts.map +1 -0
  339. package/dist/utils/SessionLock.js +276 -0
  340. package/dist/utils/SessionLock.js.map +1 -0
  341. package/dist/utils/SessionPersistence.d.ts +89 -0
  342. package/dist/utils/SessionPersistence.d.ts.map +1 -0
  343. package/dist/utils/SessionPersistence.js +244 -0
  344. package/dist/utils/SessionPersistence.js.map +1 -0
  345. package/dist/utils/TextUtils.d.ts +77 -0
  346. package/dist/utils/TextUtils.d.ts.map +1 -0
  347. package/dist/utils/TextUtils.js +112 -0
  348. package/dist/utils/TextUtils.js.map +1 -0
  349. package/dist/utils/TmuxCapture.d.ts +94 -0
  350. package/dist/utils/TmuxCapture.d.ts.map +1 -0
  351. package/dist/utils/TmuxCapture.js +131 -0
  352. package/dist/utils/TmuxCapture.js.map +1 -0
  353. package/dist/utils/TmuxManager.d.ts +65 -0
  354. package/dist/utils/TmuxManager.d.ts.map +1 -0
  355. package/dist/utils/TmuxManager.js +304 -0
  356. package/dist/utils/TmuxManager.js.map +1 -0
  357. package/dist/utils/autoResearchPlanGate.d.ts +10 -0
  358. package/dist/utils/autoResearchPlanGate.d.ts.map +1 -0
  359. package/dist/utils/autoResearchPlanGate.js +57 -0
  360. package/dist/utils/autoResearchPlanGate.js.map +1 -0
  361. package/dist/utils/index.d.ts +19 -0
  362. package/dist/utils/index.d.ts.map +1 -0
  363. package/dist/utils/index.js +13 -0
  364. package/dist/utils/index.js.map +1 -0
  365. package/package.json +83 -0
@@ -0,0 +1,111 @@
1
+ /**
2
+ * Base Tool Abstract Class
3
+ *
4
+ * Foundation for all tool executors in Nexus Cortex
5
+ * Adapted from Gemini CLI patterns
6
+ *
7
+ * Key Principle: Definition ≠ Execution
8
+ * - Tool definitions live in @nexus-cortex/core
9
+ * - Tool executors live here in @nexus-cortex/executors
10
+ */
11
+ /**
12
+ * Abstract base class for tool execution
13
+ *
14
+ * All tool executors must extend this class and implement:
15
+ * - validateToolParams(): Validate parameters before execution
16
+ * - execute(): Perform the actual tool operation
17
+ *
18
+ * Optionally override:
19
+ * - shouldConfirmExecute(): Determine if user confirmation is needed
20
+ * - getDescription(): Provide human-readable description of action
21
+ */
22
+ export class BaseTool {
23
+ name;
24
+ displayName;
25
+ description;
26
+ parameterSchema;
27
+ isOutputMarkdown;
28
+ canUpdateOutput;
29
+ /**
30
+ * Creates a new tool executor
31
+ *
32
+ * @param name Internal name of the tool (matches definition in core)
33
+ * @param displayName User-friendly display name
34
+ * @param description What the tool does
35
+ * @param parameterSchema JSON Schema for parameters
36
+ * @param isOutputMarkdown Whether output should be rendered as markdown
37
+ * @param canUpdateOutput Whether tool supports streaming output
38
+ */
39
+ constructor(name, displayName, description, parameterSchema, isOutputMarkdown = true, canUpdateOutput = false) {
40
+ this.name = name;
41
+ this.displayName = displayName;
42
+ this.description = description;
43
+ this.parameterSchema = parameterSchema;
44
+ this.isOutputMarkdown = isOutputMarkdown;
45
+ this.canUpdateOutput = canUpdateOutput;
46
+ }
47
+ /**
48
+ * Get human-readable description of what the tool will do
49
+ *
50
+ * Used for logging, debugging, and user confirmation prompts.
51
+ * Default implementation returns JSON stringified params.
52
+ * Override to provide better descriptions.
53
+ *
54
+ * @param params Tool parameters
55
+ * @returns Human-readable description
56
+ */
57
+ getDescription(params) {
58
+ return `Executing ${this.displayName} with: ${JSON.stringify(params)}`;
59
+ }
60
+ /**
61
+ * Determine if tool execution should prompt for user confirmation
62
+ *
63
+ * Override this for tools that:
64
+ * - Modify files
65
+ * - Execute commands
66
+ * - Make network requests
67
+ * - Perform destructive operations
68
+ *
69
+ * Default: No confirmation required
70
+ *
71
+ * @param params Tool parameters
72
+ * @param signal AbortSignal
73
+ * @returns Confirmation details or false if no confirmation needed
74
+ */
75
+ async shouldConfirmExecute(
76
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
77
+ params,
78
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
79
+ signal) {
80
+ return false; // Default: no confirmation
81
+ }
82
+ /**
83
+ * Helper: Create success result
84
+ *
85
+ * Convenience method for creating successful tool results
86
+ */
87
+ createSuccessResult(content, metadata) {
88
+ return {
89
+ llmContent: content,
90
+ returnDisplay: typeof content === 'string' ? content : JSON.stringify(content, null, 2),
91
+ success: true,
92
+ metadata,
93
+ };
94
+ }
95
+ /**
96
+ * Helper: Create error result
97
+ *
98
+ * Convenience method for creating error tool results
99
+ */
100
+ createErrorResult(error, metadata) {
101
+ const errorMessage = error instanceof Error ? error.message : error;
102
+ return {
103
+ llmContent: `Error: ${errorMessage}`,
104
+ returnDisplay: `Error: ${errorMessage}`,
105
+ success: false,
106
+ error: errorMessage,
107
+ metadata,
108
+ };
109
+ }
110
+ }
111
+ //# sourceMappingURL=BaseTool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseTool.js","sourceRoot":"","sources":["../../src/base/BaseTool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH;;;;;;;;;;GAUG;AACH,MAAM,OAAgB,QAAQ;IAYV;IACA;IACA;IACA;IACA;IACA;IAhBlB;;;;;;;;;OASG;IACH,YACkB,IAAY,EACZ,WAAmB,EACnB,WAAmB,EACnB,eAA2B,EAC3B,mBAA4B,IAAI,EAChC,kBAA2B,KAAK;QALhC,SAAI,GAAJ,IAAI,CAAQ;QACZ,gBAAW,GAAX,WAAW,CAAQ;QACnB,gBAAW,GAAX,WAAW,CAAQ;QACnB,oBAAe,GAAf,eAAe,CAAY;QAC3B,qBAAgB,GAAhB,gBAAgB,CAAgB;QAChC,oBAAe,GAAf,eAAe,CAAiB;IAC/C,CAAC;IAkCJ;;;;;;;;;OASG;IACH,cAAc,CAAC,MAAe;QAC5B,OAAO,aAAa,IAAI,CAAC,WAAW,UAAU,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;IACzE,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,oBAAoB;IACxB,6DAA6D;IAC7D,MAAe;IACf,6DAA6D;IAC7D,MAAmB;QAEnB,OAAO,KAAK,CAAC,CAAC,2BAA2B;IAC3C,CAAC;IAED;;;;OAIG;IACO,mBAAmB,CAC3B,OAAuB,EACvB,QAAiC;QAEjC,OAAO;YACL,UAAU,EAAE,OAAO;YACnB,aAAa,EAAE,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;YACvF,OAAO,EAAE,IAAI;YACb,QAAQ;SACT,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACO,iBAAiB,CAAC,KAAqB,EAAE,QAAiC;QAClF,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;QAEpE,OAAO;YACL,UAAU,EAAE,UAAU,YAAY,EAAE;YACpC,aAAa,EAAE,UAAU,YAAY,EAAE;YACvC,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,YAAY;YACnB,QAAQ;SACT,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,141 @@
1
+ /**
2
+ * Tool Registry
3
+ *
4
+ * Manages registration and execution of tool executors
5
+ * Central coordination point for all tool execution in Nexus Cortex
6
+ */
7
+ import type { BaseTool } from './BaseTool.js';
8
+ import type { ToolResult } from './ToolResult.js';
9
+ import type { ExecutorConfig } from '@nexus-cortex/types';
10
+ export type { ExecutorConfig };
11
+ /**
12
+ * Tool execution statistics
13
+ */
14
+ export interface ToolExecutionStats {
15
+ /** Tool name */
16
+ toolName: string;
17
+ /** Number of times executed */
18
+ executionCount: number;
19
+ /** Total execution time (milliseconds) */
20
+ totalExecutionTime: number;
21
+ /** Average execution time (milliseconds) */
22
+ averageExecutionTime: number;
23
+ /** Number of successful executions */
24
+ successCount: number;
25
+ /** Number of failed executions */
26
+ failureCount: number;
27
+ /** Last execution timestamp */
28
+ lastExecuted?: Date;
29
+ }
30
+ /**
31
+ * Tool Registry
32
+ *
33
+ * Manages tool executor instances and provides execution interface
34
+ */
35
+ export declare class ToolRegistry {
36
+ private config;
37
+ /** Registered tool executors */
38
+ private tools;
39
+ /** Execution statistics */
40
+ private stats;
41
+ constructor(config: ExecutorConfig);
42
+ /**
43
+ * Register a tool executor
44
+ *
45
+ * @param tool Tool executor instance
46
+ * @throws Error if tool with same name already registered
47
+ */
48
+ registerTool(tool: BaseTool<any, any>): void;
49
+ /**
50
+ * Update executor config (e.g., add sessionId after session creation)
51
+ *
52
+ * @param updates Partial config updates
53
+ */
54
+ updateConfig(updates: Partial<ExecutorConfig>): void;
55
+ /**
56
+ * Get current config
57
+ *
58
+ * @returns Current executor config
59
+ */
60
+ getConfig(): ExecutorConfig;
61
+ /**
62
+ * Unregister a tool executor
63
+ *
64
+ * @param name Tool name
65
+ * @returns true if tool was removed, false if not found
66
+ */
67
+ unregisterTool(name: string): boolean;
68
+ /**
69
+ * Get a tool executor by name
70
+ *
71
+ * @param name Tool name
72
+ * @returns Tool executor or undefined if not found
73
+ */
74
+ getTool(name: string): BaseTool<any, any> | undefined;
75
+ /**
76
+ * Check if a tool is registered
77
+ *
78
+ * @param name Tool name
79
+ * @returns true if registered, false otherwise
80
+ */
81
+ hasTool(name: string): boolean;
82
+ /**
83
+ * Get all registered tool names
84
+ *
85
+ * @returns Array of tool names
86
+ */
87
+ getToolNames(): string[];
88
+ /**
89
+ * Get count of registered tools
90
+ *
91
+ * @returns Number of registered tools
92
+ */
93
+ getToolCount(): number;
94
+ /**
95
+ * Execute a tool by name
96
+ *
97
+ * Main execution method that:
98
+ * 1. Validates tool exists
99
+ * 2. Validates parameters
100
+ * 3. Executes tool
101
+ * 4. Handles errors
102
+ * 5. Updates statistics
103
+ *
104
+ * @param name Tool name
105
+ * @param params Tool parameters
106
+ * @param signal AbortSignal for cancellation
107
+ * @param updateOutput Optional callback for streaming output
108
+ * @returns Tool execution result
109
+ */
110
+ executeTool(name: string, params: any, signal?: AbortSignal, updateOutput?: (output: string) => void): Promise<ToolResult>;
111
+ /**
112
+ * Get execution statistics for a tool
113
+ *
114
+ * @param name Tool name
115
+ * @returns Statistics or undefined if tool not found
116
+ */
117
+ getToolStats(name: string): ToolExecutionStats | undefined;
118
+ /**
119
+ * Get execution statistics for all tools
120
+ *
121
+ * @returns Map of tool name to statistics
122
+ */
123
+ getAllStats(): Map<string, ToolExecutionStats>;
124
+ /**
125
+ * Reset statistics for a tool
126
+ *
127
+ * @param name Tool name
128
+ */
129
+ resetToolStats(name: string): void;
130
+ /**
131
+ * Reset statistics for all tools
132
+ */
133
+ resetAllStats(): void;
134
+ /**
135
+ * Update execution statistics
136
+ *
137
+ * @private
138
+ */
139
+ private updateStats;
140
+ }
141
+ //# sourceMappingURL=ToolRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolRegistry.d.ts","sourceRoot":"","sources":["../../src/base/ToolRegistry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAG1D,YAAY,EAAE,cAAc,EAAE,CAAC;AAE/B;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IAEjB,+BAA+B;IAC/B,cAAc,EAAE,MAAM,CAAC;IAEvB,0CAA0C;IAC1C,kBAAkB,EAAE,MAAM,CAAC;IAE3B,4CAA4C;IAC5C,oBAAoB,EAAE,MAAM,CAAC;IAE7B,sCAAsC;IACtC,YAAY,EAAE,MAAM,CAAC;IAErB,kCAAkC;IAClC,YAAY,EAAE,MAAM,CAAC;IAErB,+BAA+B;IAC/B,YAAY,CAAC,EAAE,IAAI,CAAC;CACrB;AAED;;;;GAIG;AACH,qBAAa,YAAY;IAOX,OAAO,CAAC,MAAM;IAN1B,gCAAgC;IAChC,OAAO,CAAC,KAAK,CAA8C;IAE3D,2BAA2B;IAC3B,OAAO,CAAC,KAAK,CAA8C;gBAEvC,MAAM,EAAE,cAAc;IAE1C;;;;;OAKG;IACH,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI;IAkB5C;;;;OAIG;IACH,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI;IAIpD;;;;OAIG;IACH,SAAS,IAAI,cAAc;IAI3B;;;;;OAKG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAQrC;;;;;OAKG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,SAAS;IAIrD;;;;;OAKG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI9B;;;;OAIG;IACH,YAAY,IAAI,MAAM,EAAE;IAIxB;;;;OAIG;IACH,YAAY,IAAI,MAAM;IAItB;;;;;;;;;;;;;;;OAeG;IACG,WAAW,CACf,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,GAAG,EACX,MAAM,CAAC,EAAE,WAAW,EACpB,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GACtC,OAAO,CAAC,UAAU,CAAC;IAiEtB;;;;;OAKG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS;IAI1D;;;;OAIG;IACH,WAAW,IAAI,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC;IAI9C;;;;OAIG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAclC;;OAEG;IACH,aAAa,IAAI,IAAI;IAMrB;;;;OAIG;IACH,OAAO,CAAC,WAAW;CAepB"}
@@ -0,0 +1,241 @@
1
+ /**
2
+ * Tool Registry
3
+ *
4
+ * Manages registration and execution of tool executors
5
+ * Central coordination point for all tool execution in Nexus Cortex
6
+ */
7
+ /**
8
+ * Tool Registry
9
+ *
10
+ * Manages tool executor instances and provides execution interface
11
+ */
12
+ export class ToolRegistry {
13
+ config;
14
+ /** Registered tool executors */
15
+ tools = new Map();
16
+ /** Execution statistics */
17
+ stats = new Map();
18
+ constructor(config) {
19
+ this.config = config;
20
+ }
21
+ /**
22
+ * Register a tool executor
23
+ *
24
+ * @param tool Tool executor instance
25
+ * @throws Error if tool with same name already registered
26
+ */
27
+ registerTool(tool) {
28
+ if (this.tools.has(tool.name)) {
29
+ throw new Error(`Tool '${tool.name}' is already registered`);
30
+ }
31
+ this.tools.set(tool.name, tool);
32
+ // Initialize stats
33
+ this.stats.set(tool.name, {
34
+ toolName: tool.name,
35
+ executionCount: 0,
36
+ totalExecutionTime: 0,
37
+ averageExecutionTime: 0,
38
+ successCount: 0,
39
+ failureCount: 0,
40
+ });
41
+ }
42
+ /**
43
+ * Update executor config (e.g., add sessionId after session creation)
44
+ *
45
+ * @param updates Partial config updates
46
+ */
47
+ updateConfig(updates) {
48
+ this.config = { ...this.config, ...updates };
49
+ }
50
+ /**
51
+ * Get current config
52
+ *
53
+ * @returns Current executor config
54
+ */
55
+ getConfig() {
56
+ return { ...this.config };
57
+ }
58
+ /**
59
+ * Unregister a tool executor
60
+ *
61
+ * @param name Tool name
62
+ * @returns true if tool was removed, false if not found
63
+ */
64
+ unregisterTool(name) {
65
+ const removed = this.tools.delete(name);
66
+ if (removed) {
67
+ this.stats.delete(name);
68
+ }
69
+ return removed;
70
+ }
71
+ /**
72
+ * Get a tool executor by name
73
+ *
74
+ * @param name Tool name
75
+ * @returns Tool executor or undefined if not found
76
+ */
77
+ getTool(name) {
78
+ return this.tools.get(name);
79
+ }
80
+ /**
81
+ * Check if a tool is registered
82
+ *
83
+ * @param name Tool name
84
+ * @returns true if registered, false otherwise
85
+ */
86
+ hasTool(name) {
87
+ return this.tools.has(name);
88
+ }
89
+ /**
90
+ * Get all registered tool names
91
+ *
92
+ * @returns Array of tool names
93
+ */
94
+ getToolNames() {
95
+ return Array.from(this.tools.keys());
96
+ }
97
+ /**
98
+ * Get count of registered tools
99
+ *
100
+ * @returns Number of registered tools
101
+ */
102
+ getToolCount() {
103
+ return this.tools.size;
104
+ }
105
+ /**
106
+ * Execute a tool by name
107
+ *
108
+ * Main execution method that:
109
+ * 1. Validates tool exists
110
+ * 2. Validates parameters
111
+ * 3. Executes tool
112
+ * 4. Handles errors
113
+ * 5. Updates statistics
114
+ *
115
+ * @param name Tool name
116
+ * @param params Tool parameters
117
+ * @param signal AbortSignal for cancellation
118
+ * @param updateOutput Optional callback for streaming output
119
+ * @returns Tool execution result
120
+ */
121
+ async executeTool(name, params, signal, updateOutput) {
122
+ const startTime = Date.now();
123
+ // Get tool
124
+ const tool = this.tools.get(name);
125
+ if (!tool) {
126
+ return {
127
+ llmContent: `Tool "${name}" not found`,
128
+ returnDisplay: `Error: Tool "${name}" not found`,
129
+ success: false,
130
+ error: `Unknown tool: ${name}`,
131
+ };
132
+ }
133
+ // Validate parameters
134
+ const validationError = tool.validateToolParams(params);
135
+ if (validationError) {
136
+ this.updateStats(name, false, Date.now() - startTime);
137
+ return {
138
+ llmContent: `Invalid parameters: ${validationError}`,
139
+ returnDisplay: `Parameter validation failed: ${validationError}`,
140
+ success: false,
141
+ error: validationError,
142
+ };
143
+ }
144
+ // Create abort signal if not provided
145
+ const abortSignal = signal || new AbortController().signal;
146
+ // Execute tool
147
+ try {
148
+ const result = await tool.execute(params, abortSignal, updateOutput);
149
+ // Update stats
150
+ const executionTime = Date.now() - startTime;
151
+ this.updateStats(name, result.success, executionTime);
152
+ // Add execution time to metadata if not already present
153
+ if (!result.metadata?.executionTime) {
154
+ result.metadata = {
155
+ ...result.metadata,
156
+ executionTime,
157
+ };
158
+ }
159
+ return result;
160
+ }
161
+ catch (error) {
162
+ // Handle execution error
163
+ const executionTime = Date.now() - startTime;
164
+ this.updateStats(name, false, executionTime);
165
+ return {
166
+ llmContent: `Tool execution failed: ${error.message}`,
167
+ returnDisplay: `Execution error: ${error.message}`,
168
+ success: false,
169
+ error: error.message,
170
+ metadata: {
171
+ executionTime,
172
+ errorStack: error.stack,
173
+ },
174
+ };
175
+ }
176
+ }
177
+ /**
178
+ * Get execution statistics for a tool
179
+ *
180
+ * @param name Tool name
181
+ * @returns Statistics or undefined if tool not found
182
+ */
183
+ getToolStats(name) {
184
+ return this.stats.get(name);
185
+ }
186
+ /**
187
+ * Get execution statistics for all tools
188
+ *
189
+ * @returns Map of tool name to statistics
190
+ */
191
+ getAllStats() {
192
+ return new Map(this.stats);
193
+ }
194
+ /**
195
+ * Reset statistics for a tool
196
+ *
197
+ * @param name Tool name
198
+ */
199
+ resetToolStats(name) {
200
+ const tool = this.tools.get(name);
201
+ if (tool) {
202
+ this.stats.set(name, {
203
+ toolName: name,
204
+ executionCount: 0,
205
+ totalExecutionTime: 0,
206
+ averageExecutionTime: 0,
207
+ successCount: 0,
208
+ failureCount: 0,
209
+ });
210
+ }
211
+ }
212
+ /**
213
+ * Reset statistics for all tools
214
+ */
215
+ resetAllStats() {
216
+ for (const name of this.tools.keys()) {
217
+ this.resetToolStats(name);
218
+ }
219
+ }
220
+ /**
221
+ * Update execution statistics
222
+ *
223
+ * @private
224
+ */
225
+ updateStats(name, success, executionTime) {
226
+ const stats = this.stats.get(name);
227
+ if (!stats)
228
+ return;
229
+ stats.executionCount++;
230
+ stats.totalExecutionTime += executionTime;
231
+ stats.averageExecutionTime = stats.totalExecutionTime / stats.executionCount;
232
+ stats.lastExecuted = new Date();
233
+ if (success) {
234
+ stats.successCount++;
235
+ }
236
+ else {
237
+ stats.failureCount++;
238
+ }
239
+ }
240
+ }
241
+ //# sourceMappingURL=ToolRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolRegistry.js","sourceRoot":"","sources":["../../src/base/ToolRegistry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Tool Execution Result
3
+ *
4
+ * Standardized result format for all tool executions
5
+ * Adapted from Gemini CLI patterns for V4
6
+ */
7
+ import type { CanonicalContentBlock } from '@nexus-cortex/types';
8
+ /**
9
+ * Result from tool execution
10
+ */
11
+ export interface ToolResult {
12
+ /**
13
+ * Content to send back to LLM
14
+ * Can be string or structured content blocks
15
+ */
16
+ llmContent: string | CanonicalContentBlock[];
17
+ /**
18
+ * Content to display to user (optional)
19
+ * If not provided, llmContent is used
20
+ */
21
+ returnDisplay?: string;
22
+ /**
23
+ * Whether execution was successful
24
+ */
25
+ success: boolean;
26
+ /**
27
+ * Error message if failed
28
+ */
29
+ error?: string;
30
+ /**
31
+ * Metadata about execution
32
+ */
33
+ metadata?: {
34
+ /** Execution time in milliseconds */
35
+ executionTime?: number;
36
+ /** Resources accessed during execution */
37
+ resourcesUsed?: {
38
+ /** Files read or written */
39
+ files?: string[];
40
+ /** Network endpoints accessed */
41
+ network?: string[];
42
+ /** Shell commands executed */
43
+ commands?: string[];
44
+ };
45
+ /** Any additional tool-specific metadata */
46
+ [key: string]: any;
47
+ };
48
+ }
49
+ /**
50
+ * Tool call confirmation details
51
+ * Used for tools that require user confirmation before execution
52
+ */
53
+ export interface ToolCallConfirmationDetails {
54
+ /** Human-readable description of what the tool will do */
55
+ description: string;
56
+ /** Whether confirmation is required */
57
+ requiresConfirmation: boolean;
58
+ /** Severity level for UI display */
59
+ severity?: 'info' | 'warning' | 'danger';
60
+ /** Additional context for confirmation prompt */
61
+ context?: string;
62
+ }
63
+ //# sourceMappingURL=ToolResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolResult.d.ts","sourceRoot":"","sources":["../../src/base/ToolResult.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;;OAGG;IACH,UAAU,EAAE,MAAM,GAAG,qBAAqB,EAAE,CAAC;IAE7C;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,CAAC,EAAE;QACT,qCAAqC;QACrC,aAAa,CAAC,EAAE,MAAM,CAAC;QAEvB,0CAA0C;QAC1C,aAAa,CAAC,EAAE;YACd,4BAA4B;YAC5B,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;YAEjB,iCAAiC;YACjC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;YAEnB,8BAA8B;YAC9B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;SACrB,CAAC;QAEF,4CAA4C;QAC5C,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH;AAED;;;GAGG;AACH,MAAM,WAAW,2BAA2B;IAC1C,0DAA0D;IAC1D,WAAW,EAAE,MAAM,CAAC;IAEpB,uCAAuC;IACvC,oBAAoB,EAAE,OAAO,CAAC;IAE9B,oCAAoC;IACpC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;IAEzC,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Tool Execution Result
3
+ *
4
+ * Standardized result format for all tool executions
5
+ * Adapted from Gemini CLI patterns for V4
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=ToolResult.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolResult.js","sourceRoot":"","sources":["../../src/base/ToolResult.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Base Executor Components
3
+ *
4
+ * Foundation classes and interfaces for tool execution
5
+ */
6
+ export { BaseTool } from './BaseTool.js';
7
+ export { ToolRegistry, type ToolExecutionStats } from './ToolRegistry.js';
8
+ export { type ToolResult, type ToolCallConfirmationDetails } from './ToolResult.js';
9
+ export type { ExecutorConfig } from '@nexus-cortex/types';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AACpF,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Base Executor Components
3
+ *
4
+ * Foundation classes and interfaces for tool execution
5
+ */
6
+ export { BaseTool } from './BaseTool.js';
7
+ export { ToolRegistry } from './ToolRegistry.js';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAA2B,MAAM,mBAAmB,CAAC"}