agent-tower 0.7.1-beta.3 → 0.7.1

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 (373) hide show
  1. package/dist/executors/__tests__/base.executor.test.js +2 -2
  2. package/dist/executors/__tests__/base.executor.test.js.map +1 -1
  3. package/dist/executors/__tests__/codex.executor.test.js +137 -25
  4. package/dist/executors/__tests__/codex.executor.test.js.map +1 -1
  5. package/dist/executors/__tests__/providers.test.js +69 -2
  6. package/dist/executors/__tests__/providers.test.js.map +1 -1
  7. package/dist/executors/__tests__/stdin-prompt.executors.test.js +61 -3
  8. package/dist/executors/__tests__/stdin-prompt.executors.test.js.map +1 -1
  9. package/dist/executors/base.executor.d.ts +8 -1
  10. package/dist/executors/base.executor.d.ts.map +1 -1
  11. package/dist/executors/base.executor.js +22 -8
  12. package/dist/executors/base.executor.js.map +1 -1
  13. package/dist/executors/claude-code.executor.d.ts +2 -0
  14. package/dist/executors/claude-code.executor.d.ts.map +1 -1
  15. package/dist/executors/claude-code.executor.js +51 -41
  16. package/dist/executors/claude-code.executor.js.map +1 -1
  17. package/dist/executors/codex.executor.d.ts +3 -0
  18. package/dist/executors/codex.executor.d.ts.map +1 -1
  19. package/dist/executors/codex.executor.js +35 -1
  20. package/dist/executors/codex.executor.js.map +1 -1
  21. package/dist/executors/cursor-agent.executor.d.ts +1 -0
  22. package/dist/executors/cursor-agent.executor.d.ts.map +1 -1
  23. package/dist/executors/cursor-agent.executor.js +2 -0
  24. package/dist/executors/cursor-agent.executor.js.map +1 -1
  25. package/dist/executors/default-providers.json +45 -39
  26. package/dist/executors/gemini-cli.executor.d.ts +3 -1
  27. package/dist/executors/gemini-cli.executor.d.ts.map +1 -1
  28. package/dist/executors/gemini-cli.executor.js +18 -12
  29. package/dist/executors/gemini-cli.executor.js.map +1 -1
  30. package/dist/executors/index.d.ts +4 -0
  31. package/dist/executors/index.d.ts.map +1 -1
  32. package/dist/executors/index.js +14 -4
  33. package/dist/executors/index.js.map +1 -1
  34. package/dist/executors/providers.d.ts +4 -1
  35. package/dist/executors/providers.d.ts.map +1 -1
  36. package/dist/executors/providers.js +20 -5
  37. package/dist/executors/providers.js.map +1 -1
  38. package/dist/output/__tests__/claude-code-parser-lifecycle.test.d.ts +2 -0
  39. package/dist/output/__tests__/claude-code-parser-lifecycle.test.d.ts.map +1 -0
  40. package/dist/output/__tests__/claude-code-parser-lifecycle.test.js +84 -0
  41. package/dist/output/__tests__/claude-code-parser-lifecycle.test.js.map +1 -0
  42. package/dist/output/claude-code-parser.d.ts +14 -2
  43. package/dist/output/claude-code-parser.d.ts.map +1 -1
  44. package/dist/output/claude-code-parser.js +55 -8
  45. package/dist/output/claude-code-parser.js.map +1 -1
  46. package/dist/pipeline/__tests__/agent-pipeline.test.js +48 -1
  47. package/dist/pipeline/__tests__/agent-pipeline.test.js.map +1 -1
  48. package/dist/pipeline/agent-pipeline.d.ts +6 -1
  49. package/dist/pipeline/agent-pipeline.d.ts.map +1 -1
  50. package/dist/pipeline/agent-pipeline.js +42 -4
  51. package/dist/pipeline/agent-pipeline.js.map +1 -1
  52. package/dist/routes/__tests__/providers.test.js +287 -12
  53. package/dist/routes/__tests__/providers.test.js.map +1 -1
  54. package/dist/routes/__tests__/sessions-runtime.test.js +9 -0
  55. package/dist/routes/__tests__/sessions-runtime.test.js.map +1 -1
  56. package/dist/routes/providers.d.ts +2 -0
  57. package/dist/routes/providers.d.ts.map +1 -1
  58. package/dist/routes/providers.js +79 -34
  59. package/dist/routes/providers.js.map +1 -1
  60. package/dist/routes/sessions.js +2 -2
  61. package/dist/routes/sessions.js.map +1 -1
  62. package/dist/runtime/__tests__/acp-agent-definitions.test.js +54 -6
  63. package/dist/runtime/__tests__/acp-agent-definitions.test.js.map +1 -1
  64. package/dist/runtime/__tests__/acp-driver-lifecycle.test.js +85 -12
  65. package/dist/runtime/__tests__/acp-driver-lifecycle.test.js.map +1 -1
  66. package/dist/runtime/__tests__/acp-driver.test.js +38 -1
  67. package/dist/runtime/__tests__/acp-driver.test.js.map +1 -1
  68. package/dist/runtime/__tests__/claude-cli-control.test.d.ts +2 -0
  69. package/dist/runtime/__tests__/claude-cli-control.test.d.ts.map +1 -0
  70. package/dist/runtime/__tests__/claude-cli-control.test.js +147 -0
  71. package/dist/runtime/__tests__/claude-cli-control.test.js.map +1 -0
  72. package/dist/runtime/__tests__/claude-cli-driver.test.d.ts +2 -0
  73. package/dist/runtime/__tests__/claude-cli-driver.test.d.ts.map +1 -0
  74. package/dist/runtime/__tests__/claude-cli-driver.test.js +327 -0
  75. package/dist/runtime/__tests__/claude-cli-driver.test.js.map +1 -0
  76. package/dist/runtime/__tests__/cli-driver-lifecycle.test.js +107 -2
  77. package/dist/runtime/__tests__/cli-driver-lifecycle.test.js.map +1 -1
  78. package/dist/runtime/__tests__/codex-cli-control.test.d.ts +2 -0
  79. package/dist/runtime/__tests__/codex-cli-control.test.d.ts.map +1 -0
  80. package/dist/runtime/__tests__/codex-cli-control.test.js +287 -0
  81. package/dist/runtime/__tests__/codex-cli-control.test.js.map +1 -0
  82. package/dist/runtime/__tests__/codex-cli-identity.test.d.ts +2 -0
  83. package/dist/runtime/__tests__/codex-cli-identity.test.d.ts.map +1 -0
  84. package/dist/runtime/__tests__/codex-cli-identity.test.js +166 -0
  85. package/dist/runtime/__tests__/codex-cli-identity.test.js.map +1 -0
  86. package/dist/runtime/__tests__/codex-runtime-resolution.test.js +32 -0
  87. package/dist/runtime/__tests__/codex-runtime-resolution.test.js.map +1 -1
  88. package/dist/runtime/__tests__/runtime-coordinator.test.js +74 -0
  89. package/dist/runtime/__tests__/runtime-coordinator.test.js.map +1 -1
  90. package/dist/runtime/acp/acp-driver.d.ts.map +1 -1
  91. package/dist/runtime/acp/acp-driver.js +27 -9
  92. package/dist/runtime/acp/acp-driver.js.map +1 -1
  93. package/dist/runtime/acp/agents/claude-code.d.ts.map +1 -1
  94. package/dist/runtime/acp/agents/claude-code.js +6 -11
  95. package/dist/runtime/acp/agents/claude-code.js.map +1 -1
  96. package/dist/runtime/acp/agents/codex.d.ts.map +1 -1
  97. package/dist/runtime/acp/agents/codex.js +15 -6
  98. package/dist/runtime/acp/agents/codex.js.map +1 -1
  99. package/dist/runtime/acp/agents/cursor-agent.d.ts.map +1 -1
  100. package/dist/runtime/acp/agents/cursor-agent.js +2 -1
  101. package/dist/runtime/acp/agents/cursor-agent.js.map +1 -1
  102. package/dist/runtime/acp/agents/deepseek-hermes.js +3 -3
  103. package/dist/runtime/acp/agents/deepseek-hermes.js.map +1 -1
  104. package/dist/runtime/acp/agents/gemini-cli.d.ts.map +1 -1
  105. package/dist/runtime/acp/agents/gemini-cli.js +1 -0
  106. package/dist/runtime/acp/agents/gemini-cli.js.map +1 -1
  107. package/dist/runtime/acp/agents/grok-build.d.ts.map +1 -1
  108. package/dist/runtime/acp/agents/grok-build.js +4 -1
  109. package/dist/runtime/acp/agents/grok-build.js.map +1 -1
  110. package/dist/runtime/acp/agents/kiro-cli.d.ts.map +1 -1
  111. package/dist/runtime/acp/agents/kiro-cli.js +2 -1
  112. package/dist/runtime/acp/agents/kiro-cli.js.map +1 -1
  113. package/dist/runtime/acp/agents/minion-code.js +1 -1
  114. package/dist/runtime/acp/agents/minion-code.js.map +1 -1
  115. package/dist/runtime/acp/agents/native-agent.d.ts +2 -0
  116. package/dist/runtime/acp/agents/native-agent.d.ts.map +1 -1
  117. package/dist/runtime/acp/agents/native-agent.js +12 -16
  118. package/dist/runtime/acp/agents/native-agent.js.map +1 -1
  119. package/dist/runtime/acp/agents/opencode.d.ts.map +1 -1
  120. package/dist/runtime/acp/agents/opencode.js +50 -2
  121. package/dist/runtime/acp/agents/opencode.js.map +1 -1
  122. package/dist/runtime/acp/agents/pi-coding-agent.d.ts.map +1 -1
  123. package/dist/runtime/acp/agents/pi-coding-agent.js +2 -5
  124. package/dist/runtime/acp/agents/pi-coding-agent.js.map +1 -1
  125. package/dist/runtime/acp/agents/qwen-code.d.ts.map +1 -1
  126. package/dist/runtime/acp/agents/qwen-code.js +9 -11
  127. package/dist/runtime/acp/agents/qwen-code.js.map +1 -1
  128. package/dist/runtime/acp/agents/types.d.ts +4 -2
  129. package/dist/runtime/acp/agents/types.d.ts.map +1 -1
  130. package/dist/runtime/acp/codex-cli-identity.d.ts +52 -0
  131. package/dist/runtime/acp/codex-cli-identity.d.ts.map +1 -0
  132. package/dist/runtime/acp/codex-cli-identity.js +179 -0
  133. package/dist/runtime/acp/codex-cli-identity.js.map +1 -0
  134. package/dist/runtime/acp/codex-provider-config.d.ts +15 -2
  135. package/dist/runtime/acp/codex-provider-config.d.ts.map +1 -1
  136. package/dist/runtime/acp/codex-provider-config.js +42 -5
  137. package/dist/runtime/acp/codex-provider-config.js.map +1 -1
  138. package/dist/runtime/claude-cli-control.d.ts +32 -0
  139. package/dist/runtime/claude-cli-control.d.ts.map +1 -0
  140. package/dist/runtime/claude-cli-control.js +156 -0
  141. package/dist/runtime/claude-cli-control.js.map +1 -0
  142. package/dist/runtime/cli-action-summary.d.ts +3 -0
  143. package/dist/runtime/cli-action-summary.d.ts.map +1 -0
  144. package/dist/runtime/cli-action-summary.js +13 -0
  145. package/dist/runtime/cli-action-summary.js.map +1 -0
  146. package/dist/runtime/cli-driver.d.ts.map +1 -1
  147. package/dist/runtime/cli-driver.js +119 -26
  148. package/dist/runtime/cli-driver.js.map +1 -1
  149. package/dist/runtime/cli-parser.d.ts +4 -1
  150. package/dist/runtime/cli-parser.d.ts.map +1 -1
  151. package/dist/runtime/cli-parser.js +2 -2
  152. package/dist/runtime/cli-parser.js.map +1 -1
  153. package/dist/runtime/codex-cli-control.d.ts +63 -0
  154. package/dist/runtime/codex-cli-control.d.ts.map +1 -0
  155. package/dist/runtime/codex-cli-control.js +311 -0
  156. package/dist/runtime/codex-cli-control.js.map +1 -0
  157. package/dist/runtime/codex-cli-projector.d.ts +17 -0
  158. package/dist/runtime/codex-cli-projector.d.ts.map +1 -0
  159. package/dist/runtime/codex-cli-projector.js +80 -0
  160. package/dist/runtime/codex-cli-projector.js.map +1 -0
  161. package/dist/runtime/contracts.d.ts +12 -2
  162. package/dist/runtime/contracts.d.ts.map +1 -1
  163. package/dist/runtime/runtime-coordinator.d.ts +1 -1
  164. package/dist/runtime/runtime-coordinator.d.ts.map +1 -1
  165. package/dist/runtime/runtime-coordinator.js +40 -6
  166. package/dist/runtime/runtime-coordinator.js.map +1 -1
  167. package/dist/services/__tests__/claude-cli-capabilities.service.test.d.ts +2 -0
  168. package/dist/services/__tests__/claude-cli-capabilities.service.test.d.ts.map +1 -0
  169. package/dist/services/__tests__/claude-cli-capabilities.service.test.js +37 -0
  170. package/dist/services/__tests__/claude-cli-capabilities.service.test.js.map +1 -0
  171. package/dist/services/__tests__/codex-cli-capabilities.service.test.d.ts +2 -0
  172. package/dist/services/__tests__/codex-cli-capabilities.service.test.d.ts.map +1 -0
  173. package/dist/services/__tests__/codex-cli-capabilities.service.test.js +35 -0
  174. package/dist/services/__tests__/codex-cli-capabilities.service.test.js.map +1 -0
  175. package/dist/services/__tests__/codex-model-capabilities.service.test.js +23 -2
  176. package/dist/services/__tests__/codex-model-capabilities.service.test.js.map +1 -1
  177. package/dist/services/__tests__/execution-permission.service.test.d.ts +2 -0
  178. package/dist/services/__tests__/execution-permission.service.test.d.ts.map +1 -0
  179. package/dist/services/__tests__/execution-permission.service.test.js +111 -0
  180. package/dist/services/__tests__/execution-permission.service.test.js.map +1 -0
  181. package/dist/services/__tests__/provider-config.service.test.js +1 -0
  182. package/dist/services/__tests__/provider-config.service.test.js.map +1 -1
  183. package/dist/services/__tests__/session-manager.lifecycle.test.js +151 -3
  184. package/dist/services/__tests__/session-manager.lifecycle.test.js.map +1 -1
  185. package/dist/services/claude-cli-capabilities.service.d.ts +11 -0
  186. package/dist/services/claude-cli-capabilities.service.d.ts.map +1 -0
  187. package/dist/services/claude-cli-capabilities.service.js +54 -0
  188. package/dist/services/claude-cli-capabilities.service.js.map +1 -0
  189. package/dist/services/codex-cli-capabilities.service.d.ts +12 -0
  190. package/dist/services/codex-cli-capabilities.service.d.ts.map +1 -0
  191. package/dist/services/codex-cli-capabilities.service.js +65 -0
  192. package/dist/services/codex-cli-capabilities.service.js.map +1 -0
  193. package/dist/services/codex-model-capabilities.service.d.ts.map +1 -1
  194. package/dist/services/codex-model-capabilities.service.js +12 -1
  195. package/dist/services/codex-model-capabilities.service.js.map +1 -1
  196. package/dist/services/execution-permission.service.d.ts +30 -0
  197. package/dist/services/execution-permission.service.d.ts.map +1 -0
  198. package/dist/services/execution-permission.service.js +149 -0
  199. package/dist/services/execution-permission.service.js.map +1 -0
  200. package/dist/services/provider-config.service.d.ts.map +1 -1
  201. package/dist/services/provider-config.service.js +19 -29
  202. package/dist/services/provider-config.service.js.map +1 -1
  203. package/dist/services/session-manager.d.ts +9 -7
  204. package/dist/services/session-manager.d.ts.map +1 -1
  205. package/dist/services/session-manager.js +46 -7
  206. package/dist/services/session-manager.js.map +1 -1
  207. package/dist/services/task.service.d.ts +4 -4
  208. package/dist/services/workspace.service.d.ts +7 -7
  209. package/dist/utils/cli-duplex-channel.d.ts +21 -0
  210. package/dist/utils/cli-duplex-channel.d.ts.map +1 -0
  211. package/dist/utils/cli-duplex-channel.js +200 -0
  212. package/dist/utils/cli-duplex-channel.js.map +1 -0
  213. package/dist/utils/cli-duplex-channel.test.d.ts +2 -0
  214. package/dist/utils/cli-duplex-channel.test.d.ts.map +1 -0
  215. package/dist/utils/cli-duplex-channel.test.js +191 -0
  216. package/dist/utils/cli-duplex-channel.test.js.map +1 -0
  217. package/dist/utils/index.d.ts +1 -0
  218. package/dist/utils/index.d.ts.map +1 -1
  219. package/dist/utils/index.js +1 -0
  220. package/dist/utils/index.js.map +1 -1
  221. package/dist/utils/process-launch.d.ts +3 -0
  222. package/dist/utils/process-launch.d.ts.map +1 -1
  223. package/dist/utils/process-launch.js +129 -10
  224. package/dist/utils/process-launch.js.map +1 -1
  225. package/dist/utils/process-launch.test.js +103 -0
  226. package/dist/utils/process-launch.test.js.map +1 -1
  227. package/dist/web/assets/{AgentDemoPage-B6pABvRL.js → AgentDemoPage-Gr8q6VxC.js} +1 -1
  228. package/dist/web/assets/{AgentEnvironmentSettingsPage-CqMfdwkM.js → AgentEnvironmentSettingsPage-b0XzUzna.js} +1 -1
  229. package/dist/web/assets/{AgentLogo-Ntqe3_Mx.js → AgentLogo-q8Chady2.js} +1 -1
  230. package/dist/web/assets/ConversationPage-DQRA8WuD.js +3 -0
  231. package/dist/web/assets/CreateTaskInput-Dr6Lvllw.js +1 -0
  232. package/dist/web/assets/{DemoPage-D1Ki6sJ0.js → DemoPage-DaDC_MIJ.js} +1 -1
  233. package/dist/web/assets/ExecutionPermissionSelector-DglILGVC.js +29 -0
  234. package/dist/web/assets/{GeneralSettingsPage-DoAXPabw.js → GeneralSettingsPage-BKRf-usO.js} +1 -1
  235. package/dist/web/assets/{Icons-KJJd6C8K.js → Icons-7lThaqQv.js} +1 -1
  236. package/dist/web/assets/{LoadingPreviewPage-BqCKBvgv.js → LoadingPreviewPage-BHAQCQDA.js} +1 -1
  237. package/dist/web/assets/{McpSettingsPage-QXVD4XCW.js → McpSettingsPage-CVOEPwCv.js} +1 -1
  238. package/dist/web/assets/{MemberAvatar-kbJEoyh0.js → MemberAvatar-DUXHTIXf.js} +1 -1
  239. package/dist/web/assets/{NotificationSettingsPage-BrqSeU--.js → NotificationSettingsPage-DBe1YCNN.js} +1 -1
  240. package/dist/web/assets/{ProfileSettingsPage-BmWgVdnG.js → ProfileSettingsPage-DwziCseV.js} +1 -1
  241. package/dist/web/assets/ProjectKanbanPage-Dcz8KXWU.js +86 -0
  242. package/dist/web/assets/{ProjectSettingsPage-BVINN99w.js → ProjectSettingsPage-hzSrj79M.js} +1 -1
  243. package/dist/web/assets/ProviderSettingsPage-CC3zkdf6.js +67 -0
  244. package/dist/web/assets/{SettingsMasterDetail-OF28cvPV.js → SettingsMasterDetail-D5lNH2f6.js} +1 -1
  245. package/dist/web/assets/{TeamSettingsPage-BWGm0m7s.js → TeamSettingsPage-Cdbvh2ne.js} +1 -1
  246. package/dist/web/assets/{arc-CqFgRaZU.js → arc-d2D24uRQ.js} +1 -1
  247. package/dist/web/assets/{architectureDiagram-3BPJPVTR-C0PMdIZJ.js → architectureDiagram-3BPJPVTR-C_p9_AH2.js} +1 -1
  248. package/dist/web/assets/{blockDiagram-GPEHLZMM-SqqtxqkX.js → blockDiagram-GPEHLZMM-CKsR1Tax.js} +1 -1
  249. package/dist/web/assets/{c4Diagram-AAUBKEIU-DYJXB3xL.js → c4Diagram-AAUBKEIU-BBUKt2FW.js} +1 -1
  250. package/dist/web/assets/channel-D0hF47LU.js +1 -0
  251. package/dist/web/assets/check-BqhuHtHP.js +1 -0
  252. package/dist/web/assets/{chevron-down-BZfpVhYr.js → chevron-down-Bw_76CB_.js} +1 -1
  253. package/dist/web/assets/{chevron-right-D52zUyOF.js → chevron-right-DbcFf_Dw.js} +1 -1
  254. package/dist/web/assets/{chevron-up-CFOy5dmW.js → chevron-up-x1n3MhC-.js} +1 -1
  255. package/dist/web/assets/{chunk-2J33WTMH-DQCbv8W_.js → chunk-2J33WTMH-BcGNhDoU.js} +1 -1
  256. package/dist/web/assets/{chunk-4BX2VUAB-B_68_oNW.js → chunk-4BX2VUAB-9dL7TVjW.js} +1 -1
  257. package/dist/web/assets/{chunk-55IACEB6-Bb-pPIxs.js → chunk-55IACEB6-CzJzh0tH.js} +1 -1
  258. package/dist/web/assets/{chunk-727SXJPM-CAiaySk6.js → chunk-727SXJPM-Bp5EOgoG.js} +1 -1
  259. package/dist/web/assets/{chunk-AQP2D5EJ-ChCLJ4Wv.js → chunk-AQP2D5EJ-BaLnh9ac.js} +1 -1
  260. package/dist/web/assets/{chunk-FMBD7UC4-Kz0Cc0mv.js → chunk-FMBD7UC4-BcbzC8r4.js} +1 -1
  261. package/dist/web/assets/{chunk-ND2GUHAM-BttoT7UR.js → chunk-ND2GUHAM-DkT5Stbd.js} +1 -1
  262. package/dist/web/assets/{chunk-QZHKN3VN-BcVhzXXK.js → chunk-QZHKN3VN-DszScpAV.js} +1 -1
  263. package/dist/web/assets/{circle-alert-D67xfWMs.js → circle-alert-ChWS5BPS.js} +1 -1
  264. package/dist/web/assets/classDiagram-4FO5ZUOK-ulXJsBKw.js +1 -0
  265. package/dist/web/assets/classDiagram-v2-Q7XG4LA2-ulXJsBKw.js +1 -0
  266. package/dist/web/assets/{code-block-OCS4YCEC-CMA1utSp.js → code-block-OCS4YCEC-G8tEtSdL.js} +1 -1
  267. package/dist/web/assets/{confirm-dialog-BWvZEHpu.js → confirm-dialog-0vHzUzvI.js} +1 -1
  268. package/dist/web/assets/{cose-bilkent-S5V4N54A-B391zTey.js → cose-bilkent-S5V4N54A-DueZsNr5.js} +1 -1
  269. package/dist/web/assets/cssMode-Dqx3XDOC.js +1 -0
  270. package/dist/web/assets/{dagre-BM42HDAG-CymH_FEZ.js → dagre-BM42HDAG-BkQGrA8s.js} +1 -1
  271. package/dist/web/assets/{diagram-2AECGRRQ-DXOIiLDr.js → diagram-2AECGRRQ-D4qtEjjj.js} +1 -1
  272. package/dist/web/assets/{diagram-5GNKFQAL-B9ocgjdh.js → diagram-5GNKFQAL-ZuFk-7GO.js} +1 -1
  273. package/dist/web/assets/{diagram-KO2AKTUF-DLMpk9Wg.js → diagram-KO2AKTUF-kwBr5lw0.js} +1 -1
  274. package/dist/web/assets/{diagram-LMA3HP47-BBnF83je.js → diagram-LMA3HP47-m88-mNyr.js} +1 -1
  275. package/dist/web/assets/{diagram-OG6HWLK6-AK4FunVI.js → diagram-OG6HWLK6-B9gV1dxA.js} +1 -1
  276. package/dist/web/assets/{erDiagram-TEJ5UH35-B1mryURg.js → erDiagram-TEJ5UH35-De_DsoOX.js} +1 -1
  277. package/dist/web/assets/{flowDiagram-I6XJVG4X-BjIG_1l5.js → flowDiagram-I6XJVG4X-9VwLS0b3.js} +1 -1
  278. package/dist/web/assets/{folder-picker-CaM_drIJ.js → folder-picker-B0khMt7A.js} +1 -1
  279. package/dist/web/assets/{freemarker2-Dj1C_6Ng.js → freemarker2-CLp1Yffb.js} +2 -2
  280. package/dist/web/assets/{ganttDiagram-6RSMTGT7-DjR6lyIQ.js → ganttDiagram-6RSMTGT7-DoOyYr5i.js} +1 -1
  281. package/dist/web/assets/{gitGraphDiagram-PVQCEYII-BpW2L4ry.js → gitGraphDiagram-PVQCEYII-CMGuTxMz.js} +1 -1
  282. package/dist/web/assets/handlebars-CmLfR6Uy.js +1 -0
  283. package/dist/web/assets/html-D34UDOLc.js +1 -0
  284. package/dist/web/assets/htmlMode-qjrvkZFJ.js +1 -0
  285. package/dist/web/assets/{index-DaRxJqVy.js → index-DI7lHrAR.js} +4 -4
  286. package/dist/web/assets/index-DrzmyANC.js +122 -0
  287. package/dist/web/assets/index-MMCbS8_L.css +1 -0
  288. package/dist/web/assets/{infoDiagram-5YYISTIA-Cu-PA_-6.js → infoDiagram-5YYISTIA-gUCDmQX7.js} +1 -1
  289. package/dist/web/assets/{ishikawaDiagram-YF4QCWOH-S6Esbkdw.js → ishikawaDiagram-YF4QCWOH-CmfFhhIz.js} +1 -1
  290. package/dist/web/assets/javascript-D5tp0LcO.js +1 -0
  291. package/dist/web/assets/{journeyDiagram-JHISSGLW-wPF9FT9V.js → journeyDiagram-JHISSGLW-BvV5GoR_.js} +1 -1
  292. package/dist/web/assets/{jsonMode-D6IoFlQF.js → jsonMode-BbjYNQ7Q.js} +4 -4
  293. package/dist/web/assets/{kanban-definition-UN3LZRKU-C4jl9zOj.js → kanban-definition-UN3LZRKU-BpTm0MC-.js} +1 -1
  294. package/dist/web/assets/{layers-hQUUT3Gb.js → layers-DslPQJ3T.js} +1 -1
  295. package/dist/web/assets/{linear-D83xDp0H.js → linear-BJ_g8wqu.js} +1 -1
  296. package/dist/web/assets/liquid-DBu3_6XS.js +1 -0
  297. package/dist/web/assets/{lspLanguageFeatures-CUyibjAN.js → lspLanguageFeatures-PSX0tqnR.js} +1 -1
  298. package/dist/web/assets/mdx-Bb4nrA8s.js +1 -0
  299. package/dist/web/assets/{mermaid-NOHMQCX5-CGCWmHha.js → mermaid-NOHMQCX5-B44shuzc.js} +45 -45
  300. package/dist/web/assets/{message-square-B-uYQiTq.js → message-square-C-22K3oa.js} +1 -1
  301. package/dist/web/assets/{mindmap-definition-RKZ34NQL-D5v2uvjn.js → mindmap-definition-RKZ34NQL-DS5GLydx.js} +1 -1
  302. package/dist/web/assets/{modal-D87uszzb.js → modal-CFVLBZ5p.js} +1 -1
  303. package/dist/web/assets/{monaco-B25-2nEB.js → monaco-CkaUvvB4.js} +3 -3
  304. package/dist/web/assets/{pencil-CY2RnQrx.js → pencil-DB3VPszm.js} +1 -1
  305. package/dist/web/assets/{pieDiagram-4H26LBE5-6wdFz_7x.js → pieDiagram-4H26LBE5-C1PJJGsh.js} +1 -1
  306. package/dist/web/assets/python-BfodDYt4.js +1 -0
  307. package/dist/web/assets/{quadrantDiagram-W4KKPZXB-C1CrGMEK.js → quadrantDiagram-W4KKPZXB-CzDfs-TQ.js} +1 -1
  308. package/dist/web/assets/razor-DdED1MBH.js +1 -0
  309. package/dist/web/assets/{requirementDiagram-4Y6WPE33-mDtZrxpp.js → requirementDiagram-4Y6WPE33-qHbU7oZa.js} +1 -1
  310. package/dist/web/assets/{sankeyDiagram-5OEKKPKP-hBlj0XoH.js → sankeyDiagram-5OEKKPKP-BfRgrEeN.js} +1 -1
  311. package/dist/web/assets/select-CL78HCY0.js +1 -0
  312. package/dist/web/assets/{sequenceDiagram-3UESZ5HK-DsWmMm20.js → sequenceDiagram-3UESZ5HK-CGTNzKk3.js} +1 -1
  313. package/dist/web/assets/{server-qlZupTvg.js → server-Cd7APx6v.js} +1 -1
  314. package/dist/web/assets/{stateDiagram-AJRCARHV-VNyX1L66.js → stateDiagram-AJRCARHV-BY1LJ4b7.js} +1 -1
  315. package/dist/web/assets/stateDiagram-v2-BHNVJYJU-BV_JKRZC.js +1 -0
  316. package/dist/web/assets/{switch-1pvXCcP-.js → switch-DmQ0Brgd.js} +1 -1
  317. package/dist/web/assets/{textarea-D9oaz-Ba.js → textarea-DOte4pMQ.js} +1 -1
  318. package/dist/web/assets/{timeline-definition-PNZ67QCA-DuBxxd9E.js → timeline-definition-PNZ67QCA-BBhCKsly.js} +1 -1
  319. package/dist/web/assets/{trash-2-C0P8jNpJ.js → trash-2-BSAHXKfW.js} +1 -1
  320. package/dist/web/assets/{tsMode-ogL-3MSe.js → tsMode-B6rHoWny.js} +2 -2
  321. package/dist/web/assets/typescript-C2A3q8UY.js +1 -0
  322. package/dist/web/assets/{upload-BYgsDplu.js → upload-e87qV_RH.js} +1 -1
  323. package/dist/web/assets/{use-profiles-BkGnmson.js → use-profiles-Cv2zBJOC.js} +1 -1
  324. package/dist/web/assets/{use-projects-B4w00h5I.js → use-projects-C8WDJXdj.js} +1 -1
  325. package/dist/web/assets/use-providers-CnpIgITQ.js +1 -0
  326. package/dist/web/assets/{useNormalizedLogs-MsDkcnRQ.js → useNormalizedLogs-AbIXa8s-.js} +1 -1
  327. package/dist/web/assets/{vennDiagram-CIIHVFJN-RbPPOLBo.js → vennDiagram-CIIHVFJN-DrDrt_Jg.js} +1 -1
  328. package/dist/web/assets/{wardley-L42UT6IY-DXzUbdMF.js → wardley-L42UT6IY-CMYQm14y.js} +1 -1
  329. package/dist/web/assets/{wardleyDiagram-YWT4CUSO-B0QXobQM.js → wardleyDiagram-YWT4CUSO-COLA9A80.js} +1 -1
  330. package/dist/web/assets/xml-D4xDxfjR.js +1 -0
  331. package/dist/web/assets/{xychartDiagram-2RQKCTM6-C7bFJItM.js → xychartDiagram-2RQKCTM6-BDegkKoT.js} +1 -1
  332. package/dist/web/assets/yaml-yJExA7tq.js +1 -0
  333. package/dist/web/index.html +2 -2
  334. package/node_modules/@agent-tower/shared/dist/execution-permission.d.ts +19 -0
  335. package/node_modules/@agent-tower/shared/dist/execution-permission.d.ts.map +1 -0
  336. package/node_modules/@agent-tower/shared/dist/execution-permission.js +53 -0
  337. package/node_modules/@agent-tower/shared/dist/execution-permission.js.map +1 -0
  338. package/node_modules/@agent-tower/shared/dist/index.d.ts +1 -0
  339. package/node_modules/@agent-tower/shared/dist/index.d.ts.map +1 -1
  340. package/node_modules/@agent-tower/shared/dist/index.js +1 -0
  341. package/node_modules/@agent-tower/shared/dist/index.js.map +1 -1
  342. package/node_modules/@agent-tower/shared/dist/provider-capabilities.d.ts +6 -5
  343. package/node_modules/@agent-tower/shared/dist/provider-capabilities.d.ts.map +1 -1
  344. package/node_modules/@agent-tower/shared/dist/provider-capabilities.js.map +1 -1
  345. package/node_modules/@agent-tower/shared/dist/types.d.ts +49 -2
  346. package/node_modules/@agent-tower/shared/dist/types.d.ts.map +1 -1
  347. package/node_modules/@agent-tower/shared/dist/types.js.map +1 -1
  348. package/package.json +1 -1
  349. package/dist/web/assets/ConversationPage-BINGA8XL.js +0 -3
  350. package/dist/web/assets/CreateTaskInput-8bLhHYOc.js +0 -1
  351. package/dist/web/assets/ProjectKanbanPage-D7RJm4yg.js +0 -92
  352. package/dist/web/assets/ProviderSettingsPage-BlgfQMwe.js +0 -95
  353. package/dist/web/assets/channel-B8s9dqlX.js +0 -1
  354. package/dist/web/assets/check-C1zWgxFO.js +0 -1
  355. package/dist/web/assets/classDiagram-4FO5ZUOK-61bPx188.js +0 -1
  356. package/dist/web/assets/classDiagram-v2-Q7XG4LA2-61bPx188.js +0 -1
  357. package/dist/web/assets/cssMode-CNU1q_Gl.js +0 -1
  358. package/dist/web/assets/handlebars-DNXOgRZc.js +0 -1
  359. package/dist/web/assets/html-C20FgNS-.js +0 -1
  360. package/dist/web/assets/htmlMode-CtcV1Ktd.js +0 -1
  361. package/dist/web/assets/index-dElqH2UR.css +0 -1
  362. package/dist/web/assets/index-oC5eh7mZ.js +0 -122
  363. package/dist/web/assets/javascript-CFAVZ6Tb.js +0 -1
  364. package/dist/web/assets/liquid-CuzuRJIN.js +0 -1
  365. package/dist/web/assets/mdx-C3rxTvel.js +0 -1
  366. package/dist/web/assets/python-BYGLbOzO.js +0 -1
  367. package/dist/web/assets/razor-m0U9iUAj.js +0 -1
  368. package/dist/web/assets/select-D7WkUiad.js +0 -1
  369. package/dist/web/assets/stateDiagram-v2-BHNVJYJU-DHz3oGyD.js +0 -1
  370. package/dist/web/assets/typescript-rHoDxTY8.js +0 -1
  371. package/dist/web/assets/use-providers-B70-BYNu.js +0 -1
  372. package/dist/web/assets/xml-BqnpQrAq.js +0 -1
  373. package/dist/web/assets/yaml-mz2Zn_K2.js +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"providers.test.js","sourceRoot":"","sources":["../../../src/routes/__tests__/providers.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"providers.test.js","sourceRoot":"","sources":["../../../src/routes/__tests__/providers.test.ts"],"names":[],"mappings":"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"}
@@ -119,6 +119,15 @@ describe('session runtime routes', () => {
119
119
  expect(response.json()).toEqual({ error: 'Permission request is no longer active' });
120
120
  await app.close();
121
121
  });
122
+ it('preserves policy-denied approval as 403 rather than a stale-request 409', async () => {
123
+ const app = await buildTestApp();
124
+ findSession.mockResolvedValue({ id: 'session-1' });
125
+ resolveRuntimePermission.mockRejectedValue(new ServiceError('Deployment revoked this mode', 'POLICY_MODE_DENIED', 403));
126
+ const response = await app.inject({ method: 'POST', url: '/api/sessions/session-1/permissions/request/resolve', payload: { optionId: 'allow_once' } });
127
+ expect(response.statusCode).toBe(403);
128
+ expect(response.json()).toEqual({ error: 'Deployment revoked this mode', code: 'POLICY_MODE_DENIED' });
129
+ await app.close();
130
+ });
122
131
  it('routes direct session stop through the TeamRun scheduler admission boundary', async () => {
123
132
  const app = await buildTestApp();
124
133
  stopSession.mockResolvedValue({ id: 'session-1' });
@@ -1 +1 @@
1
- {"version":3,"file":"sessions-runtime.test.js","sourceRoot":"","sources":["../../../src/routes/__tests__/sessions-runtime.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sessions-runtime.test.js","sourceRoot":"","sources":["../../../src/routes/__tests__/sessions-runtime.test.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  import type { FastifyInstance } from 'fastify';
2
+ import { type ExecutionPermissionService } from '../services/execution-permission.service.js';
2
3
  import { type ProviderConnectionProbeOptions } from '../services/provider-effective-connection.service.js';
3
4
  export interface ProviderRoutesOptions {
4
5
  connectionProbe?: ProviderConnectionProbeOptions;
6
+ executionPermissions?: ExecutionPermissionService;
5
7
  }
6
8
  export declare function providerRoutes(app: FastifyInstance, options?: ProviderRoutesOptions): Promise<void>;
7
9
  //# sourceMappingURL=providers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/routes/providers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAkC/C,OAAO,EAGL,KAAK,8BAA8B,EACpC,MAAM,sDAAsD,CAAC;AAE9D,MAAM,WAAW,qBAAqB;IACpC,eAAe,CAAC,EAAE,8BAA8B,CAAC;CAClD;AA6GD,wBAAsB,cAAc,CAAC,GAAG,EAAE,eAAe,EAAE,OAAO,GAAE,qBAA0B,iBAwO7F"}
1
+ {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/routes/providers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAyB/C,OAAO,EAA8B,KAAK,0BAA0B,EAAE,MAAM,6CAA6C,CAAC;AAW1H,OAAO,EAGL,KAAK,8BAA8B,EACpC,MAAM,sDAAsD,CAAC;AAE9D,MAAM,WAAW,qBAAqB;IACpC,eAAe,CAAC,EAAE,8BAA8B,CAAC;IACjD,oBAAoB,CAAC,EAAE,0BAA0B,CAAC;CACnD;AA+HD,wBAAsB,cAAc,CAAC,GAAG,EAAE,eAAe,EAAE,OAAO,GAAE,qBAA0B,iBAmQ7F"}
@@ -2,9 +2,14 @@ import { z } from 'zod';
2
2
  import { AgentType as SharedAgentType, PROVIDER_CAPABILITIES, RuntimeType, USER_VISIBLE_AGENT_TYPES, isUserVisibleAgentType, } from '@agent-tower/shared';
3
3
  import { getProviderById, createProviderBackup, previewProviderImport, importProvidersFromBackup, createProvider, updateProvider, deleteProvider, canDeleteProvider, reloadProviders, getAllProvidersAvailability, smokeTestProviderConfiguration, } from '../executors/index.js';
4
4
  import { AgentType } from '../types/index.js';
5
+ import { executionPermissionService } from '../services/execution-permission.service.js';
5
6
  import { getProviderSecretValues, normalizeProviderDraft, redactProvider, validateProviderBackupDrafts, } from '../services/provider-config.service.js';
6
7
  import { getCodexReasoningEffortOptions, validateCodexReasoningEffort, } from '../services/codex-model-capabilities.service.js';
7
8
  import { probeEffectiveProviderConnection, resolveEffectiveProviderConnection, } from '../services/provider-effective-connection.service.js';
9
+ const isPolicyDenial = (item) => item.code === 'POLICY_MODE_DENIED' || item.code === 'POLICY_ENFORCEMENT_UNAVAILABLE';
10
+ const importPermissionDiagnostics = (provider, permissions) => permissions.diagnostics(provider).filter(item => isPolicyDenial(item)
11
+ || (provider.agentType === SharedAgentType.CODEX && provider.runtimeType === RuntimeType.CLI
12
+ && provider.executionPermission === 'AUTO_SANDBOX' && item.code === 'CONFLICT'));
8
13
  const secretWriteSchema = z.discriminatedUnion('action', [
9
14
  z.object({ action: z.literal('keep') }),
10
15
  z.object({ action: z.literal('replace'), value: z.string() }),
@@ -24,6 +29,7 @@ const createProviderSchema = z.object({
24
29
  name: z.string(),
25
30
  agentType: z.nativeEnum(AgentType).refine(isUserVisibleAgentType, 'Agent type is not available'),
26
31
  runtimeType: z.nativeEnum(RuntimeType).default(RuntimeType.CLI),
32
+ executionPermission: z.enum(['ASK', 'AUTO_SANDBOX', 'FULL_ACCESS']).optional(),
27
33
  env: z.record(secretWriteSchema).default({}),
28
34
  config: z.record(z.unknown()).default({}),
29
35
  settings: z.string().optional(),
@@ -32,6 +38,7 @@ const createProviderSchema = z.object({
32
38
  isDefault: z.boolean().default(false),
33
39
  });
34
40
  const updateProviderSchema = z.object({
41
+ executionPermission: z.enum(['ASK', 'AUTO_SANDBOX', 'FULL_ACCESS']).optional(),
35
42
  name: z.string().optional(),
36
43
  env: z.record(secretWriteSchema).optional(),
37
44
  config: z.record(z.unknown()).optional(),
@@ -46,12 +53,22 @@ const testProviderSchema = createProviderSchema.extend({
46
53
  const capabilitiesQuerySchema = z.object({
47
54
  agentType: z.nativeEnum(SharedAgentType).optional(),
48
55
  model: z.string().optional(),
56
+ providerId: z.string().optional(),
57
+ runtimeType: z.nativeEnum(RuntimeType).optional(),
58
+ });
59
+ // Draft config replaces persisted config, including an explicit empty object.
60
+ // Do not send credentials through query strings or return Provider internals.
61
+ const capabilitiesDraftSchema = capabilitiesQuerySchema.extend({
62
+ config: z.record(z.unknown()),
63
+ settings: z.string().optional(),
49
64
  });
50
65
  const backupProviderSchema = z.object({
51
66
  id: z.string().min(1),
52
67
  name: z.string().min(1),
53
68
  agentType: z.nativeEnum(AgentType),
54
69
  runtimeType: z.nativeEnum(RuntimeType).optional().default(RuntimeType.CLI),
70
+ executionPermission: z.enum(['ASK', 'AUTO_SANDBOX', 'FULL_ACCESS']).optional(),
71
+ executionPermissionReviewRequired: z.boolean().optional(),
55
72
  env: z.record(z.string()).default({}),
56
73
  config: z.record(z.unknown()).default({}),
57
74
  settings: z.string().optional(),
@@ -59,7 +76,7 @@ const backupProviderSchema = z.object({
59
76
  createdAt: z.string().optional(),
60
77
  });
61
78
  const providerBackupSchema = z.object({
62
- version: z.literal(1),
79
+ version: z.union([z.literal(1), z.literal(2)]),
63
80
  kind: z.literal('provider-backup'),
64
81
  exportedAt: z.string().min(1),
65
82
  mode: z.literal('full'),
@@ -99,16 +116,38 @@ function draftSecrets(input) {
99
116
  return Object.values(input.env ?? {}).flatMap(write => write.action === 'replace' ? [write.value] : []);
100
117
  }
101
118
  export async function providerRoutes(app, options = {}) {
119
+ const permissions = options.executionPermissions ?? executionPermissionService;
120
+ const readProvider = async (provider, deletable) => {
121
+ await permissions.prepare();
122
+ const redacted = redactProvider(provider, deletable);
123
+ return { ...redacted, executionPermissionOptions: permissions.options({ agentType: provider.agentType, runtimeType: provider.runtimeType ?? RuntimeType.CLI, providerId: provider.id, provider }),
124
+ diagnostics: [...redacted.diagnostics ?? [], ...permissions.diagnostics(provider)] };
125
+ };
102
126
  app.get('/providers', async () => {
103
127
  const providersWithAvailability = await getAllProvidersAvailability();
104
- return providersWithAvailability.map(item => ({
128
+ return Promise.all(providersWithAvailability.map(async (item) => ({
105
129
  ...item,
106
- provider: redactProvider(item.provider, canDeleteProvider(item.provider)),
107
- }));
130
+ provider: await readProvider(item.provider, canDeleteProvider(item.provider)),
131
+ })));
108
132
  });
109
- app.get('/providers/capabilities', async (request) => {
110
- const query = capabilitiesQuerySchema.parse(request.query ?? {});
111
- const capabilities = Object.fromEntries(USER_VISIBLE_AGENT_TYPES.map(agentType => [agentType, PROVIDER_CAPABILITIES[agentType]]));
133
+ const resolveCapabilities = async (query) => {
134
+ await permissions.prepare();
135
+ const saved = query.providerId ? getProviderById(query.providerId) ?? undefined : undefined;
136
+ const providerDraft = query.config !== undefined ? {
137
+ ...saved, id: query.providerId ?? '', name: saved?.name ?? '',
138
+ agentType: query.agentType ?? saved?.agentType ?? SharedAgentType.CLAUDE_CODE,
139
+ runtimeType: query.runtimeType ?? saved?.runtimeType ?? RuntimeType.CLI,
140
+ config: query.config, settings: query.settings ?? saved?.settings, env: saved?.env ?? {}, isDefault: saved?.isDefault ?? false,
141
+ } : saved;
142
+ const provider = providerDraft && query.model?.trim()
143
+ ? { ...providerDraft, config: { ...providerDraft.config, model: query.model.trim() } }
144
+ : providerDraft;
145
+ const capabilities = Object.fromEntries(USER_VISIBLE_AGENT_TYPES.map(agentType => [agentType, { ...PROVIDER_CAPABILITIES[agentType],
146
+ executionPermissionOptions: {
147
+ CLI: permissions.options({ agentType, runtimeType: RuntimeType.CLI, providerId: query.providerId, provider }),
148
+ ACP: permissions.options({ agentType, runtimeType: RuntimeType.ACP, providerId: query.providerId, provider }),
149
+ },
150
+ }]));
112
151
  if (query.agentType === SharedAgentType.CODEX && query.model?.trim()) {
113
152
  const reasoningEffort = capabilities[SharedAgentType.CODEX].reasoningEffort;
114
153
  if (reasoningEffort) {
@@ -120,7 +159,9 @@ export async function providerRoutes(app, options = {}) {
120
159
  }
121
160
  }
122
161
  return capabilities;
123
- });
162
+ };
163
+ app.get('/providers/capabilities', async (request) => resolveCapabilities(capabilitiesQuerySchema.parse(request.query ?? {})));
164
+ app.post('/providers/capabilities', async (request) => resolveCapabilities(capabilitiesDraftSchema.parse(request.body)));
124
165
  app.post('/providers/test', async (request, reply) => {
125
166
  const parsed = testProviderSchema.safeParse(request.body);
126
167
  if (!parsed.success) {
@@ -135,13 +176,15 @@ export async function providerRoutes(app, options = {}) {
135
176
  }
136
177
  const normalized = normalizeProviderDraft(input, existing);
137
178
  const provider = normalized.provider;
138
- const diagnostics = [
139
- ...normalized.diagnostics,
140
- ];
179
+ await permissions.prepare();
180
+ const diagnostics = [...new Map([...normalized.diagnostics, ...(normalized.diagnostics.length ? [] : permissions.diagnostics(normalized.provider))]
181
+ .map(item => [`${item.field}:${item.code}:${item.message}`, item])).values()];
141
182
  if (!diagnostics.some(diagnostic => diagnostic.field === 'reasoningEffort')) {
142
183
  diagnostics.push(...await validateCodexReasoningEffort(provider));
143
184
  }
144
185
  if (diagnostics.length > 0) {
186
+ if (diagnostics.some(isPolicyDenial))
187
+ reply.code(403);
145
188
  return { ok: false, stage: 'validation', summary: 'Configuration validation failed', diagnostics };
146
189
  }
147
190
  const connection = resolveEffectiveProviderConnection(provider);
@@ -187,19 +230,20 @@ export async function providerRoutes(app, options = {}) {
187
230
  app.post('/providers/import/preview', async (request, reply) => {
188
231
  try {
189
232
  const backup = parseBackupPayload(request.body);
190
- const diagnostics = validateProviderBackupDrafts(backup);
233
+ await permissions.prepare();
234
+ const diagnostics = [...validateProviderBackupDrafts(backup), ...backup.providers.flatMap(provider => importPermissionDiagnostics(provider, permissions))];
191
235
  if (diagnostics.length > 0) {
192
- reply.code(400);
236
+ reply.code(diagnostics.some(isPolicyDenial) ? 403 : 400);
193
237
  return { message: 'Invalid provider backup', diagnostics };
194
238
  }
195
239
  const preview = previewProviderImport(backup);
196
240
  return {
197
241
  ...preview,
198
- items: preview.items.map(item => ({
242
+ items: await Promise.all(preview.items.map(async (item) => ({
199
243
  ...item,
200
- incoming: redactProvider(item.incoming),
201
- existing: item.existing ? redactProvider(item.existing) : item.existing,
202
- })),
244
+ incoming: await readProvider(item.incoming),
245
+ existing: item.existing ? await readProvider(item.existing) : item.existing,
246
+ }))),
203
247
  };
204
248
  }
205
249
  catch (error) {
@@ -210,17 +254,18 @@ export async function providerRoutes(app, options = {}) {
210
254
  app.post('/providers/import', async (request, reply) => {
211
255
  try {
212
256
  const backup = parseBackupPayload(request.body);
213
- const diagnostics = validateProviderBackupDrafts(backup);
257
+ await permissions.prepare();
258
+ const diagnostics = [...validateProviderBackupDrafts(backup), ...backup.providers.flatMap(provider => importPermissionDiagnostics(provider, permissions))];
214
259
  if (diagnostics.length > 0) {
215
- reply.code(400);
260
+ reply.code(diagnostics.some(isPolicyDenial) ? 403 : 400);
216
261
  return { message: 'Invalid provider backup', diagnostics };
217
262
  }
218
263
  const result = importProvidersFromBackup(backup);
219
264
  return {
220
265
  ...result,
221
- providers: result.providers
266
+ providers: await Promise.all(result.providers
222
267
  .filter(provider => isUserVisibleAgentType(provider.agentType))
223
- .map(provider => redactProvider(provider)),
268
+ .map(provider => readProvider(provider))),
224
269
  };
225
270
  }
226
271
  catch (error) {
@@ -234,7 +279,7 @@ export async function providerRoutes(app, options = {}) {
234
279
  reply.code(404);
235
280
  return { error: `Provider not found: ${request.params.id}` };
236
281
  }
237
- return redactProvider(provider, canDeleteProvider(provider));
282
+ return readProvider(provider, canDeleteProvider(provider));
238
283
  });
239
284
  app.post('/providers', async (request, reply) => {
240
285
  const parsed = createProviderSchema.safeParse(request.body);
@@ -244,20 +289,20 @@ export async function providerRoutes(app, options = {}) {
244
289
  }
245
290
  const input = parsed.data;
246
291
  const normalized = normalizeProviderDraft(input);
247
- const diagnostics = [
248
- ...normalized.diagnostics,
249
- ];
292
+ await permissions.prepare();
293
+ const diagnostics = [...new Map([...normalized.diagnostics, ...(normalized.diagnostics.length ? [] : permissions.diagnostics(normalized.provider))]
294
+ .map(item => [`${item.field}:${item.code}:${item.message}`, item])).values()];
250
295
  if (!diagnostics.some(diagnostic => diagnostic.field === 'reasoningEffort')) {
251
296
  diagnostics.push(...await validateCodexReasoningEffort(normalized.provider));
252
297
  }
253
298
  if (diagnostics.length > 0) {
254
- reply.code(400);
299
+ reply.code(diagnostics.some(isPolicyDenial) ? 403 : 400);
255
300
  return { error: 'Invalid provider configuration', diagnostics };
256
301
  }
257
302
  try {
258
303
  const provider = createProvider(persistedData(normalized.provider));
259
304
  reply.code(201);
260
- return redactProvider(provider, canDeleteProvider(provider));
305
+ return readProvider(provider, canDeleteProvider(provider));
261
306
  }
262
307
  catch (error) {
263
308
  reply.code(400);
@@ -282,19 +327,19 @@ export async function providerRoutes(app, options = {}) {
282
327
  agentType: existing.agentType,
283
328
  };
284
329
  const normalized = normalizeProviderDraft(input, existing);
285
- const diagnostics = [
286
- ...normalized.diagnostics,
287
- ];
330
+ await permissions.prepare();
331
+ const diagnostics = [...new Map([...normalized.diagnostics, ...(normalized.diagnostics.length ? [] : permissions.diagnostics(normalized.provider))]
332
+ .map(item => [`${item.field}:${item.code}:${item.message}`, item])).values()];
288
333
  if (!diagnostics.some(diagnostic => diagnostic.field === 'reasoningEffort')) {
289
334
  diagnostics.push(...await validateCodexReasoningEffort(normalized.provider));
290
335
  }
291
336
  if (diagnostics.length > 0) {
292
- reply.code(400);
337
+ reply.code(diagnostics.some(isPolicyDenial) ? 403 : 400);
293
338
  return { error: 'Invalid provider configuration', diagnostics };
294
339
  }
295
340
  try {
296
341
  const provider = updateProvider(existing.id, persistedData(normalized.provider));
297
- return provider ? redactProvider(provider, canDeleteProvider(provider)) : null;
342
+ return provider ? readProvider(provider, canDeleteProvider(provider)) : null;
298
343
  }
299
344
  catch (error) {
300
345
  reply.code(400);
@@ -317,9 +362,9 @@ export async function providerRoutes(app, options = {}) {
317
362
  });
318
363
  app.post('/providers/reload', async () => ({
319
364
  success: true,
320
- providers: reloadProviders()
365
+ providers: await Promise.all(reloadProviders()
321
366
  .filter(provider => isUserVisibleAgentType(provider.agentType))
322
- .map(provider => redactProvider(provider)),
367
+ .map(provider => readProvider(provider))),
323
368
  }));
324
369
  }
325
370
  //# sourceMappingURL=providers.js.map