@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 @@
1
+ {"version":3,"file":"GrepTool.js","sourceRoot":"","sources":["../../../src/implementations/search/GrepTool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Search Operation Tool Executors
3
+ */
4
+ export { GlobTool, type GlobToolParams } from './GlobTool.js';
5
+ export { GrepTool, type GrepToolParams } from './GrepTool.js';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/implementations/search/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Search Operation Tool Executors
3
+ */
4
+ export { GlobTool } from './GlobTool.js';
5
+ export { GrepTool } from './GrepTool.js';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/implementations/search/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAuB,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAuB,MAAM,eAAe,CAAC"}
@@ -0,0 +1,82 @@
1
+ /**
2
+ * TmuxSession Tool Executor
3
+ *
4
+ * Manages persistent terminal sessions using tmux.
5
+ * Supports creating, managing, and capturing terminal sessions.
6
+ */
7
+ import { BaseTool, type ToolResult } from '../../base/index.js';
8
+ import type { ExecutorConfig } from '../../base/ToolRegistry.js';
9
+ /**
10
+ * Parameters for the TmuxSession tool
11
+ */
12
+ export interface TmuxSessionParams {
13
+ /**
14
+ * Action to perform
15
+ */
16
+ action: 'create' | 'send' | 'capture' | 'list' | 'kill' | 'snapshot';
17
+ /**
18
+ * Session identifier (required for all actions except 'list')
19
+ */
20
+ sessionId?: string;
21
+ /**
22
+ * Command to send (required for 'send' action)
23
+ */
24
+ command?: string;
25
+ /**
26
+ * Working directory (optional for 'create' action)
27
+ */
28
+ cwd?: string;
29
+ /**
30
+ * Environment variables (optional for 'create' action)
31
+ */
32
+ env?: Record<string, string>;
33
+ /**
34
+ * Capture entire scrollback history (optional for 'capture' action)
35
+ */
36
+ captureHistory?: boolean;
37
+ /**
38
+ * Include visual screenshot (optional for 'snapshot' action)
39
+ */
40
+ includeScreenshot?: boolean;
41
+ }
42
+ /**
43
+ * TmuxSession Tool Executor
44
+ *
45
+ * Features:
46
+ * - Create persistent terminal sessions
47
+ * - Send commands to sessions
48
+ * - Capture session output and history
49
+ * - List all active sessions
50
+ * - Terminate sessions
51
+ * - Session metadata persistence
52
+ *
53
+ * Graceful degradation:
54
+ * - Returns error if tmux is not installed
55
+ * - Provides clear error messages
56
+ */
57
+ export declare class TmuxSessionTool extends BaseTool<TmuxSessionParams, ToolResult> {
58
+ private config;
59
+ private tmux;
60
+ private persistence;
61
+ private lock;
62
+ private viewServer;
63
+ private viewServerInitialized;
64
+ constructor(config: ExecutorConfig);
65
+ /**
66
+ * Ensure TmuxViewServer is initialized (auto-start on first use).
67
+ * ENABLE_DASHBOARD is the MASTER SWITCH: when it is not "true" the viewer is
68
+ * never started (no port is bound) and tool results carry an instructive
69
+ * notice instead of view URLs. Returns the notice to surface to the agent,
70
+ * or null when the viewer is up.
71
+ */
72
+ private ensureViewServer;
73
+ validateToolParams(params: TmuxSessionParams): string | null;
74
+ execute(params: TmuxSessionParams, signal: AbortSignal, updateOutput?: (output: string) => void): Promise<ToolResult>;
75
+ private handleCreate;
76
+ private handleSend;
77
+ private handleCapture;
78
+ private handleList;
79
+ private handleKill;
80
+ private handleSnapshot;
81
+ }
82
+ //# sourceMappingURL=TmuxSessionTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TmuxSessionTool.d.ts","sourceRoot":"","sources":["../../../src/implementations/tmux/TmuxSessionTool.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAKhE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,MAAM,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;IAErE;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE7B;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,eAAgB,SAAQ,QAAQ,CAAC,iBAAiB,EAAE,UAAU,CAAC;IAO9D,OAAO,CAAC,MAAM;IAN1B,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,UAAU,CAAiB;IACnC,OAAO,CAAC,qBAAqB,CAAkB;gBAE3B,MAAM,EAAE,cAAc;IAmD1C;;;;;;OAMG;YACW,gBAAgB;IAwB9B,kBAAkB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,GAAG,IAAI;IAqDtD,OAAO,CACX,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,WAAW,EACnB,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GACtC,OAAO,CAAC,UAAU,CAAC;YAmCR,YAAY;YAyDZ,UAAU;YA6BV,aAAa;YA8Bb,UAAU;YAgEV,UAAU;YAyBV,cAAc;CAyE7B"}
@@ -0,0 +1,371 @@
1
+ /**
2
+ * TmuxSession Tool Executor
3
+ *
4
+ * Manages persistent terminal sessions using tmux.
5
+ * Supports creating, managing, and capturing terminal sessions.
6
+ */
7
+ import { BaseTool } from '../../base/index.js';
8
+ import { SchemaValidator } from '../../utils/SchemaValidator.js';
9
+ import { TmuxManager, SessionPersistence, SessionLock, TmuxCapture } from '../../utils/index.js';
10
+ import { TmuxViewServer } from './TmuxViewServer.js';
11
+ import { SandboxViewServer } from '../addon/SandboxViewServer.js';
12
+ /**
13
+ * TmuxSession Tool Executor
14
+ *
15
+ * Features:
16
+ * - Create persistent terminal sessions
17
+ * - Send commands to sessions
18
+ * - Capture session output and history
19
+ * - List all active sessions
20
+ * - Terminate sessions
21
+ * - Session metadata persistence
22
+ *
23
+ * Graceful degradation:
24
+ * - Returns error if tmux is not installed
25
+ * - Provides clear error messages
26
+ */
27
+ export class TmuxSessionTool extends BaseTool {
28
+ config;
29
+ tmux;
30
+ persistence;
31
+ lock;
32
+ viewServer;
33
+ viewServerInitialized = false;
34
+ constructor(config) {
35
+ super('TmuxSession', 'TmuxSession', `Manage persistent terminal sessions with tmux. Supports creating sessions, sending commands, capturing output, and managing session lifecycle. Use the 'snapshot' action with includeScreenshot=true to visually see what's displayed in the terminal - essential for iteratively debugging and improving commands you execute.`, {
36
+ type: 'object',
37
+ properties: {
38
+ action: {
39
+ type: 'string',
40
+ enum: ['create', 'send', 'capture', 'list', 'kill', 'snapshot'],
41
+ description: 'Action to perform on tmux session'
42
+ },
43
+ sessionId: {
44
+ type: 'string',
45
+ description: 'Session identifier (required for send, capture, kill, snapshot actions)'
46
+ },
47
+ command: {
48
+ type: 'string',
49
+ description: 'Command to send to session (required for send action)'
50
+ },
51
+ cwd: {
52
+ type: 'string',
53
+ description: 'Working directory for new session (optional for create action)'
54
+ },
55
+ env: {
56
+ type: 'object',
57
+ description: 'Environment variables for new session (optional for create action)',
58
+ additionalProperties: { type: 'string' }
59
+ },
60
+ captureHistory: {
61
+ type: 'boolean',
62
+ description: 'Capture entire scrollback history (optional for capture action)',
63
+ default: false
64
+ },
65
+ includeScreenshot: {
66
+ type: 'boolean',
67
+ description: 'Capture visual screenshot of terminal session using Playwright. Enables you (the model) to see exactly what is displayed in the terminal, including colors, formatting, and visual layout. Screenshot is returned as base64 PNG in response metadata. Essential for debugging visual terminal applications, progress bars, formatted output, and iteratively improving command execution.',
68
+ default: false
69
+ }
70
+ },
71
+ required: ['action']
72
+ });
73
+ this.config = config;
74
+ this.tmux = TmuxManager.getInstance();
75
+ this.persistence = new SessionPersistence(config.workingDirectory || process.cwd());
76
+ this.lock = new SessionLock(config.workingDirectory || process.cwd());
77
+ this.viewServer = TmuxViewServer.getInstance();
78
+ }
79
+ /**
80
+ * Ensure TmuxViewServer is initialized (auto-start on first use).
81
+ * ENABLE_DASHBOARD is the MASTER SWITCH: when it is not "true" the viewer is
82
+ * never started (no port is bound) and tool results carry an instructive
83
+ * notice instead of view URLs. Returns the notice to surface to the agent,
84
+ * or null when the viewer is up.
85
+ */
86
+ async ensureViewServer() {
87
+ if (!SandboxViewServer.isEnabled()) {
88
+ return SandboxViewServer.DISABLED_NOTICE;
89
+ }
90
+ if (this.viewServerInitialized) {
91
+ return null;
92
+ }
93
+ try {
94
+ await this.viewServer.initialize();
95
+ this.viewServerInitialized = true;
96
+ return null;
97
+ }
98
+ catch (error) {
99
+ // Viewer is optional — tmux functionality still works. Tell the agent
100
+ // exactly what to check (the most common cause is a port conflict).
101
+ const notice = `Tmux web dashboard failed to start: ${error.message}. ` +
102
+ `Check for a port conflict on DASHBOARD_PORT (default 4001 — it retries up to ` +
103
+ `10 consecutive ports), and confirm ENABLE_DASHBOARD=true is set.`;
104
+ console.warn(`[WARN] ${notice}`);
105
+ return notice;
106
+ }
107
+ }
108
+ validateToolParams(params) {
109
+ // Schema validation
110
+ const schemaError = SchemaValidator.validate(this.parameterSchema, params);
111
+ if (schemaError) {
112
+ return schemaError;
113
+ }
114
+ // Action-specific validation
115
+ switch (params.action) {
116
+ case 'send':
117
+ if (!params.sessionId) {
118
+ return 'sessionId is required for send action';
119
+ }
120
+ if (!params.command) {
121
+ return 'command is required for send action';
122
+ }
123
+ break;
124
+ case 'capture':
125
+ case 'kill':
126
+ case 'snapshot':
127
+ if (!params.sessionId) {
128
+ return `sessionId is required for ${params.action} action`;
129
+ }
130
+ break;
131
+ case 'list':
132
+ // No additional validation needed
133
+ break;
134
+ case 'create':
135
+ // sessionId is optional for create (will be auto-generated)
136
+ // Validate cwd if provided
137
+ if (params.cwd) {
138
+ const workingDirectory = this.config.workingDirectory || process.cwd();
139
+ const resolvedCwd = params.cwd.startsWith('/')
140
+ ? params.cwd
141
+ : require('path').join(workingDirectory, params.cwd);
142
+ // Security check: cwd must be within working directory
143
+ if (!resolvedCwd.startsWith(workingDirectory)) {
144
+ return `Working directory must be within ${workingDirectory}`;
145
+ }
146
+ }
147
+ break;
148
+ default:
149
+ return `Unknown action: ${params.action}`;
150
+ }
151
+ return null;
152
+ }
153
+ async execute(params, signal, updateOutput) {
154
+ // Check tmux availability
155
+ if (!(await this.tmux.isAvailable())) {
156
+ return this.createErrorResult('tmux is not installed. Please install tmux to use persistent terminal sessions.\n\n' +
157
+ 'Installation:\n' +
158
+ ' - Ubuntu/Debian: apt-get install tmux\n' +
159
+ ' - macOS: brew install tmux\n' +
160
+ ' - Replit: Add tmux in the Packages tab');
161
+ }
162
+ // Dispatch based on action
163
+ try {
164
+ switch (params.action) {
165
+ case 'create':
166
+ return await this.handleCreate(params, updateOutput);
167
+ case 'send':
168
+ return await this.handleSend(params, updateOutput);
169
+ case 'capture':
170
+ return await this.handleCapture(params, updateOutput);
171
+ case 'list':
172
+ return await this.handleList(params, updateOutput);
173
+ case 'kill':
174
+ return await this.handleKill(params, updateOutput);
175
+ case 'snapshot':
176
+ return await this.handleSnapshot(params, updateOutput);
177
+ default:
178
+ return this.createErrorResult(`Unknown action: ${params.action}`);
179
+ }
180
+ }
181
+ catch (error) {
182
+ return this.createErrorResult(`TmuxSession error: ${error.message}`);
183
+ }
184
+ }
185
+ async handleCreate(params, updateOutput) {
186
+ updateOutput?.('Creating tmux session...\n');
187
+ const workingDirectory = this.config.workingDirectory || process.cwd();
188
+ const cwd = params.cwd
189
+ ? (params.cwd.startsWith('/')
190
+ ? params.cwd
191
+ : require('path').join(workingDirectory, params.cwd))
192
+ : workingDirectory;
193
+ const sessionId = await this.tmux.createSession(params.sessionId, cwd, params.env);
194
+ // Save session metadata
195
+ await this.persistence.saveSession({
196
+ sessionId,
197
+ created: new Date(),
198
+ lastUsed: new Date(),
199
+ cwd,
200
+ env: params.env
201
+ });
202
+ updateOutput?.(`Session created: ${sessionId}\n`);
203
+ // Initialize web viewer (ENABLE_DASHBOARD is the master switch) and get URLs,
204
+ // or carry the instructive notice when the dashboard is off/unavailable.
205
+ const viewerNotice = await this.ensureViewServer();
206
+ const viewUrl = viewerNotice ? null : this.viewServer.getTmuxViewUrl(sessionId);
207
+ const dashboardUrl = viewerNotice ? null : this.viewServer.getTmuxDashboardUrl();
208
+ if (viewUrl)
209
+ updateOutput?.(`View URL: ${viewUrl}\n`);
210
+ const viewerSection = viewerNotice
211
+ ? ` WEB VIEWER UNAVAILABLE:\n ${viewerNotice}\n\n`
212
+ : ` LIVE WEB VIEWER:\n` +
213
+ ` View this session: ${viewUrl}\n` +
214
+ ` All sessions: ${dashboardUrl}\n\n`;
215
+ return this.createSuccessResult(`Tmux session created successfully.\n\n` +
216
+ `Session ID: ${sessionId}\n` +
217
+ `Working directory: ${cwd}\n` +
218
+ `Environment variables: ${params.env ? Object.keys(params.env).length : 0} set\n\n` +
219
+ viewerSection +
220
+ `You can now:\n` +
221
+ `- Send commands: action='send', sessionId='${sessionId}', command='your command'\n` +
222
+ `- Capture output: action='capture', sessionId='${sessionId}'\n` +
223
+ `- Kill session: action='kill', sessionId='${sessionId}'\n\n` +
224
+ (viewerNotice
225
+ ? `Tip: use action='capture' (optionally includeScreenshot=true) to read the terminal without the web viewer.`
226
+ : `Tip: Open the view URL in your browser to see real-time terminal output!`), { sessionId, cwd, env: params.env, viewUrl, dashboardUrl, ...(viewerNotice ? { dashboardNotice: viewerNotice } : {}) });
227
+ }
228
+ async handleSend(params, updateOutput) {
229
+ const sessionId = params.sessionId;
230
+ const command = params.command;
231
+ // Check if session exists
232
+ if (!(await this.tmux.sessionExists(sessionId))) {
233
+ return this.createErrorResult(`Session '${sessionId}' does not exist`);
234
+ }
235
+ updateOutput?.(`Sending command to session ${sessionId}...\n`);
236
+ await this.tmux.sendKeys(sessionId, command);
237
+ // Update lastUsed timestamp
238
+ await this.persistence.touchSession(sessionId);
239
+ updateOutput?.(`Command sent successfully\n`);
240
+ return this.createSuccessResult(`Command sent to tmux session '${sessionId}'.\n\n` +
241
+ `Command: ${command}\n\n` +
242
+ `Use action='capture' to retrieve the output.`, { sessionId, command });
243
+ }
244
+ async handleCapture(params, updateOutput) {
245
+ const sessionId = params.sessionId;
246
+ // Check if session exists
247
+ if (!(await this.tmux.sessionExists(sessionId))) {
248
+ return this.createErrorResult(`Session '${sessionId}' does not exist`);
249
+ }
250
+ updateOutput?.(`Capturing output from session ${sessionId}...\n`);
251
+ const startLine = params.captureHistory ? -3000 : undefined;
252
+ const output = await this.tmux.capturePane(sessionId, startLine);
253
+ // Update lastUsed timestamp
254
+ await this.persistence.touchSession(sessionId);
255
+ updateOutput?.(`Captured ${output.split('\n').length} lines\n`);
256
+ return this.createSuccessResult(`Captured output from tmux session '${sessionId}':\n\n` +
257
+ `${'='.repeat(60)}\n` +
258
+ output +
259
+ `${'='.repeat(60)}\n`, { sessionId, lines: output.split('\n').length, capturedHistory: params.captureHistory });
260
+ }
261
+ async handleList(params, updateOutput) {
262
+ updateOutput?.('Listing tmux sessions...\n');
263
+ const sessions = await this.tmux.listSessions();
264
+ const metadata = await this.persistence.listSessions();
265
+ // Initialize web viewer (ENABLE_DASHBOARD is the master switch).
266
+ const viewerNotice = await this.ensureViewServer();
267
+ const dashboardUrl = viewerNotice ? null : this.viewServer.getTmuxDashboardUrl();
268
+ // Build session info list (view URLs only when the dashboard is up)
269
+ const sessionInfos = sessions.map(sessionId => {
270
+ const meta = metadata.find(m => m.sessionId === sessionId);
271
+ return {
272
+ sessionId,
273
+ created: meta?.created?.toISOString() || 'unknown',
274
+ lastUsed: meta?.lastUsed?.toISOString() || 'unknown',
275
+ cwd: meta?.cwd || 'unknown',
276
+ viewUrl: viewerNotice ? null : this.viewServer.getTmuxViewUrl(sessionId)
277
+ };
278
+ });
279
+ if (sessions.length === 0) {
280
+ return this.createSuccessResult('No active tmux sessions.\n\n' +
281
+ 'Use action="create" to create a new session.', { sessions: [], dashboardUrl, ...(viewerNotice ? { dashboardNotice: viewerNotice } : {}) });
282
+ }
283
+ const sessionList = sessionInfos
284
+ .map(info => `- ${info.sessionId}\n` +
285
+ ` Created: ${info.created}\n` +
286
+ ` Last used: ${info.lastUsed}\n` +
287
+ ` Working directory: ${info.cwd}` +
288
+ (info.viewUrl ? `\n View: ${info.viewUrl}` : ''))
289
+ .join('\n\n');
290
+ updateOutput?.(`Found ${sessions.length} session(s)\n`);
291
+ const viewerSection = viewerNotice
292
+ ? ` Web Viewer: UNAVAILABLE — ${viewerNotice}`
293
+ : ` Web Viewer:\n` +
294
+ ` Dashboard: ${dashboardUrl}\n` +
295
+ ` JSON API: ${this.viewServer.getTmuxApiUrl()}`;
296
+ return this.createSuccessResult(`Active tmux sessions (${sessions.length}):\n\n${sessionList}\n\n` + viewerSection, {
297
+ sessions: sessionInfos,
298
+ count: sessions.length,
299
+ dashboardUrl,
300
+ apiUrl: viewerNotice ? null : this.viewServer.getTmuxApiUrl(),
301
+ ...(viewerNotice ? { dashboardNotice: viewerNotice } : {})
302
+ });
303
+ }
304
+ async handleKill(params, updateOutput) {
305
+ const sessionId = params.sessionId;
306
+ // Check if session exists
307
+ if (!(await this.tmux.sessionExists(sessionId))) {
308
+ return this.createErrorResult(`Session '${sessionId}' does not exist`);
309
+ }
310
+ updateOutput?.(`Terminating session ${sessionId}...\n`);
311
+ await this.tmux.killSession(sessionId);
312
+ await this.persistence.deleteSession(sessionId);
313
+ updateOutput?.(`Session terminated\n`);
314
+ return this.createSuccessResult(`Tmux session '${sessionId}' terminated successfully.\n\n` +
315
+ `The session and its metadata have been removed.`, { sessionId });
316
+ }
317
+ async handleSnapshot(params, updateOutput) {
318
+ const sessionId = params.sessionId;
319
+ // Check if session exists
320
+ if (!(await this.tmux.sessionExists(sessionId))) {
321
+ return this.createErrorResult(`Session '${sessionId}' does not exist`);
322
+ }
323
+ updateOutput?.('Capturing session snapshot...\n');
324
+ if (params.includeScreenshot) {
325
+ // Visual screenshot requested
326
+ try {
327
+ updateOutput?.('Creating visual screenshot using Playwright...\n');
328
+ const result = await TmuxCapture.captureSession(sessionId, {
329
+ format: 'png',
330
+ waitTime: 1500
331
+ });
332
+ // Also capture text for comparison
333
+ const textOutput = await this.tmux.capturePane(sessionId);
334
+ // Update lastUsed timestamp
335
+ await this.persistence.touchSession(sessionId);
336
+ return this.createSuccessResult(`Visual snapshot of tmux session '${sessionId}' captured.\n\n` +
337
+ `Screenshot format: ${result.format}\n` +
338
+ `Screenshot size: ${result.screenshot.length} bytes\n` +
339
+ `Base64 preview: ${result.base64.substring(0, 100)}...\n\n` +
340
+ `Text output:\n${'='.repeat(60)}\n${textOutput}\n${'='.repeat(60)}`, {
341
+ sessionId,
342
+ screenshot: result.base64,
343
+ format: result.format,
344
+ timestamp: result.timestamp,
345
+ textLines: textOutput.split('\n').length
346
+ });
347
+ }
348
+ catch (error) {
349
+ updateOutput?.(`Visual screenshot failed: ${error.message}\n`);
350
+ updateOutput?.('Falling back to text capture...\n');
351
+ // Fall back to text capture
352
+ const output = await this.tmux.capturePane(sessionId);
353
+ await this.persistence.touchSession(sessionId);
354
+ return this.createSuccessResult(`Snapshot of tmux session '${sessionId}' (text only, visual screenshot failed):\n\n` +
355
+ `Error: ${error.message}\n\n` +
356
+ `Text output:\n${'='.repeat(60)}\n${output}\n${'='.repeat(60)}`, { sessionId, lines: output.split('\n').length, visualFailed: true });
357
+ }
358
+ }
359
+ else {
360
+ // Text-only snapshot
361
+ const output = await this.tmux.capturePane(sessionId);
362
+ await this.persistence.touchSession(sessionId);
363
+ return this.createSuccessResult(`Snapshot of tmux session '${sessionId}' (text only):\n\n` +
364
+ `${'='.repeat(60)}\n` +
365
+ output +
366
+ `${'='.repeat(60)}\n\n` +
367
+ `Tip: Use includeScreenshot=true for visual screenshots using Playwright.`, { sessionId, lines: output.split('\n').length });
368
+ }
369
+ }
370
+ }
371
+ //# sourceMappingURL=TmuxSessionTool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TmuxSessionTool.js","sourceRoot":"","sources":["../../../src/implementations/tmux/TmuxSessionTool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ /**
2
+ * TmuxViewServer - Live web-based tmux session viewer
3
+ *
4
+ * Extends SandboxViewServer to provide real-time tmux session viewing.
5
+ * No headless browser needed - renders in user's browser!
6
+ *
7
+ * Features:
8
+ * - Live terminal rendering with xterm.js
9
+ * - Real-time output streaming via WebSocket
10
+ * - Session list dashboard
11
+ * - Direct attach to tmux sessions
12
+ * - Works in any environment (no Chromium needed!)
13
+ *
14
+ * Architecture:
15
+ * - Piggybacks on SandboxViewServer (port 4001)
16
+ * - Adds /tmux routes alongside /sandbox routes
17
+ * - Uses TerminalSandbox for xterm.js rendering
18
+ * - Connects xterm.js to tmux session via PTY
19
+ *
20
+ * User Flow:
21
+ * 1. User creates tmux session
22
+ * 2. Server returns view URL: http://localhost:4001/tmux/{sessionId}
23
+ * 3. User opens URL in their browser
24
+ * 4. See live terminal with full colors, formatting, updates
25
+ * 5. Can interact if desired (type, scroll, etc.)
26
+ *
27
+ * Example:
28
+ * ```
29
+ * const viewServer = TmuxViewServer.getInstance();
30
+ * await viewServer.start(); // Auto-starts if not running
31
+ *
32
+ * const url = viewServer.getTmuxViewUrl("my-session");
33
+ * // Returns: http://localhost:4001/tmux/my-session
34
+ * ```
35
+ */
36
+ export declare class TmuxViewServer {
37
+ private static instance;
38
+ private sandboxViewServer;
39
+ private tmuxManager;
40
+ private persistence;
41
+ private isInitialized;
42
+ private recoveredSessions;
43
+ private constructor();
44
+ /**
45
+ * Get singleton instance
46
+ */
47
+ static getInstance(): TmuxViewServer;
48
+ /**
49
+ * Initialize tmux viewing routes
50
+ */
51
+ initialize(): Promise<void>;
52
+ /**
53
+ * Get view URL for a tmux session (uses dynamically assigned port)
54
+ */
55
+ getTmuxViewUrl(sessionId: string): string;
56
+ /**
57
+ * Get tmux dashboard URL (uses dynamically assigned port)
58
+ */
59
+ getTmuxDashboardUrl(): string;
60
+ /**
61
+ * Get tmux API URL (uses dynamically assigned port)
62
+ */
63
+ getTmuxApiUrl(): string;
64
+ markRecovered(sessionIds: string[]): void;
65
+ /**
66
+ * Add tmux-specific routes to the express app
67
+ */
68
+ private addTmuxRoutes;
69
+ /**
70
+ * Setup WebSocket handlers for tmux interaction
71
+ */
72
+ private setupTmuxWebSocket;
73
+ /**
74
+ * Generate 404 page for missing tmux session
75
+ */
76
+ private generateTmux404HTML;
77
+ /**
78
+ * Generate tmux dashboard HTML
79
+ */
80
+ private generateTmuxDashboardHTML;
81
+ /**
82
+ * Generate live terminal view HTML for a specific session
83
+ */
84
+ private generateTmuxSessionHTML;
85
+ }
86
+ //# sourceMappingURL=TmuxViewServer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TmuxViewServer.d.ts","sourceRoot":"","sources":["../../../src/implementations/tmux/TmuxViewServer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAOH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAiB;IACxC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,iBAAiB,CAAgC;IAEzD,OAAO;IAQP;;OAEG;IACH,MAAM,CAAC,WAAW,IAAI,cAAc;IAOpC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBjC;;OAEG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAKzC;;OAEG;IACH,mBAAmB,IAAI,MAAM;IAK7B;;OAEG;IACH,aAAa,IAAI,MAAM;IAKvB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI;IAOzC;;OAEG;IACH,OAAO,CAAC,aAAa;IA8ErB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA2C1B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAgC3B;;OAEG;IACH,OAAO,CAAC,yBAAyB;IA6GjC;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAgHhC"}