agent-tower 0.5.4-beta.0 → 0.5.4-beta.2

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 (364) hide show
  1. package/README.md +6 -1
  2. package/dist/app.d.ts.map +1 -1
  3. package/dist/app.js +15 -1
  4. package/dist/app.js.map +1 -1
  5. package/dist/app.test.js +12 -0
  6. package/dist/app.test.js.map +1 -1
  7. package/dist/cli.js +18 -1
  8. package/dist/cli.js.map +1 -1
  9. package/dist/core/event-bus.d.ts +3 -0
  10. package/dist/core/event-bus.d.ts.map +1 -1
  11. package/dist/core/event-bus.js.map +1 -1
  12. package/dist/executors/__tests__/base.executor.test.js +29 -1
  13. package/dist/executors/__tests__/base.executor.test.js.map +1 -1
  14. package/dist/executors/__tests__/codex.executor.test.js +13 -0
  15. package/dist/executors/__tests__/codex.executor.test.js.map +1 -1
  16. package/dist/executors/__tests__/providers-availability.test.js +19 -0
  17. package/dist/executors/__tests__/providers-availability.test.js.map +1 -1
  18. package/dist/executors/__tests__/stdin-prompt.executors.test.js +10 -0
  19. package/dist/executors/__tests__/stdin-prompt.executors.test.js.map +1 -1
  20. package/dist/executors/base.executor.d.ts.map +1 -1
  21. package/dist/executors/base.executor.js +4 -0
  22. package/dist/executors/base.executor.js.map +1 -1
  23. package/dist/executors/claude-code.executor.d.ts.map +1 -1
  24. package/dist/executors/claude-code.executor.js +18 -5
  25. package/dist/executors/claude-code.executor.js.map +1 -1
  26. package/dist/executors/codex.executor.d.ts.map +1 -1
  27. package/dist/executors/codex.executor.js +9 -3
  28. package/dist/executors/codex.executor.js.map +1 -1
  29. package/dist/executors/cursor-agent.executor.d.ts +2 -1
  30. package/dist/executors/cursor-agent.executor.d.ts.map +1 -1
  31. package/dist/executors/cursor-agent.executor.js +29 -9
  32. package/dist/executors/cursor-agent.executor.js.map +1 -1
  33. package/dist/executors/execution-env.d.ts +1 -1
  34. package/dist/executors/execution-env.d.ts.map +1 -1
  35. package/dist/executors/execution-env.js +7 -0
  36. package/dist/executors/execution-env.js.map +1 -1
  37. package/dist/executors/index.d.ts +1 -0
  38. package/dist/executors/index.d.ts.map +1 -1
  39. package/dist/executors/index.js +1 -0
  40. package/dist/executors/index.js.map +1 -1
  41. package/dist/executors/start-error.d.ts +13 -0
  42. package/dist/executors/start-error.d.ts.map +1 -0
  43. package/dist/executors/start-error.js +25 -0
  44. package/dist/executors/start-error.js.map +1 -0
  45. package/dist/index.js +2 -0
  46. package/dist/index.js.map +1 -1
  47. package/dist/mcp/http-client.d.ts +2 -0
  48. package/dist/mcp/http-client.d.ts.map +1 -1
  49. package/dist/mcp/http-client.js +7 -0
  50. package/dist/mcp/http-client.js.map +1 -1
  51. package/dist/mcp/index.js +4 -1
  52. package/dist/mcp/index.js.map +1 -1
  53. package/dist/mcp/server.d.ts +3 -1
  54. package/dist/mcp/server.d.ts.map +1 -1
  55. package/dist/mcp/server.js +2 -1
  56. package/dist/mcp/server.js.map +1 -1
  57. package/dist/middleware/__tests__/access-auth.test.d.ts +2 -0
  58. package/dist/middleware/__tests__/access-auth.test.d.ts.map +1 -0
  59. package/dist/middleware/__tests__/access-auth.test.js +249 -0
  60. package/dist/middleware/__tests__/access-auth.test.js.map +1 -0
  61. package/dist/middleware/access-auth.d.ts +3 -0
  62. package/dist/middleware/access-auth.d.ts.map +1 -0
  63. package/dist/middleware/access-auth.js +110 -0
  64. package/dist/middleware/access-auth.js.map +1 -0
  65. package/dist/routes/__tests__/agent-cli-environment.test.js +28 -10
  66. package/dist/routes/__tests__/agent-cli-environment.test.js.map +1 -1
  67. package/dist/routes/__tests__/files.test.d.ts +2 -0
  68. package/dist/routes/__tests__/files.test.d.ts.map +1 -0
  69. package/dist/routes/__tests__/files.test.js +101 -0
  70. package/dist/routes/__tests__/files.test.js.map +1 -0
  71. package/dist/routes/__tests__/previews.integration.test.d.ts +2 -0
  72. package/dist/routes/__tests__/previews.integration.test.d.ts.map +1 -0
  73. package/dist/routes/__tests__/previews.integration.test.js +269 -0
  74. package/dist/routes/__tests__/previews.integration.test.js.map +1 -0
  75. package/dist/routes/__tests__/previews.test.js +103 -1
  76. package/dist/routes/__tests__/previews.test.js.map +1 -1
  77. package/dist/routes/access-auth.d.ts +3 -0
  78. package/dist/routes/access-auth.d.ts.map +1 -0
  79. package/dist/routes/access-auth.js +89 -0
  80. package/dist/routes/access-auth.js.map +1 -0
  81. package/dist/routes/files.d.ts.map +1 -1
  82. package/dist/routes/files.js +46 -0
  83. package/dist/routes/files.js.map +1 -1
  84. package/dist/routes/index.d.ts.map +1 -1
  85. package/dist/routes/index.js +3 -0
  86. package/dist/routes/index.js.map +1 -1
  87. package/dist/routes/previews.d.ts +7 -2
  88. package/dist/routes/previews.d.ts.map +1 -1
  89. package/dist/routes/previews.js +106 -32
  90. package/dist/routes/previews.js.map +1 -1
  91. package/dist/routes/projects.d.ts.map +1 -1
  92. package/dist/routes/projects.js +9 -0
  93. package/dist/routes/projects.js.map +1 -1
  94. package/dist/routes/system.d.ts.map +1 -1
  95. package/dist/routes/system.js +17 -11
  96. package/dist/routes/system.js.map +1 -1
  97. package/dist/services/__tests__/access-auth.service.test.d.ts +2 -0
  98. package/dist/services/__tests__/access-auth.service.test.d.ts.map +1 -0
  99. package/dist/services/__tests__/access-auth.service.test.js +316 -0
  100. package/dist/services/__tests__/access-auth.service.test.js.map +1 -0
  101. package/dist/services/__tests__/member-heartbeat-scheduler.test.d.ts +2 -0
  102. package/dist/services/__tests__/member-heartbeat-scheduler.test.d.ts.map +1 -0
  103. package/dist/services/__tests__/member-heartbeat-scheduler.test.js +75 -0
  104. package/dist/services/__tests__/member-heartbeat-scheduler.test.js.map +1 -0
  105. package/dist/services/__tests__/member-heartbeat.test.d.ts +2 -0
  106. package/dist/services/__tests__/member-heartbeat.test.d.ts.map +1 -0
  107. package/dist/services/__tests__/member-heartbeat.test.js +531 -0
  108. package/dist/services/__tests__/member-heartbeat.test.js.map +1 -0
  109. package/dist/services/__tests__/project.service.test.js +29 -0
  110. package/dist/services/__tests__/project.service.test.js.map +1 -1
  111. package/dist/services/__tests__/session-manager.team-run.test.js +237 -0
  112. package/dist/services/__tests__/session-manager.team-run.test.js.map +1 -1
  113. package/dist/services/__tests__/task.service.test.js +34 -0
  114. package/dist/services/__tests__/task.service.test.js.map +1 -1
  115. package/dist/services/__tests__/team-queue-recovery.integration.test.d.ts +2 -0
  116. package/dist/services/__tests__/team-queue-recovery.integration.test.d.ts.map +1 -0
  117. package/dist/services/__tests__/team-queue-recovery.integration.test.js +279 -0
  118. package/dist/services/__tests__/team-queue-recovery.integration.test.js.map +1 -0
  119. package/dist/services/__tests__/team-reconciler.service.test.js +180 -3
  120. package/dist/services/__tests__/team-reconciler.service.test.js.map +1 -1
  121. package/dist/services/__tests__/team-run.service.test.js +196 -2
  122. package/dist/services/__tests__/team-run.service.test.js.map +1 -1
  123. package/dist/services/__tests__/team-scheduler.service.test.js +362 -10
  124. package/dist/services/__tests__/team-scheduler.service.test.js.map +1 -1
  125. package/dist/services/__tests__/workspace.service.test.js +120 -1
  126. package/dist/services/__tests__/workspace.service.test.js.map +1 -1
  127. package/dist/services/access-auth.service.d.ts +82 -0
  128. package/dist/services/access-auth.service.d.ts.map +1 -0
  129. package/dist/services/access-auth.service.js +385 -0
  130. package/dist/services/access-auth.service.js.map +1 -0
  131. package/dist/services/agent-cli/__tests__/command-runner.test.d.ts +2 -0
  132. package/dist/services/agent-cli/__tests__/command-runner.test.d.ts.map +1 -0
  133. package/dist/services/agent-cli/__tests__/command-runner.test.js +64 -0
  134. package/dist/services/agent-cli/__tests__/command-runner.test.js.map +1 -0
  135. package/dist/services/agent-cli/__tests__/detection.test.js +48 -0
  136. package/dist/services/agent-cli/__tests__/detection.test.js.map +1 -1
  137. package/dist/services/agent-cli/__tests__/manifest-downloader.test.js +272 -14
  138. package/dist/services/agent-cli/__tests__/manifest-downloader.test.js.map +1 -1
  139. package/dist/services/agent-cli/command-runner.d.ts +21 -0
  140. package/dist/services/agent-cli/command-runner.d.ts.map +1 -0
  141. package/dist/services/agent-cli/command-runner.js +83 -0
  142. package/dist/services/agent-cli/command-runner.js.map +1 -0
  143. package/dist/services/agent-cli/detection.d.ts +1 -12
  144. package/dist/services/agent-cli/detection.d.ts.map +1 -1
  145. package/dist/services/agent-cli/detection.js +5 -27
  146. package/dist/services/agent-cli/detection.js.map +1 -1
  147. package/dist/services/agent-cli/downloader.d.ts +2 -2
  148. package/dist/services/agent-cli/downloader.d.ts.map +1 -1
  149. package/dist/services/agent-cli/downloader.js +4 -8
  150. package/dist/services/agent-cli/downloader.js.map +1 -1
  151. package/dist/services/agent-cli/environment.service.d.ts +2 -1
  152. package/dist/services/agent-cli/environment.service.d.ts.map +1 -1
  153. package/dist/services/agent-cli/environment.service.js +25 -12
  154. package/dist/services/agent-cli/environment.service.js.map +1 -1
  155. package/dist/services/agent-cli/manifest-validator.d.ts.map +1 -1
  156. package/dist/services/agent-cli/manifest-validator.js +31 -22
  157. package/dist/services/agent-cli/manifest-validator.js.map +1 -1
  158. package/dist/services/agent-cli/manifest.d.ts.map +1 -1
  159. package/dist/services/agent-cli/manifest.js +97 -56
  160. package/dist/services/agent-cli/manifest.js.map +1 -1
  161. package/dist/services/agent-cli/security.d.ts +1 -1
  162. package/dist/services/agent-cli/security.d.ts.map +1 -1
  163. package/dist/services/agent-cli/security.js +11 -1
  164. package/dist/services/agent-cli/security.js.map +1 -1
  165. package/dist/services/agent-cli/task-manager.d.ts.map +1 -1
  166. package/dist/services/agent-cli/task-manager.js +8 -19
  167. package/dist/services/agent-cli/task-manager.js.map +1 -1
  168. package/dist/services/mcp-config.service.d.ts.map +1 -1
  169. package/dist/services/mcp-config.service.js +8 -2
  170. package/dist/services/mcp-config.service.js.map +1 -1
  171. package/dist/services/mcp-config.service.test.js +18 -3
  172. package/dist/services/mcp-config.service.test.js.map +1 -1
  173. package/dist/services/member-heartbeat-scheduler.d.ts +39 -0
  174. package/dist/services/member-heartbeat-scheduler.d.ts.map +1 -0
  175. package/dist/services/member-heartbeat-scheduler.js +97 -0
  176. package/dist/services/member-heartbeat-scheduler.js.map +1 -0
  177. package/dist/services/project-guards.d.ts +5 -0
  178. package/dist/services/project-guards.d.ts.map +1 -1
  179. package/dist/services/project-guards.js +47 -0
  180. package/dist/services/project-guards.js.map +1 -1
  181. package/dist/services/project.service.d.ts +6 -4
  182. package/dist/services/project.service.d.ts.map +1 -1
  183. package/dist/services/project.service.js +16 -7
  184. package/dist/services/project.service.js.map +1 -1
  185. package/dist/services/session-manager.d.ts +13 -0
  186. package/dist/services/session-manager.d.ts.map +1 -1
  187. package/dist/services/session-manager.js +106 -40
  188. package/dist/services/session-manager.js.map +1 -1
  189. package/dist/services/task.service.d.ts +11 -9
  190. package/dist/services/task.service.d.ts.map +1 -1
  191. package/dist/services/task.service.js +17 -12
  192. package/dist/services/task.service.js.map +1 -1
  193. package/dist/services/team-reconciler.service.d.ts +49 -0
  194. package/dist/services/team-reconciler.service.d.ts.map +1 -1
  195. package/dist/services/team-reconciler.service.js +313 -4
  196. package/dist/services/team-reconciler.service.js.map +1 -1
  197. package/dist/services/team-run.service.d.ts +2 -0
  198. package/dist/services/team-run.service.d.ts.map +1 -1
  199. package/dist/services/team-run.service.js +36 -7
  200. package/dist/services/team-run.service.js.map +1 -1
  201. package/dist/services/team-scheduler.service.d.ts +5 -0
  202. package/dist/services/team-scheduler.service.d.ts.map +1 -1
  203. package/dist/services/team-scheduler.service.js +237 -21
  204. package/dist/services/team-scheduler.service.js.map +1 -1
  205. package/dist/services/terminal-manager.d.ts.map +1 -1
  206. package/dist/services/terminal-manager.js +1 -0
  207. package/dist/services/terminal-manager.js.map +1 -1
  208. package/dist/services/workspace.service.d.ts +1 -0
  209. package/dist/services/workspace.service.d.ts.map +1 -1
  210. package/dist/services/workspace.service.js +62 -9
  211. package/dist/services/workspace.service.js.map +1 -1
  212. package/dist/socket/__tests__/socket-gateway.test.d.ts +2 -0
  213. package/dist/socket/__tests__/socket-gateway.test.d.ts.map +1 -0
  214. package/dist/socket/__tests__/socket-gateway.test.js +119 -0
  215. package/dist/socket/__tests__/socket-gateway.test.js.map +1 -0
  216. package/dist/socket/middleware/__tests__/auth.test.js +102 -2
  217. package/dist/socket/middleware/__tests__/auth.test.js.map +1 -1
  218. package/dist/socket/middleware/auth.d.ts +1 -0
  219. package/dist/socket/middleware/auth.d.ts.map +1 -1
  220. package/dist/socket/middleware/auth.js +22 -2
  221. package/dist/socket/middleware/auth.js.map +1 -1
  222. package/dist/socket/socket-gateway.d.ts +6 -2
  223. package/dist/socket/socket-gateway.d.ts.map +1 -1
  224. package/dist/socket/socket-gateway.js +78 -15
  225. package/dist/socket/socket-gateway.js.map +1 -1
  226. package/dist/utils/index.d.ts +6 -2
  227. package/dist/utils/index.d.ts.map +1 -1
  228. package/dist/utils/index.js +18 -7
  229. package/dist/utils/index.js.map +1 -1
  230. package/dist/utils/internal-api-token.d.ts +9 -0
  231. package/dist/utils/internal-api-token.d.ts.map +1 -0
  232. package/dist/utils/internal-api-token.js +74 -0
  233. package/dist/utils/internal-api-token.js.map +1 -0
  234. package/dist/utils/preview-path.d.ts +11 -0
  235. package/dist/utils/preview-path.d.ts.map +1 -0
  236. package/dist/utils/preview-path.js +46 -0
  237. package/dist/utils/preview-path.js.map +1 -0
  238. package/dist/utils/process-launch.d.ts +3 -1
  239. package/dist/utils/process-launch.d.ts.map +1 -1
  240. package/dist/utils/process-launch.js +41 -5
  241. package/dist/utils/process-launch.js.map +1 -1
  242. package/dist/utils/process-launch.test.js +37 -3
  243. package/dist/utils/process-launch.test.js.map +1 -1
  244. package/dist/web/assets/{AgentDemoPage-DMLw4xpg.js → AgentDemoPage-CAfZ4j97.js} +1 -1
  245. package/dist/web/assets/{AgentEnvironmentSettingsPage-NgRdouLu.js → AgentEnvironmentSettingsPage-DsNEtF9E.js} +1 -1
  246. package/dist/web/assets/{AgentLogo-ThhvSi7G.js → AgentLogo-jT7FgIek.js} +1 -1
  247. package/dist/web/assets/{ConversationPage-B1ZcyF_h.js → ConversationPage-BoHNGkW4.js} +2 -2
  248. package/dist/web/assets/CreateTaskInput-Cc5iLMFm.js +1 -0
  249. package/dist/web/assets/{DemoPage-CN2OBKzu.js → DemoPage-D7TaL1CJ.js} +3 -3
  250. package/dist/web/assets/GeneralSettingsPage-D5K3E8MX.js +1 -0
  251. package/dist/web/assets/{Icons-DIZBOtuC.js → Icons-CqiMv6t9.js} +1 -1
  252. package/dist/web/assets/{LoadingPreviewPage-CRBcypeY.js → LoadingPreviewPage-y_zIMHD7.js} +1 -1
  253. package/dist/web/assets/McpSettingsPage-Cx-qKB2x.js +1 -0
  254. package/dist/web/assets/{MemberAvatar-Y_pJlw-N.js → MemberAvatar-MDUj0w6B.js} +1 -1
  255. package/dist/web/assets/NotificationSettingsPage-9aGt7-Lh.js +1 -0
  256. package/dist/web/assets/ProfileSettingsPage-Ct5ha4tH.js +3 -0
  257. package/dist/web/assets/{ProjectKanbanPage-CBfocvKp.js → ProjectKanbanPage-C-opG86F.js} +31 -32
  258. package/dist/web/assets/ProjectSettingsPage-B5ONsxYH.js +2 -0
  259. package/dist/web/assets/{ProviderSettingsPage-D-1Fyh5B.js → ProviderSettingsPage-B_bvOzI_.js} +6 -6
  260. package/dist/web/assets/{SettingsMasterDetail-CZfVaFo2.js → SettingsMasterDetail-rDCxJGeO.js} +1 -1
  261. package/dist/web/assets/{TeamSettingsPage-DysTmOGE.js → TeamSettingsPage-CQqEaxN8.js} +1 -1
  262. package/dist/web/assets/{arc-CgLBAHTH.js → arc-4bMzF8s5.js} +1 -1
  263. package/dist/web/assets/{architectureDiagram-3BPJPVTR-CP9eQfdk.js → architectureDiagram-3BPJPVTR-DHLpZrsg.js} +1 -1
  264. package/dist/web/assets/{arrow-left-y1LwO7sB.js → arrow-left-CHWUcgUT.js} +1 -1
  265. package/dist/web/assets/{blockDiagram-GPEHLZMM-BURZnUwn.js → blockDiagram-GPEHLZMM-BWnkREjA.js} +1 -1
  266. package/dist/web/assets/{c4Diagram-AAUBKEIU-Dzgp3z3S.js → c4Diagram-AAUBKEIU-Cgz8B5xI.js} +1 -1
  267. package/dist/web/assets/channel-Cm1ouAHS.js +1 -0
  268. package/dist/web/assets/check-B0AgpiMM.js +1 -0
  269. package/dist/web/assets/{chevron-down--B7iZqBL.js → chevron-down-KH9YdB6d.js} +1 -1
  270. package/dist/web/assets/{chevron-right-7PShDIwg.js → chevron-right-CAUiKY10.js} +1 -1
  271. package/dist/web/assets/{chevron-up-3n_vHdrD.js → chevron-up-5_Vvb-Ci.js} +1 -1
  272. package/dist/web/assets/{chunk-2J33WTMH-CIpasa01.js → chunk-2J33WTMH-BZ13KXVx.js} +1 -1
  273. package/dist/web/assets/{chunk-4BX2VUAB-DeSe2m1y.js → chunk-4BX2VUAB-1I8GhF4l.js} +1 -1
  274. package/dist/web/assets/{chunk-55IACEB6-BkJ6ogdn.js → chunk-55IACEB6-XvpeWieM.js} +1 -1
  275. package/dist/web/assets/{chunk-727SXJPM-Bkbv-knP.js → chunk-727SXJPM-D7Al9-bq.js} +1 -1
  276. package/dist/web/assets/{chunk-AQP2D5EJ-BG9wGFIo.js → chunk-AQP2D5EJ-Btn846zU.js} +1 -1
  277. package/dist/web/assets/{chunk-FMBD7UC4-Cvl_2za9.js → chunk-FMBD7UC4-A2nqCnZf.js} +1 -1
  278. package/dist/web/assets/{chunk-ND2GUHAM-B_zdzkWX.js → chunk-ND2GUHAM-BVkIo6Pj.js} +1 -1
  279. package/dist/web/assets/{chunk-QZHKN3VN-Ch6dvKNw.js → chunk-QZHKN3VN-BoNYHO2n.js} +1 -1
  280. package/dist/web/assets/{circle-alert-W13JkYj3.js → circle-alert-fO3Tkh3f.js} +1 -1
  281. package/dist/web/assets/classDiagram-4FO5ZUOK-BfqKofse.js +1 -0
  282. package/dist/web/assets/classDiagram-v2-Q7XG4LA2-BfqKofse.js +1 -0
  283. package/dist/web/assets/{code-block-OCS4YCEC-CYhJ9OPu.js → code-block-OCS4YCEC-CclNpE_3.js} +1 -1
  284. package/dist/web/assets/confirm-dialog-DvRd9Tcf.js +1 -0
  285. package/dist/web/assets/{copy-bJ2sut_L.js → copy-Dyh8NYTA.js} +1 -1
  286. package/dist/web/assets/{cose-bilkent-S5V4N54A-DWlnxyfH.js → cose-bilkent-S5V4N54A-BgA5aQr4.js} +1 -1
  287. package/dist/web/assets/{dagre-BM42HDAG-Bt3QI02a.js → dagre-BM42HDAG-C1zMROWX.js} +1 -1
  288. package/dist/web/assets/{diagram-2AECGRRQ-EaJBYSnS.js → diagram-2AECGRRQ-DkMjxfgh.js} +1 -1
  289. package/dist/web/assets/{diagram-5GNKFQAL-BGyRb-_h.js → diagram-5GNKFQAL-CxpZDmT0.js} +1 -1
  290. package/dist/web/assets/{diagram-KO2AKTUF-CZhDTMfm.js → diagram-KO2AKTUF-BtMUfvmN.js} +1 -1
  291. package/dist/web/assets/{diagram-LMA3HP47-Be8BAxmL.js → diagram-LMA3HP47-BZi1ud-6.js} +1 -1
  292. package/dist/web/assets/{diagram-OG6HWLK6-DEdQ7Cml.js → diagram-OG6HWLK6-_MZa2Vmf.js} +1 -1
  293. package/dist/web/assets/{erDiagram-TEJ5UH35-CG9SNlbz.js → erDiagram-TEJ5UH35-DpDg2-r9.js} +1 -1
  294. package/dist/web/assets/{flowDiagram-I6XJVG4X-BUpx5PVX.js → flowDiagram-I6XJVG4X-CLR_X1xm.js} +1 -1
  295. package/dist/web/assets/folder-picker-FcqjOvor.js +1 -0
  296. package/dist/web/assets/{ganttDiagram-6RSMTGT7-D7vRxMpE.js → ganttDiagram-6RSMTGT7-ClNXygJc.js} +1 -1
  297. package/dist/web/assets/{gitGraphDiagram-PVQCEYII-3lhH-RcD.js → gitGraphDiagram-PVQCEYII-CVdJEdZV.js} +1 -1
  298. package/dist/web/assets/index-DRJLGAPR.css +1 -0
  299. package/dist/web/assets/index-RC-dgDMb.js +122 -0
  300. package/dist/web/assets/{index-CGMjRoF7.js → index-gMgAFdpQ.js} +4 -4
  301. package/dist/web/assets/{infoDiagram-5YYISTIA-C5SNbJpO.js → infoDiagram-5YYISTIA-XrlQ9Cnl.js} +1 -1
  302. package/dist/web/assets/{ishikawaDiagram-YF4QCWOH-Ca7tX9_0.js → ishikawaDiagram-YF4QCWOH-I2xf8q1-.js} +1 -1
  303. package/dist/web/assets/{journeyDiagram-JHISSGLW-B2oo6nxY.js → journeyDiagram-JHISSGLW-DMDaSMF5.js} +1 -1
  304. package/dist/web/assets/{kanban-definition-UN3LZRKU-D1CzIzX9.js → kanban-definition-UN3LZRKU-kVff9awG.js} +1 -1
  305. package/dist/web/assets/{layers-BbLzQqyy.js → layers-UNThcvce.js} +1 -1
  306. package/dist/web/assets/{linear-BWowtcGw.js → linear-HJ2-smLG.js} +1 -1
  307. package/dist/web/assets/{mermaid-NOHMQCX5-B42ziicV.js → mermaid-NOHMQCX5-BFBL5hms.js} +40 -40
  308. package/dist/web/assets/{message-square-Bd_m34OX.js → message-square-C3yz80ya.js} +1 -1
  309. package/dist/web/assets/{mindmap-definition-RKZ34NQL-CYbO6QCk.js → mindmap-definition-RKZ34NQL-CSkOHlF2.js} +1 -1
  310. package/dist/web/assets/{modal-CxOKWOjZ.js → modal-DDKEV5YV.js} +1 -1
  311. package/dist/web/assets/{pencil-h5kxwbcu.js → pencil-AIclOdlA.js} +1 -1
  312. package/dist/web/assets/{pieDiagram-4H26LBE5-DXQghKRy.js → pieDiagram-4H26LBE5-DIk67jqC.js} +1 -1
  313. package/dist/web/assets/{quadrantDiagram-W4KKPZXB-C6lAMMQB.js → quadrantDiagram-W4KKPZXB-BqRrzRBU.js} +1 -1
  314. package/dist/web/assets/{requirementDiagram-4Y6WPE33-Di9Le7Wy.js → requirementDiagram-4Y6WPE33-DNo804ZW.js} +1 -1
  315. package/dist/web/assets/{sankeyDiagram-5OEKKPKP-BGpnptvR.js → sankeyDiagram-5OEKKPKP-I5HhBnqr.js} +1 -1
  316. package/dist/web/assets/{select-DFuN9DX8.js → select-BEwAtIzV.js} +1 -1
  317. package/dist/web/assets/{sequenceDiagram-3UESZ5HK-DjfkfaQL.js → sequenceDiagram-3UESZ5HK-BCmc9m_1.js} +1 -1
  318. package/dist/web/assets/{stateDiagram-AJRCARHV-DsELotm9.js → stateDiagram-AJRCARHV-Dgue8k7_.js} +1 -1
  319. package/dist/web/assets/stateDiagram-v2-BHNVJYJU-CygUwX8V.js +1 -0
  320. package/dist/web/assets/{switch-gL7lBFj6.js → switch-CdgTf7ni.js} +1 -1
  321. package/dist/web/assets/{textarea-Lr4GZaYW.js → textarea-D6QSwteN.js} +1 -1
  322. package/dist/web/assets/{timeline-definition-PNZ67QCA-Cq1BWC0T.js → timeline-definition-PNZ67QCA-Bl4mDUDT.js} +1 -1
  323. package/dist/web/assets/{trash-2-B7GFt5Wl.js → trash-2-B47vLMwl.js} +1 -1
  324. package/dist/web/assets/{upload-L8hpDFoO.js → upload-E5fNVeCI.js} +1 -1
  325. package/dist/web/assets/{use-profiles-zIsoigD8.js → use-profiles-CDvw0uSu.js} +1 -1
  326. package/dist/web/assets/use-projects-DMxMsQFw.js +1 -0
  327. package/dist/web/assets/{use-providers-erJ2iHLz.js → use-providers-DBKhBg_2.js} +1 -1
  328. package/dist/web/assets/{useNormalizedLogs-CXAn7xj_.js → useNormalizedLogs-BM-drJin.js} +1 -1
  329. package/dist/web/assets/{vennDiagram-CIIHVFJN-DdOfNtRo.js → vennDiagram-CIIHVFJN-rjeTPeto.js} +1 -1
  330. package/dist/web/assets/{wardley-L42UT6IY-BeKcEIgK.js → wardley-L42UT6IY-2cunyDSM.js} +1 -1
  331. package/dist/web/assets/{wardleyDiagram-YWT4CUSO-DPKOxABd.js → wardleyDiagram-YWT4CUSO-CNxobWk8.js} +1 -1
  332. package/dist/web/assets/{xychartDiagram-2RQKCTM6-olIy_aaY.js → xychartDiagram-2RQKCTM6-DBVimyeP.js} +1 -1
  333. package/dist/web/index.html +2 -2
  334. package/node_modules/@agent-tower/shared/dist/types.d.ts +45 -5
  335. package/node_modules/@agent-tower/shared/dist/types.d.ts.map +1 -1
  336. package/node_modules/@agent-tower/shared/dist/types.js.map +1 -1
  337. package/node_modules/@prisma/client/.prisma/client/edge.js +21 -5
  338. package/node_modules/@prisma/client/.prisma/client/index-browser.js +16 -0
  339. package/node_modules/@prisma/client/.prisma/client/index.d.ts +1599 -215
  340. package/node_modules/@prisma/client/.prisma/client/index.js +21 -5
  341. package/node_modules/@prisma/client/.prisma/client/package.json +1 -1
  342. package/node_modules/@prisma/client/.prisma/client/schema.prisma +24 -7
  343. package/node_modules/@prisma/client/.prisma/client/wasm.js +16 -0
  344. package/package.json +1 -1
  345. package/prisma/migrations/20260701000000_add_access_auth_settings/migration.sql +9 -0
  346. package/prisma/migrations/20260713000000_add_work_request_start_retry/migration.sql +7 -0
  347. package/prisma/schema.prisma +17 -0
  348. package/dist/web/assets/CreateTaskInput-Cb3aRHr3.js +0 -1
  349. package/dist/web/assets/GeneralSettingsPage-CE7P3t_v.js +0 -1
  350. package/dist/web/assets/McpSettingsPage-gp1XDMUd.js +0 -1
  351. package/dist/web/assets/NotificationSettingsPage-BhZeHEef.js +0 -1
  352. package/dist/web/assets/ProfileSettingsPage-D_y3ePFs.js +0 -3
  353. package/dist/web/assets/ProjectSettingsPage-V38j8T61.js +0 -2
  354. package/dist/web/assets/channel-CWEYGfCJ.js +0 -1
  355. package/dist/web/assets/check-D2WWIhwV.js +0 -1
  356. package/dist/web/assets/classDiagram-4FO5ZUOK-CcU8zfK8.js +0 -1
  357. package/dist/web/assets/classDiagram-v2-Q7XG4LA2-CcU8zfK8.js +0 -1
  358. package/dist/web/assets/confirm-dialog-BAqfLDT8.js +0 -1
  359. package/dist/web/assets/folder-picker-DFB9_pv4.js +0 -1
  360. package/dist/web/assets/folder-u7fKAtz_.js +0 -1
  361. package/dist/web/assets/index-7nw4fV42.js +0 -122
  362. package/dist/web/assets/index-YCjjSSLC.css +0 -1
  363. package/dist/web/assets/input-CKwRYuUJ.js +0 -1
  364. package/dist/web/assets/stateDiagram-v2-BHNVJYJU-CudtEyHd.js +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"downloader.js","sourceRoot":"","sources":["../../../src/services/agent-cli/downloader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"downloader.js","sourceRoot":"","sources":["../../../src/services/agent-cli/downloader.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { AgentCliCreateInstallTaskResponse, AgentCliEnvironmentStatus, AgentCliInstallLogResponse, AgentCliInstallPreview, AgentCliInstallTask, AgentCliPublicInstallManifestItem, AgentCliToolId } from '@agent-tower/shared';
2
- import { AgentCliDetector, type AgentCliExecFile } from './detection.js';
2
+ import { AgentCliDetector } from './detection.js';
3
+ import type { AgentCliExecFile } from './command-runner.js';
3
4
  import { AgentCliDownloader, type AgentCliDownloadOptions } from './downloader.js';
4
5
  import { AgentCliInstallTaskManager, type AgentCliRunner } from './task-manager.js';
5
6
  export interface AgentCliEnvironmentServiceOptions {
@@ -1 +1 @@
1
- {"version":3,"file":"environment.service.d.ts","sourceRoot":"","sources":["../../../src/services/agent-cli/environment.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iCAAiC,EACjC,yBAAyB,EACzB,0BAA0B,EAE1B,sBAAsB,EACtB,mBAAmB,EACnB,iCAAiC,EACjC,cAAc,EACf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,gBAAgB,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,EACL,kBAAkB,EAClB,KAAK,uBAAuB,EAI7B,MAAM,iBAAiB,CAAC;AAMzB,OAAO,EAAE,0BAA0B,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEpF,MAAM,WAAW,iCAAiC;IAChD,UAAU,CAAC,EAAE,kBAAkB,CAAA;IAC/B,iBAAiB,CAAC,EAAE,uBAAuB,CAAA;IAC3C,QAAQ,CAAC,EAAE,gBAAgB,CAAA;IAC3B,YAAY,CAAC,EAAE,gBAAgB,CAAA;IAC/B,WAAW,CAAC,EAAE,0BAA0B,CAAA;IACxC,MAAM,CAAC,EAAE,cAAc,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAA;IAC1B,GAAG,CAAC,EAAE,MAAM,IAAI,CAAA;CACjB;AAoDD,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgC;IACzD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;IAChD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;IAC5C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA6B;IACzD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4C;IACrE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAC1B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAET,OAAO,GAAE,iCAAsC;IAS3D,WAAW,IAAI,iCAAiC,EAAE;IAIlD,SAAS,IAAI,yBAAyB;IAItC,aAAa,IAAI,OAAO,CAAC,yBAAyB,CAAC;IAI7C,aAAa,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAgBtE,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAO9D,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,iCAAiC,CAAC;IAgB/E,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB;IAI5C,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,SAAI,GAAG,0BAA0B;IAIjE,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB;IAIzC,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC;CAY9C"}
1
+ {"version":3,"file":"environment.service.d.ts","sourceRoot":"","sources":["../../../src/services/agent-cli/environment.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iCAAiC,EACjC,yBAAyB,EACzB,0BAA0B,EAE1B,sBAAsB,EACtB,mBAAmB,EACnB,iCAAiC,EACjC,cAAc,EACf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EACL,kBAAkB,EAClB,KAAK,uBAAuB,EAI7B,MAAM,iBAAiB,CAAC;AAMzB,OAAO,EAAE,0BAA0B,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEpF,MAAM,WAAW,iCAAiC;IAChD,UAAU,CAAC,EAAE,kBAAkB,CAAA;IAC/B,iBAAiB,CAAC,EAAE,uBAAuB,CAAA;IAC3C,QAAQ,CAAC,EAAE,gBAAgB,CAAA;IAC3B,YAAY,CAAC,EAAE,gBAAgB,CAAA;IAC/B,WAAW,CAAC,EAAE,0BAA0B,CAAA;IACxC,MAAM,CAAC,EAAE,cAAc,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAA;IAC1B,GAAG,CAAC,EAAE,MAAM,IAAI,CAAA;CACjB;AAyDD,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgC;IACzD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;IAChD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;IAC5C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA6B;IACzD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4C;IACrE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAC1B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAET,OAAO,GAAE,iCAAsC;IAS3D,WAAW,IAAI,iCAAiC,EAAE;IAIlD,SAAS,IAAI,yBAAyB;IAItC,aAAa,IAAI,OAAO,CAAC,yBAAyB,CAAC;IAI7C,aAAa,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAoBtE,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAO9D,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,iCAAiC,CAAC;IAgB/E,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB;IAI5C,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,SAAI,GAAG,0BAA0B;IAIjE,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB;IAIzC,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC;CAY9C"}
@@ -24,20 +24,29 @@ function toPublicManifestItem(item) {
24
24
  install: { ...item.install },
25
25
  };
26
26
  }
27
- const { verifyCommand: _verifyCommand, ...install } = item.install;
27
+ const install = item.install;
28
28
  return {
29
29
  ...base,
30
30
  install: {
31
- ...install,
32
- allowedRedirectHosts: [...install.allowedRedirectHosts],
33
- allowedExactPaths: [...install.allowedExactPaths],
34
- allowedPathPrefixes: [...install.allowedPathPrefixes],
35
- interpreters: Object.fromEntries(Object.entries(install.interpreters).map(([platform, interpreter]) => [
36
- platform,
37
- interpreter ? { command: interpreter.command, args: [...interpreter.args] } : interpreter,
38
- ])),
39
- fixedArgs: [...install.fixedArgs],
40
- riskNotes: [...install.riskNotes],
31
+ kind: install.kind,
32
+ platforms: Object.fromEntries(Object.entries(install.platforms).map(([platform, spec]) => {
33
+ if (!spec)
34
+ return [platform, spec];
35
+ const { verifyCommand: _verifyCommand, ...publicSpec } = spec;
36
+ return [
37
+ platform,
38
+ {
39
+ ...publicSpec,
40
+ allowedRedirectHosts: [...spec.allowedRedirectHosts],
41
+ allowedExactPaths: [...spec.allowedExactPaths],
42
+ allowedPathPrefixes: [...spec.allowedPathPrefixes],
43
+ interpreter: { command: spec.interpreter.command, args: [...spec.interpreter.args] },
44
+ fixedArgs: [...spec.fixedArgs],
45
+ env: spec.env ? { ...spec.env } : undefined,
46
+ riskNotes: [...spec.riskNotes],
47
+ },
48
+ ];
49
+ })),
41
50
  },
42
51
  };
43
52
  }
@@ -77,7 +86,11 @@ export class AgentCliEnvironmentService {
77
86
  if (item.install.kind !== 'downloaded-script') {
78
87
  throw new ServiceError('Agent CLI tool is detect-only', 'AGENT_CLI_INSTALL_UNAVAILABLE', 400);
79
88
  }
80
- const preview = await this.downloader.createPreview(item.id, this.platform, item.install);
89
+ const install = item.install.platforms[this.platform];
90
+ if (!install) {
91
+ throw new ServiceError('Agent CLI installer unsupported on this platform', 'AGENT_CLI_UNSUPPORTED_PLATFORM', 400);
92
+ }
93
+ const preview = await this.downloader.createPreview(item.id, this.platform, install);
81
94
  this.previews.set(preview.id, preview);
82
95
  return toPublicPreview(preview);
83
96
  }
@@ -1 +1 @@
1
- {"version":3,"file":"environment.service.js","sourceRoot":"","sources":["../../../src/services/agent-cli/environment.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"environment.service.js","sourceRoot":"","sources":["../../../src/services/agent-cli/environment.service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"manifest-validator.d.ts","sourceRoot":"","sources":["../../../src/services/agent-cli/manifest-validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAsBvE,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,2BAA2B,GAAG,IAAI,CAgCpF;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,2BAA2B,EAAE,GAAG,IAAI,CAS5F"}
1
+ {"version":3,"file":"manifest-validator.d.ts","sourceRoot":"","sources":["../../../src/services/agent-cli/manifest-validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAsBvE,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,2BAA2B,GAAG,IAAI,CA2CpF;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,2BAA2B,EAAE,GAAG,IAAI,CAS5F"}
@@ -18,29 +18,38 @@ function assertHttpsUrl(value, field) {
18
18
  export function validateAgentCliManifestItem(item) {
19
19
  if (item.install.kind === 'detect-only')
20
20
  return;
21
- const downloadUrl = assertHttpsUrl(item.install.downloadUrl, `${item.id}.install.downloadUrl`);
22
- const allowedHosts = new Set(item.install.allowedRedirectHosts.map((host) => host.toLowerCase()));
23
- if (!allowedHosts.has(downloadUrl.hostname.toLowerCase())) {
24
- throw new ValidationError(`Agent CLI manifest ${item.id} download host is not allowlisted`);
25
- }
26
- if (item.install.allowedExactPaths.length === 0 && item.install.allowedPathPrefixes.length === 0) {
27
- throw new ValidationError(`Agent CLI manifest ${item.id} must allow at least one path`);
28
- }
29
- if (item.install.maxBytes <= 0 || item.install.maxBytes > 10 * 1024 * 1024) {
30
- throw new ValidationError(`Agent CLI manifest ${item.id} has invalid maxBytes`);
31
- }
32
- for (const [platform, interpreter] of Object.entries(item.install.interpreters)) {
33
- assertNoShellString(interpreter.command, `${item.id}.install.interpreters.${platform}.command`);
34
- for (const [index, arg] of interpreter.args.entries()) {
35
- assertNoShellString(arg, `${item.id}.install.interpreters.${platform}.args.${index}`);
21
+ for (const [platform, spec] of Object.entries(item.install.platforms)) {
22
+ if (!spec)
23
+ continue;
24
+ const downloadUrl = assertHttpsUrl(spec.downloadUrl, `${item.id}.install.platforms.${platform}.downloadUrl`);
25
+ const allowedHosts = new Set(spec.allowedRedirectHosts.map((host) => host.toLowerCase()));
26
+ if (!allowedHosts.has(downloadUrl.hostname.toLowerCase())) {
27
+ throw new ValidationError(`Agent CLI manifest ${item.id} download host is not allowlisted`);
28
+ }
29
+ if (spec.allowedExactPaths.length === 0 && spec.allowedPathPrefixes.length === 0) {
30
+ throw new ValidationError(`Agent CLI manifest ${item.id} must allow at least one path`);
31
+ }
32
+ if (!/^\.[A-Za-z0-9]{1,8}$/.test(spec.scriptExtension)) {
33
+ throw new ValidationError(`Agent CLI manifest ${item.id} has invalid script extension`);
34
+ }
35
+ if (spec.maxBytes <= 0 || spec.maxBytes > 10 * 1024 * 1024) {
36
+ throw new ValidationError(`Agent CLI manifest ${item.id} has invalid maxBytes`);
37
+ }
38
+ assertNoShellString(spec.interpreter.command, `${item.id}.install.platforms.${platform}.interpreter.command`);
39
+ for (const [index, arg] of spec.interpreter.args.entries()) {
40
+ assertNoShellString(arg, `${item.id}.install.platforms.${platform}.interpreter.args.${index}`);
41
+ }
42
+ for (const [index, arg] of spec.fixedArgs.entries()) {
43
+ assertNoShellString(arg, `${item.id}.install.platforms.${platform}.fixedArgs.${index}`);
44
+ }
45
+ for (const [key, value] of Object.entries(spec.env ?? {})) {
46
+ assertNoShellString(key, `${item.id}.install.platforms.${platform}.env.${key}.key`);
47
+ assertNoShellString(value, `${item.id}.install.platforms.${platform}.env.${key}`);
48
+ }
49
+ assertNoShellString(spec.verifyCommand.command, `${item.id}.install.platforms.${platform}.verifyCommand.command`);
50
+ for (const [index, arg] of spec.verifyCommand.args.entries()) {
51
+ assertNoShellString(arg, `${item.id}.install.platforms.${platform}.verifyCommand.args.${index}`);
36
52
  }
37
- }
38
- for (const [index, arg] of item.install.fixedArgs.entries()) {
39
- assertNoShellString(arg, `${item.id}.install.fixedArgs.${index}`);
40
- }
41
- assertNoShellString(item.install.verifyCommand.command, `${item.id}.install.verifyCommand.command`);
42
- for (const [index, arg] of item.install.verifyCommand.args.entries()) {
43
- assertNoShellString(arg, `${item.id}.install.verifyCommand.args.${index}`);
44
53
  }
45
54
  }
46
55
  export function validateAgentCliManifest(items) {
@@ -1 +1 @@
1
- {"version":3,"file":"manifest-validator.js","sourceRoot":"","sources":["../../../src/services/agent-cli/manifest-validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manifest-validator.js","sourceRoot":"","sources":["../../../src/services/agent-cli/manifest-validator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../../src/services/agent-cli/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,2BAA2B,EAC3B,gBAAgB,EAChB,cAAc,EACf,MAAM,qBAAqB,CAAC;AAkB7B,eAAO,MAAM,kBAAkB,EAAE,SAAS,2BAA2B,EA8H3D,CAAC;AAIX,wBAAgB,mBAAmB,IAAI,2BAA2B,EAAE,CA+BnE;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,cAAc,GAAG,2BAA2B,GAAG,IAAI,CAElG;AAED,wBAAgB,yBAAyB,CACvC,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,gBAAgB,GAAG,IAAI,CAKzB"}
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../../src/services/agent-cli/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,2BAA2B,EAC3B,gBAAgB,EAChB,cAAc,EACf,MAAM,qBAAqB,CAAC;AAoE7B,eAAO,MAAM,kBAAkB,EAAE,SAAS,2BAA2B,EAkM3D,CAAC;AAIX,wBAAgB,mBAAmB,IAAI,2BAA2B,EAAE,CA0CnE;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,cAAc,GAAG,2BAA2B,GAAG,IAAI,CAElG;AAED,wBAAgB,yBAAyB,CACvC,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,gBAAgB,GAAG,IAAI,CAKzB"}
@@ -8,6 +8,38 @@ function command(name, args = ['--version'], versionPattern = String.raw `\d+(?:
8
8
  versionPattern,
9
9
  };
10
10
  }
11
+ function shInstaller(downloadUrl, allowedRedirectHosts, allowedExactPaths, allowedPathPrefixes, verifyCommand, riskNotes, bash = false) {
12
+ return {
13
+ downloadUrl,
14
+ allowedRedirectHosts,
15
+ allowedExactPaths,
16
+ allowedPathPrefixes,
17
+ scriptExtension: '.sh',
18
+ interpreter: { command: bash ? '/bin/bash' : '/bin/sh', args: [] },
19
+ fixedArgs: [],
20
+ maxBytes: 1024 * 1024,
21
+ riskNotes,
22
+ verifyCommand,
23
+ };
24
+ }
25
+ function powershellInstaller(downloadUrl, allowedRedirectHosts, allowedExactPaths, allowedPathPrefixes, verifyCommand, riskNotes, env) {
26
+ return {
27
+ downloadUrl,
28
+ allowedRedirectHosts,
29
+ allowedExactPaths,
30
+ allowedPathPrefixes,
31
+ scriptExtension: '.ps1',
32
+ interpreter: {
33
+ command: 'powershell.exe',
34
+ args: ['-NoProfile', '-ExecutionPolicy', 'Bypass', '-File'],
35
+ },
36
+ fixedArgs: [],
37
+ env,
38
+ maxBytes: 1024 * 1024,
39
+ riskNotes,
40
+ verifyCommand,
41
+ };
42
+ }
11
43
  export const AGENT_CLI_MANIFEST = [
12
44
  {
13
45
  id: 'codex',
@@ -16,25 +48,25 @@ export const AGENT_CLI_MANIFEST = [
16
48
  legacy: false,
17
49
  officialSources: [
18
50
  { label: 'Codex installer', url: 'https://chatgpt.com/codex/install.sh' },
51
+ { label: 'Codex Windows installer', url: 'https://chatgpt.com/codex/install.ps1' },
19
52
  ],
20
- supportedPlatforms: ['darwin', 'linux'],
53
+ supportedPlatforms: ['darwin', 'linux', 'win32'],
21
54
  install: {
22
55
  kind: 'downloaded-script',
23
- downloadUrl: 'https://chatgpt.com/codex/install.sh',
24
- allowedRedirectHosts: ['chatgpt.com'],
25
- allowedExactPaths: ['/codex/install.sh'],
26
- allowedPathPrefixes: [],
27
- interpreters: {
28
- darwin: { command: '/bin/sh', args: [] },
29
- linux: { command: '/bin/sh', args: [] },
56
+ platforms: {
57
+ darwin: shInstaller('https://chatgpt.com/codex/install.sh', ['chatgpt.com', 'github.com', 'release-assets.githubusercontent.com'], ['/codex/install.sh'], ['/openai/codex/releases/', '/github-production-release-asset/965415649/'], command('codex'), [
58
+ '将从 chatgpt.com 下载官方安装脚本并在本机用户环境执行。',
59
+ '安装器可能修改 PATH、shell profile 或用户目录下的 CLI 配置。',
60
+ ]),
61
+ linux: shInstaller('https://chatgpt.com/codex/install.sh', ['chatgpt.com', 'github.com', 'release-assets.githubusercontent.com'], ['/codex/install.sh'], ['/openai/codex/releases/', '/github-production-release-asset/965415649/'], command('codex'), [
62
+ '将从 chatgpt.com 下载官方安装脚本并在本机用户环境执行。',
63
+ '安装器可能修改 PATH、shell profile 或用户目录下的 CLI 配置。',
64
+ ]),
65
+ win32: powershellInstaller('https://chatgpt.com/codex/install.ps1', ['chatgpt.com', 'github.com', 'release-assets.githubusercontent.com'], ['/codex/install.ps1'], ['/openai/codex/releases/', '/github-production-release-asset/965415649/'], command('codex'), [
66
+ '将从 chatgpt.com 下载官方 Windows PowerShell 安装脚本并在本机用户环境执行。',
67
+ '安装器可能修改 PATH 或用户目录下的 Codex CLI 配置。',
68
+ ], { CODEX_NON_INTERACTIVE: '1' }),
30
69
  },
31
- fixedArgs: [],
32
- maxBytes: 1024 * 1024,
33
- riskNotes: [
34
- '将从 chatgpt.com 下载官方安装脚本并在本机用户环境执行。',
35
- '安装器可能修改 PATH、shell profile 或用户目录下的 CLI 配置。',
36
- ],
37
- verifyCommand: command('codex'),
38
70
  },
39
71
  detectionCommands: [command('codex')],
40
72
  versionCommand: command('codex'),
@@ -52,25 +84,25 @@ export const AGENT_CLI_MANIFEST = [
52
84
  legacy: false,
53
85
  officialSources: [
54
86
  { label: 'Claude Code installer', url: 'https://claude.ai/install.sh' },
87
+ { label: 'Claude Code Windows installer', url: 'https://claude.ai/install.ps1' },
55
88
  ],
56
- supportedPlatforms: ['darwin', 'linux'],
89
+ supportedPlatforms: ['darwin', 'linux', 'win32'],
57
90
  install: {
58
91
  kind: 'downloaded-script',
59
- downloadUrl: 'https://claude.ai/install.sh',
60
- allowedRedirectHosts: ['claude.ai'],
61
- allowedExactPaths: ['/install.sh'],
62
- allowedPathPrefixes: [],
63
- interpreters: {
64
- darwin: { command: '/bin/bash', args: [] },
65
- linux: { command: '/bin/bash', args: [] },
92
+ platforms: {
93
+ darwin: shInstaller('https://claude.ai/install.sh', ['claude.ai', 'downloads.claude.ai'], ['/install.sh', '/claude-code-releases/bootstrap.sh'], [], command('claude'), [
94
+ '将从 claude.ai 下载官方安装脚本并在本机用户环境执行。',
95
+ '安装器可能修改 PATH、shell profile 或用户目录下的 Claude Code 配置。',
96
+ ], true),
97
+ linux: shInstaller('https://claude.ai/install.sh', ['claude.ai', 'downloads.claude.ai'], ['/install.sh', '/claude-code-releases/bootstrap.sh'], [], command('claude'), [
98
+ '将从 claude.ai 下载官方安装脚本并在本机用户环境执行。',
99
+ '安装器可能修改 PATH、shell profile 或用户目录下的 Claude Code 配置。',
100
+ ], true),
101
+ win32: powershellInstaller('https://claude.ai/install.ps1', ['claude.ai', 'downloads.claude.ai'], ['/install.ps1', '/claude-code-releases/bootstrap.ps1'], [], command('claude'), [
102
+ '将从 claude.ai 下载官方 Windows PowerShell 安装脚本并在本机用户环境执行。',
103
+ '安装器可能修改 PATH 或用户目录下的 Claude Code 配置。',
104
+ ]),
66
105
  },
67
- fixedArgs: [],
68
- maxBytes: 1024 * 1024,
69
- riskNotes: [
70
- '将从 claude.ai 下载官方安装脚本并在本机用户环境执行。',
71
- '安装器可能修改 PATH、shell profile 或用户目录下的 Claude Code 配置。',
72
- ],
73
- verifyCommand: command('claude'),
74
106
  },
75
107
  detectionCommands: [command('claude')],
76
108
  versionCommand: command('claude'),
@@ -88,25 +120,25 @@ export const AGENT_CLI_MANIFEST = [
88
120
  legacy: false,
89
121
  officialSources: [
90
122
  { label: 'Cursor installer', url: 'https://cursor.com/install' },
123
+ { label: 'Cursor Windows installer', url: 'https://cursor.com/install?win32=true' },
91
124
  ],
92
- supportedPlatforms: ['darwin', 'linux'],
125
+ supportedPlatforms: ['darwin', 'linux', 'win32'],
93
126
  install: {
94
127
  kind: 'downloaded-script',
95
- downloadUrl: 'https://cursor.com/install',
96
- allowedRedirectHosts: ['cursor.com'],
97
- allowedExactPaths: ['/install'],
98
- allowedPathPrefixes: [],
99
- interpreters: {
100
- darwin: { command: '/bin/bash', args: [] },
101
- linux: { command: '/bin/bash', args: [] },
128
+ platforms: {
129
+ darwin: shInstaller('https://cursor.com/install', ['cursor.com'], ['/install'], [], command('agent'), [
130
+ '将从 cursor.com 下载官方安装脚本并在本机用户环境执行。',
131
+ '安装器可能修改 PATH、shell profile 或用户目录下的 Cursor 配置。',
132
+ ], true),
133
+ linux: shInstaller('https://cursor.com/install', ['cursor.com'], ['/install'], [], command('agent'), [
134
+ '将从 cursor.com 下载官方安装脚本并在本机用户环境执行。',
135
+ '安装器可能修改 PATH、shell profile 或用户目录下的 Cursor 配置。',
136
+ ], true),
137
+ win32: powershellInstaller('https://cursor.com/install?win32=true', ['cursor.com'], ['/install'], [], command('agent'), [
138
+ '将从 cursor.com 下载官方 Windows PowerShell 安装脚本并在本机用户环境执行。',
139
+ '安装器可能修改 PATH 或用户目录下的 Cursor 配置。',
140
+ ]),
102
141
  },
103
- fixedArgs: [],
104
- maxBytes: 1024 * 1024,
105
- riskNotes: [
106
- '将从 cursor.com 下载官方安装脚本并在本机用户环境执行。',
107
- '安装器可能修改 PATH、shell profile 或用户目录下的 Cursor 配置。',
108
- ],
109
- verifyCommand: command('agent'),
110
142
  },
111
143
  detectionCommands: [command('agent'), command('cursor-agent')],
112
144
  versionCommand: command('agent'),
@@ -153,17 +185,26 @@ export function getAgentCliManifest() {
153
185
  : undefined,
154
186
  install: item.install.kind === 'downloaded-script'
155
187
  ? {
156
- ...item.install,
157
- allowedRedirectHosts: [...item.install.allowedRedirectHosts],
158
- allowedExactPaths: [...item.install.allowedExactPaths],
159
- allowedPathPrefixes: [...item.install.allowedPathPrefixes],
160
- fixedArgs: [...item.install.fixedArgs],
161
- riskNotes: [...item.install.riskNotes],
162
- interpreters: { ...item.install.interpreters },
163
- verifyCommand: {
164
- ...item.install.verifyCommand,
165
- args: [...item.install.verifyCommand.args],
166
- },
188
+ kind: item.install.kind,
189
+ platforms: Object.fromEntries(Object.entries(item.install.platforms).map(([platform, spec]) => [
190
+ platform,
191
+ spec
192
+ ? {
193
+ ...spec,
194
+ allowedRedirectHosts: [...spec.allowedRedirectHosts],
195
+ allowedExactPaths: [...spec.allowedExactPaths],
196
+ allowedPathPrefixes: [...spec.allowedPathPrefixes],
197
+ interpreter: { ...spec.interpreter, args: [...spec.interpreter.args] },
198
+ fixedArgs: [...spec.fixedArgs],
199
+ env: spec.env ? { ...spec.env } : undefined,
200
+ riskNotes: [...spec.riskNotes],
201
+ verifyCommand: {
202
+ ...spec.verifyCommand,
203
+ args: [...spec.verifyCommand.args],
204
+ },
205
+ }
206
+ : spec,
207
+ ])),
167
208
  }
168
209
  : { ...item.install },
169
210
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../../src/services/agent-cli/manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../../src/services/agent-cli/manifest.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,MAAM,0BAA0B,GAAG,IAAI,CAAC;AAExC,SAAS,OAAO,CACd,IAAY,EACZ,OAAiB,CAAC,WAAW,CAAC,EAC9B,cAAc,GAAG,MAAM,CAAC,GAAG,CAAA,mBAAmB;IAE9C,OAAO;QACL,OAAO,EAAE,IAAI;QACb,IAAI;QACJ,SAAS,EAAE,0BAA0B;QACrC,cAAc;KACf,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAClB,WAAmB,EACnB,oBAA8B,EAC9B,iBAA2B,EAC3B,mBAA6B,EAC7B,aAAkC,EAClC,SAAmB,EACnB,IAAI,GAAG,KAAK;IAEZ,OAAO;QACL,WAAW;QACX,oBAAoB;QACpB,iBAAiB;QACjB,mBAAmB;QACnB,eAAe,EAAE,KAAK;QACtB,WAAW,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE;QAClE,SAAS,EAAE,EAAE;QACb,QAAQ,EAAE,IAAI,GAAG,IAAI;QACrB,SAAS;QACT,aAAa;KACd,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,WAAmB,EACnB,oBAA8B,EAC9B,iBAA2B,EAC3B,mBAA6B,EAC7B,aAAkC,EAClC,SAAmB,EACnB,GAA4B;IAE5B,OAAO;QACL,WAAW;QACX,oBAAoB;QACpB,iBAAiB;QACjB,mBAAmB;QACnB,eAAe,EAAE,MAAM;QACvB,WAAW,EAAE;YACX,OAAO,EAAE,gBAAgB;YACzB,IAAI,EAAE,CAAC,YAAY,EAAE,kBAAkB,EAAE,QAAQ,EAAE,OAAO,CAAC;SAC5D;QACD,SAAS,EAAE,EAAE;QACb,GAAG;QACH,QAAQ,EAAE,IAAI,GAAG,IAAI;QACrB,SAAS;QACT,aAAa;KACd,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAA2C;IACxE;QACE,EAAE,EAAE,OAAO;QACX,WAAW,EAAE,OAAO;QACpB,WAAW,EAAE,kBAAkB;QAC/B,MAAM,EAAE,KAAK;QACb,eAAe,EAAE;YACf,EAAE,KAAK,EAAE,iBAAiB,EAAE,GAAG,EAAE,sCAAsC,EAAE;YACzE,EAAE,KAAK,EAAE,yBAAyB,EAAE,GAAG,EAAE,uCAAuC,EAAE;SACnF;QACD,kBAAkB,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC;QAChD,OAAO,EAAE;YACP,IAAI,EAAE,mBAAmB;YACzB,SAAS,EAAE;gBACT,MAAM,EAAE,WAAW,CACjB,sCAAsC,EACtC,CAAC,aAAa,EAAE,YAAY,EAAE,sCAAsC,CAAC,EACrE,CAAC,mBAAmB,CAAC,EACrB,CAAC,yBAAyB,EAAE,6CAA6C,CAAC,EAC1E,OAAO,CAAC,OAAO,CAAC,EAChB;oBACE,oCAAoC;oBACpC,4CAA4C;iBAC7C,CACF;gBACD,KAAK,EAAE,WAAW,CAChB,sCAAsC,EACtC,CAAC,aAAa,EAAE,YAAY,EAAE,sCAAsC,CAAC,EACrE,CAAC,mBAAmB,CAAC,EACrB,CAAC,yBAAyB,EAAE,6CAA6C,CAAC,EAC1E,OAAO,CAAC,OAAO,CAAC,EAChB;oBACE,oCAAoC;oBACpC,4CAA4C;iBAC7C,CACF;gBACD,KAAK,EAAE,mBAAmB,CACxB,uCAAuC,EACvC,CAAC,aAAa,EAAE,YAAY,EAAE,sCAAsC,CAAC,EACrE,CAAC,oBAAoB,CAAC,EACtB,CAAC,yBAAyB,EAAE,6CAA6C,CAAC,EAC1E,OAAO,CAAC,OAAO,CAAC,EAChB;oBACE,wDAAwD;oBACxD,oCAAoC;iBACrC,EACD,EAAE,qBAAqB,EAAE,GAAG,EAAE,CAC/B;aACF;SACF;QACD,iBAAiB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACrC,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC;QAChC,WAAW,EAAE;YACX,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;YACzB,SAAS,EAAE,0BAA0B;SACtC;QACD,cAAc,EAAE,YAAY;KAC7B;IACD;QACE,EAAE,EAAE,aAAa;QACjB,WAAW,EAAE,aAAa;QAC1B,WAAW,EAAE,2BAA2B;QACxC,MAAM,EAAE,KAAK;QACb,eAAe,EAAE;YACf,EAAE,KAAK,EAAE,uBAAuB,EAAE,GAAG,EAAE,8BAA8B,EAAE;YACvE,EAAE,KAAK,EAAE,+BAA+B,EAAE,GAAG,EAAE,+BAA+B,EAAE;SACjF;QACD,kBAAkB,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC;QAChD,OAAO,EAAE;YACP,IAAI,EAAE,mBAAmB;YACzB,SAAS,EAAE;gBACT,MAAM,EAAE,WAAW,CACjB,8BAA8B,EAC9B,CAAC,WAAW,EAAE,qBAAqB,CAAC,EACpC,CAAC,aAAa,EAAE,oCAAoC,CAAC,EACrD,EAAE,EACF,OAAO,CAAC,QAAQ,CAAC,EACjB;oBACE,kCAAkC;oBAClC,oDAAoD;iBACrD,EACD,IAAI,CACL;gBACD,KAAK,EAAE,WAAW,CAChB,8BAA8B,EAC9B,CAAC,WAAW,EAAE,qBAAqB,CAAC,EACpC,CAAC,aAAa,EAAE,oCAAoC,CAAC,EACrD,EAAE,EACF,OAAO,CAAC,QAAQ,CAAC,EACjB;oBACE,kCAAkC;oBAClC,oDAAoD;iBACrD,EACD,IAAI,CACL;gBACD,KAAK,EAAE,mBAAmB,CACxB,+BAA+B,EAC/B,CAAC,WAAW,EAAE,qBAAqB,CAAC,EACpC,CAAC,cAAc,EAAE,qCAAqC,CAAC,EACvD,EAAE,EACF,OAAO,CAAC,QAAQ,CAAC,EACjB;oBACE,sDAAsD;oBACtD,sCAAsC;iBACvC,CACF;aACF;SACF;QACD,iBAAiB,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACtC,cAAc,EAAE,OAAO,CAAC,QAAQ,CAAC;QACjC,WAAW,EAAE;YACX,OAAO,EAAE,QAAQ;YACjB,IAAI,EAAE,CAAC,QAAQ,CAAC;YAChB,SAAS,EAAE,0BAA0B;SACtC;QACD,cAAc,EAAE,YAAY;KAC7B;IACD;QACE,EAAE,EAAE,cAAc;QAClB,WAAW,EAAE,kBAAkB;QAC/B,WAAW,EAAE,qCAAqC;QAClD,MAAM,EAAE,KAAK;QACb,eAAe,EAAE;YACf,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAG,EAAE,4BAA4B,EAAE;YAChE,EAAE,KAAK,EAAE,0BAA0B,EAAE,GAAG,EAAE,uCAAuC,EAAE;SACpF;QACD,kBAAkB,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC;QAChD,OAAO,EAAE;YACP,IAAI,EAAE,mBAAmB;YACzB,SAAS,EAAE;gBACT,MAAM,EAAE,WAAW,CACjB,4BAA4B,EAC5B,CAAC,YAAY,CAAC,EACd,CAAC,UAAU,CAAC,EACZ,EAAE,EACF,OAAO,CAAC,OAAO,CAAC,EAChB;oBACE,mCAAmC;oBACnC,+CAA+C;iBAChD,EACD,IAAI,CACL;gBACD,KAAK,EAAE,WAAW,CAChB,4BAA4B,EAC5B,CAAC,YAAY,CAAC,EACd,CAAC,UAAU,CAAC,EACZ,EAAE,EACF,OAAO,CAAC,OAAO,CAAC,EAChB;oBACE,mCAAmC;oBACnC,+CAA+C;iBAChD,EACD,IAAI,CACL;gBACD,KAAK,EAAE,mBAAmB,CACxB,uCAAuC,EACvC,CAAC,YAAY,CAAC,EACd,CAAC,UAAU,CAAC,EACZ,EAAE,EACF,OAAO,CAAC,OAAO,CAAC,EAChB;oBACE,uDAAuD;oBACvD,iCAAiC;iBAClC,CACF;aACF;SACF;QACD,iBAAiB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;QAC9D,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC;QAChC,WAAW,EAAE;YACX,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,CAAC,WAAW,CAAC;YACnB,SAAS,EAAE,0BAA0B;SACtC;QACD,cAAc,EAAE,YAAY;KAC7B;IACD;QACE,EAAE,EAAE,YAAY;QAChB,WAAW,EAAE,YAAY;QACzB,WAAW,EAAE,kCAAkC;QAC/C,MAAM,EAAE,IAAI;QACZ,eAAe,EAAE;YACf,EAAE,KAAK,EAAE,uBAAuB,EAAE,GAAG,EAAE,6CAA6C,EAAE;SACvF;QACD,kBAAkB,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC;QAChD,OAAO,EAAE;YACP,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,8BAA8B;SACvC;QACD,iBAAiB,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACtC,cAAc,EAAE,OAAO,CAAC,QAAQ,CAAC;QACjC,cAAc,EAAE,YAAY;KAC7B;CACO,CAAC;AAEX,wBAAwB,CAAC,kBAAkB,CAAC,CAAC;AAE7C,MAAM,UAAU,mBAAmB;IACjC,OAAO,kBAAkB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACvC,GAAG,IAAI;QACP,eAAe,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;QACtE,kBAAkB,EAAE,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC;QAChD,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACvD,GAAG,IAAI;YACP,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;SACrB,CAAC,CAAC;QACH,cAAc,EAAE,IAAI,CAAC,cAAc;YACjC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;YACjE,CAAC,CAAC,SAAS;QACb,WAAW,EAAE,IAAI,CAAC,WAAW;YAC3B,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;YAC3D,CAAC,CAAC,SAAS;QACb,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,mBAAmB;YAChD,CAAC,CAAC;gBACA,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;gBACvB,SAAS,EAAE,MAAM,CAAC,WAAW,CAC3B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;oBAC/D,QAAQ;oBACR,IAAI;wBACF,CAAC,CAAC;4BACA,GAAG,IAAI;4BACP,oBAAoB,EAAE,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC;4BACpD,iBAAiB,EAAE,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC;4BAC9C,mBAAmB,EAAE,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC;4BAClD,WAAW,EAAE,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;4BACtE,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;4BAC9B,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS;4BAC3C,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;4BAC9B,aAAa,EAAE;gCACb,GAAG,IAAI,CAAC,aAAa;gCACrB,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;6BACnC;yBACF;wBACD,CAAC,CAAC,IAAI;iBACT,CAAC,CACH;aACF;YACD,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE;KACxB,CAAC,CAAC,CAAC;AACN,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,MAAsB;IAC5D,OAAO,mBAAmB,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,WAA4B,OAAO,CAAC,QAAQ;IAE5C,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QAC1E,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import type { AgentCliInstallLogEntry } from '@agent-tower/shared';
2
2
  export declare const SENSITIVE_ENV_KEY_PATTERN: RegExp;
3
3
  export declare function redactAgentCliLog(data: string): string;
4
- export declare function buildCleanAgentCliEnv(env?: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
4
+ export declare function buildCleanAgentCliEnv(env?: NodeJS.ProcessEnv, platform?: NodeJS.Platform | 'darwin' | 'linux' | 'win32' | null): NodeJS.ProcessEnv;
5
5
  export declare function parseWhitelistedVersion(output: string, versionPattern?: string): string | null;
6
6
  export declare class AgentCliLogRingBuffer {
7
7
  private readonly maxEntries;
@@ -1 +1 @@
1
- {"version":3,"file":"security.d.ts","sourceRoot":"","sources":["../../../src/services/agent-cli/security.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAEnE,eAAO,MAAM,yBAAyB,QAAyE,CAAC;AAWhH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAetD;AAED,wBAAgB,qBAAqB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAAC,UAAU,CA6B7F;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQ9F;AAED,qBAAa,qBAAqB;IAM9B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAN3B,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,UAAU,CAAK;gBAGJ,UAAU,SAAO,EACjB,QAAQ,SAAa;IAGxC,IAAI,CAAC,MAAM,EAAE,uBAAuB,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,uBAAuB;IAItF,YAAY,CAAC,MAAM,EAAE,uBAAuB,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,uBAAuB;IAc9F,IAAI,CAAC,QAAQ,SAAI,GAAG;QAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE;IAU/F,OAAO,CAAC,IAAI;CAOb;AAED,qBAAa,4BAA4B;IACvC,OAAO,CAAC,KAAK,CAAM;IACnB,OAAO,CAAC,UAAU,CAAS;IAE3B,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;IA2B5B,KAAK,IAAI,MAAM,EAAE;CAWlB"}
1
+ {"version":3,"file":"security.d.ts","sourceRoot":"","sources":["../../../src/services/agent-cli/security.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAGnE,eAAO,MAAM,yBAAyB,QAAyE,CAAC;AAWhH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAetD;AAED,wBAAgB,qBAAqB,CACnC,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,QAAQ,GAAE,MAAM,CAAC,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,IAAuB,GACjF,MAAM,CAAC,UAAU,CAuCnB;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQ9F;AAED,qBAAa,qBAAqB;IAM9B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAN3B,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,UAAU,CAAK;gBAGJ,UAAU,SAAO,EACjB,QAAQ,SAAa;IAGxC,IAAI,CAAC,MAAM,EAAE,uBAAuB,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,uBAAuB;IAItF,YAAY,CAAC,MAAM,EAAE,uBAAuB,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,uBAAuB;IAc9F,IAAI,CAAC,QAAQ,SAAI,GAAG;QAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE;IAU/F,OAAO,CAAC,IAAI;CAOb;AAED,qBAAa,4BAA4B;IACvC,OAAO,CAAC,KAAK,CAAM;IACnB,OAAO,CAAC,UAAU,CAAS;IAE3B,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;IA2B5B,KAAK,IAAI,MAAM,EAAE;CAWlB"}
@@ -1,3 +1,4 @@
1
+ import { buildWindowsPathWithUserBinFallbacks } from '../../utils/process-launch.js';
1
2
  export const SENSITIVE_ENV_KEY_PATTERN = /(?:^|_)(?:API[_-]?KEY|TOKEN|SECRET|PASSWORD|CREDENTIAL|AUTH)(?:_|$)/i;
2
3
  const REDACTION_PATTERNS = [
3
4
  /\bBearer\s+[A-Za-z0-9._~+/=-]+/gi,
@@ -22,9 +23,11 @@ export function redactAgentCliLog(data) {
22
23
  }
23
24
  return redacted;
24
25
  }
25
- export function buildCleanAgentCliEnv(env = process.env) {
26
+ export function buildCleanAgentCliEnv(env = process.env, platform = process.platform) {
26
27
  const allowedKeys = new Set([
27
28
  'PATH',
29
+ 'Path',
30
+ 'path',
28
31
  'HOME',
29
32
  'USER',
30
33
  'LOGNAME',
@@ -52,6 +55,13 @@ export function buildCleanAgentCliEnv(env = process.env) {
52
55
  continue;
53
56
  cleaned[key] = value;
54
57
  }
58
+ if (platform === 'win32') {
59
+ const nextPath = buildWindowsPathWithUserBinFallbacks(env);
60
+ if (nextPath) {
61
+ cleaned.PATH = nextPath;
62
+ cleaned.Path = nextPath;
63
+ }
64
+ }
55
65
  return cleaned;
56
66
  }
57
67
  export function parseWhitelistedVersion(output, versionPattern) {
@@ -1 +1 @@
1
- {"version":3,"file":"security.js","sourceRoot":"","sources":["../../../src/services/agent-cli/security.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"security.js","sourceRoot":"","sources":["../../../src/services/agent-cli/security.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"task-manager.d.ts","sourceRoot":"","sources":["../../../src/services/agent-cli/task-manager.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,mBAAmB,EACnB,0BAA0B,EAC1B,mBAAmB,EACpB,MAAM,qBAAqB,CAAC;AAO7B,OAAO,EAAE,KAAK,qBAAqB,EAAqB,MAAM,iBAAiB,CAAC;AAEhF,MAAM,WAAW,qBAAqB;IACpC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC,cAAc,CAAA;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC,cAAc,CAAA;IAC9B,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO,GAAG,MAAM,GAAG,OAAO,CAAA;IAC/C,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,CAAA;IACjG,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI,CAAA;CAC7D;AAED,MAAM,MAAM,cAAc,GAAG,CAC3B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE;IACP,GAAG,EAAE,MAAM,CAAC,UAAU,CAAA;IACtB,QAAQ,EAAE,OAAO,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,IAAI,CAAA;CAClB,KACE,qBAAqB,CAAC;AAE3B,MAAM,MAAM,gBAAgB,GAAG,CAAC,IAAI,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAyC5E,qBAAa,0BAA0B;IAOnC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAR3B,OAAO,CAAC,KAAK,CAA0C;IACvD,OAAO,CAAC,OAAO,CAA4C;IAC3D,OAAO,CAAC,SAAS,CAA4C;IAC7D,OAAO,CAAC,cAAc,CAA6B;gBAGhC,MAAM,GAAE,cAA8B,EACtC,kBAAkB,SAA+B,EACjD,QAAQ,GAAE,gBAAkC;IAG/D,UAAU,CAAC,OAAO,EAAE,qBAAqB,GAAG;QAAE,MAAM,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,mBAAmB,CAAA;KAAE;IAwE1F,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB;IAM5C,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,SAAI,GAAG,0BAA0B;IAYjE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB;IAqB3C,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,UAAU;YA+BJ,mBAAmB;CA0ClC"}
1
+ {"version":3,"file":"task-manager.d.ts","sourceRoot":"","sources":["../../../src/services/agent-cli/task-manager.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,mBAAmB,EACnB,0BAA0B,EAC1B,mBAAmB,EACpB,MAAM,qBAAqB,CAAC;AAO7B,OAAO,EAAE,KAAK,qBAAqB,EAAqB,MAAM,iBAAiB,CAAC;AAGhF,MAAM,WAAW,qBAAqB;IACpC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC,cAAc,CAAA;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC,cAAc,CAAA;IAC9B,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO,GAAG,MAAM,GAAG,OAAO,CAAA;IAC/C,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,CAAA;IACjG,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI,CAAA;CAC7D;AAED,MAAM,MAAM,cAAc,GAAG,CAC3B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE;IACP,GAAG,EAAE,MAAM,CAAC,UAAU,CAAA;IACtB,QAAQ,EAAE,OAAO,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,IAAI,CAAA;CAClB,KACE,qBAAqB,CAAC;AAE3B,MAAM,MAAM,gBAAgB,GAAG,CAAC,IAAI,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AA0B5E,qBAAa,0BAA0B;IAOnC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAR3B,OAAO,CAAC,KAAK,CAA0C;IACvD,OAAO,CAAC,OAAO,CAA4C;IAC3D,OAAO,CAAC,SAAS,CAA4C;IAC7D,OAAO,CAAC,cAAc,CAA6B;gBAGhC,MAAM,GAAE,cAA8B,EACtC,kBAAkB,SAA+B,EACjD,QAAQ,GAAE,gBAAkC;IAG/D,UAAU,CAAC,OAAO,EAAE,qBAAqB,GAAG;QAAE,MAAM,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,mBAAmB,CAAA;KAAE;IA2E1F,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB;IAM5C,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,SAAI,GAAG,0BAA0B;IAYjE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB;IAqB3C,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,UAAU;YA+BJ,mBAAmB;CA0ClC"}
@@ -1,8 +1,9 @@
1
- import { execFile, spawn } from 'node:child_process';
1
+ import { spawn } from 'node:child_process';
2
2
  import { randomUUID } from 'node:crypto';
3
3
  import { ServiceError, ValidationError } from '../../errors.js';
4
4
  import { AgentCliLogRingBuffer, AgentCliStreamingLogRedactor, buildCleanAgentCliEnv, } from './security.js';
5
5
  import { removePreviewFile } from './downloader.js';
6
+ import { runAgentCliCommand } from './command-runner.js';
6
7
  const FINAL_STATUSES = new Set([
7
8
  'succeeded',
8
9
  'failed',
@@ -12,23 +13,8 @@ const CANCEL_FORCE_KILL_TIMEOUT_MS = 5000;
12
13
  function defaultRunner(command, args, options) {
13
14
  return spawn(command, args, options);
14
15
  }
15
- function defaultVerifier(spec) {
16
- return new Promise((resolve, reject) => {
17
- execFile(spec.command, [...spec.args], {
18
- timeout: spec.timeoutMs,
19
- maxBuffer: 256 * 1024,
20
- env: buildCleanAgentCliEnv(),
21
- shell: false,
22
- windowsHide: true,
23
- encoding: 'utf8',
24
- }, (error) => {
25
- if (error) {
26
- reject(error);
27
- return;
28
- }
29
- resolve();
30
- });
31
- });
16
+ async function defaultVerifier(spec) {
17
+ await runAgentCliCommand(spec, { platform: process.platform === 'win32' ? 'win32' : null });
32
18
  }
33
19
  function publicTask(task) {
34
20
  return { ...task };
@@ -77,7 +63,10 @@ export class AgentCliInstallTaskManager {
77
63
  const command = preview.interpreter.command;
78
64
  const args = [...preview.interpreter.args, preview.tempFilePath, ...preview.fixedArgs];
79
65
  const child = this.runner(command, args, {
80
- env: buildCleanAgentCliEnv(),
66
+ env: {
67
+ ...buildCleanAgentCliEnv(undefined, preview.platform),
68
+ ...(preview.env ?? {}),
69
+ },
81
70
  detached: process.platform !== 'win32',
82
71
  stdio: 'pipe',
83
72
  windowsHide: true,