conductor-oss 0.57.6 → 0.58.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (581) hide show
  1. package/README.md +1 -1
  2. package/node_modules/@conductor-oss/core/dist/config.js +4 -4
  3. package/node_modules/@conductor-oss/core/dist/config.js.map +1 -1
  4. package/node_modules/@conductor-oss/core/dist/types.d.ts +1 -1
  5. package/node_modules/@conductor-oss/core/dist/types.js +1 -1
  6. package/package.json +5 -5
  7. package/web/.next/standalone/packages/web/.next/BUILD_ID +1 -1
  8. package/web/.next/standalone/packages/web/.next/app-path-routes-manifest.json +5 -6
  9. package/web/.next/standalone/packages/web/.next/build-manifest.json +3 -3
  10. package/web/.next/standalone/packages/web/.next/prerender-manifest.json +3 -3
  11. package/web/.next/standalone/packages/web/.next/react-loadable-manifest.json +12 -12
  12. package/web/.next/standalone/packages/web/.next/routes-manifest.json +8 -16
  13. package/web/.next/standalone/packages/web/.next/server/app/__clerk/[[...path]]/route.js +1 -1
  14. package/web/.next/standalone/packages/web/.next/server/app/_global-error/page.js +3 -3
  15. package/web/.next/standalone/packages/web/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  16. package/web/.next/standalone/packages/web/.next/server/app/_global-error.html +1 -1
  17. package/web/.next/standalone/packages/web/.next/server/app/_global-error.rsc +1 -1
  18. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  19. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  20. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  21. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  22. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  23. package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  24. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page.js +2 -2
  25. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page.js.nft.json +1 -1
  26. package/web/.next/standalone/packages/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  27. package/web/.next/standalone/packages/web/.next/server/app/api/access/route.js +1 -1
  28. package/web/.next/standalone/packages/web/.next/server/app/api/agents/route.js +1 -1
  29. package/web/.next/standalone/packages/web/.next/server/app/api/app-update/route.js +1 -1
  30. package/web/.next/standalone/packages/web/.next/server/app/api/attachments/route.js +1 -1
  31. package/web/.next/standalone/packages/web/.next/server/app/api/auth/profile/route.js +1 -1
  32. package/web/.next/standalone/packages/web/.next/server/app/api/boards/comments/route.js +1 -1
  33. package/web/.next/standalone/packages/web/.next/server/app/api/boards/route.js +1 -1
  34. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/bridges/[bridgeId]/route.js +1 -1
  35. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/bridges/route.js +1 -1
  36. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/[deviceId]/app-update/route.js +1 -1
  37. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/[deviceId]/repair/route.js +1 -1
  38. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/[deviceId]/route.js +1 -1
  39. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/[deviceId]/service-restart/route.js +1 -1
  40. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/claims/complete/route.js +1 -1
  41. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/code/route.js +1 -1
  42. package/web/.next/standalone/packages/web/.next/server/app/api/bridge/devices/route.js +1 -1
  43. package/web/.next/standalone/packages/web/.next/server/app/api/bridges/route.js +1 -1
  44. package/web/.next/standalone/packages/web/.next/server/app/api/config/route.js +1 -1
  45. package/web/.next/standalone/packages/web/.next/server/app/api/context-files/open/route.js +1 -1
  46. package/web/.next/standalone/packages/web/.next/server/app/api/context-files/route.js +1 -1
  47. package/web/.next/standalone/packages/web/.next/server/app/api/events/route.js +1 -1
  48. package/web/.next/standalone/packages/web/.next/server/app/api/executor/health/route.js +1 -1
  49. package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/directory/route.js +1 -1
  50. package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/pick-directory/route.js +1 -1
  51. package/web/.next/standalone/packages/web/.next/server/app/api/github/projects/route.js +1 -1
  52. package/web/.next/standalone/packages/web/.next/server/app/api/github/projects/sync/route.js +1 -1
  53. package/web/.next/standalone/packages/web/.next/server/app/api/github/repos/route.js +1 -1
  54. package/web/.next/standalone/packages/web/.next/server/app/api/github/webhook/route.js +1 -1
  55. package/web/.next/standalone/packages/web/.next/server/app/api/health/boards/route.js +1 -1
  56. package/web/.next/standalone/packages/web/.next/server/app/api/health/sessions/route.js +1 -1
  57. package/web/.next/standalone/packages/web/.next/server/app/api/notifications/route.js +1 -1
  58. package/web/.next/standalone/packages/web/.next/server/app/api/preferences/route.js +1 -1
  59. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/bindings/route.js +1 -1
  60. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/feed/route.js +1 -1
  61. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/feed/stream/route.js +1 -1
  62. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/integration/route.js +1 -1
  63. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/interrupt/route.js +1 -1
  64. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/preferences/route.js +1 -1
  65. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/route.js +1 -1
  66. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/send/route.js +1 -1
  67. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/tasks/[task]/handoff/route.js +1 -1
  68. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/tasks/[task]/route.js +1 -1
  69. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatcher/tasks/route.js +1 -1
  70. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/dispatchers/route.js +1 -1
  71. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/open/route.js +1 -1
  72. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/route.js +1 -1
  73. package/web/.next/standalone/packages/web/.next/server/app/api/projects/[id]/setup/route.js +1 -1
  74. package/web/.next/standalone/packages/web/.next/server/app/api/projects/route.js +1 -1
  75. package/web/.next/standalone/packages/web/.next/server/app/api/repositories/[id]/route.js +1 -1
  76. package/web/.next/standalone/packages/web/.next/server/app/api/repositories/route.js +1 -1
  77. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/actions/route.js +1 -1
  78. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/archive/route.js +1 -1
  79. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/checks/route.js +1 -1
  80. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/diff/route.js +1 -1
  81. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/files/route.js +1 -1
  82. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/keys/route.js +1 -1
  83. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/kill/route.js +1 -1
  84. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/route.js +1 -1
  85. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/stream/route.js +1 -1
  86. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/preview/dom/route.js +1 -1
  87. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/preview/route.js +1 -1
  88. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/preview/screenshot/route.js +1 -1
  89. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/restore/route.js +1 -1
  90. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/route.js +1 -1
  91. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/relay/route.js +1 -1
  92. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/snapshot/route.js +1 -1
  93. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/token/route.js +1 -1
  94. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/token/route.js.nft.json +1 -1
  95. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ws/route.js +1 -0
  96. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/{ttyd → ws}/route.js.nft.json +1 -1
  97. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ws/route_client-reference-manifest.js +1 -0
  98. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/route.js +1 -1
  99. package/web/.next/standalone/packages/web/.next/server/app/api/skills/activate/route.js +1 -1
  100. package/web/.next/standalone/packages/web/.next/server/app/api/skills/catalog/route.js +1 -1
  101. package/web/.next/standalone/packages/web/.next/server/app/api/skills/deactivate/route.js +1 -1
  102. package/web/.next/standalone/packages/web/.next/server/app/api/skills/install/route.js +1 -1
  103. package/web/.next/standalone/packages/web/.next/server/app/api/skills/installed/route.js +1 -1
  104. package/web/.next/standalone/packages/web/.next/server/app/api/skills/session-active/route.js +1 -1
  105. package/web/.next/standalone/packages/web/.next/server/app/api/skills/uninstall/route.js +1 -1
  106. package/web/.next/standalone/packages/web/.next/server/app/api/spawn/route.js +1 -1
  107. package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/branches/route.js +1 -1
  108. package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/route.js +1 -1
  109. package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page.js +2 -2
  110. package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page.js.nft.json +1 -1
  111. package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page_client-reference-manifest.js +1 -1
  112. package/web/.next/standalone/packages/web/.next/server/app/bridge/install.ps1/route.js +2 -2
  113. package/web/.next/standalone/packages/web/.next/server/app/bridge/install.sh/route.js +2 -2
  114. package/web/.next/standalone/packages/web/.next/server/app/embed/terminal/[id]/page.js +6 -0
  115. package/web/.next/standalone/packages/web/.next/server/app/embed/terminal/[id]/page.js.nft.json +1 -0
  116. package/web/.next/standalone/packages/web/.next/server/app/embed/terminal/[id]/page_client-reference-manifest.js +1 -0
  117. package/web/.next/standalone/packages/web/.next/server/app/icon.svg/route.js +1 -1
  118. package/web/.next/standalone/packages/web/.next/server/app/page.js +2 -2
  119. package/web/.next/standalone/packages/web/.next/server/app/page.js.nft.json +1 -1
  120. package/web/.next/standalone/packages/web/.next/server/app/page_client-reference-manifest.js +1 -1
  121. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page.js +2 -2
  122. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page.js.nft.json +1 -1
  123. package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page_client-reference-manifest.js +1 -1
  124. package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page.js +2 -2
  125. package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page.js.nft.json +1 -1
  126. package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page_client-reference-manifest.js +1 -1
  127. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page.js +2 -2
  128. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page.js.nft.json +1 -1
  129. package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page_client-reference-manifest.js +1 -1
  130. package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page.js +2 -2
  131. package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page.js.nft.json +1 -1
  132. package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page_client-reference-manifest.js +1 -1
  133. package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page.js +2 -2
  134. package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page.js.nft.json +1 -1
  135. package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page_client-reference-manifest.js +1 -1
  136. package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js +2 -2
  137. package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js.nft.json +1 -1
  138. package/web/.next/standalone/packages/web/.next/server/app/unlock/page_client-reference-manifest.js +1 -1
  139. package/web/.next/standalone/packages/web/.next/server/app-paths-manifest.json +5 -6
  140. package/web/.next/standalone/packages/web/.next/server/chunks/2089.js +3 -3
  141. package/web/.next/standalone/packages/web/.next/server/chunks/{9149.js → 3054.js} +1 -1
  142. package/web/.next/standalone/packages/web/.next/server/chunks/{7548.js → 3414.js} +1 -1
  143. package/web/.next/standalone/packages/web/.next/server/chunks/5068.js +1 -1
  144. package/web/.next/standalone/packages/web/.next/server/chunks/6034.js +1 -1
  145. package/web/.next/standalone/packages/web/.next/server/chunks/626.js +1 -0
  146. package/web/.next/standalone/packages/web/.next/server/chunks/{3540.js → 7737.js} +1 -1
  147. package/web/.next/standalone/packages/web/.next/server/chunks/9030.js +1 -0
  148. package/web/.next/standalone/packages/web/.next/server/chunks/9455.js +1 -1
  149. package/web/.next/standalone/packages/web/.next/server/functions-config-manifest.json +1 -3
  150. package/web/.next/standalone/packages/web/.next/server/middleware-build-manifest.js +1 -1
  151. package/web/.next/standalone/packages/web/.next/server/middleware-react-loadable-manifest.js +1 -1
  152. package/web/.next/standalone/packages/web/.next/server/next-font-manifest.js +1 -1
  153. package/web/.next/standalone/packages/web/.next/server/next-font-manifest.json +1 -1
  154. package/web/.next/standalone/packages/web/.next/server/pages/500.html +1 -1
  155. package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.js +1 -1
  156. package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.json +1 -1
  157. package/web/.next/standalone/packages/web/.next/static/{2fd2xxj8LPZwZbsGpYttR → EZxyXuDt2fbD_J3ABqLGK}/_buildManifest.js +1 -1
  158. package/web/.next/standalone/packages/web/.next/static/chunks/1698.2bb12e16a46e63e6.js +1 -0
  159. package/web/.next/standalone/packages/web/.next/static/chunks/{2261.cbe7673af7ac2a09.js → 2261.a4a22edc2699e706.js} +1 -1
  160. package/web/.next/{static/chunks/9703-93347b812923255f.js → standalone/packages/web/.next/static/chunks/3301-83bfba2f12daff75.js} +2 -2
  161. package/web/.next/standalone/packages/web/.next/static/chunks/{3838.e16cb2d72c562a24.js → 3838.70eaf44136d75fd9.js} +1 -1
  162. package/web/.next/standalone/packages/web/.next/static/chunks/4094.b94100f0b554a20c.js +1 -0
  163. package/web/.next/standalone/packages/web/.next/static/chunks/{6778.b11dd7c7d98f5ec9.js → 4397.d5c3dfd99c20ef0a.js} +1 -1
  164. package/web/.next/standalone/packages/web/.next/static/chunks/{4443.0816c59f52ded54b.js → 4443.951bc4743a39cfbe.js} +1 -1
  165. package/web/.next/standalone/packages/web/.next/static/chunks/{2969.7ed62af605513fc5.js → 5350.aa94c6b8388dca53.js} +1 -1
  166. package/web/.next/standalone/packages/web/.next/static/chunks/{5493-aa36cf7b22e93079.js → 5493-56abbf2a46a290a7.js} +1 -1
  167. package/web/.next/standalone/packages/web/.next/static/chunks/{1964-5f3bdfb35008cdf0.js → 6778-f675a7009d5d06b5.js} +1 -1
  168. package/web/.next/standalone/packages/web/.next/static/chunks/{8510-7040ccbe7369f319.js → 8510-8433dfaacc306299.js} +1 -1
  169. package/web/.next/standalone/packages/web/.next/static/chunks/app/%5F%5Fclerk/[[...path]]/route-2014857132332e79.js +1 -0
  170. package/web/.next/standalone/packages/web/.next/static/chunks/app/_global-error/page-2014857132332e79.js +1 -0
  171. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/access/route-2014857132332e79.js +1 -0
  172. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/agents/route-2014857132332e79.js +1 -0
  173. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/app-update/route-2014857132332e79.js +1 -0
  174. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/attachments/route-2014857132332e79.js +1 -0
  175. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/auth/profile/route-2014857132332e79.js +1 -0
  176. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/boards/comments/route-2014857132332e79.js +1 -0
  177. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/boards/route-2014857132332e79.js +1 -0
  178. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/bridges/[bridgeId]/route-2014857132332e79.js +1 -0
  179. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/bridges/route-2014857132332e79.js +1 -0
  180. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/app-update/route-2014857132332e79.js +1 -0
  181. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/repair/route-2014857132332e79.js +1 -0
  182. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/route-2014857132332e79.js +1 -0
  183. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/service-restart/route-2014857132332e79.js +1 -0
  184. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/claims/complete/route-2014857132332e79.js +1 -0
  185. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/code/route-2014857132332e79.js +1 -0
  186. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/route-2014857132332e79.js +1 -0
  187. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridges/route-2014857132332e79.js +1 -0
  188. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/config/route-2014857132332e79.js +1 -0
  189. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/context-files/open/route-2014857132332e79.js +1 -0
  190. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/context-files/route-2014857132332e79.js +1 -0
  191. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/events/route-2014857132332e79.js +1 -0
  192. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/executor/health/route-2014857132332e79.js +1 -0
  193. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/filesystem/directory/route-2014857132332e79.js +1 -0
  194. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/filesystem/pick-directory/route-2014857132332e79.js +1 -0
  195. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/projects/route-2014857132332e79.js +1 -0
  196. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/projects/sync/route-2014857132332e79.js +1 -0
  197. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/repos/route-2014857132332e79.js +1 -0
  198. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/webhook/route-2014857132332e79.js +1 -0
  199. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/health/boards/route-2014857132332e79.js +1 -0
  200. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/health/sessions/route-2014857132332e79.js +1 -0
  201. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/notifications/route-2014857132332e79.js +1 -0
  202. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/preferences/route-2014857132332e79.js +1 -0
  203. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/bindings/route-2014857132332e79.js +1 -0
  204. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/route-2014857132332e79.js +1 -0
  205. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/stream/route-2014857132332e79.js +1 -0
  206. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/integration/route-2014857132332e79.js +1 -0
  207. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/interrupt/route-2014857132332e79.js +1 -0
  208. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/preferences/route-2014857132332e79.js +1 -0
  209. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/route-2014857132332e79.js +1 -0
  210. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/send/route-2014857132332e79.js +1 -0
  211. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/handoff/route-2014857132332e79.js +1 -0
  212. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/route-2014857132332e79.js +1 -0
  213. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/route-2014857132332e79.js +1 -0
  214. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatchers/route-2014857132332e79.js +1 -0
  215. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/open/route-2014857132332e79.js +1 -0
  216. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/route-2014857132332e79.js +1 -0
  217. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/setup/route-2014857132332e79.js +1 -0
  218. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/route-2014857132332e79.js +1 -0
  219. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/repositories/[id]/route-2014857132332e79.js +1 -0
  220. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/repositories/route-2014857132332e79.js +1 -0
  221. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/actions/route-2014857132332e79.js +1 -0
  222. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/archive/route-2014857132332e79.js +1 -0
  223. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/checks/route-2014857132332e79.js +1 -0
  224. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/diff/route-2014857132332e79.js +1 -0
  225. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/files/route-2014857132332e79.js +1 -0
  226. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/keys/route-2014857132332e79.js +1 -0
  227. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/kill/route-2014857132332e79.js +1 -0
  228. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/output/route-2014857132332e79.js +1 -0
  229. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/output/stream/route-2014857132332e79.js +1 -0
  230. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/dom/route-2014857132332e79.js +1 -0
  231. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/route-2014857132332e79.js +1 -0
  232. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/screenshot/route-2014857132332e79.js +1 -0
  233. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/restore/route-2014857132332e79.js +1 -0
  234. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/route-2014857132332e79.js +1 -0
  235. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/relay/route-2014857132332e79.js +1 -0
  236. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/snapshot/route-2014857132332e79.js +1 -0
  237. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/token/route-2014857132332e79.js +1 -0
  238. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/ws/route-2014857132332e79.js +1 -0
  239. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/route-2014857132332e79.js +1 -0
  240. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/activate/route-2014857132332e79.js +1 -0
  241. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/catalog/route-2014857132332e79.js +1 -0
  242. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/deactivate/route-2014857132332e79.js +1 -0
  243. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/install/route-2014857132332e79.js +1 -0
  244. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/installed/route-2014857132332e79.js +1 -0
  245. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/session-active/route-2014857132332e79.js +1 -0
  246. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/uninstall/route-2014857132332e79.js +1 -0
  247. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/spawn/route-2014857132332e79.js +1 -0
  248. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/workspaces/branches/route-2014857132332e79.js +1 -0
  249. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/workspaces/route-2014857132332e79.js +1 -0
  250. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/connect/page-4353167bf419a5e2.js +1 -0
  251. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/install.ps1/route-2014857132332e79.js +1 -0
  252. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/install.sh/route-2014857132332e79.js +1 -0
  253. package/web/.next/standalone/packages/web/.next/static/chunks/app/embed/terminal/[id]/page-f237abb4e8051e1b.js +3 -0
  254. package/web/.next/standalone/packages/web/.next/static/chunks/app/layout-5dcda65798010dd0.js +1 -0
  255. package/web/.next/standalone/packages/web/.next/static/chunks/app/page-a738f5ee8dd225d5.js +1 -0
  256. package/web/.next/standalone/packages/web/.next/static/chunks/app/sessions/[id]/{page-c5e2da005848302c.js → page-0584f75c0511152f.js} +1 -1
  257. package/web/.next/standalone/packages/web/.next/static/chunks/app/sign-in/hosted/page-2014857132332e79.js +1 -0
  258. package/web/.next/standalone/packages/web/.next/static/chunks/ca465714-4d31bfa1a1fb3e89.js +3 -0
  259. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/app-error-2014857132332e79.js +1 -0
  260. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/forbidden-2014857132332e79.js +1 -0
  261. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/not-found-2014857132332e79.js +1 -0
  262. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/unauthorized-2014857132332e79.js +1 -0
  263. package/web/.next/standalone/packages/web/.next/static/chunks/webpack-910378af4ef971d5.js +1 -0
  264. package/web/.next/standalone/packages/web/.next/static/css/6ef2fa08dd043252.css +1 -0
  265. package/web/.next/standalone/packages/web/.next/static/css/e079b536879689ec.css +1 -0
  266. package/web/.next/static/{2fd2xxj8LPZwZbsGpYttR → EZxyXuDt2fbD_J3ABqLGK}/_buildManifest.js +1 -1
  267. package/web/.next/static/chunks/1698.2bb12e16a46e63e6.js +1 -0
  268. package/web/.next/static/chunks/{2261.cbe7673af7ac2a09.js → 2261.a4a22edc2699e706.js} +1 -1
  269. package/web/.next/{standalone/packages/web/.next/static/chunks/9703-93347b812923255f.js → static/chunks/3301-83bfba2f12daff75.js} +2 -2
  270. package/web/.next/static/chunks/{3838.e16cb2d72c562a24.js → 3838.70eaf44136d75fd9.js} +1 -1
  271. package/web/.next/static/chunks/4094.b94100f0b554a20c.js +1 -0
  272. package/web/.next/static/chunks/{6778.b11dd7c7d98f5ec9.js → 4397.d5c3dfd99c20ef0a.js} +1 -1
  273. package/web/.next/static/chunks/{4443.0816c59f52ded54b.js → 4443.951bc4743a39cfbe.js} +1 -1
  274. package/web/.next/static/chunks/{2969.7ed62af605513fc5.js → 5350.aa94c6b8388dca53.js} +1 -1
  275. package/web/.next/static/chunks/{5493-aa36cf7b22e93079.js → 5493-56abbf2a46a290a7.js} +1 -1
  276. package/web/.next/static/chunks/{1964-5f3bdfb35008cdf0.js → 6778-f675a7009d5d06b5.js} +1 -1
  277. package/web/.next/static/chunks/{8510-7040ccbe7369f319.js → 8510-8433dfaacc306299.js} +1 -1
  278. package/web/.next/static/chunks/app/%5F%5Fclerk/[[...path]]/route-2014857132332e79.js +1 -0
  279. package/web/.next/static/chunks/app/_global-error/page-2014857132332e79.js +1 -0
  280. package/web/.next/static/chunks/app/api/access/route-2014857132332e79.js +1 -0
  281. package/web/.next/static/chunks/app/api/agents/route-2014857132332e79.js +1 -0
  282. package/web/.next/static/chunks/app/api/app-update/route-2014857132332e79.js +1 -0
  283. package/web/.next/static/chunks/app/api/attachments/route-2014857132332e79.js +1 -0
  284. package/web/.next/static/chunks/app/api/auth/profile/route-2014857132332e79.js +1 -0
  285. package/web/.next/static/chunks/app/api/boards/comments/route-2014857132332e79.js +1 -0
  286. package/web/.next/static/chunks/app/api/boards/route-2014857132332e79.js +1 -0
  287. package/web/.next/static/chunks/app/api/bridge/bridges/[bridgeId]/route-2014857132332e79.js +1 -0
  288. package/web/.next/static/chunks/app/api/bridge/bridges/route-2014857132332e79.js +1 -0
  289. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/app-update/route-2014857132332e79.js +1 -0
  290. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/repair/route-2014857132332e79.js +1 -0
  291. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/route-2014857132332e79.js +1 -0
  292. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/service-restart/route-2014857132332e79.js +1 -0
  293. package/web/.next/static/chunks/app/api/bridge/devices/claims/complete/route-2014857132332e79.js +1 -0
  294. package/web/.next/static/chunks/app/api/bridge/devices/code/route-2014857132332e79.js +1 -0
  295. package/web/.next/static/chunks/app/api/bridge/devices/route-2014857132332e79.js +1 -0
  296. package/web/.next/static/chunks/app/api/bridges/route-2014857132332e79.js +1 -0
  297. package/web/.next/static/chunks/app/api/config/route-2014857132332e79.js +1 -0
  298. package/web/.next/static/chunks/app/api/context-files/open/route-2014857132332e79.js +1 -0
  299. package/web/.next/static/chunks/app/api/context-files/route-2014857132332e79.js +1 -0
  300. package/web/.next/static/chunks/app/api/events/route-2014857132332e79.js +1 -0
  301. package/web/.next/static/chunks/app/api/executor/health/route-2014857132332e79.js +1 -0
  302. package/web/.next/static/chunks/app/api/filesystem/directory/route-2014857132332e79.js +1 -0
  303. package/web/.next/static/chunks/app/api/filesystem/pick-directory/route-2014857132332e79.js +1 -0
  304. package/web/.next/static/chunks/app/api/github/projects/route-2014857132332e79.js +1 -0
  305. package/web/.next/static/chunks/app/api/github/projects/sync/route-2014857132332e79.js +1 -0
  306. package/web/.next/static/chunks/app/api/github/repos/route-2014857132332e79.js +1 -0
  307. package/web/.next/static/chunks/app/api/github/webhook/route-2014857132332e79.js +1 -0
  308. package/web/.next/static/chunks/app/api/health/boards/route-2014857132332e79.js +1 -0
  309. package/web/.next/static/chunks/app/api/health/sessions/route-2014857132332e79.js +1 -0
  310. package/web/.next/static/chunks/app/api/notifications/route-2014857132332e79.js +1 -0
  311. package/web/.next/static/chunks/app/api/preferences/route-2014857132332e79.js +1 -0
  312. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/bindings/route-2014857132332e79.js +1 -0
  313. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/route-2014857132332e79.js +1 -0
  314. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/stream/route-2014857132332e79.js +1 -0
  315. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/integration/route-2014857132332e79.js +1 -0
  316. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/interrupt/route-2014857132332e79.js +1 -0
  317. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/preferences/route-2014857132332e79.js +1 -0
  318. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/route-2014857132332e79.js +1 -0
  319. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/send/route-2014857132332e79.js +1 -0
  320. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/handoff/route-2014857132332e79.js +1 -0
  321. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/route-2014857132332e79.js +1 -0
  322. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/route-2014857132332e79.js +1 -0
  323. package/web/.next/static/chunks/app/api/projects/[id]/dispatchers/route-2014857132332e79.js +1 -0
  324. package/web/.next/static/chunks/app/api/projects/[id]/open/route-2014857132332e79.js +1 -0
  325. package/web/.next/static/chunks/app/api/projects/[id]/route-2014857132332e79.js +1 -0
  326. package/web/.next/static/chunks/app/api/projects/[id]/setup/route-2014857132332e79.js +1 -0
  327. package/web/.next/static/chunks/app/api/projects/route-2014857132332e79.js +1 -0
  328. package/web/.next/static/chunks/app/api/repositories/[id]/route-2014857132332e79.js +1 -0
  329. package/web/.next/static/chunks/app/api/repositories/route-2014857132332e79.js +1 -0
  330. package/web/.next/static/chunks/app/api/sessions/[id]/actions/route-2014857132332e79.js +1 -0
  331. package/web/.next/static/chunks/app/api/sessions/[id]/archive/route-2014857132332e79.js +1 -0
  332. package/web/.next/static/chunks/app/api/sessions/[id]/checks/route-2014857132332e79.js +1 -0
  333. package/web/.next/static/chunks/app/api/sessions/[id]/diff/route-2014857132332e79.js +1 -0
  334. package/web/.next/static/chunks/app/api/sessions/[id]/files/route-2014857132332e79.js +1 -0
  335. package/web/.next/static/chunks/app/api/sessions/[id]/keys/route-2014857132332e79.js +1 -0
  336. package/web/.next/static/chunks/app/api/sessions/[id]/kill/route-2014857132332e79.js +1 -0
  337. package/web/.next/static/chunks/app/api/sessions/[id]/output/route-2014857132332e79.js +1 -0
  338. package/web/.next/static/chunks/app/api/sessions/[id]/output/stream/route-2014857132332e79.js +1 -0
  339. package/web/.next/static/chunks/app/api/sessions/[id]/preview/dom/route-2014857132332e79.js +1 -0
  340. package/web/.next/static/chunks/app/api/sessions/[id]/preview/route-2014857132332e79.js +1 -0
  341. package/web/.next/static/chunks/app/api/sessions/[id]/preview/screenshot/route-2014857132332e79.js +1 -0
  342. package/web/.next/static/chunks/app/api/sessions/[id]/restore/route-2014857132332e79.js +1 -0
  343. package/web/.next/static/chunks/app/api/sessions/[id]/route-2014857132332e79.js +1 -0
  344. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/relay/route-2014857132332e79.js +1 -0
  345. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/snapshot/route-2014857132332e79.js +1 -0
  346. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/token/route-2014857132332e79.js +1 -0
  347. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/ws/route-2014857132332e79.js +1 -0
  348. package/web/.next/static/chunks/app/api/sessions/route-2014857132332e79.js +1 -0
  349. package/web/.next/static/chunks/app/api/skills/activate/route-2014857132332e79.js +1 -0
  350. package/web/.next/static/chunks/app/api/skills/catalog/route-2014857132332e79.js +1 -0
  351. package/web/.next/static/chunks/app/api/skills/deactivate/route-2014857132332e79.js +1 -0
  352. package/web/.next/static/chunks/app/api/skills/install/route-2014857132332e79.js +1 -0
  353. package/web/.next/static/chunks/app/api/skills/installed/route-2014857132332e79.js +1 -0
  354. package/web/.next/static/chunks/app/api/skills/session-active/route-2014857132332e79.js +1 -0
  355. package/web/.next/static/chunks/app/api/skills/uninstall/route-2014857132332e79.js +1 -0
  356. package/web/.next/static/chunks/app/api/spawn/route-2014857132332e79.js +1 -0
  357. package/web/.next/static/chunks/app/api/workspaces/branches/route-2014857132332e79.js +1 -0
  358. package/web/.next/static/chunks/app/api/workspaces/route-2014857132332e79.js +1 -0
  359. package/web/.next/static/chunks/app/bridge/connect/page-4353167bf419a5e2.js +1 -0
  360. package/web/.next/static/chunks/app/bridge/install.ps1/route-2014857132332e79.js +1 -0
  361. package/web/.next/static/chunks/app/bridge/install.sh/route-2014857132332e79.js +1 -0
  362. package/web/.next/static/chunks/app/embed/terminal/[id]/page-f237abb4e8051e1b.js +3 -0
  363. package/web/.next/static/chunks/app/layout-5dcda65798010dd0.js +1 -0
  364. package/web/.next/static/chunks/app/page-a738f5ee8dd225d5.js +1 -0
  365. package/web/.next/static/chunks/app/sessions/[id]/{page-c5e2da005848302c.js → page-0584f75c0511152f.js} +1 -1
  366. package/web/.next/static/chunks/app/sign-in/hosted/page-2014857132332e79.js +1 -0
  367. package/web/.next/static/chunks/ca465714-4d31bfa1a1fb3e89.js +3 -0
  368. package/web/.next/static/chunks/next/dist/client/components/builtin/app-error-2014857132332e79.js +1 -0
  369. package/web/.next/static/chunks/next/dist/client/components/builtin/forbidden-2014857132332e79.js +1 -0
  370. package/web/.next/static/chunks/next/dist/client/components/builtin/not-found-2014857132332e79.js +1 -0
  371. package/web/.next/static/chunks/next/dist/client/components/builtin/unauthorized-2014857132332e79.js +1 -0
  372. package/web/.next/static/chunks/webpack-910378af4ef971d5.js +1 -0
  373. package/web/.next/static/css/6ef2fa08dd043252.css +1 -0
  374. package/web/.next/static/css/e079b536879689ec.css +1 -0
  375. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/route.js +0 -1
  376. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/route_client-reference-manifest.js +0 -1
  377. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/token/route.js +0 -1
  378. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/token/route.js.nft.json +0 -1
  379. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/token/route_client-reference-manifest.js +0 -1
  380. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/ws/route.js +0 -1
  381. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/ws/route.js.nft.json +0 -1
  382. package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/ws/route_client-reference-manifest.js +0 -1
  383. package/web/.next/standalone/packages/web/.next/server/chunks/3364.js +0 -3
  384. package/web/.next/standalone/packages/web/.next/server/chunks/8039.js +0 -278
  385. package/web/.next/standalone/packages/web/.next/server/chunks/8488.js +0 -1
  386. package/web/.next/standalone/packages/web/.next/static/chunks/1136.122b0a20e0377c72.js +0 -1
  387. package/web/.next/standalone/packages/web/.next/static/chunks/883-535cfc45ad771bdd.js +0 -3
  388. package/web/.next/standalone/packages/web/.next/static/chunks/app/%5F%5Fclerk/[[...path]]/route-da63d844222da45c.js +0 -1
  389. package/web/.next/standalone/packages/web/.next/static/chunks/app/_global-error/page-da63d844222da45c.js +0 -1
  390. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/access/route-da63d844222da45c.js +0 -1
  391. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/agents/route-da63d844222da45c.js +0 -1
  392. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/app-update/route-da63d844222da45c.js +0 -1
  393. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/attachments/route-da63d844222da45c.js +0 -1
  394. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/auth/profile/route-da63d844222da45c.js +0 -1
  395. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/boards/comments/route-da63d844222da45c.js +0 -1
  396. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/boards/route-da63d844222da45c.js +0 -1
  397. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/bridges/[bridgeId]/route-da63d844222da45c.js +0 -1
  398. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/bridges/route-da63d844222da45c.js +0 -1
  399. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/app-update/route-da63d844222da45c.js +0 -1
  400. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/repair/route-da63d844222da45c.js +0 -1
  401. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/route-da63d844222da45c.js +0 -1
  402. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/service-restart/route-da63d844222da45c.js +0 -1
  403. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/claims/complete/route-da63d844222da45c.js +0 -1
  404. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/code/route-da63d844222da45c.js +0 -1
  405. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridge/devices/route-da63d844222da45c.js +0 -1
  406. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/bridges/route-da63d844222da45c.js +0 -1
  407. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/config/route-da63d844222da45c.js +0 -1
  408. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/context-files/open/route-da63d844222da45c.js +0 -1
  409. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/context-files/route-da63d844222da45c.js +0 -1
  410. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/events/route-da63d844222da45c.js +0 -1
  411. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/executor/health/route-da63d844222da45c.js +0 -1
  412. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/filesystem/directory/route-da63d844222da45c.js +0 -1
  413. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/filesystem/pick-directory/route-da63d844222da45c.js +0 -1
  414. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/projects/route-da63d844222da45c.js +0 -1
  415. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/projects/sync/route-da63d844222da45c.js +0 -1
  416. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/repos/route-da63d844222da45c.js +0 -1
  417. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/github/webhook/route-da63d844222da45c.js +0 -1
  418. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/health/boards/route-da63d844222da45c.js +0 -1
  419. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/health/sessions/route-da63d844222da45c.js +0 -1
  420. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/notifications/route-da63d844222da45c.js +0 -1
  421. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/preferences/route-da63d844222da45c.js +0 -1
  422. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/bindings/route-da63d844222da45c.js +0 -1
  423. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/route-da63d844222da45c.js +0 -1
  424. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/stream/route-da63d844222da45c.js +0 -1
  425. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/integration/route-da63d844222da45c.js +0 -1
  426. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/interrupt/route-da63d844222da45c.js +0 -1
  427. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/preferences/route-da63d844222da45c.js +0 -1
  428. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/route-da63d844222da45c.js +0 -1
  429. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/send/route-da63d844222da45c.js +0 -1
  430. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/handoff/route-da63d844222da45c.js +0 -1
  431. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/route-da63d844222da45c.js +0 -1
  432. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/route-da63d844222da45c.js +0 -1
  433. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/dispatchers/route-da63d844222da45c.js +0 -1
  434. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/open/route-da63d844222da45c.js +0 -1
  435. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/route-da63d844222da45c.js +0 -1
  436. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/[id]/setup/route-da63d844222da45c.js +0 -1
  437. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/projects/route-da63d844222da45c.js +0 -1
  438. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/repositories/[id]/route-da63d844222da45c.js +0 -1
  439. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/repositories/route-da63d844222da45c.js +0 -1
  440. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/actions/route-da63d844222da45c.js +0 -1
  441. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/archive/route-da63d844222da45c.js +0 -1
  442. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/checks/route-da63d844222da45c.js +0 -1
  443. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/diff/route-da63d844222da45c.js +0 -1
  444. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/files/route-da63d844222da45c.js +0 -1
  445. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/keys/route-da63d844222da45c.js +0 -1
  446. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/kill/route-da63d844222da45c.js +0 -1
  447. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/output/route-da63d844222da45c.js +0 -1
  448. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/output/stream/route-da63d844222da45c.js +0 -1
  449. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/dom/route-da63d844222da45c.js +0 -1
  450. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/route-da63d844222da45c.js +0 -1
  451. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/preview/screenshot/route-da63d844222da45c.js +0 -1
  452. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/restore/route-da63d844222da45c.js +0 -1
  453. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/route-da63d844222da45c.js +0 -1
  454. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/relay/route-da63d844222da45c.js +0 -1
  455. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/snapshot/route-da63d844222da45c.js +0 -1
  456. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/token/route-da63d844222da45c.js +0 -1
  457. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/route-da63d844222da45c.js +0 -1
  458. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/token/route-da63d844222da45c.js +0 -1
  459. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/ws/route-da63d844222da45c.js +0 -1
  460. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/sessions/route-da63d844222da45c.js +0 -1
  461. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/activate/route-da63d844222da45c.js +0 -1
  462. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/catalog/route-da63d844222da45c.js +0 -1
  463. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/deactivate/route-da63d844222da45c.js +0 -1
  464. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/install/route-da63d844222da45c.js +0 -1
  465. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/installed/route-da63d844222da45c.js +0 -1
  466. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/session-active/route-da63d844222da45c.js +0 -1
  467. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/skills/uninstall/route-da63d844222da45c.js +0 -1
  468. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/spawn/route-da63d844222da45c.js +0 -1
  469. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/workspaces/branches/route-da63d844222da45c.js +0 -1
  470. package/web/.next/standalone/packages/web/.next/static/chunks/app/api/workspaces/route-da63d844222da45c.js +0 -1
  471. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/connect/page-69fb7636334c3973.js +0 -1
  472. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/install.ps1/route-da63d844222da45c.js +0 -1
  473. package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/install.sh/route-da63d844222da45c.js +0 -1
  474. package/web/.next/standalone/packages/web/.next/static/chunks/app/layout-6026ce906f0cd4a4.js +0 -1
  475. package/web/.next/standalone/packages/web/.next/static/chunks/app/page-b6a5c403840a5555.js +0 -1
  476. package/web/.next/standalone/packages/web/.next/static/chunks/app/sign-in/hosted/page-da63d844222da45c.js +0 -1
  477. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/app-error-da63d844222da45c.js +0 -1
  478. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/forbidden-da63d844222da45c.js +0 -1
  479. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/not-found-da63d844222da45c.js +0 -1
  480. package/web/.next/standalone/packages/web/.next/static/chunks/next/dist/client/components/builtin/unauthorized-da63d844222da45c.js +0 -1
  481. package/web/.next/standalone/packages/web/.next/static/chunks/webpack-861a73c6545f426f.js +0 -1
  482. package/web/.next/standalone/packages/web/.next/static/css/d31189a7bb85881e.css +0 -1
  483. package/web/.next/static/chunks/1136.122b0a20e0377c72.js +0 -1
  484. package/web/.next/static/chunks/883-535cfc45ad771bdd.js +0 -3
  485. package/web/.next/static/chunks/app/%5F%5Fclerk/[[...path]]/route-da63d844222da45c.js +0 -1
  486. package/web/.next/static/chunks/app/_global-error/page-da63d844222da45c.js +0 -1
  487. package/web/.next/static/chunks/app/api/access/route-da63d844222da45c.js +0 -1
  488. package/web/.next/static/chunks/app/api/agents/route-da63d844222da45c.js +0 -1
  489. package/web/.next/static/chunks/app/api/app-update/route-da63d844222da45c.js +0 -1
  490. package/web/.next/static/chunks/app/api/attachments/route-da63d844222da45c.js +0 -1
  491. package/web/.next/static/chunks/app/api/auth/profile/route-da63d844222da45c.js +0 -1
  492. package/web/.next/static/chunks/app/api/boards/comments/route-da63d844222da45c.js +0 -1
  493. package/web/.next/static/chunks/app/api/boards/route-da63d844222da45c.js +0 -1
  494. package/web/.next/static/chunks/app/api/bridge/bridges/[bridgeId]/route-da63d844222da45c.js +0 -1
  495. package/web/.next/static/chunks/app/api/bridge/bridges/route-da63d844222da45c.js +0 -1
  496. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/app-update/route-da63d844222da45c.js +0 -1
  497. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/repair/route-da63d844222da45c.js +0 -1
  498. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/route-da63d844222da45c.js +0 -1
  499. package/web/.next/static/chunks/app/api/bridge/devices/[deviceId]/service-restart/route-da63d844222da45c.js +0 -1
  500. package/web/.next/static/chunks/app/api/bridge/devices/claims/complete/route-da63d844222da45c.js +0 -1
  501. package/web/.next/static/chunks/app/api/bridge/devices/code/route-da63d844222da45c.js +0 -1
  502. package/web/.next/static/chunks/app/api/bridge/devices/route-da63d844222da45c.js +0 -1
  503. package/web/.next/static/chunks/app/api/bridges/route-da63d844222da45c.js +0 -1
  504. package/web/.next/static/chunks/app/api/config/route-da63d844222da45c.js +0 -1
  505. package/web/.next/static/chunks/app/api/context-files/open/route-da63d844222da45c.js +0 -1
  506. package/web/.next/static/chunks/app/api/context-files/route-da63d844222da45c.js +0 -1
  507. package/web/.next/static/chunks/app/api/events/route-da63d844222da45c.js +0 -1
  508. package/web/.next/static/chunks/app/api/executor/health/route-da63d844222da45c.js +0 -1
  509. package/web/.next/static/chunks/app/api/filesystem/directory/route-da63d844222da45c.js +0 -1
  510. package/web/.next/static/chunks/app/api/filesystem/pick-directory/route-da63d844222da45c.js +0 -1
  511. package/web/.next/static/chunks/app/api/github/projects/route-da63d844222da45c.js +0 -1
  512. package/web/.next/static/chunks/app/api/github/projects/sync/route-da63d844222da45c.js +0 -1
  513. package/web/.next/static/chunks/app/api/github/repos/route-da63d844222da45c.js +0 -1
  514. package/web/.next/static/chunks/app/api/github/webhook/route-da63d844222da45c.js +0 -1
  515. package/web/.next/static/chunks/app/api/health/boards/route-da63d844222da45c.js +0 -1
  516. package/web/.next/static/chunks/app/api/health/sessions/route-da63d844222da45c.js +0 -1
  517. package/web/.next/static/chunks/app/api/notifications/route-da63d844222da45c.js +0 -1
  518. package/web/.next/static/chunks/app/api/preferences/route-da63d844222da45c.js +0 -1
  519. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/bindings/route-da63d844222da45c.js +0 -1
  520. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/route-da63d844222da45c.js +0 -1
  521. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/feed/stream/route-da63d844222da45c.js +0 -1
  522. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/integration/route-da63d844222da45c.js +0 -1
  523. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/interrupt/route-da63d844222da45c.js +0 -1
  524. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/preferences/route-da63d844222da45c.js +0 -1
  525. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/route-da63d844222da45c.js +0 -1
  526. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/send/route-da63d844222da45c.js +0 -1
  527. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/handoff/route-da63d844222da45c.js +0 -1
  528. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/[task]/route-da63d844222da45c.js +0 -1
  529. package/web/.next/static/chunks/app/api/projects/[id]/dispatcher/tasks/route-da63d844222da45c.js +0 -1
  530. package/web/.next/static/chunks/app/api/projects/[id]/dispatchers/route-da63d844222da45c.js +0 -1
  531. package/web/.next/static/chunks/app/api/projects/[id]/open/route-da63d844222da45c.js +0 -1
  532. package/web/.next/static/chunks/app/api/projects/[id]/route-da63d844222da45c.js +0 -1
  533. package/web/.next/static/chunks/app/api/projects/[id]/setup/route-da63d844222da45c.js +0 -1
  534. package/web/.next/static/chunks/app/api/projects/route-da63d844222da45c.js +0 -1
  535. package/web/.next/static/chunks/app/api/repositories/[id]/route-da63d844222da45c.js +0 -1
  536. package/web/.next/static/chunks/app/api/repositories/route-da63d844222da45c.js +0 -1
  537. package/web/.next/static/chunks/app/api/sessions/[id]/actions/route-da63d844222da45c.js +0 -1
  538. package/web/.next/static/chunks/app/api/sessions/[id]/archive/route-da63d844222da45c.js +0 -1
  539. package/web/.next/static/chunks/app/api/sessions/[id]/checks/route-da63d844222da45c.js +0 -1
  540. package/web/.next/static/chunks/app/api/sessions/[id]/diff/route-da63d844222da45c.js +0 -1
  541. package/web/.next/static/chunks/app/api/sessions/[id]/files/route-da63d844222da45c.js +0 -1
  542. package/web/.next/static/chunks/app/api/sessions/[id]/keys/route-da63d844222da45c.js +0 -1
  543. package/web/.next/static/chunks/app/api/sessions/[id]/kill/route-da63d844222da45c.js +0 -1
  544. package/web/.next/static/chunks/app/api/sessions/[id]/output/route-da63d844222da45c.js +0 -1
  545. package/web/.next/static/chunks/app/api/sessions/[id]/output/stream/route-da63d844222da45c.js +0 -1
  546. package/web/.next/static/chunks/app/api/sessions/[id]/preview/dom/route-da63d844222da45c.js +0 -1
  547. package/web/.next/static/chunks/app/api/sessions/[id]/preview/route-da63d844222da45c.js +0 -1
  548. package/web/.next/static/chunks/app/api/sessions/[id]/preview/screenshot/route-da63d844222da45c.js +0 -1
  549. package/web/.next/static/chunks/app/api/sessions/[id]/restore/route-da63d844222da45c.js +0 -1
  550. package/web/.next/static/chunks/app/api/sessions/[id]/route-da63d844222da45c.js +0 -1
  551. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/relay/route-da63d844222da45c.js +0 -1
  552. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/snapshot/route-da63d844222da45c.js +0 -1
  553. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/token/route-da63d844222da45c.js +0 -1
  554. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/route-da63d844222da45c.js +0 -1
  555. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/token/route-da63d844222da45c.js +0 -1
  556. package/web/.next/static/chunks/app/api/sessions/[id]/terminal/ttyd/ws/route-da63d844222da45c.js +0 -1
  557. package/web/.next/static/chunks/app/api/sessions/route-da63d844222da45c.js +0 -1
  558. package/web/.next/static/chunks/app/api/skills/activate/route-da63d844222da45c.js +0 -1
  559. package/web/.next/static/chunks/app/api/skills/catalog/route-da63d844222da45c.js +0 -1
  560. package/web/.next/static/chunks/app/api/skills/deactivate/route-da63d844222da45c.js +0 -1
  561. package/web/.next/static/chunks/app/api/skills/install/route-da63d844222da45c.js +0 -1
  562. package/web/.next/static/chunks/app/api/skills/installed/route-da63d844222da45c.js +0 -1
  563. package/web/.next/static/chunks/app/api/skills/session-active/route-da63d844222da45c.js +0 -1
  564. package/web/.next/static/chunks/app/api/skills/uninstall/route-da63d844222da45c.js +0 -1
  565. package/web/.next/static/chunks/app/api/spawn/route-da63d844222da45c.js +0 -1
  566. package/web/.next/static/chunks/app/api/workspaces/branches/route-da63d844222da45c.js +0 -1
  567. package/web/.next/static/chunks/app/api/workspaces/route-da63d844222da45c.js +0 -1
  568. package/web/.next/static/chunks/app/bridge/connect/page-69fb7636334c3973.js +0 -1
  569. package/web/.next/static/chunks/app/bridge/install.ps1/route-da63d844222da45c.js +0 -1
  570. package/web/.next/static/chunks/app/bridge/install.sh/route-da63d844222da45c.js +0 -1
  571. package/web/.next/static/chunks/app/layout-6026ce906f0cd4a4.js +0 -1
  572. package/web/.next/static/chunks/app/page-b6a5c403840a5555.js +0 -1
  573. package/web/.next/static/chunks/app/sign-in/hosted/page-da63d844222da45c.js +0 -1
  574. package/web/.next/static/chunks/next/dist/client/components/builtin/app-error-da63d844222da45c.js +0 -1
  575. package/web/.next/static/chunks/next/dist/client/components/builtin/forbidden-da63d844222da45c.js +0 -1
  576. package/web/.next/static/chunks/next/dist/client/components/builtin/not-found-da63d844222da45c.js +0 -1
  577. package/web/.next/static/chunks/next/dist/client/components/builtin/unauthorized-da63d844222da45c.js +0 -1
  578. package/web/.next/static/chunks/webpack-861a73c6545f426f.js +0 -1
  579. package/web/.next/static/css/d31189a7bb85881e.css +0 -1
  580. /package/web/.next/standalone/packages/web/.next/static/{2fd2xxj8LPZwZbsGpYttR → EZxyXuDt2fbD_J3ABqLGK}/_ssgManifest.js +0 -0
  581. /package/web/.next/static/{2fd2xxj8LPZwZbsGpYttR → EZxyXuDt2fbD_J3ABqLGK}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8974,9847],{12529:(e,t,n)=>{Promise.resolve().then(n.bind(n,80075))},33866:(e,t,n)=>{"use strict";n.d(t,{BO:()=>l,Ge:()=>d,a6:()=>c,h7:()=>i,iQ:()=>o,pN:()=>a});var r=n(5739);let a=[{name:"codex",label:"Codex",description:"OpenAI Codex CLI",homepage:"https://github.com/openai/codex",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/openai.svg",installHint:"npm install -g @openai/codex",installUrl:"https://github.com/openai/codex",setupUrl:"https://chatgpt.com/codex"},{name:"gemini",label:"Gemini",description:"Google Gemini CLI",homepage:"https://ai.google.dev/gemini-api/docs",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/googlegemini.svg",installHint:"npm install -g @google/gemini-cli",installUrl:"https://ai.google.dev/gemini-api/docs",setupUrl:"https://aistudio.google.com/"},{name:"qwen-code",label:"Qwen Code",description:"Qwen Code CLI",homepage:"https://qwenlm.github.io/announcements/",iconUrl:null,installHint:"npm install -g @qwen-code/qwen-code@latest",installUrl:"https://qwenlm.github.io/announcements/",setupUrl:"https://chat.qwen.ai/"},{name:"droid",label:"Droid",description:"Factory Droid CLI",homepage:"https://github.com/Factory-AI/factory",iconUrl:"https://raw.githubusercontent.com/Factory-AI/factory/main/docs/images/droid_logo_cli.png",installHint:"npm install -g @factory/cli",installUrl:"https://github.com/Factory-AI/factory"},{name:"claude-code",label:"Claude Code",description:"Claude Code CLI",homepage:"https://www.anthropic.com/claude",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/claude.svg",installHint:"npm install -g @anthropic-ai/claude-code",installUrl:"https://www.anthropic.com/claude-code",setupUrl:"https://claude.ai/"},{name:"amp",label:"Amp",description:"Amp Code CLI",homepage:"https://www.ampcode.com",iconUrl:"https://ampcode.com/amp-mark-color.svg",installHint:"npm install -g @sourcegraph/amp",installUrl:"https://www.ampcode.com"},{name:"hermes",label:"Hermes",description:"Nous Research Hermes Agent CLI",homepage:"https://hermes-agent.nousresearch.com/",iconUrl:"/agents/hermes.png",installHint:"curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash",installUrl:"https://hermes-agent.nousresearch.com/docs/getting-started/installation/",setupUrl:"https://hermes-agent.nousresearch.com/docs/getting-started/installation/"},{name:"opencode",label:"OpenCode",description:"OpenCode CLI",homepage:"https://opencode.ai",iconUrl:null,installHint:"npm install -g opencode-ai",installUrl:"https://opencode.ai"},{name:"letta",label:"Letta Code",description:"Letta Code CLI (memory-first agent)",homepage:"https://docs.letta.com/letta-code",iconUrl:"/agents/letta-light.svg",installHint:"npm install -g @letta-ai/letta-code",installUrl:"https://docs.letta.com/letta-code",setupUrl:"https://app.letta.com/"},{name:"openclaw",label:"OpenClaw",description:"OpenClaw gateway-backed chat runtime",homepage:"https://github.com/openclaw/openclaw#readme",iconUrl:null,installHint:"Configure the OpenClaw gateway in backend runtime settings",installUrl:"https://github.com/openclaw/openclaw",setupUrl:"https://github.com/openclaw/openclaw",surfaces:["dispatcher"]},{name:"github-copilot",label:"GitHub Copilot",description:"GitHub Copilot CLI",homepage:"https://docs.github.com/copilot/how-tos/copilot-cli",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/githubcopilot.svg",installHint:"npm install -g @github/copilot",installUrl:"https://docs.github.com/copilot/how-tos/copilot-cli",setupUrl:"https://github.com/settings/copilot"},{name:"cursor-cli",label:"Cursor Agent",description:"Cursor Agent CLI",homepage:"https://www.cursor.com",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/cursor.svg",installHint:"npm install -g cursor-agent"},{name:"ccr",label:"CCR",description:"Claude Code Router",homepage:"https://www.npmjs.com/package/@musistudio/claude-code-router",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/claude.svg",installHint:"npm install -g @musistudio/claude-code-router",installUrl:"https://www.npmjs.com/package/@musistudio/claude-code-router"}],l=a.map(e=>e.name),s=new Map(a.map(e=>[(0,r.q)(e.name),e]));function i(e){return s.get((0,r.q)(e))??null}function o(e){let t=i(e);return!t||(t.surfaces?.includes("terminal")??!0)}function d(e){let t=[],n=new Set;for(let a of e){let e=a.trim();if(!e||!o(e))continue;let l=(0,r.q)(e);n.has(l)||(n.add(l),t.push(e))}return t}function c(e,t){let n="string"==typeof e?e.trim():"";if(n&&o(n))return n;let r=t.trim();return r&&o(r)?r:a.find(e=>o(e.name))?.name??"codex"}},51164:(e,t,n)=>{"use strict";n.d(t,{v:()=>c});var r=n(76196);let a=["pro","max","api"],l=["chatgpt","api"],s=["default"],i=["oauth","api"],o=["oauth","api"];function d(e,t,n){return"string"==typeof e&&t.includes(e)?e:n}function c(e){let t=!e||"object"!=typeof e||Array.isArray(e)?{}:{...e},n=(0,r.Zp)();return{amp:d(t.amp,s,n.amp),claudeCode:d(t.claudeCode,a,n.claudeCode),codex:d(t.codex,l,n.codex),cursorCli:d(t.cursorCli,s,n.cursorCli),droid:d(t.droid,s,n.droid),gemini:d(t.gemini,i,n.gemini),githubCopilot:d(t.githubCopilot,s,n.githubCopilot),opencode:d(t.opencode,s,n.opencode),qwenCode:d(t.qwenCode,o,n.qwenCode),ccr:d(t.ccr,s,n.ccr)}}},80075:(e,t,n)=>{"use strict";n.d(t,{default:()=>ek});var r=n(54568),a=n(42925),l=n(79748),s=n(7620),i=n(40448);n(76196);var o=n(52353),d=n(20487),c=n(50549),p=n(57917),u=n(21048),x=n(55341),m=n(30824),h=n(34737),g=n(20670),f=n(8008),v=n(58299),b=n(36645),w=n(84736),j=n(7086),k=n(54299),y=n(34041),N=n(34309),C=n(68476),A=n(20732),S=n(45894),I=n(5739),E=n(33866),M=n(35821),$=n(95106),L=n(53649),U=n(86011),O=n(31404),P=n(10926);let B=new Map,q=new Map;function F(e){let t=q.get(e);return t||(t={agents:[],loading:!0,lastFetchedAt:0,inFlight:null,retryTimeout:null},q.set(e,t)),t}function _(e){let t=B.get(e);return t||(t=new Set,B.set(e,t)),t}function T(e){for(let t of _(e))t()}function D(e){let t=F(e);return t.agents.length>0&&Date.now()-t.lastFetchedAt<3e4}function R(e,t){let n=F(e);null===n.retryTimeout&&(n.retryTimeout=window.setTimeout(()=>{F(e).retryTimeout=null,W(e,t,!0)},1e4))}async function W(e,t,n=!1){let r=F(e);if(!n&&D(e)){r.loading&&(r.loading=!1,T(e));return}return r.inFlight||(r.loading=!0,T(e),r.inFlight=(async()=>{try{var n;let a=await fetch((0,O.S)("/api/agents",t),{cache:"no-store"});if(!a.ok)throw Error(`Failed to fetch agents: ${a.status}`);let l=(n=await a.json(),Array.isArray(n)?n:n&&"object"==typeof n&&"agents"in n&&Array.isArray(n.agents)?n.agents:[]);l.length>0?(r.agents=l,r.lastFetchedAt=Date.now(),null!==r.retryTimeout&&(window.clearTimeout(r.retryTimeout),r.retryTimeout=null)):R(e,t)}catch{R(e,t)}finally{r.loading=!1,r.inFlight=null,T(e)}})()),r.inFlight}var H=n(46012),z=n(862),G=n(97882),V=n(39702),Z=n(86181),J=n(72410);function X(e){return e&&"object"==typeof e?e:null}async function Q({files:e,projectId:t,taskRef:n,bridgeId:r,preferAbsolute:a=!0}){if(!e.length)return[];let l=t.trim();if(!l)throw Error("Project id is required to upload attachments");let s=new FormData;s.append("projectId",l);let i=n?.trim();for(let t of(i&&s.append("taskRef",i),e))s.append("files",t);let o=await fetch((0,O.S)("/api/attachments",r),{method:"POST",body:s}),d=await o.json().catch(()=>null);if(!o.ok){let t=1===e.length?e[0]?.name??"attachment":`${e.length} attachments`;throw Error(d?.error??`Failed to upload ${t}`)}let c=(Array.isArray(d?.files)?d.files:d?[d]:[]).map(e=>(function(e,t){let n=X(e);if(!n)return null;let r=X(n.attachment);for(let e of t?[n.absolutePath,n.path,n.filePath,r?.absolutePath,r?.path,r?.filePath]:[n.path,n.absolutePath,n.filePath,r?.path,r?.absolutePath,r?.filePath])if("string"==typeof e&&e.trim().length>0)return e.trim();return null})(e,a)).filter(e=>!!e);if(0===c.length)throw Error("Attachment upload succeeded but did not return a usable file path");return c}var K=n(84527),Y=n(15115),ee=n(83770);function et(e){return e.map(e=>(0,P.C0)(e)).filter(e=>null!==e)}var en=n(67506),er=n(76050),ea=n(51164),el=n(88272);let es="claude-code",ei="conductor-board-dispatcher-panel-width";function eo(e){let t=e?.trim();return t&&t.length>0?t:null}function ed(e,t){return Math.min(Math.min(720,Math.max(320,Math.floor(.55*(Number.isFinite(t)&&t>0?t:720)))),Math.max(320,Math.round(e)))}let ec=(0,a.default)(()=>Promise.all([n.e(5493),n.e(5863)]).then(n.bind(n,35493)).then(e=>e.SessionDetail),{loadableGenerated:{webpack:()=>[35493]},loading:()=>(0,r.jsx)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading session..."})}),ep=(0,a.default)(()=>Promise.all([n.e(9450),n.e(9167)]).then(n.bind(n,29450)).then(e=>e.WorkspaceSidebarPanel),{loadableGenerated:{webpack:()=>[29450]},loading:()=>(0,r.jsx)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading workspace panel..."})}),eu=(0,a.default)(()=>n.e(6173).then(n.bind(n,66173)).then(e=>e.WorkspaceOverview),{loadableGenerated:{webpack:()=>[66173]},loading:()=>(0,r.jsx)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading workspace..."})}),ex=(0,a.default)(()=>n.e(9739).then(n.bind(n,79739)).then(e=>e.WorkspaceKanban),{loadableGenerated:{webpack:()=>[79739]},loading:()=>(0,r.jsx)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading board..."})}),em=(0,a.default)(()=>Promise.all([n.e(9526),n.e(2651),n.e(2261),n.e(8607)]).then(n.bind(n,44838)).then(e=>e.ProjectDispatcherPanel),{loadableGenerated:{webpack:()=>[44838]},loading:()=>(0,r.jsx)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading dispatcher..."})}),eh=(0,a.default)(()=>Promise.all([n.e(3470),n.e(524),n.e(474)]).then(n.bind(n,90474)).then(e=>e.NewWorkspaceDialog),{loadableGenerated:{webpack:()=>[90474]},loading:()=>null}),eg=(0,a.default)(()=>Promise.all([n.e(3470),n.e(524),n.e(474)]).then(n.bind(n,90474)).then(e=>e.SettingsDialog),{loadableGenerated:{webpack:()=>[90474]},loading:()=>null});function ef(e){let t=(0,E.h7)(e);return t?.label?t.label:e.split(/[-_\s]+/g).filter(Boolean).map(e=>e[0]?.toUpperCase()+e.slice(1)).join(" ")}function ev(e){return e.issueId?.trim()||e.taskRef?.trim()||e.id}function eb(e){let[t]=e.split(" - ");return(t??e).trim()}function ew(e){return!e||"object"!=typeof e||Array.isArray(e)?{}:{...e}}function ej(e,t){let n=ew(e),r=ew(n.notifications),a=r.soundFile,l="string"==typeof n.codingAgent&&n.codingAgent.trim().length>0?n.codingAgent.trim():t,s=(0,E.a6)(l,t),i="string"==typeof n.ide&&n.ide.trim().length>0?n.ide.trim():"vscode",o="string"==typeof n.markdownEditor&&n.markdownEditor.trim().length>0?n.markdownEditor.trim():"obsidian",d="string"==typeof n.markdownEditorPath?n.markdownEditorPath.trim():"";return{onboardingAcknowledged:!0===n.onboardingAcknowledged,codingAgent:s,ide:i,markdownEditor:o,markdownEditorPath:d,modelAccess:(0,ea.v)(n.modelAccess),notifications:{soundEnabled:!1!==r.soundEnabled,soundFile:null===a?null:"string"==typeof a&&a.trim().length>0?a.trim():"abstract-sound-4"}}}function ek({requiresPairedDeviceScope:e=!1}){let t=(0,l.useRouter)(),n=(0,l.usePathname)(),a=(0,l.useSearchParams)(),i=(0,s.useMemo)(()=>eo(a.get("project")),[a]),o=(0,s.useMemo)(()=>eo(a.get("session")),[a]),d=(0,s.useMemo)(()=>"board"===a.get("view")?"board":"direct",[a]),c=(0,s.useMemo)(()=>eo(a.get("bridge")),[a]),[p,u]=(0,s.useState)(c??""),h=(0,P.C0)(p),g=(0,s.useMemo)(()=>(0,P.DW)(o)?.bridgeId??null,[o]),w=c??g,j=h??g,[k,y]=(0,s.useState)([]),[N,C]=(0,s.useState)("loading"),[A,S]=(0,s.useState)(null),B=!!(0,en.y)()&&null===A,q=(0,s.useMemo)(()=>k.filter(e=>e.connected),[k]),T=(0,s.useMemo)(()=>q.map(e=>e.bridgeId),[q]),R=(0,s.useMemo)(()=>(function({requiresPairedDeviceScope:e,effectiveBridgeId:t,connectedBridgeIds:n,bridgeInventoryStatus:r}){if(!e)return!1;let a=(0,P.C0)(t);return!!a&&("loading"===r||"ready"===r&&!et(n).includes(a))})({requiresPairedDeviceScope:e,effectiveBridgeId:j,connectedBridgeIds:T,bridgeInventoryStatus:N}),[N,T,j,e]);(0,s.useMemo)(()=>(function({requiresPairedDeviceScope:e,effectiveBridgeId:t,connectedBridgeIds:n,bridgeInventoryStatus:r}){if(!e)return!0;let a=(0,P.C0)(t);return!!a&&"ready"===r&&et(n).includes(a)})({requiresPairedDeviceScope:e,effectiveBridgeId:j,connectedBridgeIds:T,bridgeInventoryStatus:N}),[N,T,j,e]);let J=(0,s.useMemo)(()=>!e||!!j,[j,e]),{projects:X,loading:Q,error:ev,refresh:eb}=(0,L.U)(j,{enabled:J}),{agents:ew}=function(e,t){let n=t?.enabled??!0,r=(0,P.C0)(e)??"local",[a,l]=(0,s.useState)({agents:[],loading:n});return(0,s.useEffect)(()=>{if(!n)return void l({agents:[],loading:!1});let t=()=>{let e;return l({agents:(e=F(r)).agents,loading:e.loading})};_(r).add(t),t(),W(r,e);let a=()=>{D(r)||W(r,e,!0)},s=()=>{"visible"!==document.visibilityState||D(r)||W(r,e,!0)};return window.addEventListener("focus",a),document.addEventListener("visibilitychange",s),()=>{_(r).delete(t),window.removeEventListener("focus",a),document.removeEventListener("visibilitychange",s)}},[e,n,r]),n?a:{agents:[],loading:!1}}(j,{enabled:J}),{mobileSidebarOpen:eN,desktopSidebarOpen:eC,toggleSidebar:eA,closeSidebarOnMobile:eS,syncSidebarForViewport:eI}=(0,H.T)({initialDesktopOpen:!1}),eE=eN||eC,eM=!o||eE,{sessions:e$,loading:eL,error:eU,refresh:eO}=(0,$.t)(i,{enabled:eM&&J,bridgeId:j}),[eP,eB]=(0,s.useState)(""),[eq,eF]=(0,s.useState)(""),[e_,eT]=(0,s.useState)((0,el.Z3)()),[eD,eR]=(0,s.useState)(!1),[eW,eH]=(0,s.useState)(null),[ez,eG]=(0,s.useState)(null),[eV,eZ]=(0,s.useState)(!1),[eJ,eX]=(0,s.useState)(!1),[eQ,eK]=(0,s.useState)(null),[eY,e0]=(0,s.useState)(null),[e1,e4]=(0,s.useState)(!0),[e3,e2]=(0,s.useState)(!1),[e5,e6]=(0,s.useState)(null),[e7,e9]=(0,s.useState)(!1),[e8,te]=(0,s.useState)(!1),[tt,tn]=(0,s.useState)(()=>o?[o]:[]),[tr,ta]=(0,s.useState)(!1),[tl,ts]=(0,s.useState)(!1),[ti,to]=(0,s.useState)(()=>o?"chat":"board"),[td,tc]=(0,s.useState)(!1),[tp,tu]=(0,s.useState)(405),[tx,tm]=(0,s.useState)(!1),th=(0,s.useRef)(null),tg=(0,s.useRef)(i);(0,s.useEffect)(()=>{let e="function"==typeof window.matchMedia?window.matchMedia("(pointer: coarse)"):null,t=()=>{ta((0,Z.k$)())};return t(),window.addEventListener("resize",t),e?.addEventListener?.("change",t),()=>{window.removeEventListener("resize",t),e?.removeEventListener?.("change",t)}},[]),(0,s.useEffect)(()=>{let e="function"==typeof window.matchMedia?window.matchMedia("(min-width: 1280px)"):null,t=()=>{ts(e?.matches??window.innerWidth>=1280)};return t(),window.addEventListener("resize",t),e?.addEventListener?.("change",t),()=>{window.removeEventListener("resize",t),e?.removeEventListener?.("change",t)}},[]),(0,s.useEffect)(()=>{if("board"!==d||null===i){tg.current=i,to("board");return}let e=tg.current!==i;(tg.current=i,o)?to("chat"):e&&to("board")},[i,o,d]),(0,s.useEffect)(()=>{try{let e=window.localStorage.getItem(ei),t=e?Number.parseInt(e,10):NaN;Number.isFinite(t)&&tu(ed(t,window.innerWidth))}catch{}let e=()=>{tu(e=>ed(e,window.innerWidth))};return window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}},[]),(0,s.useEffect)(()=>{if(!tx)return;let e=e=>{let t=window.innerWidth;tu(ed(t-e.clientX,t))},t=()=>{tm(!1)};return window.addEventListener("mousemove",e),window.addEventListener("mouseup",t),document.body.style.userSelect="none",document.body.style.cursor="col-resize",()=>{window.removeEventListener("mousemove",e),window.removeEventListener("mouseup",t),document.body.style.userSelect="",document.body.style.cursor="";try{window.localStorage.setItem(ei,String(tp))}catch{}}},[tx,tp]),(0,s.useEffect)(()=>{if(!B){y([]),C("ready"),e&&t.replace("/bridge/connect");return}let n=!1,r=window.innerWidth<768,a=R?r?8e3:4e3:r?3e4:15e3;async function l(){try{let e=await fetch("/api/bridge/devices",{cache:"no-store"}),t=await e.json().catch(()=>null);if(!e.ok){if((0,ee.Xt)(t?.error)){n||(S(t?.error??null),y([]),C("ready"));return}throw Error(`Failed to fetch bridges: ${e.status}`)}n||(S(null),y((0,Y.oH)(t?.devices).map(e=>({bridgeId:e.device_id,hostname:e.last_status?.hostname??e.hostname,os:`${e.last_status?.os??`${e.os}/${e.arch}`}${(0,Y.wj)(e.last_status?.version)}`,capabilities:[],connected:e.connected,status:e.connected?"connected":"offline",connectedAt:"",lastSeenAt:""}))),C("ready"))}catch{n||(y([]),C("error"))}}l();let s=window.setInterval(()=>{l()},a);return()=>{n=!0,window.clearInterval(s)}},[B,R,e,t]),(0,s.useEffect)(()=>{let t=function({requiresPairedDeviceScope:e,requestedBridgeId:t,selectedBridgeId:n,connectedBridgeIds:r}){let a=(0,P.C0)(t),l=(0,P.C0)(n),s=et(r);return e?a||(0===s.length?"":l&&s.includes(l)?l:s[0]??""):l&&s.includes(l)?l:""}({requiresPairedDeviceScope:e,requestedBridgeId:w,selectedBridgeId:p,connectedBridgeIds:T});t!==p&&u(t)},[T,w,e,p]),(0,s.useEffect)(()=>{!e||j||"ready"!==N||q.length>0||t.replace("/bridge/connect")},[N,q.length,j,e,t]),(0,s.useEffect)(()=>{u(c??"")},[c]);let tf=(0,s.useMemo)(()=>new Map(e$.map(e=>[e.id,e])),[e$]),{session:tv,loading:tb,error:tw}=(0,M.w)(o,null,{enabled:!!o&&J,bridgeId:j}),tj=eW??ev??eU??tw??e5,tk=(0,s.useMemo)(()=>{let e=new Map;for(let t of e$){let n=e.get(t.projectId);n?n.push(t):e.set(t.projectId,[t])}return e},[e$]),ty=(0,s.useCallback)((e,r="push")=>{let l=new URLSearchParams(a.toString()),s=(e,t)=>{let n="string"==typeof t?t.trim():"";n.length>0?l.set(e,n):l.delete(e)};"projectId"in e&&s("project",e.projectId),"sessionId"in e&&s("session",e.sessionId),"workspaceView"in e&&("board"===e.workspaceView?l.set("view","board"):l.delete("view")),"tab"in e&&(e.tab&&"dispatcher"!==e.tab?l.set("tab",e.tab):l.delete("tab")),"bridgeId"in e&&s("bridge",e.bridgeId),l.has("project")||l.delete("view"),l.has("session")||l.delete("tab");let i=l.toString(),o=i.length>0?`${n}?${i}`:n;"replace"===r?t.replace(o,{scroll:!1}):t.push(o,{scroll:!1})},[n,t,a]);(0,s.useEffect)(()=>{let e=(0,P.C0)(p);(c??null)!==e&&ty({bridgeId:e},"replace")},[c,ty,p]),(0,s.useEffect)(()=>{if(!Q&&!ev){if(0===X.length){null!==i&&ty({projectId:null,workspaceView:null},"replace");return}null===i||X.some(e=>e.id===i)||ty({projectId:o?null:X[0]?.id??null,workspaceView:o?null:d},"replace")}},[ev,Q,ty,X,i,o,d]),(0,s.useEffect)(()=>{if(o){if(eM){if(eL||eU)return;e$.some(e=>e.id===o)||ty({sessionId:null,tab:null},"replace");return}!tb&&(tv||ty({sessionId:null,tab:null},"replace"))}},[e$,ty,eM,o,tb,tv,eU,eL]),(0,s.useEffect)(()=>{o?tn(e=>[o,...e.filter(e=>e!==o)].slice(0,1)):tn([])},[o]),(0,s.useEffect)(()=>{o&&th.current&&th.current!==o&&(th.current=null)},[o]),(0,s.useEffect)(()=>{o&&eM&&!eL&&!eU&&tn(e=>e.filter(e=>e===o||tf.has(e)))},[eM,o,tf,eU,eL]);let tN=(0,s.useMemo)(()=>tv,[tv]),tC=(0,s.useMemo)(()=>X.find(e=>e.id===i)??null,[X,i]),tA=(0,s.useMemo)(()=>i?tk.get(i)??[]:[],[i,tk]),tS=(0,s.useMemo)(()=>tN??(o?tf.get(o)??null:null),[tN,o,tf]),tI=(0,s.useMemo)(()=>{let e=a.get("tab");return"overview"!==e&&"preview"!==e&&"diff"!==e&&"dispatcher"!==e&&"terminal"===(0,er.tK)(tS)},[tS,a]),tE=!!o&&tI&&tr,tM=(0,s.useMemo)(()=>tN?[tN.projectId,tN.branch].filter(Boolean).join(" \xb7 "):tC?[tC.id,tC.defaultBranch||"main"].filter(Boolean).join(" \xb7 "):"All Projects",[tC,tN]),t$=(0,s.useMemo)(()=>j?k.find(e=>e.bridgeId===j)??null:null,[k,j]),tL=t$?`Device \xb7 ${t$.hostname}`:R?"Device \xb7 Reconnecting":e?"Scope \xb7 Paired device required":"Scope \xb7 Local backend",tU=t$?`Showing projects and sessions from ${t$.hostname}.`:R?"Waiting for the selected laptop to reconnect before loading dashboard data.":e?"Hosted dashboard access must target a connected laptop.":"Showing projects and sessions from the local backend because no paired laptop is selected.",tO=t$?"border-[rgba(24,197,143,0.35)] bg-[rgba(24,197,143,0.12)] text-[var(--vk-green)]":R?"border-[color:color-mix(in_srgb,var(--vk-accent)_30%,transparent)] bg-[color:color-mix(in_srgb,var(--vk-accent)_12%,transparent)] text-[var(--vk-accent)]":e?"border-[rgba(255,143,122,0.24)] bg-[rgba(255,143,122,0.08)] text-[var(--vk-red)]":"border-[var(--vk-border)] bg-[var(--vk-bg-main)] text-[var(--vk-text-muted)]",tP=(0,s.useMemo)(()=>{let e=Array.isArray(ew)?ew:[],t=new Set;for(let e of E.pN)t.add(e.name);for(let n of e)n.name&&t.add(n.name);for(let e of X)e.agent&&t.add(e.agent);eY?.codingAgent&&t.add(eY.codingAgent),eq&&t.add(eq),0===t.size&&t.add(eY?.codingAgent||es);let n=(0,E.Ge)(t);return 0===n.length&&n.push((0,E.a6)(eY?.codingAgent||es,es)),n},[ew,eY?.codingAgent,X,eq]),tB=(0,s.useMemo)(()=>{let e={};for(let t of E.pN)e[(0,I.q)(t.name)]={name:t.name,ready:!1,installed:!1,configured:!1,homepage:t.homepage,description:t.description,installHint:t.installHint??null,installUrl:t.installUrl??t.homepage??null,setupUrl:t.setupUrl??t.homepage??null};for(let t of Array.isArray(ew)?ew:[]){if(!t.name)continue;let n=(0,I.q)(t.name),r=(0,E.h7)(t.name);e[(0,I.q)(t.name)]={name:r?.name??t.name,ready:!0===t.ready,installed:!1!==t.installed,configured:!0===t.configured,homepage:"string"==typeof t.homepage?t.homepage:r?.homepage??e[n]?.homepage??null,description:"string"==typeof t.description?t.description:r?.description??e[n]?.description??null,installHint:"string"==typeof t.installHint?t.installHint:r?.installHint??e[n]?.installHint??null,installUrl:"string"==typeof t.installUrl?t.installUrl:r?.installUrl??e[n]?.installUrl??null,setupUrl:"string"==typeof t.setupUrl?t.setupUrl:r?.setupUrl??e[n]?.setupUrl??null}}return e},[ew]),tq=(0,s.useMemo)(()=>{let e={};for(let t of Array.isArray(ew)?ew:[])t.name&&t.runtimeModelCatalog&&(e[(0,I.q)(t.name)]=t.runtimeModelCatalog);return e},[ew]),tF=(0,s.useCallback)(e=>{let t=tB[(0,I.q)(e)],n=(0,E.h7)(e),r=t?.installed?t?.setupUrl??n?.setupUrl??t?.homepage??n?.homepage:t?.installUrl??n?.installUrl??t?.setupUrl??n?.setupUrl??t?.homepage??n?.homepage;r&&window.open(r,"_blank","noopener,noreferrer")},[tB]);async function t_(t,n){e2(!0),e6(null);try{if(e&&!j)throw Error("Pair or reconnect a laptop before saving preferences.");let r=await fetch((0,O.S)("/api/preferences",j),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),a=await r.json().catch(()=>null);if(!r.ok)throw Error(a?.error??a?.reason??`Failed to save preferences: ${r.status}`);let l=ej(a?.preferences,t.codingAgent||es);return e0(l),eF(l.codingAgent),n?.closeDialog!==!1&&e9(!1),!0}catch(e){return e6(e instanceof Error?e.message:"Failed to save preferences"),!1}finally{e2(!1)}}(0,s.useEffect)(()=>{let e=!1;return async function(){if(!J){e||(e0(null),e6(null),e4(!1));return}e4(!0);try{let t=await fetch((0,O.S)("/api/preferences",j)),n=await t.json().catch(()=>null);if(!t.ok)throw Error(n?.error??n?.reason??`Failed to load preferences: ${t.status}`);if(e)return;let r=ej(n?.preferences,es);e0(r),e6(null)}catch(t){if(e)return;e0(ej(null,es)),e6(t instanceof Error?t.message:"Failed to load preferences")}finally{e||e4(!1)}}(),()=>{e=!0}},[j,J]),(0,s.useEffect)(()=>{eY&&(eq||eF(eY.codingAgent))},[eY,eq]),(0,s.useEffect)(()=>{if(!e1){if(!eY||e&&!j)return void e9(!1);eY.onboardingAcknowledged||e9(!0)}},[j,eY,e1,e]),(0,s.useEffect)(()=>{if(0!==tP.length&&(!eq||!tP.includes(eq))){let e=eY?.codingAgent||es;eF(tP.includes(e)?e:tP[0]??es)}},[tP,eY?.codingAgent,eq]),(0,s.useEffect)(()=>{let e=(0,E.a6)(eq||tC?.agent||eY?.codingAgent||es,es),t=tC&&(0,I.q)(tC.agent)===(0,I.q)(e)?tC.agentModel:null,n=tC&&(0,I.q)(tC.agent)===(0,I.q)(e)?tC.agentReasoningEffort:null;eT((0,el.c0)(e,eY?.modelAccess??(0,ea.v)(null),tq,t,n))},[eY?.modelAccess,eY?.codingAgent,tq,eq,tC]);let tT=(0,s.useCallback)(()=>{e&&!j?eG("Pair or reconnect a laptop before adding a workspace."):(eG(null),eK(null),eH(null),eZ(!0),eI())},[j,e,eI]);(0,s.useEffect)(()=>{e8&&!e7&&(te(!1),tT())},[e8,e7]),(0,s.useEffect)(()=>{(!e||j)&&eG(null)},[j,e]);let tD=(0,s.useCallback)(async t=>{let n=eP.trim(),r=(0,el.xb)(e_),a=(0,el.aB)(e_),l=t?.bridgeId??j??null;if(e&&!l)return eH("Pair or reconnect a laptop before launching an agent session."),!1;let s=t?.projectId??i??X[0]?.id;if(!s)return eH("No project is configured in conductor.yaml"),!1;let o=(0,E.a6)(eq||es,es),d=tB[(0,I.q)(o)]??null;if(d&&!d.ready)return eH(d.installed?`${ef(o)} is not ready yet. Finish setup or authentication and try again.`:`${ef(o)} is not installed on this machine yet. Open setup and try again.`),tF(o),!1;eR(!0),eH(null);try{let e=await fetch((0,O.S)("/api/sessions",l),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectId:s,prompt:n,...t?.issueId?.trim()?{issueId:t.issueId.trim()}:{},agent:o,...t?.branch?{branch:t.branch}:{},...t?.baseBranch?{baseBranch:t.baseBranch}:{},..."boolean"==typeof t?.useWorktree?{useWorktree:t.useWorktree}:{},...t?.permissionMode?{permissionMode:t.permissionMode}:{},...r?{model:r}:{},...a?{reasoningEffort:a}:{},...t?.attachments&&t.attachments.length>0?{attachments:t.attachments}:{}})}),i=await e.json().catch(()=>null);if(!e.ok)throw Error(i?.error??`Failed to create workspace: ${e.status}`);if(!i?.session?.id)throw Error("Session created but response is missing session id");return eB(""),eI(),th.current=i.session.id,await eO(),ty({projectId:s,sessionId:i.session.id,tab:null,bridgeId:l},"push"),!0}catch(e){return eH(e instanceof Error?e.message:"Failed to create workspace"),!1}finally{eR(!1)}},[tB,e_,ty,tF,X,eP,eO,eq,j,i,e,eI]),tR=(0,s.useCallback)(async e=>{(await (0,K.J)(e,{bridgeId:j}),o===e)?ty({projectId:null,sessionId:null,workspaceView:null,tab:null},"replace"):j&&eO()},[j,ty,eO,o]),tW=(0,s.useCallback)(async t=>{if(e&&!j)return void eK("Pair or reconnect a laptop before adding a workspace.");eX(!0),eK(null);try{let e=await fetch((0,O.S)("/api/workspaces",j),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),n=await e.json().catch(()=>null);if(!e.ok)throw Error(n?.error??`Failed to add workspace: ${e.status}`);let r=n?.project?.id;if(!r)throw Error("Workspace created but response is missing project id");await eb(),eB(""),eI(),eZ(!1),ty({projectId:r,sessionId:null,workspaceView:"direct",tab:null,bridgeId:j??null},"push")}catch(e){eK(e instanceof Error?e.message:"Failed to add workspace")}finally{eX(!1)}},[j,ty,eb,e,eI]),tH=!e1&&!!eY&&(!e||!!j)&&!eY.onboardingAcknowledged,tz=eY??ej(null,eq||es),tG=(0,E.a6)(eq||tz.codingAgent||es,es),tV=i??tv?.projectId??null;(0,U.Q)({enabled:!e1,projectId:tV,preferences:tz.notifications,bridgeId:j});let tZ=(0,s.useCallback)(e=>{ty({projectId:e,sessionId:null,workspaceView:e?d:null,tab:null},"push"),eF((0,E.a6)(eY?.codingAgent||es,es)),to("board"),eS()},[eS,ty,eY?.codingAgent,d]),tJ=(0,s.useCallback)((e,t)=>{var n,r;let a,l=tf.get(e)??null;ty((n=i??null,r=t?.tab,a={projectId:l?.projectId??n??null,sessionId:e,tab:r??(0,er.tK)(l)},"board"===d?{...a,workspaceView:"direct"}:a),"push"),eS()},[eS,ty,i,tf,d]),tX=(0,s.useCallback)(()=>{e&&!j?t.push("/bridge/connect"):e9(!0)},[j,e,t]),tQ=(0,s.useCallback)(()=>{eJ||eZ(!1)},[eJ]),tK=(0,s.useCallback)(()=>{e3||tH||(e9(!1),e6(null))},[tH,e3]),tY=(0,s.useCallback)(()=>{tc(e=>!e)},[]),t0=(0,s.useCallback)(async e=>{let t=encodeURIComponent(e),n=await fetch((0,O.S)(`/api/repositories/${t}`,j),{method:"DELETE"});(404===n.status||405===n.status)&&(n=await fetch((0,O.S)(`/api/repositories?id=${t}`,j),{method:"DELETE"}));let r=await n.json().catch(()=>null);if(!n.ok)throw Error(r?.error??`Failed to unlink project (${n.status})`);await eb()},[j,eb]),t1=(0,s.useMemo)(()=>eE?(0,r.jsx)(ep,{projects:X,selectedProjectId:i,onSelectProject:tZ,onUnlinkProject:t0,sessions:e$,selectedSessionId:o,onSelectSession:tJ,onArchiveSession:tR,onCreateWorkspace:tT}):null,[e$,tR,tZ,tJ,t0,tT,X,i,o,eE]),t4=(0,s.useMemo)(()=>{let t=tC?(0,r.jsxs)("div",{className:"hidden w-fit rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] p-px xl:inline-flex",children:[(0,r.jsx)("button",{type:"button",onClick:()=>ty({projectId:tC.id,workspaceView:"direct"},"replace"),className:`min-h-[31px] rounded-[2px] px-3 text-[13px] ${"direct"===d?"bg-[var(--vk-bg-hover)] text-[var(--vk-text-normal)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Direct launch"}),(0,r.jsx)("button",{type:"button",onClick:()=>ty({projectId:tC.id,workspaceView:"board"},"replace"),className:`min-h-[31px] rounded-[2px] px-3 text-[13px] ${"board"===d?"bg-[var(--vk-bg-hover)] text-[var(--vk-text-normal)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Board view"})]}):null;return"board"===d?(0,r.jsx)(ex,{projectId:i,bridgeId:j,defaultAgent:tG,agentOptions:tP,projectSessions:tA,projectLabel:tC?.id??i,headerAccessory:t,onOpenSession:tJ}):(0,r.jsx)(ey,{prompt:eP,setPrompt:eB,selectedAgent:tG,setSelectedAgent:eF,agentStates:tB,modelSelection:e_,setModelSelection:eT,modelAccess:tz.modelAccess,runtimeModelCatalogs:tq,agentOptions:tP,projects:X,bridges:k,selectedBridgeId:p,setSelectedBridgeId:u,requiresPairedDeviceScope:e,selectedProjectId:i,onSelectProject:tZ,projectLabel:i??"All projects",hasProject:X.length>0,creating:eD,error:tj,onOpenAddWorkspace:tT,onOpenAgentSetup:tF,onCreate:tD})},[tP,tB,k,eD,tD,e_,tF,tT,X,tA,tC,o,tJ,eP,tG,tz.modelAccess,e,tq,p,i,eB,tj,d,ty]),t3=(0,s.useMemo)(()=>{if(!tC)return t4;let e=({fullWidth:e=!1,compact:t=!1}={})=>(0,r.jsxs)("div",{className:`inline-flex ${e?"w-full":"w-fit"} rounded-[6px] border border-[var(--vk-border)] ${t?"p-0.5":"p-1"}`,children:[(0,r.jsx)("button",{type:"button",onClick:()=>ty({projectId:tC.id,workspaceView:"direct"},"replace"),className:`${t?"min-h-[30px] px-3 text-[12px]":"min-h-[32px] px-3 text-[13px]"} flex-1 rounded-[4px] ${"direct"===d?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Direct launch"}),(0,r.jsx)("button",{type:"button",onClick:()=>ty({projectId:tC.id,workspaceView:"board"},"replace"),className:`${t?"min-h-[30px] px-3 text-[12px]":"min-h-[32px] px-3 text-[13px]"} flex-1 rounded-[4px] ${"board"===d?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Board view"})]});if("board"===d){let t={"--dispatcher-panel-width":`${tp}px`},n=!tl,a=!n||"board"===ti,l=!n||"chat"===ti,s=n&&null===o,i=tl&&td&&null===o,c=null!==o||!td;return(0,r.jsxs)("div",{style:t,className:"relative flex h-full min-h-0 flex-1 flex-col overflow-hidden",children:[n?(0,r.jsx)("div",{className:"border-b border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-3 py-2 xl:hidden",children:(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[e({fullWidth:!0,compact:!0}),s?(({fullWidth:e=!1,compact:t=!1}={})=>(0,r.jsxs)("div",{className:`inline-flex ${e?"w-full":"w-fit"} rounded-[6px] border border-[var(--vk-border)] ${t?"p-0.5":"p-1"}`,children:[(0,r.jsxs)("button",{type:"button",onClick:()=>{to("board"),ty({projectId:tC.id,workspaceView:"board"},"replace")},"aria-pressed":"board"===d&&"board"===ti,className:`inline-flex flex-1 items-center justify-center rounded-[4px] font-medium transition-colors ${t?"min-h-[30px] gap-1 px-2.5 text-[11px]":"min-h-[34px] gap-1.5 px-3 text-[12px]"} ${"board"===d&&"board"===ti?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,r.jsx)(x.A,{className:`${t?"h-3 w-3":"h-3.5 w-3.5"} shrink-0`}),(0,r.jsx)("span",{children:"Board"})]}),(0,r.jsxs)("button",{type:"button",onClick:()=>{to("chat"),ty({projectId:tC.id,workspaceView:"board"},"replace")},"aria-pressed":"board"===d&&"chat"===ti,className:`inline-flex flex-1 items-center justify-center rounded-[4px] font-medium transition-colors ${t?"min-h-[30px] gap-1 px-2.5 text-[11px]":"min-h-[34px] gap-1.5 px-3 text-[12px]"} ${"board"===d&&"chat"===ti?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,r.jsx)(m.A,{className:`${t?"h-3 w-3":"h-3.5 w-3.5"} shrink-0`}),(0,r.jsx)("span",{children:"Dispatcher"})]})]}))({fullWidth:!0,compact:!0}):null]})}):null,(0,r.jsxs)("div",{className:"relative flex min-h-0 flex-1 flex-col overflow-hidden xl:flex-row",children:[(0,r.jsx)("div",{className:`${a?"block":"hidden"} min-h-0 min-w-0 flex-1 overflow-hidden xl:block`,children:t4}),c?(0,r.jsx)("div",{className:"absolute bottom-0 right-[var(--dispatcher-panel-width)] top-0 z-20 hidden w-2 translate-x-1/2 cursor-col-resize xl:block",onMouseDown:e=>{e.preventDefault(),tm(!0)},"aria-hidden":"true",children:(0,r.jsx)("div",{className:"mx-auto h-full w-px bg-transparent transition-colors hover:bg-[var(--vk-border)]"})}):null,(0,r.jsxs)("div",{className:`${l?"flex":"hidden xl:flex"} ${i?"flex-1 min-h-0 xl:h-auto xl:max-h-none xl:w-[56px] xl:flex-none xl:min-h-0":"flex-1 min-h-[min(360px,50dvh)] xl:w-[var(--dispatcher-panel-width)] xl:flex-none xl:min-h-0"} flex-col overflow-hidden border-t border-[var(--vk-border)] bg-[var(--vk-bg-panel)] xl:border-l xl:border-t-0`,children:[n&&l&&null!==o?(0,r.jsx)("div",{className:"flex items-center border-b border-[var(--vk-border)] px-3 py-2 xl:hidden",children:(0,r.jsxs)("button",{type:"button",onClick:()=>to("board"),className:"inline-flex items-center gap-1.5 rounded-[4px] px-2 py-1 text-[12px] font-medium text-[var(--vk-text-muted)] transition-colors hover:bg-[var(--vk-bg-hover)] hover:text-[var(--vk-text-strong)]",children:[(0,r.jsx)(f.A,{className:"h-3.5 w-3.5 shrink-0"}),(0,r.jsx)("span",{children:"Back to board"})]})}):null,o?tS?(0,r.jsx)("div",{className:"relative min-h-0 h-full min-w-0 flex-1 overflow-hidden",children:tt.map(e=>{let t=e===o,n=t?tS:tf.get(e)??null;return n&&n.projectId===tC.id?(0,r.jsx)("div",{"aria-hidden":!t,className:t?"relative z-10 h-full min-w-0":"pointer-events-none absolute inset-0 overflow-hidden opacity-0 select-none",children:(0,r.jsx)(ec,{sessionId:e,initialSession:n,bridgeId:j,active:t,suppressPreviewAutoOpen:t&&th.current===e,immersiveMobileMode:t&&tE})},e):null})}):(0,r.jsx)("div",{className:"flex h-full items-center justify-center bg-[var(--vk-bg-panel)] text-[13px] text-[var(--vk-text-muted)]",children:"Loading session workspace..."}):(0,r.jsx)(em,{projectId:tC.id,bridgeId:j,defaultAgent:tG,modelAccess:tz.modelAccess,runtimeModelCatalogs:tq,collapsed:i,onToggleCollapsed:tY})]})]})]})}return(0,r.jsxs)("div",{className:"flex h-full min-h-0 flex-col overflow-hidden",children:[(0,r.jsx)("div",{className:"border-b border-[var(--vk-border)] bg-[var(--vk-bg-panel)]/70 px-3 py-3 sm:px-4",children:(0,r.jsxs)("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between",children:[(0,r.jsxs)("div",{className:"min-w-0",children:[(0,r.jsx)("p",{className:"text-[11px] uppercase tracking-[0.12em] text-[var(--vk-text-muted)]",children:"Project Workspace"}),(0,r.jsxs)("p",{className:"mt-1 truncate text-[14px] text-[var(--vk-text-strong)]",children:[tC.id," \xb7 ",tC.defaultBranch||"main"]})]}),(0,r.jsx)("div",{className:"hidden xl:inline-flex",children:e()}),(0,r.jsx)("div",{className:"xl:hidden",children:e({fullWidth:!0,compact:!0})})]})}),(0,r.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden",children:t4})]})},[ti,td,tp,tS,j,tY,tE,tt,ty,tG,tC,tA,o,tf,tl,t4,d]),t2=(0,s.useMemo)(()=>R?(0,r.jsx)("div",{className:"flex h-full min-h-0 flex-1 items-center justify-center bg-[var(--vk-bg-main)] px-4",children:(0,r.jsxs)("div",{className:"w-full max-w-md rounded-[12px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-5 py-5 text-center shadow-[0_18px_50px_rgba(0,0,0,0.18)]",children:[(0,r.jsx)("div",{className:"mx-auto flex h-11 w-11 items-center justify-center rounded-full border border-[color:color-mix(in_srgb,var(--vk-accent)_30%,transparent)] bg-[color:color-mix(in_srgb,var(--vk-accent)_12%,transparent)] text-[var(--vk-accent)]",children:(0,r.jsx)(v.A,{className:"h-5 w-5 animate-spin"})}),(0,r.jsx)("h2",{className:"mt-4 text-[18px] font-medium text-[var(--vk-text-strong)]",children:"Reconnecting paired laptop"}),(0,r.jsx)("p",{className:"mt-2 text-[14px] leading-6 text-[var(--vk-text-muted)]",children:"Waiting for the selected laptop to report online before loading its projects and sessions."})]})}):o&&("board"!==d||null===i)?(0,r.jsx)("div",{className:"relative min-h-0 h-full min-w-0 flex-1 overflow-hidden",children:tt.map(e=>{let t=e===o,n=t?tN:tf.get(e)??null;return(0,r.jsx)("div",{"aria-hidden":!t,className:t?"relative z-10 h-full min-w-0":"pointer-events-none absolute inset-0 overflow-hidden opacity-0 select-none",children:(0,r.jsx)(ec,{sessionId:e,initialSession:n,bridgeId:j,active:t,suppressPreviewAutoOpen:t&&th.current===e,immersiveMobileMode:t&&tE,onOpenSidebar:eA})},e)})}):null!==i?(0,r.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden",children:t3}):(0,r.jsx)("div",{className:"flex h-full min-h-0 w-full flex-1 overflow-hidden",children:(0,r.jsx)(eu,{projects:X,sessions:e$,onCreateWorkspace:tT,onSelectSession:tJ})}),[e$,tt,t3,tN,o,tJ,tT,X,i,tf,R,eA,d]);return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(z.G,{mobileSidebarOpen:eN,desktopSidebarOpen:eC,onToggleSidebar:eA,hideMobileSidebarToggle:tE,sidebar:t1,children:[tE?null:(0,r.jsx)(G.V,{title:tM,onOpenPreferences:tX,rightContent:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("span",{className:`inline-flex items-center rounded-full border px-2 py-0.5 text-[11px] font-medium ${tO}`,title:tU,children:tL}),(0,r.jsx)(V.J,{})]})}),(0,r.jsxs)("div",{className:`flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden ${tE?"bg-[#060404]":""}`,children:[ez?(0,r.jsx)("div",{className:"border-b border-[var(--vk-red)]/35 bg-[color:color-mix(in_srgb,var(--vk-red)_12%,var(--vk-bg-panel))] px-3 py-2 text-[13px] text-[var(--vk-red)] sm:px-4",children:(0,r.jsxs)("div",{className:"flex items-start gap-2",children:[(0,r.jsx)("p",{className:"min-w-0 flex-1",children:ez}),(0,r.jsx)("button",{type:"button",onClick:()=>eG(null),className:"inline-flex h-6 w-6 shrink-0 items-center justify-center rounded-[4px] text-[var(--vk-red)]/80 hover:bg-[var(--vk-red)]/10 hover:text-[var(--vk-red)]","aria-label":"Dismiss workspace action error",children:(0,r.jsx)(b.A,{className:"h-4 w-4"})})]})}):null,t2]})]}),eV?(0,r.jsx)(eh,{open:eV,onClose:tQ,onCreate:tW,creating:eJ,error:eQ,defaultAgent:tG,agentOptions:tP,modelAccess:tz.modelAccess,runtimeModelCatalogs:tq,bridgeId:j}):null,e7||tH?(0,r.jsx)(eg,{open:e7,mode:tH?"onboarding":"settings",creating:e3,error:e5,current:tz,projectCount:X.length,agentOptions:tP,agentStates:tB,runtimeModelCatalogs:tq,onRepositoriesChanged:eb,onOnboardingComplete:({needsProject:e})=>{e&&te(!0)},onOpenAgentSetup:tF,onClose:tK,onSave:t_,bridgeId:j}):null]})}c.A,p.A,u.A,x.A,m.A,h.A,g.A,g.A,p.A,[{id:"vscode",label:"VS Code"},{id:"vscode-insiders",label:"VS Code Insiders"},{id:"cursor",label:"Cursor"},{id:"windsurf",label:"Windsurf"},{id:"intellij-idea",label:"IntelliJ IDEA"},{id:"zed",label:"Zed"},{id:"xcode",label:"Xcode"},{id:"antigravity",label:"Antigravity"},{id:"custom",label:"Custom"}].filter(e=>"custom"!==e.id),c.A,o.mWn,d.$$9,o.i4$,c.A;let ey=(0,s.memo)(function({prompt:e,setPrompt:t,selectedAgent:n,setSelectedAgent:a,agentStates:l,modelSelection:o,setModelSelection:d,modelAccess:c,runtimeModelCatalogs:p,agentOptions:u,projects:x,bridges:m,selectedBridgeId:f,setSelectedBridgeId:M,requiresPairedDeviceScope:$,selectedProjectId:L,onSelectProject:U,projectLabel:P,hasProject:B,creating:q,error:F,onOpenAddWorkspace:_,onOpenAgentSetup:T,onCreate:D}){let R=(0,s.useMemo)(()=>{let e=new Map(E.BO.map((e,t)=>[e,t]));return[...u].sort((t,n)=>{let r=e.get((0,I.q)(t))??Number.MAX_SAFE_INTEGER,a=e.get((0,I.q)(n))??Number.MAX_SAFE_INTEGER;return r!==a?r-a:ef(t).localeCompare(ef(n))})},[u]),W=ef(n),H=l[(0,I.q)(n)]??null,z=(0,s.useMemo)(()=>[...x].sort((e,t)=>e.id.localeCompare(t.id)),[x]),G=L??z[0]?.id??null,V=(0,s.useMemo)(()=>z.find(e=>e.id===G)??null,[G,z]),Z=(0,s.useMemo)(()=>m.filter(e=>e.connected),[m]),X=(0,s.useMemo)(()=>!f||Z.some(e=>e.bridgeId===f),[Z,f]),[K,Y]=(0,s.useState)([]),[ee,et]=(0,s.useState)(!1),[en,er]=(0,s.useState)(""),[ea,es]=(0,s.useState)(""),[ei,eo]=(0,s.useState)([]),[ed,ec]=(0,s.useState)(!1),[ep,eu]=(0,s.useState)(!1),[ex,em]=(0,s.useState)(!1),[eh,eg]=(0,s.useState)(!1),[ew,ej]=(0,s.useState)("default"),[ek,ey]=(0,s.useState)([]),[eN,eC]=(0,s.useState)(!1),[eA,eS]=(0,s.useState)(null);(0,s.useEffect)(()=>{if(!V){Y([]),er(""),et(!1);return}Y([]),er(V.defaultBranch.trim()||"main"),et(!1)},[V]),(0,s.useEffect)(()=>{if(!G){eo([]),es(""),ec(!1);return}eo([]),es(""),ec(!1)},[G]);let eI=(0,s.useCallback)(async()=>{if(!V)return;let e=V.defaultBranch.trim()||"main";if(!V.path?.trim()){Y([e]),er(t=>t.trim().length>0?t:e);return}et(!0);try{let t=new URLSearchParams({path:V.path}),n=await fetch((0,O.S)(`/api/workspaces/branches?${t.toString()}`,f)),r=await n.json().catch(()=>null),a=Array.isArray(r?.branches)?r.branches.filter(e=>"string"==typeof e&&e.trim().length>0):[],l="string"==typeof r?.defaultBranch&&r.defaultBranch.trim().length>0?r.defaultBranch.trim():e,s=a.length>0?a:[l];Y(s),er(e=>e.trim().length>0&&s.includes(e)?e:l)}catch{Y([e]),er(e)}finally{et(!1)}},[f,V]),eE=(0,s.useCallback)(async()=>{if(G){ec(!0);try{let e=await fetch((0,O.S)(`/api/boards?projectId=${encodeURIComponent(G)}`,f)),t=await e.json().catch(()=>null);if(!e.ok)throw Error(t?.error??`Failed to load tasks: ${e.status}`);let n=(Array.isArray(t?.columns)?t.columns:[]).flatMap(e=>Array.isArray(e.tasks)?e.tasks:[]),r=new Set,a=n.filter(e=>{let t=ev(e);return!(!t||r.has(t))&&(r.add(t),!0)});eo(a),es(e=>a.some(t=>ev(t)===e)?e:"")}catch{eo([]),es("")}finally{ec(!1)}}},[G,f]);(0,s.useEffect)(()=>{!ex||ee||K.length>0||eI()},[ee,ex,K.length,eI]),(0,s.useEffect)(()=>{!ep||ed||ei.length>0||eE()},[ei.length,eE,ed,ep]);let eM=(0,s.useMemo)(()=>(0,el.Ik)(n,c,p),[c,p,n]),e$=(0,s.useMemo)(()=>ei.find(e=>ev(e)===ea)??null,[ei,ea]),eL=(0,el.xb)(o)??"",eU=(0,s.useMemo)(()=>{let e=new Set,t=[],r=eL.trim();for(let n of eM)e.has(n.id)||(e.add(n.id),t.push(n));return r&&!e.has(r)&&(e.add(r),t.unshift({id:r,label:function(e,t){let n=t.trim(),r=(0,I.q)(e);if(!n)return n;if("claude-code"===r){let e=n.toLowerCase();if("opus"===e)return"Claude Opus";if("sonnet"===e)return"Claude Sonnet";if("haiku"===e)return"Claude Haiku";let t=e.match(/^claude-(sonnet|opus|haiku)-(\d+)-(\d+)(?:-\d{8})?$/);if(t){let e=t[1];return`Claude ${e[0]?.toUpperCase()+e.slice(1)} ${t[2]}.${t[3]}`}}return n.split(/[-_]+/g).filter(Boolean).map(e=>"gpt"===e.toLowerCase()?"GPT":/^\d+(?:\.\d+)?$/.test(e)?e:e[0]?.toUpperCase()+e.slice(1)).join("-")}(n,r),description:"Current selected model.",access:[]})),t},[eM,n,eL]),eO=(0,s.useMemo)(()=>!H||H.ready||eL?eL?eU.find(e=>e.id===eL)?.label??eL:"Default":"Setup required",[eU,H,eL]),eP=(0,s.useMemo)(()=>(0,el.iL)(n,c,p,eL),[c,p,n,eL]),eB=(0,el.aB)(o)??"",eq=(0,s.useMemo)(()=>{let e=eP.find(e=>e.id===eB);return e?e.label:eB||(eP[0]?.label??"Default")},[eP,eB]),eF="z-50 min-w-[240px] max-w-[calc(100vw-32px)] rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] p-2 shadow-[0_18px_50px_rgba(0,0,0,0.35)] sm:max-w-none",e_=`${eF} max-h-[min(360px,50vh)] overflow-y-auto`,eT="flex min-h-[44px] cursor-default items-center gap-2 rounded-[3px] px-3 py-2 text-[14px] leading-[21px] text-[var(--vk-text-normal)] outline-none hover:bg-[var(--vk-bg-hover)] focus:bg-[var(--vk-bg-hover)] sm:min-h-[36px]",eD=[{id:"default",label:"Default",icon:g.A},{id:"auto",label:"Auto",icon:w.A},{id:"ask",label:"Ask",icon:j.A},{id:"plan",label:"Plan",icon:k.A}],eR=eD.find(e=>e.id===ew)??eD[0],eW="launchpad-attachment-input",eH=q||eN,ez=e=>{let t=e.repo?.trim();if(t){let e=t.split("/").filter(Boolean),n=e[e.length-1]?.replace(/\.git$/i,"");if(n)return n}return e.id},eG=V?ez(V):null,eV=V?`${eG} \xb7 ${en||V.defaultBranch||"main"}`:B?P:"Select project",eZ=e$?.taskRef?.trim()||e$?.issueId?.trim()||e$?.id||"",eJ=e$?eb(e$.text):"Choose a task, bug, or issue from this project's board",eX=V?.id??G??null,eQ=(0,s.useCallback)(e=>{let t=Array.from(e.currentTarget.files??[]);if(e.currentTarget.value="",!t.length)return;let n=new Set(ek.map(e=>`${e.name}:${e.size}:${e.lastModified}`)),r=t.filter(e=>!n.has(`${e.name}:${e.size}:${e.lastModified}`));r.length>0&&ey(e=>[...e,...r]),eS(null)},[ek]),eK=(0,s.useCallback)(e=>{ey(t=>t.filter((t,n)=>n!==e))},[]),eY=(0,s.useCallback)(async()=>{let e;if(eS(null),!eX||!V)return D({projectId:eX??void 0,...eh?{baseBranch:en||V?.defaultBranch||void 0}:{branch:en||V?.defaultBranch||void 0},issueId:ea.trim()||void 0,bridgeId:f||void 0,useWorktree:eh,permissionMode:ew});eC(!0),eS(null);try{ek.length>0&&(e=await Q({files:ek,projectId:V.id,taskRef:ea.trim()||void 0,bridgeId:f||void 0}))}catch(e){return eS(e instanceof Error?e.message:"Failed to upload attachment"),!1}finally{eC(!1)}let t=await D({projectId:eX??void 0,...eh?{baseBranch:en||V.defaultBranch||void 0}:{branch:en||V.defaultBranch||void 0},issueId:ea.trim()||void 0,bridgeId:f||void 0,useWorktree:eh,permissionMode:ew,...e&&e.length>0?{attachments:e}:{}});return t&&(ey([]),eS(null)),t},[ea,eX,D,ew,en,V,V?.defaultBranch,f,ek,eh]);return(0,s.useEffect)(()=>{ey([]),eS(null)},[eX]),(0,r.jsx)("section",{className:"flex h-full min-h-0 items-start justify-center overflow-auto bg-[var(--vk-bg-main)] px-3 py-4 sm:items-center sm:px-6 sm:py-6",children:(0,r.jsxs)("div",{className:"w-full max-w-[768px]",children:[(0,r.jsx)("h1",{className:"pb-4 text-center text-[30px] font-medium leading-[34px] tracking-[-0.7px] text-[var(--vk-text-strong)] sm:text-[36px] sm:leading-[40px] sm:tracking-[-0.9px]",children:"What would you like to work on?"}),f?null:(0,r.jsxs)("div",{className:"mb-4 flex items-start gap-2 rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-3 py-2 text-[12px] leading-[18px] text-[var(--vk-text-muted)]",children:[(0,r.jsx)(h.A,{className:"mt-0.5 h-[14px] w-[14px] shrink-0"}),(0,r.jsx)("span",{children:$?"Pair or reconnect a laptop to browse workspaces and launch coding agents from the web dashboard.":"Showing projects and sessions from the local backend. Pair a laptop and select it here to browse that device instead."})]}),(0,r.jsxs)("div",{className:"mx-auto w-full rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] p-px",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-2 border-b border-[var(--vk-border)] px-2 pb-[9px] pt-2 sm:flex-row sm:items-center",children:[(0,r.jsxs)("div",{className:"flex min-w-0 items-center gap-2 sm:flex-1",children:[(0,r.jsx)(J.N,{seed:{label:n},className:"h-[25px] w-[25px] shrink-0 border-none bg-transparent"}),(0,r.jsxs)(i.bL,{children:[(0,r.jsx)(i.l9,{asChild:!0,children:(0,r.jsxs)("button",{type:"button",className:"inline-flex h-[31px] min-w-0 max-w-full items-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)] outline-none hover:bg-[var(--vk-bg-hover)] data-[state=open]:bg-[var(--vk-bg-hover)] sm:max-w-[280px]","aria-label":"Select agent",children:[(0,r.jsx)("span",{className:"min-w-0 flex-1 truncate pr-1 text-left",children:W}),(0,r.jsx)(y.A,{className:"h-3 w-3 shrink-0 text-[var(--vk-text-muted)]"})]})}),(0,r.jsx)(i.ZL,{children:(0,r.jsxs)(i.UC,{align:"start",sideOffset:6,className:e_,children:[(0,r.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Agents"}),R.map(e=>{let t=e===n,s=l[(0,I.q)(e)]??null;return(0,r.jsxs)(i.q7,{onSelect:()=>a(e),className:eT,children:[(0,r.jsx)(J.N,{seed:{label:e},className:"h-6 w-6 border-none bg-transparent"}),(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsx)("div",{children:ef(e)}),s?.ready?null:(0,r.jsx)("div",{className:"truncate text-[12px] leading-[16px] text-[var(--vk-text-muted)]",children:s?.installed?"Setup required":"Not installed"})]}),(0,r.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:t?(0,r.jsx)(N.A,{className:"h-4 w-4"}):null})]},e)})]})})]})]}),(0,r.jsxs)(i.bL,{onOpenChange:eu,children:[(0,r.jsx)(i.l9,{asChild:!0,children:(0,r.jsxs)("button",{type:"button",disabled:!G,className:"flex h-[31px] w-full min-w-0 items-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-left disabled:cursor-not-allowed disabled:opacity-50 sm:w-[240px] sm:shrink-0","aria-label":"Select task",children:[(0,r.jsx)("span",{className:`min-w-0 flex-1 truncate text-[14px] leading-[21px] ${eZ?"text-[var(--vk-text-normal)]":"text-[var(--vk-text-muted)]"}`,children:eZ||"No task"}),(0,r.jsx)(y.A,{className:"h-3 w-3 shrink-0 text-[var(--vk-text-muted)]"})]})}),(0,r.jsx)(i.ZL,{children:(0,r.jsxs)(i.UC,{align:"end",side:"bottom",sideOffset:6,className:e_,children:[(0,r.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Tasks"}),(0,r.jsx)("p",{className:"px-3 pb-2 text-[12px] leading-[16px] text-[var(--text-faint)]",children:eJ}),(0,r.jsxs)(i.q7,{onSelect:()=>es(""),className:eT,children:[(0,r.jsx)("span",{children:"No linked task"}),(0,r.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:ea?null:(0,r.jsx)(N.A,{className:"h-4 w-4"})})]}),ed?(0,r.jsx)("div",{className:"px-3 py-2 text-[12px] leading-[18px] text-[var(--vk-text-muted)]",children:"Loading board tasks..."}):ei.length>0?ei.map(e=>{let t=ev(e),n=eb(e.text),a=[e.type,e.priority].filter(Boolean).join(" \xb7 ");return(0,r.jsxs)(i.q7,{onSelect:()=>es(t),className:`${eT} min-w-[320px] items-start`,children:[(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsx)("div",{className:"truncate",children:e.taskRef?.trim()||n}),(0,r.jsxs)("div",{className:"truncate text-[12px] leading-[16px] text-[var(--text-faint)]",children:[e.taskRef?.trim()?n:t,a?` \xb7 ${a}`:""]})]}),(0,r.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:ea===t?(0,r.jsx)(N.A,{className:"h-4 w-4"}):null})]},t)}):(0,r.jsx)("div",{className:"px-3 py-2 text-[12px] leading-[18px] text-[var(--vk-text-muted)]",children:"No existing tasks were found for this project."})]})})]})]}),(0,r.jsx)("div",{className:"rounded-[3.5px]",children:(0,r.jsxs)("div",{className:"flex flex-col gap-3 p-2",children:[(0,r.jsxs)("div",{className:"relative w-full",children:[(0,r.jsx)("textarea",{value:e,onChange:e=>t(e.target.value),placeholder:"Optional launch prompt. Leave empty to open the native CLI.",rows:1,className:"min-h-[24px] w-full resize-none bg-transparent pr-16 text-[16px] leading-[24px] text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)]"}),(0,r.jsxs)("label",{htmlFor:eW,className:`absolute right-[18px] top-0 inline-flex h-[24px] w-[24px] items-center justify-center rounded-[4px] ${eX?"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]":"cursor-not-allowed opacity-50"}`,children:[(0,r.jsx)("input",{id:eW,type:"file",accept:"*/*",multiple:!0,onChange:eQ,disabled:!eX||eH,className:"hidden"}),(0,r.jsx)(C.A,{className:"h-[14px] w-[14px]"})]}),(0,r.jsx)("button",{type:"button","aria-label":"Preview",className:"absolute right-0 top-0 inline-flex h-[24px] w-[24px] items-center justify-center rounded-[4px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]",children:(0,r.jsx)(A.A,{className:"h-[14px] w-[14px]"})})]}),ek.length>0?(0,r.jsx)("div",{className:"flex flex-wrap gap-1.5",children:ek.map((e,t)=>(0,r.jsxs)("span",{className:"inline-flex max-w-full items-center gap-1 rounded-[999px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-2 py-1 text-[11px] text-[var(--vk-text-muted)]",children:[(0,r.jsx)("span",{className:"max-w-[160px] truncate",title:e.name,children:e.name}),(0,r.jsx)("button",{type:"button","aria-label":`Remove attachment ${e.name}`,onClick:()=>eK(t),className:"inline-flex h-[14px] w-[14px] items-center justify-center rounded-full text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]",children:(0,r.jsx)(b.A,{className:"h-3 w-3"})})]},`${e.name}-${e.size}-${e.lastModified}-${t}`))}):null,(0,r.jsxs)("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-end sm:justify-between",children:[(0,r.jsxs)("div",{className:"flex min-w-0 flex-1 flex-wrap items-center gap-x-1 gap-y-2",children:[(0,r.jsxs)(i.bL,{children:[(0,r.jsx)(i.l9,{asChild:!0,children:(0,r.jsx)("button",{type:"button",className:"inline-flex h-[29px] w-[29px] items-center justify-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]","aria-label":"Select workspace or project",children:(0,r.jsx)(g.A,{className:"h-[15px] w-[15px]"})})}),(0,r.jsx)(i.ZL,{children:(0,r.jsxs)(i.UC,{align:"start",sideOffset:6,className:e_,children:[(0,r.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Projects"}),z.map(e=>{let t=ez(e),n=e.id!==t?e.id:e.path?.trim()||e.repo?.trim()||null;return(0,r.jsxs)(i.q7,{onSelect:()=>U(e.id),className:`${eT} min-w-[280px] items-start`,children:[(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsx)("div",{className:"truncate",children:t}),n?(0,r.jsx)("div",{className:"truncate text-[12px] leading-[16px] text-[var(--text-faint)]",children:n}):null]}),(0,r.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:e.id===G?(0,r.jsx)(N.A,{className:"h-4 w-4"}):null})]},e.id)}),(0,r.jsx)(i.wv,{className:"my-1 h-px bg-[var(--vk-border)]"}),(0,r.jsxs)(i.q7,{onSelect:_,className:eT,children:[(0,r.jsx)(S.A,{className:"h-4 w-4"}),(0,r.jsx)("span",{children:"Add Workspace"})]})]})})]}),eP.length>0?(0,r.jsxs)(i.bL,{children:[(0,r.jsx)(i.l9,{asChild:!0,children:(0,r.jsxs)("button",{type:"button","aria-label":"Select reasoning effort",className:"inline-flex h-[29px] items-center gap-[4px] rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:cursor-not-allowed disabled:opacity-60",children:[(0,r.jsx)("span",{children:eq}),(0,r.jsx)(y.A,{className:"h-[10px] w-[10px] text-[var(--vk-text-muted)]"})]})}),(0,r.jsx)(i.ZL,{children:(0,r.jsxs)(i.UC,{align:"start",sideOffset:6,className:eF,children:[(0,r.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Reasoning"}),eP.map(e=>(0,r.jsxs)(i.q7,{onSelect:()=>d({...o,reasoningEffort:e.id}),className:eT,children:[(0,r.jsx)("span",{children:e.label}),(0,r.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:eB===e.id?(0,r.jsx)(N.A,{className:"h-4 w-4"}):null})]},e.id))]})})]}):null,(0,r.jsxs)(i.bL,{children:[(0,r.jsx)(i.l9,{asChild:!0,children:(0,r.jsxs)("button",{type:"button",className:"inline-flex h-[29px] items-center gap-[4px] rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:cursor-not-allowed disabled:opacity-60",children:[(0,r.jsx)("span",{children:eO}),(0,r.jsx)(y.A,{className:"h-[10px] w-[10px] text-[var(--vk-text-muted)]"})]})}),(0,r.jsx)(i.ZL,{children:(0,r.jsxs)(i.UC,{align:"start",sideOffset:6,className:eF,children:[(0,r.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Model"}),(0,r.jsxs)(i.q7,{onSelect:()=>d((0,el.c0)(n,c,p,V?.agentModel,V?.agentReasoningEffort)),className:eT,children:[(0,r.jsx)("span",{children:"Default"}),(0,r.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:eL?null:(0,r.jsx)(N.A,{className:"h-4 w-4"})})]}),eU.map(e=>(0,r.jsxs)(i.q7,{onSelect:()=>{var t;let r;return t=e.id,r=(0,el.iL)(n,c,p,t),void d({catalogModel:t,customModel:"",reasoningEffort:r.some(e=>e.id===o.reasoningEffort)?o.reasoningEffort:(0,el.YS)(n,c,p,t)})},className:eT,children:[(0,r.jsx)("span",{children:e.label}),(0,r.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:eL===e.id?(0,r.jsx)(N.A,{className:"h-4 w-4"}):null})]},e.id)),0===eU.length?(0,r.jsx)("div",{className:"px-3 py-2 text-[12px] leading-[18px] text-[var(--vk-text-muted)]",children:"Models will appear here after the selected agent is installed and its runtime catalog is detected."}):null,H&&!H.ready?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(i.wv,{className:"my-1 h-px bg-[var(--vk-border)]"}),(0,r.jsx)("button",{type:"button",onClick:()=>T(n),className:"flex w-full items-center rounded-[3px] px-3 py-2 text-left text-[13px] text-[var(--vk-orange)] transition hover:bg-[var(--vk-bg-hover)]",children:H.installed?"Open setup":"Open install guide"})]}):null]})})]}),(0,r.jsxs)(i.bL,{children:[(0,r.jsx)(i.l9,{asChild:!0,children:(0,r.jsxs)("button",{type:"button",className:"inline-flex h-[29px] items-center gap-[4px] rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:[(0,r.jsx)("span",{children:eR.label}),(0,r.jsx)(y.A,{className:"h-[10px] w-[10px] text-[var(--vk-text-muted)]"})]})}),(0,r.jsx)(i.ZL,{children:(0,r.jsxs)(i.UC,{align:"start",sideOffset:6,className:eF,children:[(0,r.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Permissions"}),eD.map(({id:e,label:t,icon:n})=>(0,r.jsxs)(i.q7,{onSelect:()=>ej(e),className:eT,children:[(0,r.jsx)(n,{className:"h-4 w-4"}),(0,r.jsx)("span",{children:t}),(0,r.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:ew===e?(0,r.jsx)(N.A,{className:"h-4 w-4"}):null})]},e))]})})]}),Z.length>0?(0,r.jsxs)("label",{className:"inline-flex h-[29px] max-w-[260px] items-center gap-[6px] rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)]",children:[(0,r.jsx)(h.A,{className:"h-[14px] w-[14px] text-[var(--vk-text-muted)]"}),(0,r.jsxs)("select",{value:f,onChange:e=>M(e.target.value),className:"min-w-0 flex-1 bg-transparent text-[14px] text-[var(--vk-text-normal)] outline-none",children:[$?null:(0,r.jsx)("option",{value:"",children:"Local backend"}),Z.map(e=>(0,r.jsxs)("option",{value:e.bridgeId,children:[e.hostname," \xb7 ",e.os]},e.bridgeId))]})]}):(0,r.jsxs)("div",{className:"inline-flex h-[29px] items-center gap-[6px] rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-muted)]",children:[(0,r.jsx)(h.A,{className:"h-[14px] w-[14px]"}),(0,r.jsx)("span",{children:f&&!X?"Waiting for selected device":$?"No device connected":"Local backend"})]}),(0,r.jsxs)(i.bL,{onOpenChange:em,children:[(0,r.jsx)(i.l9,{asChild:!0,children:(0,r.jsx)("button",{type:"button",disabled:!V,className:"inline-flex min-h-[29px] max-w-[320px] items-center justify-center truncate text-[14px] leading-[21px] text-[var(--vk-text-normal)] hover:text-[var(--vk-text-strong)] disabled:cursor-not-allowed disabled:opacity-50",children:eV})}),(0,r.jsx)(i.ZL,{children:(0,r.jsxs)(i.UC,{align:"start",side:"bottom",sideOffset:6,avoidCollisions:!1,className:e_,children:[(0,r.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Branch"}),eG?(0,r.jsx)("p",{className:"px-3 pb-2 text-[12px] leading-[16px] text-[var(--text-faint)]",children:eG}):null,ee?(0,r.jsx)("div",{className:"px-3 py-2 text-[14px] leading-[21px] text-[var(--vk-text-muted)]",children:"Loading branches..."}):K.map(e=>(0,r.jsxs)(i.q7,{onSelect:()=>er(e),className:eT,children:[(0,r.jsx)("span",{children:e}),(0,r.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:en===e?(0,r.jsx)(N.A,{className:"h-4 w-4"}):null})]},e))]})})]})]}),(0,r.jsx)("div",{className:"flex w-full justify-end sm:w-auto",children:(0,r.jsx)("button",{type:"button",onClick:eY,disabled:eH||!G,className:"inline-flex min-h-[29px] items-center justify-center rounded-[3px] bg-[var(--vk-bg-hover)] px-[8px] py-[6.5px] text-[16px] leading-[16px] text-[var(--vk-text-strong)] transition-colors hover:bg-[var(--vk-bg-active)] disabled:cursor-not-allowed disabled:opacity-50",children:eH?(0,r.jsx)(v.A,{className:"h-4 w-4 animate-spin"}):"Launch"})})]}),H&&!H.ready?(0,r.jsx)("div",{className:"rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-2 text-[13px] text-[var(--vk-text-normal)]",children:(0,r.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between",children:[(0,r.jsxs)("div",{className:"min-w-0",children:[(0,r.jsxs)("p",{className:"text-[13px] text-[var(--vk-text-strong)]",children:[W," is not ready on this machine."]}),(0,r.jsx)("p",{className:"pt-0.5 text-[12px] text-[var(--vk-text-muted)]",children:H.installed?"Finish login or local setup to load models and start streaming sessions.":"Install the CLI first, then its models and authentication state will appear here."})]}),(0,r.jsx)("button",{type:"button",onClick:()=>T(n),className:"inline-flex h-[29px] items-center justify-center rounded-[3px] border border-[var(--vk-border)] px-3 text-[12px] text-[var(--vk-orange)] hover:bg-[var(--vk-bg-hover)]",children:H.installed?"Open setup":"Open install"})]})}):null,(0,r.jsxs)("label",{className:"flex items-start gap-2 rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-2 py-2 text-[13px] text-[var(--vk-text-normal)]",children:[(0,r.jsx)("input",{type:"checkbox",checked:eh,onChange:e=>eg(e.target.checked),className:"mt-0.5 h-4 w-4 rounded border border-[var(--vk-border)] bg-transparent accent-[var(--vk-orange)]"}),(0,r.jsxs)("span",{children:["Use worktree isolation",(0,r.jsx)("span",{className:"block text-[11px] text-[var(--vk-text-muted)]",children:"If unchecked, the session runs directly on the selected branch in the local repo."})]})]})]})})]}),F&&(0,r.jsx)("p",{className:"pt-2 text-[12px] text-[var(--status-error)]",children:F}),eA&&(0,r.jsx)("p",{className:"pt-2 text-[12px] text-[var(--status-error)]",children:eA})]})})})},88272:(e,t,n)=>{"use strict";n.d(t,{c0:()=>x,Z3:()=>s,Ik:()=>d,iL:()=>c,YS:()=>p,ZA:()=>u,xb:()=>m,aB:()=>h});var r=n(76196),a=n(5739);function l(e){return"openclaw"===(0,a.q)(e)}function s(){return{catalogModel:"",customModel:"",reasoningEffort:""}}function i(e,t){return t[(0,a.q)(e)]??null}function o(e){if(!e)return[];let t=[],n=new Set;for(let r of Object.values(e.modelsByAccess))if(Array.isArray(r))for(let e of r)!e?.id||n.has(e.id)||(n.add(e.id),t.push(e));return t}function d(e,t,n){if(l(e))return[];let a=i(e,n),s=(0,r.Tk)(e,t),d=a&&s?a.modelsByAccess[s]??[]:[],c=o(a);if(c.length>0){let e=[],t=new Set;for(let n of[...d,...c])!n?.id||t.has(n.id)||(t.add(n.id),e.push(n));return e}return(0,r.d8)(e,t)}function c(e,t,n,a){if(l(e))return[];let s=i(e,n),o=(0,r.Tk)(e,t);if(s){if(!s)return[];let e=a?.trim();return e&&s.reasoningOptionsByModel?.[e]?.length?s.reasoningOptionsByModel[e]??[]:o?s.reasoningOptionsByAccess?.[o]??[]:[]}return(0,r.u6)(e,t)}function p(e,t,n,a){if(l(e))return"";let s=i(e,n),o=(0,r.Tk)(e,t);return s?function(e,t,n){if(!e)return null;let r=t?.trim();return r&&e.defaultReasoningByModel?.[r]?e.defaultReasoningByModel[r]??null:n?e.defaultReasoningByAccess?.[n]??null:null}(s,a,o)??"":(0,r.DZ)(e,t)??""}function u(e,t){if(l(e))return"";let n=i(e,t),a=n?.customModelPlaceholder.trim();if(a)return a;let s=(0,r.yM)(e)?.label??"agent";return`Enter exact ${s} model id`}function x(e,t,n,a,u){if(l(e))return s();let x=a?.trim()??"",m=u?.trim().toLowerCase()??"",h=i(e,n),g=d(e,t,n),f=function(e,t,n){if(l(e))return"";let a=i(e,n),s=(0,r.Tk)(e,t);if(a)return(a&&s?a.defaultModelByAccess[s]??null:null)??o(a)[0]?.id??"";return(0,r.O$)(e,t)??""}(e,t,n),v=o(h).length>0,b=r=>{let a=c(e,t,n,r);return m.length>0&&a.some(e=>e.id===m)?m:p(e,t,n,r)};if(x.length>0){if(g.some(e=>e.id===x))return{catalogModel:x,customModel:"",reasoningEffort:b(x)};if(!v)return{catalogModel:f,customModel:x,reasoningEffort:b(x)}}return{catalogModel:f,customModel:"",reasoningEffort:b(f)}}function m(e){let t=e.customModel.trim();if(t.length>0)return t;let n=e.catalogModel.trim();return n.length>0?n:void 0}function h(e){let t=e.reasoningEffort.trim().toLowerCase();return t.length>0?t:void 0}}},e=>{e.O(0,[3036,691,3357,5587,3051,1257,9083,3301,6778,587,1968,7358],()=>e(e.s=12529)),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[824],{18510:(e,t,n)=>{"use strict";n.d(t,{J:()=>s,s:()=>r});var i=n(10926);function s(e){let t=(0,i.C0)(e);if(!t)return"/";let n=new URLSearchParams;return n.set("bridge",t),`/?${n.toString()}`}function r(e,t={}){let n,s=e.trim(),d=(0,i.DW)(s)?s:(n=(0,i.C0)(t.bridgeId))?(0,i.Bp)(n,s):s,l=new URLSearchParams,o=t.tab?.trim();o&&l.set("tab",o);let a=l.toString(),c=`/sessions/${encodeURIComponent(d)}`;return a.length>0?`${c}?${a}`:c}},39337:(e,t,n)=>{"use strict";n.d(t,{default:()=>w});var i=n(54568),s=n(7620),r=n(79748),d=n(46012),l=n(862),o=n(97882),a=n(39702),c=n(29450),u=n(35493),b=n(86181),g=n(53649),p=n(86011),m=n(59207),h=n(35821),f=n(95106),S=n(10926),I=n(18510),j=n(84527),v=n(76050);function w({requiresPairedDeviceScope:e=!1}){let t=(0,r.useParams)(),n=(0,r.useRouter)(),x=(0,r.useSearchParams)(),M=(0,s.useMemo)(()=>(0,S.DW)(t.id)?.bridgeId??null,[t.id]),E=(0,s.useMemo)(()=>(0,S.C0)(x.get("bridge")??x.get("bridgeId")),[x]),k=M??E,C=(0,s.useMemo)(()=>k&&!M?(0,S.Bp)(k,t.id):t.id,[t.id,k,M]),P=!e||!!k,{session:$}=(0,h.w)(C,null,{bridgeId:k,enabled:P}),L=$?.bridgeId??k,{projects:N}=(0,g.U)(L,{enabled:!e||!!L}),{preferences:O,loading:R}=(0,m.g)(L,{enabled:!e||!!L}),{mobileSidebarOpen:U,desktopSidebarOpen:_,toggleSidebar:D,closeSidebarOnMobile:J}=(0,d.T)({initialDesktopOpen:!1}),W=U||_,{sessions:y,refresh:B}=(0,f.t)(void 0,{enabled:W&&(!e||!!L),bridgeId:L}),[K,T]=(0,s.useState)(null),[z,A]=(0,s.useState)(!1),G=(0,s.useMemo)(()=>{let e=x.get("tab");return"dispatcher"!==e&&("terminal"===e?"terminal"===(0,v.tK)($):null===e&&"terminal"===(0,v.tK)($))},[$,x])&&z,Q=$?.projectId??null;(0,p.Q)({enabled:!R&&null!==Q,projectId:Q,preferences:O?.notifications??null,bridgeId:L});let V=(0,s.useMemo)(()=>$?[$.projectId,$.branch].filter(Boolean).join(" \xb7 "):K||"Session",[$,K]),q=(0,s.useMemo)(()=>(0,I.J)(L),[L]);async function F(e){(await (0,j.J)(e,{bridgeId:L}),e===C)?n.replace(q):L&&B()}return((0,s.useEffect)(()=>{if(C===t.id)return;let e=new URLSearchParams(x.toString());e.delete("bridge"),e.delete("bridgeId");let i=e.toString(),s=`/sessions/${encodeURIComponent(C)}${i.length>0?`?${i}`:""}`;n.replace(s,{scroll:!1})},[C,t.id,n,x]),(0,s.useEffect)(()=>{$?.projectId?T($.projectId):!K&&N.length>0&&T(N[0]?.id??null)},[$?.projectId,N,K]),(0,s.useEffect)(()=>{let e="function"==typeof window.matchMedia?window.matchMedia("(pointer: coarse)"):null,t=()=>{A((0,b.k$)())};return t(),window.addEventListener("resize",t),e?.addEventListener?.("change",t),()=>{window.removeEventListener("resize",t),e?.removeEventListener?.("change",t)}},[]),t.id)?(0,i.jsxs)(l.G,{mobileSidebarOpen:U,desktopSidebarOpen:_,onToggleSidebar:D,hideMobileSidebarToggle:G,sidebar:W?(0,i.jsx)(c.WorkspaceSidebarPanel,{projects:N,selectedProjectId:K,onSelectProject:e=>{null===e?n.push(q):T(e)},sessions:y,selectedSessionId:C,onSelectSession:(e,t)=>{let i=y.find(t=>t.id===e)??null;n.push((0,I.s)(e,{bridgeId:L,tab:t?.tab??(0,v.tK)(i)})),J()},onArchiveSession:F,onCreateWorkspace:()=>{n.push(q)}}):null,children:[G?null:(0,i.jsx)(o.V,{title:V,rightContent:(0,i.jsx)(a.J,{})}),(0,i.jsx)("div",{className:`flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden ${G?"bg-[#060404]":""}`,children:(0,i.jsx)(u.SessionDetail,{sessionId:C,initialSession:$,bridgeId:L,immersiveMobileMode:G,onOpenSidebar:D},C)})]}):(0,i.jsx)("div",{className:"flex h-svh items-center justify-center",children:(0,i.jsx)("span",{className:"text-[13px] text-[var(--text-muted)]",children:"No session ID provided"})})}},69755:(e,t,n)=>{Promise.resolve().then(n.bind(n,39337))}},e=>{e.O(0,[3357,5587,3051,1257,1587,9703,1964,5493,9450,587,1968,7358],()=>e(e.s=69755)),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[824],{18510:(e,t,n)=>{"use strict";n.d(t,{J:()=>s,s:()=>r});var i=n(10926);function s(e){let t=(0,i.C0)(e);if(!t)return"/";let n=new URLSearchParams;return n.set("bridge",t),`/?${n.toString()}`}function r(e,t={}){let n,s=e.trim(),d=(0,i.DW)(s)?s:(n=(0,i.C0)(t.bridgeId))?(0,i.Bp)(n,s):s,l=new URLSearchParams,o=t.tab?.trim();o&&l.set("tab",o);let a=l.toString(),c=`/sessions/${encodeURIComponent(d)}`;return a.length>0?`${c}?${a}`:c}},39337:(e,t,n)=>{"use strict";n.d(t,{default:()=>w});var i=n(54568),s=n(7620),r=n(79748),d=n(46012),l=n(862),o=n(97882),a=n(39702),c=n(29450),u=n(35493),b=n(86181),g=n(53649),p=n(86011),m=n(59207),h=n(35821),f=n(95106),S=n(10926),I=n(18510),j=n(84527),v=n(76050);function w({requiresPairedDeviceScope:e=!1}){let t=(0,r.useParams)(),n=(0,r.useRouter)(),x=(0,r.useSearchParams)(),M=(0,s.useMemo)(()=>(0,S.DW)(t.id)?.bridgeId??null,[t.id]),E=(0,s.useMemo)(()=>(0,S.C0)(x.get("bridge")??x.get("bridgeId")),[x]),k=M??E,C=(0,s.useMemo)(()=>k&&!M?(0,S.Bp)(k,t.id):t.id,[t.id,k,M]),P=!e||!!k,{session:$}=(0,h.w)(C,null,{bridgeId:k,enabled:P}),L=$?.bridgeId??k,{projects:N}=(0,g.U)(L,{enabled:!e||!!L}),{preferences:O,loading:R}=(0,m.g)(L,{enabled:!e||!!L}),{mobileSidebarOpen:U,desktopSidebarOpen:_,toggleSidebar:D,closeSidebarOnMobile:J}=(0,d.T)({initialDesktopOpen:!1}),W=U||_,{sessions:y,refresh:B}=(0,f.t)(void 0,{enabled:W&&(!e||!!L),bridgeId:L}),[K,T]=(0,s.useState)(null),[z,A]=(0,s.useState)(!1),G=(0,s.useMemo)(()=>{let e=x.get("tab");return"dispatcher"!==e&&("terminal"===e?"terminal"===(0,v.tK)($):null===e&&"terminal"===(0,v.tK)($))},[$,x])&&z,Q=$?.projectId??null;(0,p.Q)({enabled:!R&&null!==Q,projectId:Q,preferences:O?.notifications??null,bridgeId:L});let V=(0,s.useMemo)(()=>$?[$.projectId,$.branch].filter(Boolean).join(" \xb7 "):K||"Session",[$,K]),q=(0,s.useMemo)(()=>(0,I.J)(L),[L]);async function F(e){(await (0,j.J)(e,{bridgeId:L}),e===C)?n.replace(q):L&&B()}return((0,s.useEffect)(()=>{if(C===t.id)return;let e=new URLSearchParams(x.toString());e.delete("bridge"),e.delete("bridgeId");let i=e.toString(),s=`/sessions/${encodeURIComponent(C)}${i.length>0?`?${i}`:""}`;n.replace(s,{scroll:!1})},[C,t.id,n,x]),(0,s.useEffect)(()=>{$?.projectId?T($.projectId):!K&&N.length>0&&T(N[0]?.id??null)},[$?.projectId,N,K]),(0,s.useEffect)(()=>{let e="function"==typeof window.matchMedia?window.matchMedia("(pointer: coarse)"):null,t=()=>{A((0,b.k$)())};return t(),window.addEventListener("resize",t),e?.addEventListener?.("change",t),()=>{window.removeEventListener("resize",t),e?.removeEventListener?.("change",t)}},[]),t.id)?(0,i.jsxs)(l.G,{mobileSidebarOpen:U,desktopSidebarOpen:_,onToggleSidebar:D,hideMobileSidebarToggle:G,sidebar:W?(0,i.jsx)(c.WorkspaceSidebarPanel,{projects:N,selectedProjectId:K,onSelectProject:e=>{null===e?n.push(q):T(e)},sessions:y,selectedSessionId:C,onSelectSession:(e,t)=>{let i=y.find(t=>t.id===e)??null;n.push((0,I.s)(e,{bridgeId:L,tab:t?.tab??(0,v.tK)(i)})),J()},onArchiveSession:F,onCreateWorkspace:()=>{n.push(q)}}):null,children:[G?null:(0,i.jsx)(o.V,{title:V,rightContent:(0,i.jsx)(a.J,{})}),(0,i.jsx)("div",{className:`flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden ${G?"bg-[#060404]":""}`,children:(0,i.jsx)(u.SessionDetail,{sessionId:C,initialSession:$,bridgeId:L,immersiveMobileMode:G,onOpenSidebar:D},C)})]}):(0,i.jsx)("div",{className:"flex h-svh items-center justify-center",children:(0,i.jsx)("span",{className:"text-[13px] text-[var(--text-muted)]",children:"No session ID provided"})})}},69755:(e,t,n)=>{Promise.resolve().then(n.bind(n,39337))}},e=>{e.O(0,[3357,5587,3051,1257,1587,3301,6778,5493,9450,587,1968,7358],()=>e(e.s=69755)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[64,403,664,816,817,916,1035,1082,1097,1131,1280,1474,1649,1652,2043,2046,2164,2170,2318,2328,2503,2518,2631,2637,2938,3004,3032,3419,3464,3530,3738,3896,3925,4089,4164,4237,4275,4301,4344,4474,4627,4896,5333,5368,5452,5605,5638,5936,5951,6159,6220,6281,6419,6541,6810,6819,6849,6865,6935,6946,6984,6988,7074,7398,7613,7812,7851,8080,8145,8167,8301,8320,8344,8365,8503,8531,8977,9169,9183,9209,9229,9514,9560,9726,9745,9907,9937,9957],{51680:()=>{}},_=>{_.O(0,[587,1968,7358],()=>_(_.s=51680)),_N_E=_.O()}]);