@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,390 @@
1
+ /**
2
+ * NotebookEdit Tool Executor
3
+ *
4
+ * Edit Jupyter notebook cells - supports replace, insert, and delete operations.
5
+ * Works with .ipynb files (JSON format).
6
+ */
7
+ import { BaseTool } from '../../base/index.js';
8
+ import { SchemaValidator } from '../../utils/SchemaValidator.js';
9
+ import fs from 'fs/promises';
10
+ import path from 'path';
11
+ /**
12
+ * NotebookEdit Tool Executor
13
+ *
14
+ * Features:
15
+ * - Read and parse .ipynb JSON files
16
+ * - Replace cell content by cell_id
17
+ * - Insert new cells at specific positions
18
+ * - Delete cells by cell_id
19
+ * - Preserve notebook metadata and structure
20
+ */
21
+ export class NotebookEditTool extends BaseTool {
22
+ config;
23
+ constructor(config) {
24
+ super('NotebookEdit', 'NotebookEdit', `Completely replaces the contents of a specific cell in a Jupyter notebook (.ipynb file) with new source. Jupyter notebooks are interactive documents that combine code, text, and visualizations, commonly used for data analysis and scientific computing. The notebook_path parameter must be an absolute path, not a relative path. The cell_number is 0-indexed. Use edit_mode=insert to add a new cell at the index specified by cell_number. Use edit_mode=delete to delete the cell at the index specified by cell_number.`, {
25
+ type: 'object',
26
+ properties: {
27
+ notebook_path: {
28
+ type: 'string',
29
+ description: 'The absolute path to the Jupyter notebook file to edit (must be absolute, not relative)',
30
+ },
31
+ cell_id: {
32
+ type: 'string',
33
+ description: 'The ID of the cell to edit. When inserting a new cell, the new cell will be inserted after the cell with this ID, or at the beginning if not specified.',
34
+ },
35
+ cell_type: {
36
+ type: 'string',
37
+ enum: ['code', 'markdown'],
38
+ description: 'The type of the cell (code or markdown). If not specified, it defaults to the current cell type. If using edit_mode=insert, this is required.',
39
+ },
40
+ edit_mode: {
41
+ type: 'string',
42
+ enum: ['replace', 'insert', 'delete'],
43
+ description: 'The type of edit to make (replace, insert, delete). Defaults to replace.',
44
+ },
45
+ new_source: {
46
+ type: 'string',
47
+ description: 'The new source for the cell',
48
+ },
49
+ },
50
+ required: ['notebook_path', 'new_source'],
51
+ });
52
+ this.config = config;
53
+ }
54
+ validateToolParams(params) {
55
+ // Schema validation
56
+ const schemaError = SchemaValidator.validate(this.parameterSchema, params);
57
+ if (schemaError) {
58
+ return schemaError;
59
+ }
60
+ // Validate notebook path
61
+ if (!params.notebook_path || !params.notebook_path.trim()) {
62
+ return 'Notebook path cannot be empty.';
63
+ }
64
+ // Ensure absolute path
65
+ if (!path.isAbsolute(params.notebook_path)) {
66
+ return 'Notebook path must be absolute, not relative.';
67
+ }
68
+ // Validate file extension
69
+ if (!params.notebook_path.endsWith('.ipynb')) {
70
+ return 'Notebook path must end with .ipynb extension.';
71
+ }
72
+ // Validate edit_mode
73
+ const editMode = params.edit_mode || 'replace';
74
+ if (!['replace', 'insert', 'delete'].includes(editMode)) {
75
+ return `Invalid edit_mode: ${editMode}. Must be 'replace', 'insert', or 'delete'.`;
76
+ }
77
+ // Validate cell_type
78
+ if (params.cell_type && !['code', 'markdown'].includes(params.cell_type)) {
79
+ return `Invalid cell_type: ${params.cell_type}. Must be 'code' or 'markdown'.`;
80
+ }
81
+ // For insert mode, cell_type is required
82
+ if (editMode === 'insert' && !params.cell_type) {
83
+ return 'cell_type is required when edit_mode is "insert".';
84
+ }
85
+ // For delete mode, new_source should be empty or ignored
86
+ if (editMode === 'delete' && params.new_source.trim().length > 0) {
87
+ return 'new_source should be empty when edit_mode is "delete".';
88
+ }
89
+ return null;
90
+ }
91
+ getDescription(params) {
92
+ const mode = params.edit_mode || 'replace';
93
+ const cellId = params.cell_id || 'new cell';
94
+ return `${mode} cell ${cellId} in ${path.basename(params.notebook_path)}`;
95
+ }
96
+ async execute(params, signal, updateOutput) {
97
+ const startTime = Date.now();
98
+ try {
99
+ // Check for abort
100
+ if (signal.aborted) {
101
+ return {
102
+ ...this.createErrorResult('Notebook edit was cancelled'),
103
+ metadata: {
104
+ executionTime: Date.now() - startTime,
105
+ },
106
+ };
107
+ }
108
+ // Validate parameters
109
+ const validationError = this.validateToolParams(params);
110
+ if (validationError) {
111
+ return {
112
+ ...this.createErrorResult(validationError),
113
+ metadata: {
114
+ executionTime: Date.now() - startTime,
115
+ },
116
+ };
117
+ }
118
+ // Resolve absolute path
119
+ const notebookPath = path.resolve(params.notebook_path);
120
+ // Check if file exists
121
+ let notebookExists = false;
122
+ try {
123
+ await fs.access(notebookPath);
124
+ notebookExists = true;
125
+ }
126
+ catch {
127
+ notebookExists = false;
128
+ }
129
+ if (!notebookExists) {
130
+ return {
131
+ ...this.createErrorResult(`Notebook file not found: ${notebookPath}`),
132
+ metadata: {
133
+ executionTime: Date.now() - startTime,
134
+ notebookPath,
135
+ },
136
+ };
137
+ }
138
+ // Read and parse notebook
139
+ const notebookContent = await fs.readFile(notebookPath, 'utf-8');
140
+ let notebook;
141
+ try {
142
+ notebook = JSON.parse(notebookContent);
143
+ }
144
+ catch (parseError) {
145
+ return {
146
+ ...this.createErrorResult(`Failed to parse notebook JSON: ${parseError.message}`),
147
+ metadata: {
148
+ executionTime: Date.now() - startTime,
149
+ notebookPath,
150
+ },
151
+ };
152
+ }
153
+ // Validate notebook structure
154
+ if (!notebook.cells || !Array.isArray(notebook.cells)) {
155
+ return {
156
+ ...this.createErrorResult('Invalid notebook structure: missing or invalid cells array'),
157
+ metadata: {
158
+ executionTime: Date.now() - startTime,
159
+ notebookPath,
160
+ },
161
+ };
162
+ }
163
+ // Perform edit operation
164
+ const editMode = params.edit_mode || 'replace';
165
+ const editResult = await this.performEdit(notebook, params, editMode, signal);
166
+ if (!editResult.success) {
167
+ return {
168
+ ...this.createErrorResult(editResult.error || 'Edit operation failed'),
169
+ metadata: {
170
+ executionTime: Date.now() - startTime,
171
+ notebookPath,
172
+ cellCount: notebook.cells.length,
173
+ },
174
+ };
175
+ }
176
+ // Write modified notebook back to file
177
+ const modifiedContent = JSON.stringify(notebook, null, 2);
178
+ await fs.writeFile(notebookPath, modifiedContent, 'utf-8');
179
+ // Format success message
180
+ const message = this.formatSuccessMessage(params, editMode, notebook);
181
+ return {
182
+ ...this.createSuccessResult(message),
183
+ metadata: {
184
+ executionTime: Date.now() - startTime,
185
+ notebookPath,
186
+ editMode,
187
+ cellId: params.cell_id,
188
+ cellType: params.cell_type,
189
+ cellCount: notebook.cells.length,
190
+ },
191
+ };
192
+ }
193
+ catch (error) {
194
+ // Check for abort
195
+ if (signal.aborted) {
196
+ return {
197
+ ...this.createErrorResult('Notebook edit was cancelled'),
198
+ metadata: {
199
+ executionTime: Date.now() - startTime,
200
+ },
201
+ };
202
+ }
203
+ const errorMessage = error.message || String(error);
204
+ return {
205
+ ...this.createErrorResult(`Error editing notebook: ${errorMessage}`),
206
+ metadata: {
207
+ executionTime: Date.now() - startTime,
208
+ error: errorMessage,
209
+ },
210
+ };
211
+ }
212
+ }
213
+ /**
214
+ * Perform the edit operation on the notebook
215
+ */
216
+ async performEdit(notebook, params, editMode, signal) {
217
+ if (signal.aborted) {
218
+ return { success: false, error: 'Operation cancelled' };
219
+ }
220
+ switch (editMode) {
221
+ case 'replace':
222
+ return this.replaceCell(notebook, params);
223
+ case 'insert':
224
+ return this.insertCell(notebook, params);
225
+ case 'delete':
226
+ return this.deleteCell(notebook, params);
227
+ default:
228
+ return { success: false, error: `Unknown edit mode: ${editMode}` };
229
+ }
230
+ }
231
+ /**
232
+ * Get the cell ID from a cell (checks both cell.id and cell.metadata.id)
233
+ * Jupyter notebooks may store cell IDs in either location
234
+ */
235
+ getCellId(cell) {
236
+ return cell.id || cell.metadata?.id;
237
+ }
238
+ /**
239
+ * Find a cell by ID (checks both cell.id and cell.metadata.id)
240
+ */
241
+ findCellIndex(notebook, cellId) {
242
+ return notebook.cells.findIndex((c) => this.getCellId(c) === cellId);
243
+ }
244
+ /**
245
+ * Replace an existing cell's content
246
+ */
247
+ replaceCell(notebook, params) {
248
+ if (!params.cell_id) {
249
+ return {
250
+ success: false,
251
+ error: 'cell_id is required for replace mode',
252
+ };
253
+ }
254
+ const cellIndex = this.findCellIndex(notebook, params.cell_id);
255
+ if (cellIndex === -1) {
256
+ // Provide helpful error with available cell IDs
257
+ const availableIds = notebook.cells
258
+ .map((c, i) => this.getCellId(c) || `[index ${i}]`)
259
+ .join(', ');
260
+ return {
261
+ success: false,
262
+ error: `Cell with id "${params.cell_id}" not found. Available cell IDs: ${availableIds}`,
263
+ };
264
+ }
265
+ const cell = notebook.cells[cellIndex];
266
+ if (!cell) {
267
+ return { success: false, error: 'Cell is undefined' };
268
+ }
269
+ // Update cell content
270
+ cell.source = this.normalizeSource(params.new_source);
271
+ // Update cell type if provided
272
+ if (params.cell_type) {
273
+ cell.cell_type = params.cell_type;
274
+ }
275
+ // Clear outputs for code cells
276
+ if (cell.cell_type === 'code') {
277
+ cell.outputs = [];
278
+ cell.execution_count = null;
279
+ }
280
+ return { success: true };
281
+ }
282
+ /**
283
+ * Insert a new cell
284
+ */
285
+ insertCell(notebook, params) {
286
+ if (!params.cell_type) {
287
+ return {
288
+ success: false,
289
+ error: 'cell_type is required for insert mode',
290
+ };
291
+ }
292
+ // Create new cell
293
+ const newCell = {
294
+ cell_type: params.cell_type,
295
+ id: this.generateCellId(),
296
+ metadata: {},
297
+ source: this.normalizeSource(params.new_source),
298
+ };
299
+ // Add code cell specific fields
300
+ if (params.cell_type === 'code') {
301
+ newCell.outputs = [];
302
+ newCell.execution_count = null;
303
+ }
304
+ // Find insertion position
305
+ let insertIndex = notebook.cells.length; // Default: append to end
306
+ if (params.cell_id) {
307
+ const refIndex = this.findCellIndex(notebook, params.cell_id);
308
+ if (refIndex === -1) {
309
+ // Provide helpful error with available cell IDs
310
+ const availableIds = notebook.cells
311
+ .map((c, i) => this.getCellId(c) || `[index ${i}]`)
312
+ .join(', ');
313
+ return {
314
+ success: false,
315
+ error: `Reference cell with id "${params.cell_id}" not found. Available cell IDs: ${availableIds}`,
316
+ };
317
+ }
318
+ insertIndex = refIndex + 1; // Insert after reference cell
319
+ }
320
+ // Insert the new cell
321
+ notebook.cells.splice(insertIndex, 0, newCell);
322
+ return { success: true };
323
+ }
324
+ /**
325
+ * Delete a cell
326
+ */
327
+ deleteCell(notebook, params) {
328
+ if (!params.cell_id) {
329
+ return { success: false, error: 'cell_id is required for delete mode' };
330
+ }
331
+ const cellIndex = this.findCellIndex(notebook, params.cell_id);
332
+ if (cellIndex === -1) {
333
+ // Provide helpful error with available cell IDs
334
+ const availableIds = notebook.cells
335
+ .map((c, i) => this.getCellId(c) || `[index ${i}]`)
336
+ .join(', ');
337
+ return {
338
+ success: false,
339
+ error: `Cell with id "${params.cell_id}" not found. Available cell IDs: ${availableIds}`,
340
+ };
341
+ }
342
+ // Remove the cell
343
+ notebook.cells.splice(cellIndex, 1);
344
+ return { success: true };
345
+ }
346
+ /**
347
+ * Normalize source content to array of lines
348
+ */
349
+ normalizeSource(source) {
350
+ // Split into lines, preserving newlines
351
+ const lines = source.split('\n');
352
+ return lines.map((line, i) => i < lines.length - 1 ? line + '\n' : line);
353
+ }
354
+ /**
355
+ * Generate a unique cell ID
356
+ */
357
+ generateCellId() {
358
+ // Generate a simple unique ID (8 random hex characters)
359
+ return Math.random().toString(16).substring(2, 10);
360
+ }
361
+ /**
362
+ * Format success message
363
+ */
364
+ formatSuccessMessage(params, editMode, notebook) {
365
+ const lines = [];
366
+ const filename = path.basename(params.notebook_path);
367
+ lines.push('=== Notebook Edit Successful ===\n\n');
368
+ switch (editMode) {
369
+ case 'replace':
370
+ lines.push(`Replaced cell "${params.cell_id}" in ${filename}\n`);
371
+ lines.push(`Cell type: ${params.cell_type || 'unchanged'}\n`);
372
+ break;
373
+ case 'insert':
374
+ lines.push(`Inserted new ${params.cell_type} cell in ${filename}\n`);
375
+ if (params.cell_id) {
376
+ lines.push(`Position: after cell "${params.cell_id}"\n`);
377
+ }
378
+ else {
379
+ lines.push(`Position: at the end\n`);
380
+ }
381
+ break;
382
+ case 'delete':
383
+ lines.push(`Deleted cell "${params.cell_id}" from ${filename}\n`);
384
+ break;
385
+ }
386
+ lines.push(`\nTotal cells: ${notebook.cells.length}\n`);
387
+ return lines.join('');
388
+ }
389
+ }
390
+ //# sourceMappingURL=NotebookEditTool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotebookEditTool.js","sourceRoot":"","sources":["../../../src/implementations/notebook/NotebookEditTool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Notebook Operations
3
+ *
4
+ * Tools for working with Jupyter notebooks (.ipynb files)
5
+ */
6
+ export * from './NotebookEditTool.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/implementations/notebook/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,uBAAuB,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Notebook Operations
3
+ *
4
+ * Tools for working with Jupyter notebooks (.ipynb files)
5
+ */
6
+ export * from './NotebookEditTool.js';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/implementations/notebook/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,uBAAuB,CAAC"}
@@ -0,0 +1,73 @@
1
+ /**
2
+ * Glob Tool Executor
3
+ *
4
+ * Finds files matching glob patterns with modification time sorting.
5
+ * Fast pattern-based file discovery for large codebases.
6
+ *
7
+ * Adapted and simplified from Gemini CLI patterns
8
+ * - Removed: FileDiscovery service, git-ignore filtering
9
+ * - Kept: Core glob matching, modification time sorting, security
10
+ */
11
+ import { BaseTool, type ToolResult } from '../../base/index.js';
12
+ import type { ExecutorConfig } from '../../base/ToolRegistry.js';
13
+ /**
14
+ * Subset of 'Path' interface provided by 'glob' that we use
15
+ */
16
+ export interface GlobPath {
17
+ fullpath(): string;
18
+ mtimeMs?: number;
19
+ }
20
+ /**
21
+ * Parameters for the Glob tool
22
+ */
23
+ export interface GlobToolParams {
24
+ /**
25
+ * The glob pattern to match files against
26
+ */
27
+ pattern: string;
28
+ /**
29
+ * The directory to search in (optional, defaults to working directory)
30
+ */
31
+ path?: string;
32
+ /**
33
+ * Whether the search should be case-sensitive (optional, defaults to false)
34
+ */
35
+ case_sensitive?: boolean;
36
+ /**
37
+ * Maximum number of files to return (optional, defaults to 100)
38
+ * Set to -1 for unlimited (not recommended for large codebases)
39
+ */
40
+ limit?: number;
41
+ /**
42
+ * Number of files to skip (for pagination)
43
+ * Use with limit to page through large result sets
44
+ */
45
+ offset?: number;
46
+ }
47
+ /**
48
+ * Glob Tool Executor
49
+ *
50
+ * Features:
51
+ * - Fast pattern matching (e.g., star-star-slash-star.ts, src-star-star-slash-star.js)
52
+ * - Sorts results by modification time (newest first)
53
+ * - Then alphabetically for older files
54
+ * - Excludes node_modules and .git by default
55
+ * - Path normalization and security
56
+ */
57
+ export declare class GlobTool extends BaseTool<GlobToolParams, ToolResult> {
58
+ private config;
59
+ private readonly RECENCY_THRESHOLD_MS;
60
+ private static readonly DEFAULT_MAX_RESULTS;
61
+ constructor(config: ExecutorConfig);
62
+ validateToolParams(params: GlobToolParams): string | null;
63
+ getDescription(params: GlobToolParams): string;
64
+ execute(params: GlobToolParams, signal: AbortSignal, updateOutput?: (output: string) => void): Promise<ToolResult>;
65
+ /**
66
+ * Sorts file entries based on recency and then alphabetically.
67
+ * Recent files (modified within 24 hours) are listed first, newest to oldest.
68
+ * Older files are listed after recent ones, sorted alphabetically by path.
69
+ * @private
70
+ */
71
+ private sortFilesByRecency;
72
+ }
73
+ //# sourceMappingURL=GlobTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GlobTool.d.ts","sourceRoot":"","sources":["../../../src/implementations/search/GlobTool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,OAAO,EAAE,QAAQ,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAMhE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,IAAI,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;GASG;AACH,qBAAa,QAAS,SAAQ,QAAQ,CAAC,cAAc,EAAE,UAAU,CAAC;IAMpD,OAAO,CAAC,MAAM;IAJ1B,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAuB;IAE5D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAO;gBAE9B,MAAM,EAAE,cAAc;IA6B1C,kBAAkB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI;IA0CzD,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM;IAcxC,OAAO,CACX,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,WAAW,EACnB,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GACtC,OAAO,CAAC,UAAU,CAAC;IAgGtB;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;CA+B3B"}