@mndrk/agx 2.0.45 → 2.0.47

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 (494) hide show
  1. package/cloud-runtime/standalone/.next/BUILD_ID +1 -1
  2. package/cloud-runtime/standalone/.next/app-path-routes-manifest.json +1 -0
  3. package/cloud-runtime/standalone/.next/build-manifest.json +2 -2
  4. package/cloud-runtime/standalone/.next/prerender-manifest.json +27 -3
  5. package/cloud-runtime/standalone/.next/routes-manifest.json +6 -0
  6. package/cloud-runtime/standalone/.next/server/app/_global-error.html +2 -2
  7. package/cloud-runtime/standalone/.next/server/app/_global-error.rsc +1 -1
  8. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  9. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  10. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  11. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  12. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  13. package/cloud-runtime/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  14. package/cloud-runtime/standalone/.next/server/app/_not-found.html +2 -2
  15. package/cloud-runtime/standalone/.next/server/app/_not-found.rsc +2 -2
  16. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  17. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  18. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  19. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  20. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  21. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  22. package/cloud-runtime/standalone/.next/server/app/agents/[id]/page.js.nft.json +1 -1
  23. package/cloud-runtime/standalone/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
  24. package/cloud-runtime/standalone/.next/server/app/agents/page.js.nft.json +1 -1
  25. package/cloud-runtime/standalone/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  26. package/cloud-runtime/standalone/.next/server/app/agents.html +2 -2
  27. package/cloud-runtime/standalone/.next/server/app/agents.rsc +3 -3
  28. package/cloud-runtime/standalone/.next/server/app/agents.segments/_full.segment.rsc +3 -3
  29. package/cloud-runtime/standalone/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  30. package/cloud-runtime/standalone/.next/server/app/agents.segments/_index.segment.rsc +2 -2
  31. package/cloud-runtime/standalone/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
  32. package/cloud-runtime/standalone/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +2 -2
  33. package/cloud-runtime/standalone/.next/server/app/agents.segments/agents.segment.rsc +1 -1
  34. package/cloud-runtime/standalone/.next/server/app/api/agent-specs/route.js +1 -1
  35. package/cloud-runtime/standalone/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
  36. package/cloud-runtime/standalone/.next/server/app/api/agents/[id]/profile/route.js +1 -1
  37. package/cloud-runtime/standalone/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
  38. package/cloud-runtime/standalone/.next/server/app/api/agents/export/route.js +1 -1
  39. package/cloud-runtime/standalone/.next/server/app/api/agents/export/route.js.nft.json +1 -1
  40. package/cloud-runtime/standalone/.next/server/app/api/chat/route.js +2 -2
  41. package/cloud-runtime/standalone/.next/server/app/api/chat/route.js.nft.json +1 -1
  42. package/cloud-runtime/standalone/.next/server/app/api/file-search/route.js.nft.json +1 -1
  43. package/cloud-runtime/standalone/.next/server/app/api/health/route.js +1 -1
  44. package/cloud-runtime/standalone/.next/server/app/api/health/route.js.nft.json +1 -1
  45. package/cloud-runtime/standalone/.next/server/app/api/knowledge-notes/route.js +1 -1
  46. package/cloud-runtime/standalone/.next/server/app/api/knowledge-notes/route.js.nft.json +1 -1
  47. package/cloud-runtime/standalone/.next/server/app/api/learnings/route.js +1 -1
  48. package/cloud-runtime/standalone/.next/server/app/api/learnings/route.js.nft.json +1 -1
  49. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route.js +1 -1
  50. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route.js.nft.json +1 -1
  51. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/route.js +1 -1
  52. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/route.js.nft.json +1 -1
  53. package/cloud-runtime/standalone/.next/server/app/api/linear/options/route.js +5 -2
  54. package/cloud-runtime/standalone/.next/server/app/api/linear/options/route.js.nft.json +1 -1
  55. package/cloud-runtime/standalone/.next/server/app/api/linear/status/route.js.nft.json +1 -1
  56. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js +1 -1
  57. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js.nft.json +1 -1
  58. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js +1 -1
  59. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js.nft.json +1 -1
  60. package/cloud-runtime/standalone/.next/server/app/api/participants/route.js +1 -1
  61. package/cloud-runtime/standalone/.next/server/app/api/participants/route.js.nft.json +1 -1
  62. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/agents/route.js +1 -1
  63. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/agents/route.js.nft.json +1 -1
  64. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v1/route.js +1 -1
  65. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v1/route.js.nft.json +1 -1
  66. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v2/route.js +1 -1
  67. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v2/route.js.nft.json +1 -1
  68. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/route.js +1 -1
  69. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
  70. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/skills/route.js +1 -1
  71. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/skills/route.js.nft.json +1 -1
  72. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/threads/route.js +1 -1
  73. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/threads/route.js.nft.json +1 -1
  74. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/variables/route.js +1 -1
  75. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/variables/route.js.nft.json +1 -1
  76. package/cloud-runtime/standalone/.next/server/app/api/projects/route.js +1 -1
  77. package/cloud-runtime/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
  78. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/agents/route.js +1 -1
  79. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/agents/route.js.nft.json +1 -1
  80. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/poll/route.js +1 -1
  81. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/poll/route.js.nft.json +1 -1
  82. package/cloud-runtime/standalone/.next/server/app/api/providers/route.js.nft.json +1 -1
  83. package/cloud-runtime/standalone/.next/server/app/api/queue/complete/route.js +1 -1
  84. package/cloud-runtime/standalone/.next/server/app/api/queue/complete/route.js.nft.json +1 -1
  85. package/cloud-runtime/standalone/.next/server/app/api/queue/route.js +1 -1
  86. package/cloud-runtime/standalone/.next/server/app/api/queue/route.js.nft.json +1 -1
  87. package/cloud-runtime/standalone/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
  88. package/cloud-runtime/standalone/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
  89. package/cloud-runtime/standalone/.next/server/app/api/skills/assign/route.js +1 -1
  90. package/cloud-runtime/standalone/.next/server/app/api/skills/assign/route.js.nft.json +1 -1
  91. package/cloud-runtime/standalone/.next/server/app/api/skills/available/route.js +1 -1
  92. package/cloud-runtime/standalone/.next/server/app/api/skills/available/route.js.nft.json +1 -1
  93. package/cloud-runtime/standalone/.next/server/app/api/skills/detail/route.js +1 -1
  94. package/cloud-runtime/standalone/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
  95. package/cloud-runtime/standalone/.next/server/app/api/skills/history/route.js +1 -1
  96. package/cloud-runtime/standalone/.next/server/app/api/skills/history/route.js.nft.json +1 -1
  97. package/cloud-runtime/standalone/.next/server/app/api/skills/learn/route.js +1 -1
  98. package/cloud-runtime/standalone/.next/server/app/api/skills/learn/route.js.nft.json +1 -1
  99. package/cloud-runtime/standalone/.next/server/app/api/skills/route.js +1 -1
  100. package/cloud-runtime/standalone/.next/server/app/api/skills/route.js.nft.json +1 -1
  101. package/cloud-runtime/standalone/.next/server/app/api/skills/unlearn/route.js +1 -1
  102. package/cloud-runtime/standalone/.next/server/app/api/skills/unlearn/route.js.nft.json +1 -1
  103. package/cloud-runtime/standalone/.next/server/app/api/status/route.js.nft.json +1 -1
  104. package/cloud-runtime/standalone/.next/server/app/api/summarize/route.js +1 -1
  105. package/cloud-runtime/standalone/.next/server/app/api/summarize/route.js.nft.json +1 -1
  106. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js +1 -1
  107. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
  108. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/route.js +1 -1
  109. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
  110. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/costs/route.js +1 -1
  111. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/costs/route.js.nft.json +1 -1
  112. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/dependencies/route.js +1 -1
  113. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/dependencies/route.js.nft.json +1 -1
  114. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/events/route.js +1 -1
  115. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/events/route.js.nft.json +1 -1
  116. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/history/route.js +1 -1
  117. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/history/route.js.nft.json +1 -1
  118. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/metrics/route.js +1 -1
  119. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/metrics/route.js.nft.json +1 -1
  120. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/replan/route.js +1 -1
  121. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/replan/route.js.nft.json +1 -1
  122. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/restart/route.js +1 -1
  123. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/restart/route.js.nft.json +1 -1
  124. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/resume/route.js +1 -1
  125. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/resume/route.js.nft.json +1 -1
  126. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/rollback/route.js +1 -1
  127. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/rollback/route.js.nft.json +1 -1
  128. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/route.js +1 -1
  129. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/route.js.nft.json +1 -1
  130. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/schedule/route.js +1 -1
  131. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/schedule/route.js.nft.json +1 -1
  132. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/start/route.js +1 -1
  133. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/start/route.js.nft.json +1 -1
  134. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/history/route.js +1 -1
  135. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/history/route.js.nft.json +1 -1
  136. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/logs/route.js +1 -1
  137. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/logs/route.js.nft.json +1 -1
  138. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js +1 -1
  139. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js.nft.json +1 -1
  140. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js +1 -1
  141. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js.nft.json +1 -1
  142. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js +1 -1
  143. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js.nft.json +1 -1
  144. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js +1 -1
  145. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js.nft.json +1 -1
  146. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js +1 -1
  147. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js.nft.json +1 -1
  148. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js +1 -1
  149. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
  150. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/route.js +1 -1
  151. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
  152. package/cloud-runtime/standalone/.next/server/app/api/tasks/assign-orphans/route.js +1 -1
  153. package/cloud-runtime/standalone/.next/server/app/api/tasks/assign-orphans/route.js.nft.json +1 -1
  154. package/cloud-runtime/standalone/.next/server/app/api/tasks/extract/route.js +1 -1
  155. package/cloud-runtime/standalone/.next/server/app/api/tasks/extract/route.js.nft.json +1 -1
  156. package/cloud-runtime/standalone/.next/server/app/api/tasks/route.js +1 -1
  157. package/cloud-runtime/standalone/.next/server/app/api/tasks/route.js.nft.json +1 -1
  158. package/cloud-runtime/standalone/.next/server/app/api/threads/knowledge/route.js +1 -1
  159. package/cloud-runtime/standalone/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -1
  160. package/cloud-runtime/standalone/.next/server/app/api/threads/route.js +1 -1
  161. package/cloud-runtime/standalone/.next/server/app/api/threads/route.js.nft.json +1 -1
  162. package/cloud-runtime/standalone/.next/server/app/api/user-settings/route.js +1 -1
  163. package/cloud-runtime/standalone/.next/server/app/api/user-settings/route.js.nft.json +1 -1
  164. package/cloud-runtime/standalone/.next/server/app/automations/page.js.nft.json +1 -1
  165. package/cloud-runtime/standalone/.next/server/app/automations/page_client-reference-manifest.js +1 -1
  166. package/cloud-runtime/standalone/.next/server/app/automations.html +2 -2
  167. package/cloud-runtime/standalone/.next/server/app/automations.rsc +3 -3
  168. package/cloud-runtime/standalone/.next/server/app/automations.segments/_full.segment.rsc +3 -3
  169. package/cloud-runtime/standalone/.next/server/app/automations.segments/_head.segment.rsc +1 -1
  170. package/cloud-runtime/standalone/.next/server/app/automations.segments/_index.segment.rsc +2 -2
  171. package/cloud-runtime/standalone/.next/server/app/automations.segments/_tree.segment.rsc +2 -2
  172. package/cloud-runtime/standalone/.next/server/app/automations.segments/automations/__PAGE__.segment.rsc +2 -2
  173. package/cloud-runtime/standalone/.next/server/app/automations.segments/automations.segment.rsc +1 -1
  174. package/cloud-runtime/standalone/.next/server/app/board/page_client-reference-manifest.js +1 -1
  175. package/cloud-runtime/standalone/.next/server/app/board.html +2 -2
  176. package/cloud-runtime/standalone/.next/server/app/board.rsc +2 -2
  177. package/cloud-runtime/standalone/.next/server/app/board.segments/_full.segment.rsc +2 -2
  178. package/cloud-runtime/standalone/.next/server/app/board.segments/_head.segment.rsc +1 -1
  179. package/cloud-runtime/standalone/.next/server/app/board.segments/_index.segment.rsc +2 -2
  180. package/cloud-runtime/standalone/.next/server/app/board.segments/_tree.segment.rsc +2 -2
  181. package/cloud-runtime/standalone/.next/server/app/board.segments/board/__PAGE__.segment.rsc +1 -1
  182. package/cloud-runtime/standalone/.next/server/app/board.segments/board.segment.rsc +1 -1
  183. package/cloud-runtime/standalone/.next/server/app/execution-graph/page_client-reference-manifest.js +1 -1
  184. package/cloud-runtime/standalone/.next/server/app/execution-graph.html +2 -2
  185. package/cloud-runtime/standalone/.next/server/app/execution-graph.rsc +2 -2
  186. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_full.segment.rsc +2 -2
  187. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_head.segment.rsc +1 -1
  188. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_index.segment.rsc +2 -2
  189. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_tree.segment.rsc +2 -2
  190. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph/__PAGE__.segment.rsc +1 -1
  191. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph.segment.rsc +1 -1
  192. package/cloud-runtime/standalone/.next/server/app/folders/page/app-paths-manifest.json +3 -0
  193. package/cloud-runtime/standalone/.next/server/app/folders/page/build-manifest.json +18 -0
  194. package/cloud-runtime/standalone/.next/server/app/folders/page/next-font-manifest.json +11 -0
  195. package/cloud-runtime/standalone/.next/server/app/folders/page/react-loadable-manifest.json +1 -0
  196. package/cloud-runtime/standalone/.next/server/app/folders/page/server-reference-manifest.json +4 -0
  197. package/cloud-runtime/standalone/.next/server/app/folders/page.js +15 -0
  198. package/cloud-runtime/standalone/.next/server/app/folders/page.js.map +5 -0
  199. package/cloud-runtime/standalone/.next/server/app/folders/page.js.nft.json +1 -0
  200. package/cloud-runtime/standalone/.next/server/app/folders/page_client-reference-manifest.js +2 -0
  201. package/cloud-runtime/standalone/.next/server/app/folders.html +21 -0
  202. package/cloud-runtime/standalone/.next/server/app/folders.meta +15 -0
  203. package/cloud-runtime/standalone/.next/server/app/folders.rsc +24 -0
  204. package/cloud-runtime/standalone/.next/server/app/folders.segments/_full.segment.rsc +24 -0
  205. package/cloud-runtime/standalone/.next/server/app/folders.segments/_head.segment.rsc +5 -0
  206. package/cloud-runtime/standalone/.next/server/app/folders.segments/_index.segment.rsc +10 -0
  207. package/cloud-runtime/standalone/.next/server/app/folders.segments/_tree.segment.rsc +5 -0
  208. package/cloud-runtime/standalone/.next/server/app/folders.segments/folders/__PAGE__.segment.rsc +9 -0
  209. package/cloud-runtime/standalone/.next/server/app/folders.segments/folders.segment.rsc +4 -0
  210. package/cloud-runtime/standalone/.next/server/app/index.html +2 -2
  211. package/cloud-runtime/standalone/.next/server/app/index.rsc +3 -3
  212. package/cloud-runtime/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  213. package/cloud-runtime/standalone/.next/server/app/index.segments/_full.segment.rsc +3 -3
  214. package/cloud-runtime/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
  215. package/cloud-runtime/standalone/.next/server/app/index.segments/_index.segment.rsc +2 -2
  216. package/cloud-runtime/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  217. package/cloud-runtime/standalone/.next/server/app/page.js.nft.json +1 -1
  218. package/cloud-runtime/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  219. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/automations/page.js.nft.json +1 -1
  220. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/automations/page_client-reference-manifest.js +1 -1
  221. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
  222. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
  223. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page.js.nft.json +1 -1
  224. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page_client-reference-manifest.js +1 -1
  225. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page.js.nft.json +1 -1
  226. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page_client-reference-manifest.js +1 -1
  227. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
  228. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  229. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -1
  230. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +1 -1
  231. package/cloud-runtime/standalone/.next/server/app/projects/orphans/page.js.nft.json +1 -1
  232. package/cloud-runtime/standalone/.next/server/app/projects/orphans/page_client-reference-manifest.js +1 -1
  233. package/cloud-runtime/standalone/.next/server/app/projects/orphans.html +2 -2
  234. package/cloud-runtime/standalone/.next/server/app/projects/orphans.rsc +2 -2
  235. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_full.segment.rsc +2 -2
  236. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_head.segment.rsc +1 -1
  237. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_index.segment.rsc +2 -2
  238. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_tree.segment.rsc +2 -2
  239. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans/__PAGE__.segment.rsc +1 -1
  240. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans.segment.rsc +1 -1
  241. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects.segment.rsc +1 -1
  242. package/cloud-runtime/standalone/.next/server/app/projects/page.js.nft.json +1 -1
  243. package/cloud-runtime/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  244. package/cloud-runtime/standalone/.next/server/app/projects.html +2 -2
  245. package/cloud-runtime/standalone/.next/server/app/projects.rsc +3 -3
  246. package/cloud-runtime/standalone/.next/server/app/projects.segments/_full.segment.rsc +3 -3
  247. package/cloud-runtime/standalone/.next/server/app/projects.segments/_head.segment.rsc +1 -1
  248. package/cloud-runtime/standalone/.next/server/app/projects.segments/_index.segment.rsc +2 -2
  249. package/cloud-runtime/standalone/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
  250. package/cloud-runtime/standalone/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +2 -2
  251. package/cloud-runtime/standalone/.next/server/app/projects.segments/projects.segment.rsc +1 -1
  252. package/cloud-runtime/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  253. package/cloud-runtime/standalone/.next/server/app/settings.html +2 -2
  254. package/cloud-runtime/standalone/.next/server/app/settings.rsc +2 -2
  255. package/cloud-runtime/standalone/.next/server/app/settings.segments/_full.segment.rsc +2 -2
  256. package/cloud-runtime/standalone/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  257. package/cloud-runtime/standalone/.next/server/app/settings.segments/_index.segment.rsc +2 -2
  258. package/cloud-runtime/standalone/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  259. package/cloud-runtime/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
  260. package/cloud-runtime/standalone/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  261. package/cloud-runtime/standalone/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  262. package/cloud-runtime/standalone/.next/server/app/skills.html +2 -2
  263. package/cloud-runtime/standalone/.next/server/app/skills.rsc +2 -2
  264. package/cloud-runtime/standalone/.next/server/app/skills.segments/_full.segment.rsc +2 -2
  265. package/cloud-runtime/standalone/.next/server/app/skills.segments/_head.segment.rsc +1 -1
  266. package/cloud-runtime/standalone/.next/server/app/skills.segments/_index.segment.rsc +2 -2
  267. package/cloud-runtime/standalone/.next/server/app/skills.segments/_tree.segment.rsc +2 -2
  268. package/cloud-runtime/standalone/.next/server/app/skills.segments/skills/__PAGE__.segment.rsc +1 -1
  269. package/cloud-runtime/standalone/.next/server/app/skills.segments/skills.segment.rsc +1 -1
  270. package/cloud-runtime/standalone/.next/server/app/status/page_client-reference-manifest.js +1 -1
  271. package/cloud-runtime/standalone/.next/server/app/status.html +2 -2
  272. package/cloud-runtime/standalone/.next/server/app/status.rsc +2 -2
  273. package/cloud-runtime/standalone/.next/server/app/status.segments/_full.segment.rsc +2 -2
  274. package/cloud-runtime/standalone/.next/server/app/status.segments/_head.segment.rsc +1 -1
  275. package/cloud-runtime/standalone/.next/server/app/status.segments/_index.segment.rsc +2 -2
  276. package/cloud-runtime/standalone/.next/server/app/status.segments/_tree.segment.rsc +2 -2
  277. package/cloud-runtime/standalone/.next/server/app/status.segments/status/__PAGE__.segment.rsc +1 -1
  278. package/cloud-runtime/standalone/.next/server/app/status.segments/status.segment.rsc +1 -1
  279. package/cloud-runtime/standalone/.next/server/app/thread/[id]/page.js.nft.json +1 -1
  280. package/cloud-runtime/standalone/.next/server/app/thread/[id]/page_client-reference-manifest.js +1 -1
  281. package/cloud-runtime/standalone/.next/server/app/welcome/page.js.nft.json +1 -1
  282. package/cloud-runtime/standalone/.next/server/app/welcome/page_client-reference-manifest.js +1 -1
  283. package/cloud-runtime/standalone/.next/server/app/welcome.html +2 -2
  284. package/cloud-runtime/standalone/.next/server/app/welcome.rsc +3 -3
  285. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_full.segment.rsc +3 -3
  286. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_head.segment.rsc +1 -1
  287. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_index.segment.rsc +2 -2
  288. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_tree.segment.rsc +2 -2
  289. package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome/__PAGE__.segment.rsc +2 -2
  290. package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome.segment.rsc +1 -1
  291. package/cloud-runtime/standalone/.next/server/app-paths-manifest.json +1 -0
  292. package/cloud-runtime/standalone/.next/server/chunks/{[externals]__31e26905._.js → [externals]__7b4c6b2b._.js} +1 -1
  293. package/cloud-runtime/standalone/.next/server/chunks/[externals]__a21cc96d._.js +3 -0
  294. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__5aaf8c25._.js → [root-of-the-server]__143fdf69._.js} +2 -2
  295. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__74a37ca4._.js → [root-of-the-server]__158df4bf._.js} +2 -2
  296. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__c029daab._.js → [root-of-the-server]__179cb224._.js} +2 -2
  297. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__3fd3c5b1._.js → [root-of-the-server]__1a1f66b1._.js} +2 -2
  298. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__20a2cb22._.js +150 -0
  299. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__d2ac93f2._.js → [root-of-the-server]__23b075bd._.js} +2 -2
  300. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__3bf516b6._.js → [root-of-the-server]__3170b7bf._.js} +2 -2
  301. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__558389f7._.js → [root-of-the-server]__33865410._.js} +2 -2
  302. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__4c2d07e0._.js → [root-of-the-server]__36d15de5._.js} +2 -2
  303. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__3fae531a._.js +89 -0
  304. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__76658fd6._.js → [root-of-the-server]__4cb22e4d._.js} +2 -2
  305. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__ebece93b._.js → [root-of-the-server]__4ce74056._.js} +2 -2
  306. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__635fe0f9._.js → [root-of-the-server]__538b0bdd._.js} +2 -2
  307. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__3b1431b6._.js → [root-of-the-server]__5c55f67a._.js} +2 -2
  308. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__e20922e8._.js → [root-of-the-server]__69a3c480._.js} +2 -2
  309. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__42804c1d._.js → [root-of-the-server]__6c53437e._.js} +1 -1
  310. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__8cbd8c56._.js +79 -0
  311. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__92ed2961._.js +48 -0
  312. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__509b1dd2._.js → [root-of-the-server]__94499e9a._.js} +2 -2
  313. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__ddb3aa76._.js → [root-of-the-server]__a280fa63._.js} +2 -2
  314. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__8c7d1318._.js → [root-of-the-server]__a2d31df1._.js} +2 -2
  315. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__a3955224._.js +150 -0
  316. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__4b0b5fe1._.js → [root-of-the-server]__a7b2350e._.js} +2 -2
  317. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__5b13e7a5._.js → [root-of-the-server]__ab655b9f._.js} +2 -2
  318. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ac6326b6._.js +106 -0
  319. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__0284ea89._.js → [root-of-the-server]__b2748382._.js} +2 -2
  320. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__e7be56ba._.js → [root-of-the-server]__b627cb83._.js} +2 -2
  321. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__0e98af48._.js → [root-of-the-server]__bab85495._.js} +63 -18
  322. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__dca6026a._.js → [root-of-the-server]__c21747df._.js} +2 -2
  323. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c22dd3a6._.js +179 -0
  324. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c8890cd6._.js +150 -0
  325. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__aad349b4._.js → [root-of-the-server]__ca4987eb._.js} +1 -1
  326. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__fcdaf6d8._.js → [root-of-the-server]__d16caed5._.js} +2 -2
  327. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__1f53e82e._.js → [root-of-the-server]__d324f8a1._.js} +2 -2
  328. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__6988985c._.js → [root-of-the-server]__da645a5e._.js} +2 -2
  329. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__d4f42f49._.js → [root-of-the-server]__e58e9f91._.js} +2 -2
  330. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f4b3df16._.js +3 -0
  331. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__c8195768._.js → [root-of-the-server]__f7f336c7._.js} +1 -1
  332. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__fcfa3690._.js +93 -0
  333. package/cloud-runtime/standalone/.next/server/chunks/_4d07f8db._.js +3 -0
  334. package/cloud-runtime/standalone/.next/server/chunks/lib_7f7835f1._.js +66 -21
  335. package/cloud-runtime/standalone/.next/server/chunks/lib_9f439b27._.js +61 -16
  336. package/cloud-runtime/standalone/.next/server/chunks/lib_f81d6da9._.js +70 -0
  337. package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__4c9d0778._.js → [root-of-the-server]__01e1641e._.js} +2 -2
  338. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__21a9eaef._.js +3 -0
  339. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__4140bb73._.js +3 -0
  340. package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__ffbc2e98._.js → [root-of-the-server]__5e73414b._.js} +2 -2
  341. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__9ad05ace._.js +3 -0
  342. package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__a42e4555._.js → [root-of-the-server]__d96bb3b5._.js} +2 -2
  343. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__ec81a3d9._.js +3 -0
  344. package/cloud-runtime/standalone/.next/server/chunks/ssr/_1d949e96._.js +3 -0
  345. package/cloud-runtime/standalone/.next/server/chunks/ssr/_32a156b6._.js +3 -0
  346. package/cloud-runtime/standalone/.next/server/chunks/ssr/_43c091dc._.js +3 -0
  347. package/cloud-runtime/standalone/.next/server/chunks/ssr/_45175f47._.js +3 -0
  348. package/cloud-runtime/standalone/.next/server/chunks/ssr/_4f0c544d._.js +3 -0
  349. package/cloud-runtime/standalone/.next/server/chunks/ssr/_97f6a18e._.js +3 -0
  350. package/cloud-runtime/standalone/.next/server/chunks/ssr/{_f51a3112._.js → _a511a014._.js} +2 -2
  351. package/cloud-runtime/standalone/.next/server/chunks/ssr/_b7009996._.js +3 -0
  352. package/cloud-runtime/standalone/.next/server/chunks/ssr/_c3a3a829._.js +3 -0
  353. package/cloud-runtime/standalone/.next/server/chunks/ssr/_e70d5625._.js +4 -0
  354. package/cloud-runtime/standalone/.next/server/chunks/ssr/_f53d31e0._.js +3 -0
  355. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_folders_page_actions_9c8dfb6c.js +3 -0
  356. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_projects_[slug]_linear_page_tsx_971a6ba7._.js +3 -3
  357. package/cloud-runtime/standalone/.next/server/chunks/ssr/components_chat-ui_bfeda794._.js +1 -1
  358. package/cloud-runtime/standalone/.next/server/chunks/ssr/components_thread_WorkspaceSidebar_tsx_e660301b._.js +1 -1
  359. package/cloud-runtime/standalone/.next/server/instrumentation.js +1 -1
  360. package/cloud-runtime/standalone/.next/server/middleware-manifest.json +5 -5
  361. package/cloud-runtime/standalone/.next/server/next-font-manifest.js +1 -1
  362. package/cloud-runtime/standalone/.next/server/next-font-manifest.json +4 -0
  363. package/cloud-runtime/standalone/.next/server/pages/404.html +2 -2
  364. package/cloud-runtime/standalone/.next/server/pages/500.html +2 -2
  365. package/cloud-runtime/standalone/.next/server/server-reference-manifest.js +1 -1
  366. package/cloud-runtime/standalone/.next/server/server-reference-manifest.json +1 -1
  367. package/cloud-runtime/standalone/.next/static/chunks/14fff3c493ea9c54.js +1 -0
  368. package/cloud-runtime/standalone/.next/static/chunks/1b808cdaa28a10b4.js +16 -0
  369. package/cloud-runtime/standalone/.next/static/chunks/{f4360c3e4089263f.js → 31fe4e36a00fd7b5.js} +1 -1
  370. package/cloud-runtime/standalone/.next/static/chunks/41c518743656a291.js +1 -0
  371. package/cloud-runtime/standalone/.next/static/chunks/{14922fd23cdc223b.js → 4343e7fe5bf5f34a.js} +1 -1
  372. package/cloud-runtime/standalone/.next/static/chunks/5405540470146645.js +1 -0
  373. package/cloud-runtime/standalone/.next/static/chunks/69f2db4b9996b9c1.js +37 -0
  374. package/cloud-runtime/standalone/.next/static/chunks/8aeb69ceb497ad85.css +1 -0
  375. package/cloud-runtime/standalone/.next/static/chunks/{1fa91c34c99502bf.js → 97c11137cd6fc860.js} +1 -1
  376. package/cloud-runtime/standalone/.next/static/chunks/baf5d39d089efb87.js +1 -0
  377. package/cloud-runtime/standalone/.next/static/chunks/c78969fde5798275.js +1 -0
  378. package/cloud-runtime/standalone/.next/static/chunks/d3dc6fadb96ab3a2.js +1 -0
  379. package/cloud-runtime/standalone/.next/static/chunks/{b3377e39d47c71cf.js → fdadad2379039dce.js} +1 -1
  380. package/cloud-runtime/standalone/app/api/linear/issues/route.ts +18 -4
  381. package/cloud-runtime/standalone/app/api/linear/options/route.ts +16 -4
  382. package/cloud-runtime/standalone/app/folders/page.tsx +318 -0
  383. package/cloud-runtime/standalone/components/LinearBoard.tsx +346 -14
  384. package/cloud-runtime/standalone/components/thread/WorkspaceSidebar.tsx +20 -10
  385. package/cloud-runtime/standalone/hooks/useLinearIssues.ts +13 -5
  386. package/cloud-runtime/standalone/instrumentation.ts +3 -0
  387. package/cloud-runtime/standalone/lib/cli-runner.ts +27 -6
  388. package/cloud-runtime/standalone/lib/linear-issue-store.ts +44 -10
  389. package/cloud-runtime/standalone/lib/scheduled-task-skill.ts +119 -0
  390. package/cloud-runtime/standalone/state/automations/.state/24a6a5db-3b14-49c4-841f-29f10f015fbb.json +3 -3
  391. package/cloud-runtime/standalone/state/linearBoardFilters.ts +90 -0
  392. package/cloud-runtime/standalone/worker/index.js +147 -28
  393. package/package.json +1 -1
  394. package/cloud-runtime/standalone/.linear-token.json +0 -4
  395. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__3b83b657._.js +0 -147
  396. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__6921fe3f._.js +0 -44
  397. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__70327010._.js +0 -134
  398. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__748c718f._.js +0 -147
  399. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__79fa35e4._.js +0 -101
  400. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__8d205f82._.js +0 -48
  401. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__a7e0ac67._.js +0 -25
  402. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__b133856b._.js +0 -61
  403. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ce2a1672._.js +0 -67
  404. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f168c6dc._.js +0 -25
  405. package/cloud-runtime/standalone/.next/server/chunks/_a93e80e8._.js +0 -3
  406. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__1c4256ce._.js +0 -3
  407. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__f59f0dc7._.js +0 -3
  408. package/cloud-runtime/standalone/.next/server/chunks/ssr/_1d26be78._.js +0 -3
  409. package/cloud-runtime/standalone/.next/server/chunks/ssr/_22e99a52._.js +0 -3
  410. package/cloud-runtime/standalone/.next/server/chunks/ssr/_260b10ce._.js +0 -3
  411. package/cloud-runtime/standalone/.next/server/chunks/ssr/_32c878b9._.js +0 -3
  412. package/cloud-runtime/standalone/.next/server/chunks/ssr/_4bfdfb14._.js +0 -3
  413. package/cloud-runtime/standalone/.next/server/chunks/ssr/_52fe115d._.js +0 -3
  414. package/cloud-runtime/standalone/.next/server/chunks/ssr/_77e1407a._.js +0 -3
  415. package/cloud-runtime/standalone/.next/server/chunks/ssr/_84a166cb._.js +0 -3
  416. package/cloud-runtime/standalone/.next/server/chunks/ssr/_ba5903a7._.js +0 -3
  417. package/cloud-runtime/standalone/.next/server/chunks/ssr/_ed4fece9._.js +0 -3
  418. package/cloud-runtime/standalone/.next/static/chunks/00716478a3ee55a2.js +0 -37
  419. package/cloud-runtime/standalone/.next/static/chunks/2362d5c0dcaa5d64.js +0 -1
  420. package/cloud-runtime/standalone/.next/static/chunks/2730394502dd3664.js +0 -1
  421. package/cloud-runtime/standalone/.next/static/chunks/3091043e8c282dce.css +0 -1
  422. package/cloud-runtime/standalone/.next/static/chunks/34dd491bc4ce9561.js +0 -1
  423. package/cloud-runtime/standalone/.next/static/chunks/3dc50de1c86e1ce9.js +0 -1
  424. package/cloud-runtime/standalone/.next/static/chunks/4ea8f08087116055.js +0 -1
  425. package/cloud-runtime/standalone/.next/static/chunks/98c20da4973991f0.js +0 -1
  426. package/cloud-runtime/standalone/.next/static/chunks/a72fbac84e32f665.js +0 -1
  427. package/cloud-runtime/standalone/.next/static/chunks/b553dba1f51e709b.js +0 -16
  428. package/cloud-runtime/standalone/.next/static/chunks/c0d17e0c37ba8e7a.js +0 -1
  429. package/cloud-runtime/standalone/coverage/clover.xml +0 -1208
  430. package/cloud-runtime/standalone/coverage/coverage-final.json +0 -29
  431. package/cloud-runtime/standalone/coverage/lcov-report/app/api/audit/index.html +0 -116
  432. package/cloud-runtime/standalone/coverage/lcov-report/app/api/audit/route.ts.html +0 -208
  433. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/[...nextauth]/index.html +0 -116
  434. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/[...nextauth]/route.ts.html +0 -166
  435. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/daemon-secret/index.html +0 -116
  436. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/daemon-secret/route.ts.html +0 -532
  437. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/status/index.html +0 -116
  438. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/status/route.ts.html +0 -178
  439. package/cloud-runtime/standalone/coverage/lcov-report/app/api/learnings/index.html +0 -116
  440. package/cloud-runtime/standalone/coverage/lcov-report/app/api/learnings/route.ts.html +0 -262
  441. package/cloud-runtime/standalone/coverage/lcov-report/app/api/logs/stream/index.html +0 -116
  442. package/cloud-runtime/standalone/coverage/lcov-report/app/api/logs/stream/route.ts.html +0 -448
  443. package/cloud-runtime/standalone/coverage/lcov-report/app/api/queue/complete/index.html +0 -116
  444. package/cloud-runtime/standalone/coverage/lcov-report/app/api/queue/complete/route.ts.html +0 -331
  445. package/cloud-runtime/standalone/coverage/lcov-report/app/api/queue/index.html +0 -116
  446. package/cloud-runtime/standalone/coverage/lcov-report/app/api/queue/route.ts.html +0 -505
  447. package/cloud-runtime/standalone/coverage/lcov-report/app/api/stage-prompts/index.html +0 -116
  448. package/cloud-runtime/standalone/coverage/lcov-report/app/api/stage-prompts/route.ts.html +0 -412
  449. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/advance/index.html +0 -116
  450. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/advance/route.ts.html +0 -304
  451. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/index.html +0 -116
  452. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/logs/index.html +0 -116
  453. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/logs/route.ts.html +0 -202
  454. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/route.ts.html +0 -373
  455. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/index.html +0 -116
  456. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/route.ts.html +0 -499
  457. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/stream/index.html +0 -116
  458. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/stream/route.ts.html +0 -349
  459. package/cloud-runtime/standalone/coverage/lcov-report/base.css +0 -224
  460. package/cloud-runtime/standalone/coverage/lcov-report/block-navigation.js +0 -87
  461. package/cloud-runtime/standalone/coverage/lcov-report/components/AuthProvider.tsx.html +0 -259
  462. package/cloud-runtime/standalone/coverage/lcov-report/components/ChatInterface.tsx.html +0 -1228
  463. package/cloud-runtime/standalone/coverage/lcov-report/components/KanbanBoard.tsx.html +0 -1024
  464. package/cloud-runtime/standalone/coverage/lcov-report/components/Layout.tsx.html +0 -211
  465. package/cloud-runtime/standalone/coverage/lcov-report/components/LearningsPanel.tsx.html +0 -535
  466. package/cloud-runtime/standalone/coverage/lcov-report/components/LogTimeline.tsx.html +0 -415
  467. package/cloud-runtime/standalone/coverage/lcov-report/components/SortableTaskCard.tsx.html +0 -358
  468. package/cloud-runtime/standalone/coverage/lcov-report/components/StagePills.tsx.html +0 -439
  469. package/cloud-runtime/standalone/coverage/lcov-report/components/TaskCard.tsx.html +0 -514
  470. package/cloud-runtime/standalone/coverage/lcov-report/components/TaskCardOverlay.tsx.html +0 -256
  471. package/cloud-runtime/standalone/coverage/lcov-report/components/TaskDetail.tsx.html +0 -622
  472. package/cloud-runtime/standalone/coverage/lcov-report/components/TaskList.tsx.html +0 -253
  473. package/cloud-runtime/standalone/coverage/lcov-report/components/index.html +0 -281
  474. package/cloud-runtime/standalone/coverage/lcov-report/favicon.png +0 -0
  475. package/cloud-runtime/standalone/coverage/lcov-report/hooks/index.html +0 -116
  476. package/cloud-runtime/standalone/coverage/lcov-report/hooks/useTasks.ts.html +0 -1042
  477. package/cloud-runtime/standalone/coverage/lcov-report/index.html +0 -341
  478. package/cloud-runtime/standalone/coverage/lcov-report/lib/auth-client.ts.html +0 -202
  479. package/cloud-runtime/standalone/coverage/lcov-report/lib/auth-server.ts.html +0 -172
  480. package/cloud-runtime/standalone/coverage/lcov-report/lib/auth.ts.html +0 -265
  481. package/cloud-runtime/standalone/coverage/lcov-report/lib/db.ts.html +0 -1252
  482. package/cloud-runtime/standalone/coverage/lcov-report/lib/index.html +0 -131
  483. package/cloud-runtime/standalone/coverage/lcov-report/lib/orchestrator.ts.html +0 -409
  484. package/cloud-runtime/standalone/coverage/lcov-report/lib/security.ts.html +0 -1165
  485. package/cloud-runtime/standalone/coverage/lcov-report/lib/supabase-server.ts.html +0 -175
  486. package/cloud-runtime/standalone/coverage/lcov-report/lib/supabase.ts.html +0 -157
  487. package/cloud-runtime/standalone/coverage/lcov-report/prettify.css +0 -1
  488. package/cloud-runtime/standalone/coverage/lcov-report/prettify.js +0 -2
  489. package/cloud-runtime/standalone/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  490. package/cloud-runtime/standalone/coverage/lcov-report/sorter.js +0 -210
  491. package/cloud-runtime/standalone/coverage/lcov.info +0 -2386
  492. /package/cloud-runtime/standalone/.next/static/{Y8QdDdLJI3yzNjkyPjuJ- → lOB5InbmVcurTLQo9J3KK}/_buildManifest.js +0 -0
  493. /package/cloud-runtime/standalone/.next/static/{Y8QdDdLJI3yzNjkyPjuJ- → lOB5InbmVcurTLQo9J3KK}/_clientMiddlewareManifest.json +0 -0
  494. /package/cloud-runtime/standalone/.next/static/{Y8QdDdLJI3yzNjkyPjuJ- → lOB5InbmVcurTLQo9J3KK}/_ssgManifest.js +0 -0
@@ -1,25 +1,70 @@
1
- module.exports=[37269,e=>{"use strict";var t=e.i(522734),r=e.i(446786),n=e.i(814747);let i=process.env.AGX_DATA_DIR||n.default.join(r.default.homedir(),".agx"),s=process.env.AGX_DEBUG_LOG_PATH||n.default.join(i,"logs","desktop-chat-debug.log");function l(e,t){return t instanceof Error?{name:t.name,message:t.message,stack:t.stack}:"string"==typeof t&&t.length>2e3?`${t.slice(0,2e3)}...<truncated>`:t}function a(){return s}function o(e,r){try{t.default.mkdirSync(n.default.dirname(s),{recursive:!0});let i=JSON.stringify({ts:new Date().toISOString(),pid:process.pid,event:e,...r?{payload:r}:{}},l);t.default.appendFileSync(s,`${i}
2
- `,"utf8")}catch{}}e.s(["getDebugLogPath",()=>a,"writeDebugLog",()=>o])},701435,e=>{"use strict";let t;var r=e.i(233405);function n(){return process.env.SHELL?.trim()||"/bin/bash"}function i(e){let i=function(){if(void 0!==t)return t;try{let e=n(),i=(0,r.spawnSync)(e,["-lc",'printf %s "$PATH"'],{encoding:"utf8",timeout:5e3});t=(0===i.status?i.stdout.trim():"")||null}catch{t=null}return t}();return{...process.env,...i?{PATH:i}:{},CLAUDECODE:void 0,...e}}function s(e){try{if(!/^[A-Za-z0-9._-]+$/.test(e))return!1;let t=n();return 0===(0,r.spawnSync)(t,["-lc",`command -v ${e} >/dev/null 2>&1`],{encoding:"utf8",timeout:5e3}).status}catch{return!1}}e.s(["buildSpawnEnv",()=>i,"commandExists",()=>s])},914350,e=>{"use strict";var t=e.i(233405),r=e.i(522734),n=e.i(814747),i=e.i(37269),s=e.i(701435);let l=e=>"string"==typeof e&&e.trim().length>0,a=e=>({push:e,flush:()=>{}}),o=e=>{let t="",r=0,n=!1,i=t=>{let i=t.trim();if(i)try{let t=JSON.parse(i);n=!0;let s=(e=>{if(!e||"object"!=typeof e)return"";if("assistant"===e.type)return(Array.isArray(e?.message?.content)?e.message.content:[]).flatMap(e=>e?.type==="text"&&l(e.text)?[e.text]:[]).join("");let t=e?.event;return"stream_event"===e.type&&t?.type==="content_block_delta"&&t?.delta?.type==="text_delta"&&l(t?.delta?.text)?t.delta.text:""})(t);if(!s||t?.type==="assistant"&&r>0)return;r+=s.length,e(s)}catch{n||e(`${t}
3
- `)}};return{push:e=>{for(t+=e;;){let e=t.indexOf("\n");if(-1===e)break;i(t.slice(0,e)),t=t.slice(e+1)}},flush:()=>{t.trim()&&i(t),t=""}}},u=e=>{let t="",r=!1,n="",i=t=>{let i=t.trim();if(i)try{let t=JSON.parse(i);r=!0,t?.type==="message"&&t?.role==="assistant"&&l(t?.content)&&((t,r)=>{if(t){if(r){if(n&&t.startsWith(n)){let r=t.slice(n.length);r&&e(r),n=t;return}e(t),n+=t;return}if(n&&t.startsWith(n)){let r=t.slice(n.length);r&&e(r),n=t;return}n||(e(t),n=t)}})(t.content,t?.delta===!0)}catch{r||e(`${t}
4
- `)}};return{push:e=>{for(t+=e;;){let e=t.indexOf("\n");if(-1===e)break;i(t.slice(0,e)),t=t.slice(e+1)}},flush:()=>{t.trim()&&i(t),t=""}}},c=e=>{let t="",r=!1,n=new Set,i=t=>{let i=t.trim();if(i)try{let t=JSON.parse(i);if(r=!0,t?.type==="item.completed"&&l(t?.item?.id)){if(n.has(t.item.id))return;n.add(t.item.id)}let s=t&&"object"==typeof t?"item.completed"===t.type&&t.item?.type==="agent_message"&&l(t.item?.text)?t.item.text:"item.delta"===t.type&&t.item?.type==="agent_message"&&l(t.delta?.text)?t.delta.text:"":"";s&&e(s)}catch{r||e(`${t}
5
- `)}};return{push:e=>{for(t+=e;;){let e=t.indexOf("\n");if(-1===e)break;i(t.slice(0,e)),t=t.slice(e+1)}},flush:()=>{t.trim()&&i(t),t=""}}},d=e=>{let t="",r=!1,n=[/^Thinking\.\.\./,/^<think>/i],i=[/\.\.\.done thinking\.?\s*/,/<\/think>/i];return{push:s=>{t+=s,(()=>{for(;t.length>0;){if(r){let e=-1,n=0;for(let r of i){let i=t.match(r);i&&void 0!==i.index&&(i.index,i[0].length,(-1===e||i.index<e)&&(e=i.index,n=i[0].length))}if(-1!==e){t=t.slice(e+n),r=!1,t=t.replace(/^\s*\n*/,"");continue}return}for(let i of n){let n=t.match(i);if(n&&void 0!==n.index){let i=t.slice(0,n.index);i&&e.push(i),t=t.slice(n.index+n[0].length),r=!0;break}}if(r)continue;let s=Math.max(0,t.length-30);s>0&&(e.push(t.slice(0,s)),t=t.slice(s));return}})()},flush:()=>{!r&&t&&e.push(t),t="",e.flush()}}},p=new Set(["claude","gemini","ollama","codex"]);function m({provider:e,model:t,prompt:r,systemPrompt:n}){switch(e){case"claude":{let e=["-p","--verbose","--output-format","stream-json","--include-partial-messages"];return t&&e.push("--model",t),n&&e.push("--system-prompt",n),e.push(r),{command:"claude",args:e,parser:"claude-stream-json"}}case"gemini":return{command:"gemini",args:["--yolo","-p",n?`${n}
1
+ module.exports=[37269,e=>{"use strict";var t=e.i(522734),r=e.i(446786),n=e.i(814747);let i=process.env.AGX_DATA_DIR||n.default.join(r.default.homedir(),".agx"),s=process.env.AGX_DEBUG_LOG_PATH||n.default.join(i,"logs","desktop-chat-debug.log");function a(e,t){return t instanceof Error?{name:t.name,message:t.message,stack:t.stack}:"string"==typeof t&&t.length>2e3?`${t.slice(0,2e3)}...<truncated>`:t}function o(){return s}function l(e,r){try{t.default.mkdirSync(n.default.dirname(s),{recursive:!0});let i=JSON.stringify({ts:new Date().toISOString(),pid:process.pid,event:e,...r?{payload:r}:{}},a);t.default.appendFileSync(s,`${i}
2
+ `,"utf8")}catch{}}e.s(["getDebugLogPath",()=>o,"writeDebugLog",()=>l])},701435,e=>{"use strict";let t;var r=e.i(233405);function n(){return process.env.SHELL?.trim()||"/bin/bash"}function i(e){let i=function(){if(void 0!==t)return t;try{let e=n(),i=(0,r.spawnSync)(e,["-lc",'printf %s "$PATH"'],{encoding:"utf8",timeout:5e3});t=(0===i.status?i.stdout.trim():"")||null}catch{t=null}return t}();return{...process.env,...i?{PATH:i}:{},CLAUDECODE:void 0,...e}}function s(e){try{if(!/^[A-Za-z0-9._-]+$/.test(e))return!1;let t=n();return 0===(0,r.spawnSync)(t,["-lc",`command -v ${e} >/dev/null 2>&1`],{encoding:"utf8",timeout:5e3}).status}catch{return!1}}e.s(["buildSpawnEnv",()=>i,"commandExists",()=>s])},914350,e=>{"use strict";var t=e.i(233405),r=e.i(522734),n=e.i(814747),i=e.i(37269),s=e.i(701435),a=e.i(902157),o=e.i(660526),l=e.i(750227);function u(e){return e.replace(/\\/g,"/")}let d=e=>"string"==typeof e&&e.trim().length>0,c=e=>({push:e,flush:()=>{}}),p=e=>{let t="",r=0,n=!1,i=t=>{let i=t.trim();if(i)try{let t=JSON.parse(i);n=!0;let s=(e=>{if(!e||"object"!=typeof e)return"";if("assistant"===e.type)return(Array.isArray(e?.message?.content)?e.message.content:[]).flatMap(e=>e?.type==="text"&&d(e.text)?[e.text]:[]).join("");let t=e?.event;return"stream_event"===e.type&&t?.type==="content_block_delta"&&t?.delta?.type==="text_delta"&&d(t?.delta?.text)?t.delta.text:""})(t);if(!s||t?.type==="assistant"&&r>0)return;r+=s.length,e(s)}catch{n||e(`${t}
3
+ `)}};return{push:e=>{for(t+=e;;){let e=t.indexOf("\n");if(-1===e)break;i(t.slice(0,e)),t=t.slice(e+1)}},flush:()=>{t.trim()&&i(t),t=""}}},m=e=>{let t="",r=!1,n="",i=t=>{let i=t.trim();if(i)try{let t=JSON.parse(i);r=!0,t?.type==="message"&&t?.role==="assistant"&&d(t?.content)&&((t,r)=>{if(t){if(r){if(n&&t.startsWith(n)){let r=t.slice(n.length);r&&e(r),n=t;return}e(t),n+=t;return}if(n&&t.startsWith(n)){let r=t.slice(n.length);r&&e(r),n=t;return}n||(e(t),n=t)}})(t.content,t?.delta===!0)}catch{r||e(`${t}
4
+ `)}};return{push:e=>{for(t+=e;;){let e=t.indexOf("\n");if(-1===e)break;i(t.slice(0,e)),t=t.slice(e+1)}},flush:()=>{t.trim()&&i(t),t=""}}},h=e=>{let t="",r=!1,n=new Set,i=t=>{let i=t.trim();if(i)try{let t=JSON.parse(i);if(r=!0,t?.type==="item.completed"&&d(t?.item?.id)){if(n.has(t.item.id))return;n.add(t.item.id)}let s=t&&"object"==typeof t?"item.completed"===t.type&&t.item?.type==="agent_message"&&d(t.item?.text)?t.item.text:"item.delta"===t.type&&t.item?.type==="agent_message"&&d(t.delta?.text)?t.delta.text:"":"";s&&e(s)}catch{r||e(`${t}
5
+ `)}};return{push:e=>{for(t+=e;;){let e=t.indexOf("\n");if(-1===e)break;i(t.slice(0,e)),t=t.slice(e+1)}},flush:()=>{t.trim()&&i(t),t=""}}},f=e=>{let t="",r=!1,n=[/^Thinking\.\.\./,/^<think>/i],i=[/\.\.\.done thinking\.?\s*/,/<\/think>/i];return{push:s=>{t+=s,(()=>{for(;t.length>0;){if(r){let e=-1,n=0;for(let r of i){let i=t.match(r);i&&void 0!==i.index&&(i.index,i[0].length,(-1===e||i.index<e)&&(e=i.index,n=i[0].length))}if(-1!==e){t=t.slice(e+n),r=!1,t=t.replace(/^\s*\n*/,"");continue}return}for(let i of n){let n=t.match(i);if(n&&void 0!==n.index){let i=t.slice(0,n.index);i&&e.push(i),t=t.slice(n.index+n[0].length),r=!0;break}}if(r)continue;let s=Math.max(0,t.length-30);s>0&&(e.push(t.slice(0,s)),t=t.slice(s));return}})()},flush:()=>{!r&&t&&e.push(t),t="",e.flush()}}},g=new Set(["claude","gemini","ollama","codex"]);function v({provider:e,model:t,prompt:r,systemPrompt:n}){switch(e){case"claude":{let e=["-p","--verbose","--output-format","stream-json","--include-partial-messages"];return t&&e.push("--model",t),n&&e.push("--system-prompt",n),e.push(r),{command:"claude",args:e,parser:"claude-stream-json"}}case"gemini":return{command:"gemini",args:["--yolo","-p",n?`${n}
6
6
 
7
7
  ${r}`:r,"-o","stream-json"],parser:"gemini-stream-json"};case"ollama":return{command:"ollama",args:["run",t||"llama3.2",n?`${n}
8
8
 
9
9
  ${r}`:r],parser:"raw"};case"codex":{let e=["exec","--json"];return t&&e.push("--model",t),e.push(n?`${n}
10
10
 
11
- ${r}`:r),{command:"codex",args:e,parser:"codex-json"}}case"zai":{let e=process.env.ZAI_API_KEY?.trim(),i=["-p","--verbose","--output-format","stream-json","--include-partial-messages"];return t&&i.push("--model",t),n&&i.push("--system-prompt",n),i.push(r),{command:"claude",args:i,parser:"claude-stream-json",env:{ANTHROPIC_BASE_URL:"https://api.z.ai/api/anthropic",...e?{ANTHROPIC_AUTH_TOKEN:e}:{}}}}default:return null}}function f(){let e=process.env.AGX_CLI_PATH?.trim();if(e&&r.default.existsSync(e))return e;for(let e of[n.default.resolve(process.cwd(),"..","cli","index.js"),n.default.resolve("/ROOT/lib","..","cli","index.js"),n.default.resolve(process.execPath,"..","..","Resources","cli","index.js")])if(r.default.existsSync(e))return e;return null}function g({provider:e,model:t,prompt:r,systemPrompt:n,passthroughArgs:i},l={}){let a=l.commandExists??s.commandExists,o=void 0===l.bundledCliPath?f():l.bundledCliPath,u=[],c=n?`${n}
11
+ ${r}`:r),{command:"codex",args:e,parser:"codex-json"}}case"zai":{let e=process.env.ZAI_API_KEY?.trim(),i=["-p","--verbose","--output-format","stream-json","--include-partial-messages"];return t&&i.push("--model",t),n&&i.push("--system-prompt",n),i.push(r),{command:"claude",args:i,parser:"claude-stream-json",env:{ANTHROPIC_BASE_URL:"https://api.z.ai/api/anthropic",...e?{ANTHROPIC_AUTH_TOKEN:e}:{}}}}default:return null}}function x(){let e=process.env.AGX_CLI_PATH?.trim();if(e&&r.default.existsSync(e))return e;for(let e of[n.default.resolve(process.cwd(),"..","cli","index.js"),n.default.resolve("/ROOT/lib","..","cli","index.js"),n.default.resolve(process.execPath,"..","..","Resources","cli","index.js")])if(r.default.existsSync(e))return e;return null}function y({provider:e,model:t,prompt:r,systemPrompt:n,passthroughArgs:i},a={}){let o=a.commandExists??s.commandExists,l=void 0===a.bundledCliPath?x():a.bundledCliPath,u=[],d=n?`${n}
12
12
 
13
- ${r}`:r;if(p.has(e)){let s=function({provider:e,model:t,prompt:r,cliPath:n,passthroughArgs:i}){let s=void 0===n?f():n;if(!s)return null;let l=[s,e,"-y","--print","--prompt",r];return t&&l.push("--model",t),i&&i.length>0&&l.push("--",...i),{command:process.execPath,args:l,parser:"raw"}}({provider:e,model:t,prompt:c,cliPath:o,passthroughArgs:i});s&&u.push(s),a("agx")&&u.push(function({provider:e,model:t,prompt:r,passthroughArgs:n}){let i=[e,"-y","--print","--prompt",r];return t&&i.push("--model",t),n&&n.length>0&&i.push("--",...n),{command:"agx",args:i,parser:"raw"}}({provider:e,model:t,prompt:c,passthroughArgs:i}));let l=m({provider:e,model:t,prompt:r,systemPrompt:n});return l&&a(l.command)&&u.push(l),u}let d=m({provider:e,model:t,prompt:r,systemPrompt:n});return d&&a(d.command)&&u.push(d),u}async function h({command:e,args:r,timeoutMs:n,signal:l,onDelta:a,onLog:o,onSpawn:u,env:c}){await new Promise((d,p)=>{(0,i.writeDebugLog)("cli-runner.spawn",{command:e,args:r,timeoutMs:n,bundledCliPath:f(),isElectron:process.env.AGX_ELECTRON||null}),o&&o("stderr",`$ ${e} ${r.map(e=>e.length>80?e.slice(0,80)+"…":e).join(" ")}
14
- `);let m=(0,t.spawn)(e,r,{stdio:["ignore","pipe","pipe"],env:(0,s.buildSpawnEnv)(c)}),g=!1,h="",x=!1,v=e=>{g||(g=!0,clearTimeout(b),l&&l.removeEventListener("abort",y),e?p(e):d())},y=()=>{(0,i.writeDebugLog)("cli-runner.abort",{command:e,args:r,pid:m.pid??null}),m.kill("SIGTERM"),v(Error("Chat request aborted."))};l&&l.addEventListener("abort",y,{once:!0}),u&&m.pid&&u(m.pid),(0,i.writeDebugLog)("cli-runner.spawned",{command:e,args:r,pid:m.pid??null});let b=setTimeout(()=>{x=!0,(0,i.writeDebugLog)("cli-runner.timeout",{command:e,args:r,pid:m.pid??null,timeoutMs:n}),m.kill("SIGKILL"),v(Error(`CLI request timed out after ${n}ms.`))},n);m.stdout.on("data",e=>{let t=e.toString();h+=t,a(t),o&&o("stdout",t)}),m.stderr.on("data",e=>{let t=e.toString();h+=t,o&&o("stderr",t)}),m.on("error",t=>{(0,i.writeDebugLog)("cli-runner.process_error",{command:e,args:r,pid:m.pid??null,error:t}),v(t)}),m.on("close",(t,n)=>{if(!g&&!x){if((0,i.writeDebugLog)("cli-runner.close",{command:e,args:r,pid:m.pid??null,code:t??null,signal:n??null}),0===t)return void v();v(Error(`CLI command failed (exit=${t??"unknown"} signal=${n??"none"}).${h.trim()?` ${h.trim()}`:""}`))}})})}async function x({provider:e,model:t,prompt:r,identity:n,self:s,skills:l,systemContext:p,passthroughArgs:m,signal:x,onDelta:v,onLog:y,onSpawn:b}){let w,$,E,L,A=(w=!1,$=!1,E="",L=/^(?:```|~~~|#{1,6}\s|>\s|[-*+]\s|\d+\.\s)/,e=>{let t=e.replace(/\u001B\[[0-9;]*[A-Za-z]/g,"").replace(/\r\n/g,"\n").replace(/\r/g,"\n").replace(/[ \t]+\n/g,"\n").replace(/\n{3,}/g,"\n\n");if(!t.trim())return t.includes("\n")&&!w?(w=!0,"\n"):"";let r=w?t.replace(/^\n+/,"\n"):t,n=r.trimStart(),i=L.test(n),s=$&&i&&!w,l=$&&!w&&!s&&!/^\s/.test(r)&&/[.!?)]/.test(E)&&/^[A-Z0-9`(]/.test(r),a=s?`
13
+ ${r}`:r;if(g.has(e)){let s=function({provider:e,model:t,prompt:r,cliPath:n,passthroughArgs:i}){let s=void 0===n?x():n;if(!s)return null;let a=[s,e,"-y","--print","--prompt",r];return t&&a.push("--model",t),i&&i.length>0&&a.push("--",...i),{command:process.execPath,args:a,parser:"raw"}}({provider:e,model:t,prompt:d,cliPath:l,passthroughArgs:i});s&&u.push(s),o("agx")&&u.push(function({provider:e,model:t,prompt:r,passthroughArgs:n}){let i=[e,"-y","--print","--prompt",r];return t&&i.push("--model",t),n&&n.length>0&&i.push("--",...n),{command:"agx",args:i,parser:"raw"}}({provider:e,model:t,prompt:d,passthroughArgs:i}));let a=v({provider:e,model:t,prompt:r,systemPrompt:n});return a&&o(a.command)&&u.push(a),u}let c=v({provider:e,model:t,prompt:r,systemPrompt:n});return c&&o(c.command)&&u.push(c),u}async function b({command:e,args:r,timeoutMs:n,signal:a,onDelta:o,onLog:l,onSpawn:u,env:d}){await new Promise((c,p)=>{(0,i.writeDebugLog)("cli-runner.spawn",{command:e,args:r,timeoutMs:n,bundledCliPath:x(),isElectron:process.env.AGX_ELECTRON||null}),l&&l("stderr",`$ ${e} ${r.map(e=>e.length>80?e.slice(0,80)+"…":e).join(" ")}
14
+ `);let m=(0,t.spawn)(e,r,{stdio:["ignore","pipe","pipe"],env:(0,s.buildSpawnEnv)(d)}),h=!1,f="",g=!1,v=e=>{h||(h=!0,clearTimeout(b),a&&a.removeEventListener("abort",y),e?p(e):c())},y=()=>{(0,i.writeDebugLog)("cli-runner.abort",{command:e,args:r,pid:m.pid??null}),m.kill("SIGTERM"),v(Error("Chat request aborted."))};a&&a.addEventListener("abort",y,{once:!0}),u&&m.pid&&u(m.pid),(0,i.writeDebugLog)("cli-runner.spawned",{command:e,args:r,pid:m.pid??null});let b=setTimeout(()=>{g=!0,(0,i.writeDebugLog)("cli-runner.timeout",{command:e,args:r,pid:m.pid??null,timeoutMs:n}),m.kill("SIGKILL"),v(Error(`CLI request timed out after ${n}ms.`))},n);m.stdout.on("data",e=>{let t=e.toString();f+=t,o(t),l&&l("stdout",t)}),m.stderr.on("data",e=>{let t=e.toString();f+=t,l&&l("stderr",t)}),m.on("error",t=>{(0,i.writeDebugLog)("cli-runner.process_error",{command:e,args:r,pid:m.pid??null,error:t}),v(t)}),m.on("close",(t,n)=>{if(!h&&!g){if((0,i.writeDebugLog)("cli-runner.close",{command:e,args:r,pid:m.pid??null,code:t??null,signal:n??null}),0===t)return void v();v(Error(`CLI command failed (exit=${t??"unknown"} signal=${n??"none"}).${f.trim()?` ${f.trim()}`:""}`))}})})}async function k({provider:e,model:t,prompt:r,identity:n,self:s,skills:a,systemContext:o,passthroughArgs:l,signal:u,onDelta:d,onLog:g,onSpawn:v}){let k,j,$,A,S=(k=!1,j=!1,$="",A=/^(?:```|~~~|#{1,6}\s|>\s|[-*+]\s|\d+\.\s)/,e=>{let t=e.replace(/\u001B\[[0-9;]*[A-Za-z]/g,"").replace(/\r\n/g,"\n").replace(/\r/g,"\n").replace(/[ \t]+\n/g,"\n").replace(/\n{3,}/g,"\n\n");if(!t.trim())return t.includes("\n")&&!k?(k=!0,"\n"):"";let r=k?t.replace(/^\n+/,"\n"):t,n=r.trimStart(),i=A.test(n),s=j&&i&&!k,a=j&&!k&&!s&&!/^\s/.test(r)&&/[.!?)]/.test($)&&/^[A-Z0-9`(]/.test(r),o=s?`
15
15
 
16
- ${r}`:l?`
17
- ${r}`:r;w=a.endsWith("\n"),$=$||a.trim().length>0;let o=a.replace(/\s+$/g,"");return o.length>0&&(E=o[o.length-1]??E),a}),S=e=>{let t=A(e);t&&v(t)},_=[];p&&_.push(p),n&&_.push(`<identity>
18
- ${n}
19
- </identity>`),s&&_.push(`<self>
20
- ${s}
21
- </self>`),l&&_.push(`<skills>
22
- ${l}
23
- </skills>`);let j=g({provider:e,model:t,prompt:r,systemPrompt:_.length>0?_.join("\n\n"):void 0,passthroughArgs:m});if(0===j.length)throw(0,i.writeDebugLog)("cli-runner.no_attempts",{provider:e,model:t,bundledCliPath:f(),isElectron:process.env.AGX_ELECTRON||null}),Error(`No CLI runner available for provider "${e}". Install agx or provider CLI.`);let C=null;for(let r of j){(0,i.writeDebugLog)("cli-runner.attempt",{provider:e,model:t,command:r.command,args:r.args,parser:r.parser});let n="claude-stream-json"===r.parser?o(S):"codex-json"===r.parser?c(S):"gemini-stream-json"===r.parser?u(S):a(S),s=r.filterThoughts?d(n):n;try{await h({command:r.command,args:r.args,timeoutMs:18e5,signal:x,onDelta:s.push,onLog:y,onSpawn:b,env:r.env}),s.flush(),(0,i.writeDebugLog)("cli-runner.success",{provider:e,model:t,command:r.command});return}catch(n){C=n instanceof Error?n:Error(String(n)),(0,i.writeDebugLog)("cli-runner.failure",{provider:e,model:t,command:r.command,error:C})}}throw C||Error("CLI execution failed.")}e.s(["buildCliAttempts",()=>g,"runCliResponse",()=>x],914350)}];
16
+ ${r}`:a?`
17
+ ${r}`:r;k=o.endsWith("\n"),j=j||o.trim().length>0;let l=o.replace(/\s+$/g,"");return l.length>0&&($=l[l.length-1]??$),o}),E=e=>{let t=S(e);t&&d(t)},L=y({provider:e,model:t,prompt:r,systemPrompt:w({identity:n,self:s,skills:a,systemContext:o}),passthroughArgs:l});if(0===L.length)throw(0,i.writeDebugLog)("cli-runner.no_attempts",{provider:e,model:t,bundledCliPath:x(),isElectron:process.env.AGX_ELECTRON||null}),Error(`No CLI runner available for provider "${e}". Install agx or provider CLI.`);let P=null;for(let r of L){(0,i.writeDebugLog)("cli-runner.attempt",{provider:e,model:t,command:r.command,args:r.args,parser:r.parser});let n="claude-stream-json"===r.parser?p(E):"codex-json"===r.parser?h(E):"gemini-stream-json"===r.parser?m(E):c(E),s=r.filterThoughts?f(n):n;try{await b({command:r.command,args:r.args,timeoutMs:18e5,signal:u,onDelta:s.push,onLog:g,onSpawn:v,env:r.env}),s.flush(),(0,i.writeDebugLog)("cli-runner.success",{provider:e,model:t,command:r.command});return}catch(n){P=n instanceof Error?n:Error(String(n)),(0,i.writeDebugLog)("cli-runner.failure",{provider:e,model:t,command:r.command,error:P})}}throw P||Error("CLI execution failed.")}function w({identity:e,self:t,skills:r,systemContext:n}){let i=[];return n&&i.push(n),i.push(function(e={}){let t=function(e={}){let t=function(e={}){return l.default.join(function(e){let t=e?.trim();if(t)return t;let r=process.env.AGX_DATA_DIR?.trim();return r||l.default.join(o.default.homedir(),".agx")}(e.agxDataDir),"skills","scheduled-task-manager","SKILL.md")}(e),r=function(e={}){var t;let r,n=(t=e.workspaceRoot,(r=t?.trim())||process.cwd()),i=u(l.default.join(n,"planning","automation-frontmatter-migration-spec.md")),s=u(l.default.join(n,"src","automations")),a=u(l.default.join(n,"src","prompt-scheduler")),o=u(l.default.join(n,"src","graph","schedule-runner.ts")),d=u(l.default.join(n,"src","graph","store.ts")),c=u(l.default.join(n,"app","api","automations","route.ts")),p=u(l.default.join(n,"app","api","prompt-jobs","route.ts"));return`---
18
+ name: scheduled-task-manager
19
+ description: Use when creating, editing, migrating, debugging, or reviewing AGX scheduled tasks, automations, prompt jobs, execution graph schedules, or frontmatter-backed automation definitions.
20
+ ---
21
+
22
+ # Scheduled Task Manager
23
+
24
+ Use this skill whenever the task touches scheduled tasks, automations, prompt jobs, execution graph schedules, or automation frontmatter.
25
+
26
+ ## Read First
27
+
28
+ - [automation-frontmatter-migration-spec](${i})
29
+ - Shared automation model lives in [src/automations](${s})
30
+ - Prompt-job scheduling lives in [src/prompt-scheduler](${a})
31
+ - Execution-graph scheduling flows through [schedule-runner.ts](${o}) and [store.ts](${d})
32
+ - API entry points are [app/api/automations/route.ts](${c}) and [app/api/prompt-jobs/route.ts](${p})
33
+
34
+ ## Guardrails
35
+
36
+ - Reject malformed frontmatter. Do not coerce invalid enum values into defaults.
37
+ - Preserve stable automation ids. Renaming a task must not create a new id.
38
+ - Keep runtime state such as last run, next run, and archival flags out of frontmatter unless the spec explicitly says otherwise.
39
+ - Preserve sub-minute scheduled cadences when they are represented as \`intervalMs\`.
40
+ - For \`execution_graph\` targets, keep \`graphId\` and \`taskId\` resolution correct. Do not assume \`definition.id === taskId\`.
41
+ - Updating an automation definition should advance user-visible \`updatedAt\`.
42
+ - Avoid eager file-backed repository initialization on request paths that should stay lazy or rollout-gated.
43
+ - Keep parser and serializer behavior round-trippable unless the spec explicitly requires normalization.
44
+
45
+ ## Working Pattern
46
+
47
+ 1. Read the migration spec before changing storage, rollout, or validation behavior.
48
+ 2. Trace the full path: parser -> validation -> repository -> scheduler -> API.
49
+ 3. Add or update regression tests for parsing, serialization, due selection, and the affected API or runtime path.
50
+ 4. Prefer small fixes in the shared automation layer over duplicating logic in adapters.
51
+
52
+ ## Validation Checklist
53
+
54
+ - Scheduled triggers keep \`cronExpr\`, \`cadence\`, and sub-minute \`intervalMs\` semantics intact.
55
+ - Condition triggers validate required fields and reject unsupported polling intervals.
56
+ - Target-specific required fields are enforced.
57
+ - Invalid definitions fail closed and are excluded instead of silently rewritten.
58
+ - Prompt-job and execution-graph adapters preserve the same runtime meaning before and after frontmatter serialization.
59
+ `}(e);try{a.default.mkdirSync(l.default.dirname(t),{recursive:!0}),(a.default.existsSync(t)?a.default.readFileSync(t,"utf8"):null)!==r&&a.default.writeFileSync(t,r,"utf8")}catch(e){console.warn("[scheduled-task-skill] Failed to install skill:",e)}return t}(e);return`<scheduled-task-skill>
60
+ Path: ${u(t)}
61
+ Read this skill whenever the task involves scheduled tasks, automations, prompt jobs, execution graph schedules, or frontmatter-backed automation definitions.
62
+ </scheduled-task-skill>`}()),e&&i.push(`<identity>
63
+ ${e}
64
+ </identity>`),t&&i.push(`<self>
65
+ ${t}
66
+ </self>`),r&&i.push(`<skills>
67
+ ${r}
68
+ </skills>`),i.length>0?i.join("\n\n"):void 0}e.s(["buildCliAttempts",()=>y,"buildCliSystemPrompt",()=>w,"runCliResponse",()=>k],914350)}];
24
69
 
25
70
  //# sourceMappingURL=lib_9f439b27._.js.map
@@ -0,0 +1,70 @@
1
+ module.exports=[157306,e=>{"use strict";var t=e.i(522734),r=e.i(446786),n=e.i(814747);let i=process.env.AGX_DATA_DIR||n.default.join(r.default.homedir(),".agx"),s=process.env.AGX_DEBUG_LOG_PATH||n.default.join(i,"logs","desktop-chat-debug.log");function a(e,t){return t instanceof Error?{name:t.name,message:t.message,stack:t.stack}:"string"==typeof t&&t.length>2e3?`${t.slice(0,2e3)}...<truncated>`:t}function l(e,r){try{t.default.mkdirSync(n.default.dirname(s),{recursive:!0});let i=JSON.stringify({ts:new Date().toISOString(),pid:process.pid,event:e,...r?{payload:r}:{}},a);t.default.appendFileSync(s,`${i}
2
+ `,"utf8")}catch{}}e.s(["writeDebugLog",()=>l])},7804,e=>{"use strict";var t=e.i(902157),r=e.i(660526),n=e.i(750227);function i(e){return e.replace(/\\/g,"/")}function s(e={}){return n.default.join(function(e){let t=e?.trim();if(t)return t;let i=process.env.AGX_DATA_DIR?.trim();return i||n.default.join(r.default.homedir(),".agx")}(e.agxDataDir),"skills","scheduled-task-manager","SKILL.md")}function a(e={}){var t;let r,s=(t=e.workspaceRoot,(r=t?.trim())||process.cwd()),l=i(n.default.join(s,"planning","automation-frontmatter-migration-spec.md")),o=i(n.default.join(s,"src","automations")),u=i(n.default.join(s,"src","prompt-scheduler")),d=i(n.default.join(s,"src","graph","schedule-runner.ts")),c=i(n.default.join(s,"src","graph","store.ts")),p=i(n.default.join(s,"app","api","automations","route.ts")),m=i(n.default.join(s,"app","api","prompt-jobs","route.ts"));return`---
3
+ name: scheduled-task-manager
4
+ description: Use when creating, editing, migrating, debugging, or reviewing AGX scheduled tasks, automations, prompt jobs, execution graph schedules, or frontmatter-backed automation definitions.
5
+ ---
6
+
7
+ # Scheduled Task Manager
8
+
9
+ Use this skill whenever the task touches scheduled tasks, automations, prompt jobs, execution graph schedules, or automation frontmatter.
10
+
11
+ ## Read First
12
+
13
+ - [automation-frontmatter-migration-spec](${l})
14
+ - Shared automation model lives in [src/automations](${o})
15
+ - Prompt-job scheduling lives in [src/prompt-scheduler](${u})
16
+ - Execution-graph scheduling flows through [schedule-runner.ts](${d}) and [store.ts](${c})
17
+ - API entry points are [app/api/automations/route.ts](${p}) and [app/api/prompt-jobs/route.ts](${m})
18
+
19
+ ## Guardrails
20
+
21
+ - Reject malformed frontmatter. Do not coerce invalid enum values into defaults.
22
+ - Preserve stable automation ids. Renaming a task must not create a new id.
23
+ - Keep runtime state such as last run, next run, and archival flags out of frontmatter unless the spec explicitly says otherwise.
24
+ - Preserve sub-minute scheduled cadences when they are represented as \`intervalMs\`.
25
+ - For \`execution_graph\` targets, keep \`graphId\` and \`taskId\` resolution correct. Do not assume \`definition.id === taskId\`.
26
+ - Updating an automation definition should advance user-visible \`updatedAt\`.
27
+ - Avoid eager file-backed repository initialization on request paths that should stay lazy or rollout-gated.
28
+ - Keep parser and serializer behavior round-trippable unless the spec explicitly requires normalization.
29
+
30
+ ## Working Pattern
31
+
32
+ 1. Read the migration spec before changing storage, rollout, or validation behavior.
33
+ 2. Trace the full path: parser -> validation -> repository -> scheduler -> API.
34
+ 3. Add or update regression tests for parsing, serialization, due selection, and the affected API or runtime path.
35
+ 4. Prefer small fixes in the shared automation layer over duplicating logic in adapters.
36
+
37
+ ## Validation Checklist
38
+
39
+ - Scheduled triggers keep \`cronExpr\`, \`cadence\`, and sub-minute \`intervalMs\` semantics intact.
40
+ - Condition triggers validate required fields and reject unsupported polling intervals.
41
+ - Target-specific required fields are enforced.
42
+ - Invalid definitions fail closed and are excluded instead of silently rewritten.
43
+ - Prompt-job and execution-graph adapters preserve the same runtime meaning before and after frontmatter serialization.
44
+ `}function l(e={}){let r=s(e),i=a(e);try{t.default.mkdirSync(n.default.dirname(r),{recursive:!0}),(t.default.existsSync(r)?t.default.readFileSync(r,"utf8"):null)!==i&&t.default.writeFileSync(r,i,"utf8")}catch(e){console.warn("[scheduled-task-skill] Failed to install skill:",e)}return r}function o(e={}){let t=l(e);return`<scheduled-task-skill>
45
+ Path: ${i(t)}
46
+ Read this skill whenever the task involves scheduled tasks, automations, prompt jobs, execution graph schedules, or frontmatter-backed automation definitions.
47
+ </scheduled-task-skill>`}e.s(["buildScheduledTaskSkillContent",()=>a,"buildScheduledTaskSkillPromptContext",()=>o,"ensureScheduledTaskSkillInstalled",()=>l,"getScheduledTaskSkillPath",()=>s])},390107,e=>{"use strict";let t;var r=e.i(233405),n=e.i(522734),i=e.i(814747),s=e.i(157306);function a(){return process.env.SHELL?.trim()||"/bin/bash"}function l(e){try{if(!/^[A-Za-z0-9._-]+$/.test(e))return!1;let t=a();return 0===(0,r.spawnSync)(t,["-lc",`command -v ${e} >/dev/null 2>&1`],{encoding:"utf8",timeout:5e3}).status}catch{return!1}}var o=e.i(7804);let u=e=>"string"==typeof e&&e.trim().length>0,d=e=>({push:e,flush:()=>{}}),c=e=>{let t="",r=0,n=!1,i=t=>{let i=t.trim();if(i)try{let t=JSON.parse(i);n=!0;let s=(e=>{if(!e||"object"!=typeof e)return"";if("assistant"===e.type)return(Array.isArray(e?.message?.content)?e.message.content:[]).flatMap(e=>e?.type==="text"&&u(e.text)?[e.text]:[]).join("");let t=e?.event;return"stream_event"===e.type&&t?.type==="content_block_delta"&&t?.delta?.type==="text_delta"&&u(t?.delta?.text)?t.delta.text:""})(t);if(!s||t?.type==="assistant"&&r>0)return;r+=s.length,e(s)}catch{n||e(`${t}
48
+ `)}};return{push:e=>{for(t+=e;;){let e=t.indexOf("\n");if(-1===e)break;i(t.slice(0,e)),t=t.slice(e+1)}},flush:()=>{t.trim()&&i(t),t=""}}},p=e=>{let t="",r=!1,n="",i=t=>{let i=t.trim();if(i)try{let t=JSON.parse(i);r=!0,t?.type==="message"&&t?.role==="assistant"&&u(t?.content)&&((t,r)=>{if(t){if(r){if(n&&t.startsWith(n)){let r=t.slice(n.length);r&&e(r),n=t;return}e(t),n+=t;return}if(n&&t.startsWith(n)){let r=t.slice(n.length);r&&e(r),n=t;return}n||(e(t),n=t)}})(t.content,t?.delta===!0)}catch{r||e(`${t}
49
+ `)}};return{push:e=>{for(t+=e;;){let e=t.indexOf("\n");if(-1===e)break;i(t.slice(0,e)),t=t.slice(e+1)}},flush:()=>{t.trim()&&i(t),t=""}}},m=e=>{let t="",r=!1,n=new Set,i=t=>{let i=t.trim();if(i)try{let t=JSON.parse(i);if(r=!0,t?.type==="item.completed"&&u(t?.item?.id)){if(n.has(t.item.id))return;n.add(t.item.id)}let s=t&&"object"==typeof t?"item.completed"===t.type&&t.item?.type==="agent_message"&&u(t.item?.text)?t.item.text:"item.delta"===t.type&&t.item?.type==="agent_message"&&u(t.delta?.text)?t.delta.text:"":"";s&&e(s)}catch{r||e(`${t}
50
+ `)}};return{push:e=>{for(t+=e;;){let e=t.indexOf("\n");if(-1===e)break;i(t.slice(0,e)),t=t.slice(e+1)}},flush:()=>{t.trim()&&i(t),t=""}}},h=e=>{let t="",r=!1,n=[/^Thinking\.\.\./,/^<think>/i],i=[/\.\.\.done thinking\.?\s*/,/<\/think>/i];return{push:s=>{t+=s,(()=>{for(;t.length>0;){if(r){let e=-1,n=0;for(let r of i){let i=t.match(r);i&&void 0!==i.index&&(i.index,i[0].length,(-1===e||i.index<e)&&(e=i.index,n=i[0].length))}if(-1!==e){t=t.slice(e+n),r=!1,t=t.replace(/^\s*\n*/,"");continue}return}for(let i of n){let n=t.match(i);if(n&&void 0!==n.index){let i=t.slice(0,n.index);i&&e.push(i),t=t.slice(n.index+n[0].length),r=!0;break}}if(r)continue;let s=Math.max(0,t.length-30);s>0&&(e.push(t.slice(0,s)),t=t.slice(s));return}})()},flush:()=>{!r&&t&&e.push(t),t="",e.flush()}}},f=new Set(["claude","gemini","ollama","codex"]);function g({provider:e,model:t,prompt:r,systemPrompt:n}){switch(e){case"claude":{let e=["-p","--verbose","--output-format","stream-json","--include-partial-messages"];return t&&e.push("--model",t),n&&e.push("--system-prompt",n),e.push(r),{command:"claude",args:e,parser:"claude-stream-json"}}case"gemini":return{command:"gemini",args:["--yolo","-p",n?`${n}
51
+
52
+ ${r}`:r,"-o","stream-json"],parser:"gemini-stream-json"};case"ollama":return{command:"ollama",args:["run",t||"llama3.2",n?`${n}
53
+
54
+ ${r}`:r],parser:"raw"};case"codex":{let e=["exec","--json"];return t&&e.push("--model",t),e.push(n?`${n}
55
+
56
+ ${r}`:r),{command:"codex",args:e,parser:"codex-json"}}case"zai":{let e=process.env.ZAI_API_KEY?.trim(),i=["-p","--verbose","--output-format","stream-json","--include-partial-messages"];return t&&i.push("--model",t),n&&i.push("--system-prompt",n),i.push(r),{command:"claude",args:i,parser:"claude-stream-json",env:{ANTHROPIC_BASE_URL:"https://api.z.ai/api/anthropic",...e?{ANTHROPIC_AUTH_TOKEN:e}:{}}}}default:return null}}function v(){let e=process.env.AGX_CLI_PATH?.trim();if(e&&n.default.existsSync(e))return e;for(let e of[i.default.resolve(process.cwd(),"..","cli","index.js"),i.default.resolve("/ROOT/lib","..","cli","index.js"),i.default.resolve(process.execPath,"..","..","Resources","cli","index.js")])if(n.default.existsSync(e))return e;return null}function x({provider:e,model:t,prompt:r,systemPrompt:n,passthroughArgs:i},s={}){let a=s.commandExists??l,o=void 0===s.bundledCliPath?v():s.bundledCliPath,u=[],d=n?`${n}
57
+
58
+ ${r}`:r;if(f.has(e)){let s=function({provider:e,model:t,prompt:r,cliPath:n,passthroughArgs:i}){let s=void 0===n?v():n;if(!s)return null;let a=[s,e,"-y","--print","--prompt",r];return t&&a.push("--model",t),i&&i.length>0&&a.push("--",...i),{command:process.execPath,args:a,parser:"raw"}}({provider:e,model:t,prompt:d,cliPath:o,passthroughArgs:i});s&&u.push(s),a("agx")&&u.push(function({provider:e,model:t,prompt:r,passthroughArgs:n}){let i=[e,"-y","--print","--prompt",r];return t&&i.push("--model",t),n&&n.length>0&&i.push("--",...n),{command:"agx",args:i,parser:"raw"}}({provider:e,model:t,prompt:d,passthroughArgs:i}));let l=g({provider:e,model:t,prompt:r,systemPrompt:n});return l&&a(l.command)&&u.push(l),u}let c=g({provider:e,model:t,prompt:r,systemPrompt:n});return c&&a(c.command)&&u.push(c),u}async function y({command:e,args:n,timeoutMs:i,signal:l,onDelta:o,onLog:u,onSpawn:d,env:c}){await new Promise((p,m)=>{let h;(0,s.writeDebugLog)("cli-runner.spawn",{command:e,args:n,timeoutMs:i,bundledCliPath:v(),isElectron:process.env.AGX_ELECTRON||null}),u&&u("stderr",`$ ${e} ${n.map(e=>e.length>80?e.slice(0,80)+"…":e).join(" ")}
59
+ `);let f=(0,r.spawn)(e,n,{stdio:["ignore","pipe","pipe"],env:(h=function(){if(void 0!==t)return t;try{let e=a(),n=(0,r.spawnSync)(e,["-lc",'printf %s "$PATH"'],{encoding:"utf8",timeout:5e3});t=(0===n.status?n.stdout.trim():"")||null}catch{t=null}return t}(),{...process.env,...h?{PATH:h}:{},CLAUDECODE:void 0,...c})}),g=!1,x="",y=!1,b=e=>{g||(g=!0,clearTimeout(w),l&&l.removeEventListener("abort",k),e?m(e):p())},k=()=>{(0,s.writeDebugLog)("cli-runner.abort",{command:e,args:n,pid:f.pid??null}),f.kill("SIGTERM"),b(Error("Chat request aborted."))};l&&l.addEventListener("abort",k,{once:!0}),d&&f.pid&&d(f.pid),(0,s.writeDebugLog)("cli-runner.spawned",{command:e,args:n,pid:f.pid??null});let w=setTimeout(()=>{y=!0,(0,s.writeDebugLog)("cli-runner.timeout",{command:e,args:n,pid:f.pid??null,timeoutMs:i}),f.kill("SIGKILL"),b(Error(`CLI request timed out after ${i}ms.`))},i);f.stdout.on("data",e=>{let t=e.toString();x+=t,o(t),u&&u("stdout",t)}),f.stderr.on("data",e=>{let t=e.toString();x+=t,u&&u("stderr",t)}),f.on("error",t=>{(0,s.writeDebugLog)("cli-runner.process_error",{command:e,args:n,pid:f.pid??null,error:t}),b(t)}),f.on("close",(t,r)=>{if(!g&&!y){if((0,s.writeDebugLog)("cli-runner.close",{command:e,args:n,pid:f.pid??null,code:t??null,signal:r??null}),0===t)return void b();b(Error(`CLI command failed (exit=${t??"unknown"} signal=${r??"none"}).${x.trim()?` ${x.trim()}`:""}`))}})})}async function b({provider:e,model:t,prompt:r,identity:n,self:i,skills:a,systemContext:l,passthroughArgs:o,signal:u,onDelta:f,onLog:g,onSpawn:b}){let w,S,j,$,A=(w=!1,S=!1,j="",$=/^(?:```|~~~|#{1,6}\s|>\s|[-*+]\s|\d+\.\s)/,e=>{let t=e.replace(/\u001B\[[0-9;]*[A-Za-z]/g,"").replace(/\r\n/g,"\n").replace(/\r/g,"\n").replace(/[ \t]+\n/g,"\n").replace(/\n{3,}/g,"\n\n");if(!t.trim())return t.includes("\n")&&!w?(w=!0,"\n"):"";let r=w?t.replace(/^\n+/,"\n"):t,n=r.trimStart(),i=$.test(n),s=S&&i&&!w,a=S&&!w&&!s&&!/^\s/.test(r)&&/[.!?)]/.test(j)&&/^[A-Z0-9`(]/.test(r),l=s?`
60
+
61
+ ${r}`:a?`
62
+ ${r}`:r;w=l.endsWith("\n"),S=S||l.trim().length>0;let o=l.replace(/\s+$/g,"");return o.length>0&&(j=o[o.length-1]??j),l}),L=e=>{let t=A(e);t&&f(t)},P=x({provider:e,model:t,prompt:r,systemPrompt:k({identity:n,self:i,skills:a,systemContext:l}),passthroughArgs:o});if(0===P.length)throw(0,s.writeDebugLog)("cli-runner.no_attempts",{provider:e,model:t,bundledCliPath:v(),isElectron:process.env.AGX_ELECTRON||null}),Error(`No CLI runner available for provider "${e}". Install agx or provider CLI.`);let E=null;for(let r of P){(0,s.writeDebugLog)("cli-runner.attempt",{provider:e,model:t,command:r.command,args:r.args,parser:r.parser});let n="claude-stream-json"===r.parser?c(L):"codex-json"===r.parser?m(L):"gemini-stream-json"===r.parser?p(L):d(L),i=r.filterThoughts?h(n):n;try{await y({command:r.command,args:r.args,timeoutMs:18e5,signal:u,onDelta:i.push,onLog:g,onSpawn:b,env:r.env}),i.flush(),(0,s.writeDebugLog)("cli-runner.success",{provider:e,model:t,command:r.command});return}catch(n){E=n instanceof Error?n:Error(String(n)),(0,s.writeDebugLog)("cli-runner.failure",{provider:e,model:t,command:r.command,error:E})}}throw E||Error("CLI execution failed.")}function k({identity:e,self:t,skills:r,systemContext:n}){let i=[];return n&&i.push(n),i.push((0,o.buildScheduledTaskSkillPromptContext)()),e&&i.push(`<identity>
63
+ ${e}
64
+ </identity>`),t&&i.push(`<self>
65
+ ${t}
66
+ </self>`),r&&i.push(`<skills>
67
+ ${r}
68
+ </skills>`),i.length>0?i.join("\n\n"):void 0}e.s(["buildCliAttempts",()=>x,"buildCliSystemPrompt",()=>k,"runCliResponse",()=>b],390107)}];
69
+
70
+ //# sourceMappingURL=lib_f81d6da9._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[750227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},400210,a=>{"use strict";let b=(0,a.i(883706).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["ArrowLeft",()=>b],400210)},165385,a=>{"use strict";let b=(0,a.i(883706).default)("settings-2",[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]);a.s(["Settings2",()=>b],165385)},325015,a=>{"use strict";let b=(0,a.i(883706).default)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]);a.s(["Play",()=>b],325015)},80386,a=>{"use strict";let b=(0,a.i(883706).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);a.s(["Terminal",()=>b],80386)},835671,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(56196),e=a.i(877214);function f({params:a}){let{slug:f}=(0,c.use)(a),{projects:g}=(0,d.useProjects)(),h=g.find(a=>a.slug===f);return(0,b.jsx)(e.default,{projectId:h?.id})}a.s(["default",()=>f])}];
1
+ module.exports=[750227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},400210,a=>{"use strict";let b=(0,a.i(883706).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["ArrowLeft",()=>b],400210)},165385,a=>{"use strict";let b=(0,a.i(883706).default)("settings-2",[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]);a.s(["Settings2",()=>b],165385)},80386,a=>{"use strict";let b=(0,a.i(883706).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);a.s(["Terminal",()=>b],80386)},325015,a=>{"use strict";let b=(0,a.i(883706).default)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]);a.s(["Play",()=>b],325015)},835671,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(56196),e=a.i(877214);function f({params:a}){let{slug:f}=(0,c.use)(a),{projects:g}=(0,d.useProjects)(),h=g.find(a=>a.slug===f);return(0,b.jsx)(e.default,{projectId:h?.id})}a.s(["default",()=>f])}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__4c9d0778._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__01e1641e._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[556704,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},750227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},400210,a=>{"use strict";let b=(0,a.i(883706).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["ArrowLeft",()=>b],400210)},321161,a=>{"use strict";let b=(0,a.i(883706).default)("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Settings",()=>b],321161)},587532,a=>{"use strict";let b=(0,a.i(883706).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);a.s(["Search",()=>b],587532)},204301,a=>{"use strict";var b=a.i(572131);let c=new Set(["spawning","running"]);function d(a,d){let e=d?.intervalMs??1500,f=d?.idleIntervalMs??1e4,[g,h]=(0,b.useState)(new Set),[i,j]=(0,b.useState)([]),[k,l]=(0,b.useState)({}),[m,n]=(0,b.useState)([]),o=(0,b.useRef)(a);o.current=a;let p=(0,b.useRef)(d?.messages??[]);p.current=d?.messages??[];let q=(0,b.useRef)(d?.setMessages);q.current=d?.setMessages;let r=(0,b.useRef)(0);(0,b.useEffect)(()=>{let a=d?.messages??[];if(a.length>0){let b=Math.max(...a.map(a=>a.timestamp));b>r.current&&(r.current=b)}},[d?.messages]);let s=(0,b.useCallback)(async()=>{let a=o.current;if(!a){h(new Set),j([]),l({}),n([]);return}let b=null;if(a.threadId?b=`/api/processes?threadId=${encodeURIComponent(a.threadId)}`:a.workspaceId&&(b=`/api/processes?workspaceId=${encodeURIComponent(a.workspaceId)}`),!b){h(new Set),j([]),l({}),n([]);return}try{let e=a.workspaceId||a.threadId,f=e?`/api/history?threadId=${encodeURIComponent(e)}&since=${r.current}`:null,g=e?`/api/chat-runs?threadId=${encodeURIComponent(e)}&limit=20`:null,i=[fetch(b)];f&&i.push(fetch(f)),g&&i.push(fetch(g));let[k,m,s]=await Promise.all(i),t=o.current;if(t?.threadId!==a.threadId||t?.workspaceId!==a.workspaceId)return;if(k.ok){let a=await k.json();j(a);let b=new Set(a.filter(a=>c.has(a.state)).map(a=>a.agentId));h(b);let d={};for(let b of a){if(!c.has(b.state))continue;let a=p.current.find(a=>a.id===b.sinceMessageId),e=a?.rootMessageId??b.sinceMessageId;d[b.agentId]={content:"",rootMessageId:e}}l(d)}if(s?.ok){var d;let a=(d=await s.json(),Array.isArray(d)?d.map(a=>{if(!a||"object"!=typeof a)return null;let b="string"==typeof a.chatRunId?a.chatRunId:"string"==typeof a.id?a.id:null,c="string"==typeof a.threadId?a.threadId:null,d="string"==typeof a.status?a.status:null,e="string"==typeof a.rootMessageId?a.rootMessageId:(a.rootMessageId,null);return b&&c&&d&&("queued"===d||"running"===d||"awaiting_user"===d||"blocked"===d||"completed"===d||"failed"===d||"cancelled"===d)?{chatRunId:b,threadId:c,rootMessageId:e,status:d,optimistic:!1}:null}).filter(a=>!!a):[]);n(a)}if(m?.ok&&q.current){let a=await m.json();if(a.length>0){let b=Math.max(...a.map(a=>a.timestamp));b>r.current&&(r.current=b),q.current(b=>{let c=new Set(b.map(a=>a.id)),d=a.filter(a=>!c.has(a.id)),e=b.map(b=>a.find(a=>a.id===b.id)??b);return 0===d.length?e:[...e,...d].sort((a,b)=>a.timestamp-b.timestamp)})}}}catch{}},[]),t=a?.threadId||a?.workspaceId||null,u=m.some(a=>"queued"===a.status||"running"===a.status),v=i.some(a=>c.has(a.state)),w=u||v?e:f;return(0,b.useEffect)(()=>{if(!t){h(new Set),j([]),l({}),n([]);return}s();let a=setInterval(s,w);return()=>clearInterval(a)},[t,w,s]),{activeAgents:g,processes:i,streaming:k,chatRuns:m,poll:s}}a.s(["useProcessPolling",()=>d])},501027,a=>{"use strict";let b=(0,a.i(883706).default)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);a.s(["Zap",()=>b],501027)},641710,a=>{"use strict";let b=(0,a.i(883706).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);a.s(["Clock",()=>b],641710)},669520,a=>{"use strict";let b=(0,a.i(883706).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);a.s(["RefreshCw",()=>b],669520)},194125,a=>{"use strict";function b(a){return a.replace(/\[reaction\s+[^\]]*\]/gi,"").replace(/\[agx:[^\]]*\]/g,"").replace(/\[checkpoint\]/g,"").replace(/\[criteria:\s*[^\]]*\]/g,"").replace(/\[done\]/g,"").replace(/\[blocked[^\]]*\]/g,"").replace(/^\[SKIP\]$/gm,"").trim()}a.s(["stripMarkers",()=>b])},331748,356283,a=>{"use strict";var b=a.i(572131);function c(a){return`threadId=${encodeURIComponent(a)}`}function d(a){return`workspaceId=${encodeURIComponent(a)}`}function e(a){let[e,f]=(0,b.useState)([]),[g,h]=(0,b.useState)([]),[i,j]=(0,b.useState)([]),k=(0,b.useRef)(a),l=(0,b.useRef)(a);k.current=a,l.current!==a&&(l.current=a,f([]),h([]),j([]));let m=(0,b.useCallback)(async a=>{let b=a?.trim()||k.current?.trim();if(!b){f([]),h([]);return}let e=c(b);try{let[a,c]=await Promise.all([fetch(`/api/history?${e}`),fetch(`/api/logs?${d(b)}`)]);if(k.current!==b)return;a.ok&&f(await a.json()),c.ok&&h(await c.json())}catch{}},[]),n=(0,b.useCallback)(async a=>{let b=a?.trim()||k.current?.trim();if(!b){f([]),h([]);return}let e=c(b);await Promise.all([fetch(`/api/history?${e}`,{method:"DELETE"}),fetch(`/api/logs?${d(b)}`,{method:"DELETE"})]),k.current===b&&(f([]),h([]))},[]),o=(0,b.useCallback)(async(a,b=10,c,d,e,g,h,i,l,m)=>{let n=c?.trim()||k.current?.trim();if(!n)return;let o=Date.now(),p=crypto.randomUUID(),q={id:p,role:"user",participantId:null,content:a,timestamp:o,rootMessageId:d||null,parentMessageId:d||null,depth:+!!d,...g&&g.length>0?{attachments:g}:{}};f(a=>[...a,q]);try{let c=await fetch("/api/chat",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:n,prompt:a,promptPrefix:l||void 0,maxRounds:b,userMessageId:p,rootMessageId:d||void 0,attachmentIds:e?.length?e:void 0,activeParticipantIds:Array.isArray(h)?h:void 0,projectSlug:i?.trim()||void 0,routing:m})}),f=await c.json().catch(()=>null);c.ok&&f?.chatRunId&&j(a=>[{chatRunId:f.chatRunId,threadId:n,rootMessageId:d||p,status:"queued",optimistic:!0,enqueuedAt:Date.now()},...a.filter(a=>a.chatRunId!==f.chatRunId)])}catch{}return p},[]),p=(0,b.useCallback)(async()=>{let a=k.current?.trim();if(a)try{await fetch(`/api/processes?workspaceId=${encodeURIComponent(a)}`,{method:"DELETE"})}catch{}},[]),q=(0,b.useCallback)(async a=>{let b=k.current?.trim();if(b)try{await fetch(`/api/processes?workspaceId=${encodeURIComponent(b)}&threadId=${encodeURIComponent(a)}`,{method:"DELETE"})}catch{}},[]);return{messages:e,setMessages:f,logs:g,sendMessage:o,loadHistory:m,clearHistory:n,clearLogs:(0,b.useCallback)(async a=>{let b=a?.trim()||k.current?.trim();b?(await fetch(`/api/logs?${d(b)}`,{method:"DELETE"}).catch(()=>{}),k.current===b&&h([])):h([])},[]),chatRuns:i,setChatRuns:j,stop:p,stopThread:q}}function f(a){if("string"==typeof a)return a.trim()||void 0}function g(a,b){let c=new Set,d=new Set;!function a(b,c){if(b)for(let d of b)c(d),a(d.content,c)}(a.content,a=>{if("participantMention"!==a.type)return;let b=a.attrs??{},e="string"==typeof b.id?b.id.trim():"",f="string"==typeof b.kind?b.kind:"agent";e&&"agent"===f&&(c.add(e),"parallel"===b.mode&&d.add(e))});let e=f(b);return{...e?{pinnedParticipantId:e}:{},mentionedParticipantIds:Array.from(c),parallelParticipantIds:Array.from(d)}}function h(a,b){let c=function(a){if(!Array.isArray(a))return[];let b=new Set,c=[];for(let d of a){if("string"!=typeof d)continue;let a=d.trim();!a||b.has(a)||(b.add(a),c.push(a))}return c}(a),d=f(b);return d&&c.includes(d)?[d,...c.filter(a=>a!==d)]:c}a.s(["useGroupChat",()=>e],331748),a.s(["extractComposerRouting",()=>g,"orderParticipantIds",()=>h],356283)},165385,a=>{"use strict";let b=(0,a.i(883706).default)("settings-2",[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]);a.s(["Settings2",()=>b],165385)},80386,a=>{"use strict";let b=(0,a.i(883706).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);a.s(["Terminal",()=>b],80386)},325015,a=>{"use strict";let b=(0,a.i(883706).default)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]);a.s(["Play",()=>b],325015)},132245,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"BailoutToCSR",{enumerable:!0,get:function(){return e}});let d=a.r(441997);function e({reason:a,children:b}){throw Object.defineProperty(new d.BailoutToCSRError(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}},307773,(a,b,c)=>{"use strict";function d(a){return a.split("/").map(a=>encodeURIComponent(a)).join("/")}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"encodeURIPath",{enumerable:!0,get:function(){return d}})},297458,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"PreloadChunks",{enumerable:!0,get:function(){return i}});let d=a.r(187924),e=a.r(935112),f=a.r(556704),g=a.r(307773),h=a.r(68063);function i({moduleIds:a}){let b=f.workAsyncStorage.getStore();if(void 0===b)return null;let c=[];if(b.reactLoadableManifest&&a){let d=b.reactLoadableManifest;for(let b of a){if(!d[b])continue;let a=d[b].files;c.push(...a)}}if(0===c.length)return null;let i=(0,h.getDeploymentIdQueryOrEmptyString)();return(0,d.jsx)(d.Fragment,{children:c.map(a=>{let c=`${b.assetPrefix}/_next/${(0,g.encodeURIPath)(a)}${i}`;return a.endsWith(".css")?(0,d.jsx)("link",{precedence:"dynamic",href:c,rel:"stylesheet",as:"style",nonce:b.nonce},a):((0,e.preload)(c,{as:"script",fetchPriority:"low",nonce:b.nonce}),null)})})}},969853,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return j}});let d=a.r(187924),e=a.r(572131),f=a.r(132245),g=a.r(297458);function h(a){return{default:a&&"default"in a?a.default:a}}let i={loader:()=>Promise.resolve(h(()=>null)),loading:null,ssr:!0},j=function(a){let b={...i,...a},c=(0,e.lazy)(()=>b.loader().then(h)),j=b.loading;function k(a){let h=j?(0,d.jsx)(j,{isLoading:!0,pastDelay:!0,error:null}):null,i=!b.ssr||!!b.loading,k=i?e.Suspense:e.Fragment,l=b.ssr?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(g.PreloadChunks,{moduleIds:b.modules}),(0,d.jsx)(c,{...a})]}):(0,d.jsx)(f.BailoutToCSR,{reason:"next/dynamic",children:(0,d.jsx)(c,{...a})});return(0,d.jsx)(k,{...i?{fallback:h}:{},children:l})}return k.displayName="LoadableComponent",k}},819721,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"default",{enumerable:!0,get:function(){return e}});let d=a.r(833354)._(a.r(969853));function e(a,b){let c={};"function"==typeof a&&(c.loader=a);let e={...c,...b};return(0,d.default)({...e,modules:e.loadableGenerated?.modules})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},45815,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(986976),e=a.i(655672),f=a.i(56196),g=a.i(877214);function h(){let[a,h]=(0,c.useState)(!1);(0,c.useEffect)(()=>{h((0,e.loadWorkspaceSidebarVisible)())},[]);let{projects:i,createProject:j,deleteProject:k}=(0,f.useProjectsWithAgents)(),{updateProject:l}=(0,f.useProjects)();return(0,b.jsxs)("div",{className:"flex h-screen bg-[var(--card-bg)] text-[var(--foreground)]",children:[(0,b.jsx)(d.WorkspaceSidebar,{threads:[],activeThreadId:null,isLoading:!1,isCreating:!1,onSelectThread:()=>{},onCreateThread:()=>{},onRenameThread:()=>{},onDeleteThread:()=>{},visible:a,onToggle:()=>{h(a=>{let b=!a;return(0,e.persistWorkspaceSidebarVisible)(b),b})},projects:i,onCreateProject:j,onUpdateProject:l,onDeleteProject:k}),(0,b.jsx)("div",{className:"flex-1 min-w-0 overflow-auto",children:(0,b.jsx)(g.default,{})})]})}a.s(["default",()=>h])}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__21a9eaef._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[750227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},400210,a=>{"use strict";let b=(0,a.i(883706).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["ArrowLeft",()=>b],400210)},27508,a=>{"use strict";var b=a.i(187924),c=a.i(238246),d=a.i(572131);function e(){let[a,c]=(0,d.useState)(null),[e,f]=(0,d.useState)("loading");(0,d.useEffect)(()=>{let a=!0;async function b(){try{let b=await fetch("/api/health");if(!a)return;if(!b.ok)return void f("error");let d=await b.json();c(d),f(d.connected?"connected":"disconnected")}catch{a&&f("error")}}b();let d=setInterval(b,3e4);return()=>{a=!1,clearInterval(d)}},[]);let g={loading:"Checking database…",connected:`${a?.adapter??"db"} connected (${a?.latencyMs??"?"}ms)`,disconnected:`${a?.adapter??"db"} disconnected`,error:"Database unreachable"};return(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-xs text-[var(--muted-foreground)]",role:"status","aria-label":g[e],children:[(0,b.jsx)("span",{className:`w-2 h-2 rounded-full ${{loading:"bg-yellow-400",connected:"bg-green-500",disconnected:"bg-red-500",error:"bg-red-500"}[e]}`}),(0,b.jsx)("span",{className:"hidden sm:inline",children:g[e]})]})}function f({children:a,fullWidth:d=!1,noFooter:f=!1}){return(0,b.jsxs)("div",{className:"h-screen flex flex-col overflow-hidden",children:[(0,b.jsx)("nav",{className:"desktop-titlebar flex-shrink-0 border-b border-[var(--card-border)] bg-[var(--card-bg)]/80 backdrop-blur-lg z-30",children:(0,b.jsx)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",children:(0,b.jsxs)("div",{className:"flex items-center justify-between h-16",children:[(0,b.jsx)("div",{className:"flex items-center gap-8",children:(0,b.jsx)(c.default,{href:"/",className:"flex items-center gap-3 group",children:(0,b.jsxs)("svg",{width:"52",height:"31",viewBox:"0 0 64 38",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"transition-transform group-hover:scale-105",children:[(0,b.jsx)("rect",{width:"64",height:"38",rx:"8",fill:"black"}),(0,b.jsxs)("g",{stroke:"white",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,b.jsx)("path",{d:"M 14 27 C 17 16 19 10 20 8 C 21 12 23 20 25 27"}),(0,b.jsx)("path",{d:"M 16 20 C 19 19 21 21 23 20"}),(0,b.jsx)("path",{d:"M 40 13 C 35 10 30 13 30 19 C 30 25 34 28 38 27 C 40 26 40 22 40 20 L 36 20"}),(0,b.jsx)("path",{d:"M 46 11 C 48 16 51 22 54 27"}),(0,b.jsx)("path",{d:"M 54 11 C 52 16 49 22 46 27"})]})]})})}),(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)(c.default,{href:"/",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Open Chat"}),(0,b.jsx)(c.default,{href:"/automations",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Automations"}),(0,b.jsx)(c.default,{href:"/skills",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Skills"}),(0,b.jsx)(c.default,{href:"/settings",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Settings"})]})]})})}),(0,b.jsx)("main",{className:`flex-1 min-h-0 flex flex-col ${d?"p-0":"p-4 sm:p-6 lg:p-8 overflow-y-auto"}`,children:a}),!f&&(0,b.jsx)("footer",{className:"flex-shrink-0 border-t border-[var(--card-border)] bg-[var(--card-bg)]/50 py-4",children:(0,b.jsxs)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 flex items-center justify-between text-xs text-[var(--muted-foreground)]",children:[(0,b.jsx)("span",{children:"AGX Board • Autonomous Agent Orchestration"}),(0,b.jsxs)("span",{className:"hidden sm:inline-flex items-center gap-3",children:[(0,b.jsx)(e,{}),(0,b.jsx)("span",{children:"Built with Next.js + Db"})]})]})})]})}function g(a){return(0,b.jsx)(d.Suspense,{fallback:(0,b.jsx)("div",{className:"h-screen flex items-center justify-center bg-[var(--background)]",children:(0,b.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full"})}),children:(0,b.jsx)(f,{...a})})}a.s(["default",()=>g],27508)},277198,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(238246),e=a.i(400210),f=a.i(492596),g=a.i(734531),h=a.i(699464),i=a.i(915618),j=a.i(781560),k=a.i(533441),l=a.i(633508),m=a.i(27508),n=a.i(815682),o=a.i(500427),p=a.i(56196);function q(){let{projects:a,isLoading:q,refetch:r,updateProject:s}=(0,p.useProjects)(),[t,u]=(0,c.useState)(null),[v,w]=(0,c.useState)(""),[x,y]=(0,c.useState)(!1),[z,A]=(0,c.useState)(null),[B,C]=(0,c.useState)(""),D=(0,c.useRef)(null),E=a.flatMap(a=>(a.repos??[]).map(b=>({repoId:b.id,name:b.name,path:b.path??"",git_url:b.git_url??"",notes:b.notes??"",projectId:a.id,projectName:a.name,projectSlug:a.slug}))),F=new Map;for(let b of a)F.set(b.id,{project:{id:b.id,name:b.name,slug:b.slug},repos:[]});for(let a of E)F.get(a.projectId).repos.push(a);let G=(0,c.useCallback)(()=>{let a=D.current;a&&(a.style.height="auto",a.style.height=`${a.scrollHeight}px`)},[]);(0,c.useEffect)(()=>{t&&D.current&&(D.current.focus(),D.current.setSelectionRange(D.current.value.length,D.current.value.length),G())},[t,G]);let H=()=>{u(null),w("")},I=(0,c.useCallback)(async b=>{y(!0);try{let c=a.find(a=>a.id===b.projectId);if(!c)return;let d=(c.repos??[]).map(a=>({id:a.id,name:a.name,path:a.path??"",git_url:a.git_url??"",notes:a.id===b.repoId?v:a.notes??""}));await s(b.projectId,{repos:d}),u(null),w("")}catch(a){console.error("Failed to update notes:",a)}finally{y(!1)}},[a,v,s]),J=(0,c.useCallback)(async b=>{let c=a.find(a=>a.id===b.projectId);if(!c)return;let d=(c.repos??[]).filter(a=>a.id!==b.repoId).map(a=>({id:a.id,name:a.name,path:a.path??"",git_url:a.git_url??"",notes:a.notes??""}));await s(b.projectId,{repos:d})},[a,s]),K=(0,c.useCallback)(async(b,c)=>{let d=a.find(a=>a.id===b);if(!d)return;let e=B.trim()||c.split("/").filter(Boolean).pop()||"folder",f=(d.repos??[]).map(a=>({id:a.id,name:a.name,path:a.path??"",git_url:a.git_url??"",notes:a.notes??""}));await s(b,{repos:[...f,{name:e,path:c}]}),A(null),C("")},[a,B,s]);return(0,b.jsx)(m.default,{children:(0,b.jsxs)("div",{className:"max-w-5xl mx-auto w-full flex flex-col min-h-full",children:[(0,b.jsxs)("header",{className:"flex items-center gap-4 py-8",children:[(0,b.jsx)(d.default,{href:"/",className:"p-2 rounded-lg border border-[var(--card-border)] bg-[var(--card-bg)] hover:border-[var(--primary)] transition-all",children:(0,b.jsx)(e.ArrowLeft,{size:16})}),(0,b.jsxs)("div",{children:[(0,b.jsx)("h1",{className:"text-3xl font-bold tracking-tight",children:"Folders"}),(0,b.jsx)("p",{className:"text-[var(--muted-foreground)] mt-1",children:"All folder paths across your projects."})]})]}),q?(0,b.jsx)("div",{className:"flex-1 flex items-center justify-center py-20",children:(0,b.jsxs)("div",{className:"flex flex-col items-center gap-4",children:[(0,b.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full"}),(0,b.jsx)("p",{className:"text-sm text-[var(--muted-foreground)] animate-pulse",children:"Loading folders..."})]})}):0===a.length?(0,b.jsxs)("div",{className:"flex-1 flex flex-col items-center justify-center py-20 animate-fade-in",children:[(0,b.jsx)("div",{className:"w-24 h-24 rounded-3xl bg-[var(--card-bg)] border border-[var(--card-border)] flex items-center justify-center text-4xl mb-6 shadow-xl",children:(0,b.jsx)(f.Folder,{size:40,className:"text-[var(--muted-foreground)]"})}),(0,b.jsx)("h2",{className:"text-2xl font-bold mb-2",children:"No projects yet"}),(0,b.jsx)("p",{className:"text-[var(--muted-foreground)] text-center max-w-sm mb-8 leading-relaxed",children:"Create a project first, then add folders to it."}),(0,b.jsx)(d.default,{href:"/projects",className:"btn-primary px-8 py-3 text-lg shadow-xl shadow-[var(--primary)]/20",children:"Go to Projects"})]}):(0,b.jsx)("div",{className:"space-y-8 pb-20",children:Array.from(F.values()).map(({project:a,repos:c})=>(0,b.jsxs)("section",{children:[(0,b.jsx)("div",{className:"flex items-center gap-2 mb-3",children:(0,b.jsx)(d.default,{href:`/projects/${a.slug}`,className:"text-sm font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors uppercase tracking-wide",children:a.name})}),(0,b.jsxs)("div",{className:"space-y-2",children:[c.map(a=>{let c=t===a.repoId;return(0,b.jsx)("div",{className:"group rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] p-4 transition-all hover:border-[var(--card-border-hover,var(--card-border))]",children:(0,b.jsxs)("div",{className:"flex items-start gap-3",children:[(0,b.jsx)("div",{className:"mt-0.5 flex-shrink-0 text-[var(--muted-foreground)]",children:a.git_url?(0,b.jsx)(g.FolderGit2,{size:16}):(0,b.jsx)(f.Folder,{size:16})}),(0,b.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,b.jsx)("button",{type:"button",onClick:()=>void J(a),className:"float-right ml-2 p-1 rounded-md text-[var(--muted-foreground)] opacity-0 group-hover:opacity-100 hover:text-red-400 hover:bg-red-400/10 transition-all","aria-label":"Remove folder",title:"Remove folder",children:(0,b.jsx)(j.Trash2,{size:14})}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:"font-medium text-sm truncate",children:a.name||a.path}),a.name&&a.path&&(0,b.jsx)("span",{className:"text-xs text-[var(--muted-foreground)] truncate font-mono",children:a.path})]}),a.git_url&&(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-0.5 font-mono truncate",children:a.git_url}),c?(0,b.jsxs)("div",{className:"mt-2",children:[(0,b.jsx)("textarea",{ref:D,value:v,onChange:a=>{w(a.target.value),G()},onKeyDown:b=>{"Enter"===b.key&&(b.metaKey||b.ctrlKey)?(b.preventDefault(),I(a)):"Escape"===b.key&&H()},placeholder:"What is this folder about? (Markdown supported)",rows:1,className:"w-full rounded-lg border border-[var(--card-border)] bg-[var(--background)] px-3 py-2 text-sm font-mono focus:border-[var(--primary)] focus:outline-none resize-none overflow-hidden"}),(0,b.jsxs)("div",{className:"flex items-center gap-2 mt-1.5",children:[(0,b.jsxs)("button",{onClick:()=>void I(a),disabled:x,className:"inline-flex items-center gap-1 px-2.5 py-1 rounded-md text-xs font-medium bg-[var(--primary)] text-white hover:opacity-90 transition-opacity disabled:opacity-50",children:[(0,b.jsx)(k.Check,{size:12}),x?"Saving...":"Save"]}),(0,b.jsxs)("button",{onClick:H,className:"inline-flex items-center gap-1 px-2.5 py-1 rounded-md text-xs font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:[(0,b.jsx)(l.X,{size:12}),"Cancel"]}),(0,b.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)] ml-auto",children:"Cmd+Enter to save"})]})]}):(0,b.jsx)("div",{className:"group/notes mt-1 cursor-pointer",onClick:()=>{u(a.repoId),w(a.notes)},children:a.notes?(0,b.jsxs)("div",{className:"text-sm text-[var(--muted-foreground)] leading-relaxed relative",children:[(0,b.jsx)(n.Markdown,{content:a.notes}),(0,b.jsx)(h.Pencil,{size:11,className:"absolute top-0 right-0 opacity-0 group-hover/notes:opacity-60 transition-opacity"})]}):(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] opacity-0 group-hover:opacity-60 transition-opacity italic",children:"Click to add notes..."})})]})]})},a.repoId)}),z===a.id?(0,b.jsxs)("div",{className:"mt-3 space-y-2",children:[(0,b.jsx)("input",{type:"text",value:B,onChange:a=>C(a.target.value),placeholder:"Folder name (optional)",className:"w-full rounded-lg border border-[var(--card-border)] bg-[var(--background)] px-3 py-2 text-sm focus:border-[var(--primary)] focus:outline-none"}),(0,b.jsx)(o.default,{initialPath:"",onSelect:b=>void K(a.id,b),onCancel:()=>{A(null),C("")}})]}):(0,b.jsxs)("button",{type:"button",onClick:()=>A(a.id),className:"mt-3 inline-flex items-center gap-1.5 text-xs font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:[(0,b.jsx)(i.Plus,{size:14}),"Add folder"]})]})]},a.id))})]})})}a.s(["default",()=>q])}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__4140bb73._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[556704,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},909270,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored.contexts.AppRouterContext},738783,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored["react-ssr"].ReactServerDOMTurbopackClient},120635,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},736313,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored.contexts.HooksClientContext},818341,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored.contexts.ServerInsertedHtml},315776,a=>{"use strict";let b=new Set(["done","passed"]),c=new Set(["pending","running","awaiting_human","blocked"]);function d(a){return`node--${a}`}function e(a){return a.replace(/_/gu," ")}function f(a,b){return"root"===b.type?b.title?.trim()||"Task Objective":"work"===b.type||"function"===b.type?b.title?.trim()||a:"gate"===b.type?b.gateType.replace(/_gate$/u,"").replace(/_/gu," ").replace(/\b\w/gu,a=>a.toUpperCase()):"fork"===b.type?"Fork":"join"===b.type?`Join (${b.joinStrategy})`:"Conditional"}function g(a){for(let[b,c]of Object.entries(a.nodes))if("root"===c.type)return{id:b,node:c};return null}function h(a){let d,e=g(a);return{mode:a.mode,graphVersion:a.graphVersion,nodeCount:Object.keys(a.nodes).length,progress:0===(d=Object.values(a.nodes).filter(a=>"skipped"!==a.status)).length?100:Math.round(d.filter(a=>b.has(a.status)).length/d.length*100),currentBlocker:function(a){let b=function(a){let b=Object.entries(a.nodes),c=b.filter(([,a])=>"gate"===a.type&&a.required),d=c.find(([,a])=>"failed"===a.status);if(d)return d[0];let e=c.find(([,a])=>"awaiting_human"===a.status);if(e)return e[0];let f=c.find(([,a])=>"pending"===a.status||"running"===a.status);if(f)return f[0];let g=b.find(([,a])=>"work"===a.type&&"blocked"===a.status);return g?.[0]??null}(a);if(!b)return null;let c=a.nodes[b];return c?{nodeId:b,label:f(b,c),status:c.status,required:"gate"===c.type&&c.required}:null}(a),derivedStatus:function(a){let b=Object.keys(a.nodes).length;if(0===b)return"INTAKE";if(1===b){let b=Object.values(a.nodes)[0];if("root"===b.type&&!b.graphCreated)return"INTAKE"}return Object.values(a.nodes).some(a=>c.has(a.status))?"PROGRESS":"DONE"}(a),hasRootNode:null!==e,rootNodeId:e?.id??null}}a.s(["buildGraphSummary",()=>h,"findRootNode",()=>g,"formatNodeStatusLabel",()=>e,"getNodeLabel",()=>f,"toNodeStatusClass",()=>d],315776)},27508,a=>{"use strict";var b=a.i(187924),c=a.i(238246),d=a.i(572131);function e(){let[a,c]=(0,d.useState)(null),[e,f]=(0,d.useState)("loading");(0,d.useEffect)(()=>{let a=!0;async function b(){try{let b=await fetch("/api/health");if(!a)return;if(!b.ok)return void f("error");let d=await b.json();c(d),f(d.connected?"connected":"disconnected")}catch{a&&f("error")}}b();let d=setInterval(b,3e4);return()=>{a=!1,clearInterval(d)}},[]);let g={loading:"Checking database…",connected:`${a?.adapter??"db"} connected (${a?.latencyMs??"?"}ms)`,disconnected:`${a?.adapter??"db"} disconnected`,error:"Database unreachable"};return(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-xs text-[var(--muted-foreground)]",role:"status","aria-label":g[e],children:[(0,b.jsx)("span",{className:`w-2 h-2 rounded-full ${{loading:"bg-yellow-400",connected:"bg-green-500",disconnected:"bg-red-500",error:"bg-red-500"}[e]}`}),(0,b.jsx)("span",{className:"hidden sm:inline",children:g[e]})]})}function f({children:a,fullWidth:d=!1,noFooter:f=!1}){return(0,b.jsxs)("div",{className:"h-screen flex flex-col overflow-hidden",children:[(0,b.jsx)("nav",{className:"desktop-titlebar flex-shrink-0 border-b border-[var(--card-border)] bg-[var(--card-bg)]/80 backdrop-blur-lg z-30",children:(0,b.jsx)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",children:(0,b.jsxs)("div",{className:"flex items-center justify-between h-16",children:[(0,b.jsx)("div",{className:"flex items-center gap-8",children:(0,b.jsx)(c.default,{href:"/",className:"flex items-center gap-3 group",children:(0,b.jsxs)("svg",{width:"52",height:"31",viewBox:"0 0 64 38",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"transition-transform group-hover:scale-105",children:[(0,b.jsx)("rect",{width:"64",height:"38",rx:"8",fill:"black"}),(0,b.jsxs)("g",{stroke:"white",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,b.jsx)("path",{d:"M 14 27 C 17 16 19 10 20 8 C 21 12 23 20 25 27"}),(0,b.jsx)("path",{d:"M 16 20 C 19 19 21 21 23 20"}),(0,b.jsx)("path",{d:"M 40 13 C 35 10 30 13 30 19 C 30 25 34 28 38 27 C 40 26 40 22 40 20 L 36 20"}),(0,b.jsx)("path",{d:"M 46 11 C 48 16 51 22 54 27"}),(0,b.jsx)("path",{d:"M 54 11 C 52 16 49 22 46 27"})]})]})})}),(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)(c.default,{href:"/",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Open Chat"}),(0,b.jsx)(c.default,{href:"/automations",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Automations"}),(0,b.jsx)(c.default,{href:"/skills",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Skills"}),(0,b.jsx)(c.default,{href:"/settings",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Settings"})]})]})})}),(0,b.jsx)("main",{className:`flex-1 min-h-0 flex flex-col ${d?"p-0":"p-4 sm:p-6 lg:p-8 overflow-y-auto"}`,children:a}),!f&&(0,b.jsx)("footer",{className:"flex-shrink-0 border-t border-[var(--card-border)] bg-[var(--card-bg)]/50 py-4",children:(0,b.jsxs)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 flex items-center justify-between text-xs text-[var(--muted-foreground)]",children:[(0,b.jsx)("span",{children:"AGX Board • Autonomous Agent Orchestration"}),(0,b.jsxs)("span",{className:"hidden sm:inline-flex items-center gap-3",children:[(0,b.jsx)(e,{}),(0,b.jsx)("span",{children:"Built with Next.js + Db"})]})]})})]})}function g(a){return(0,b.jsx)(d.Suspense,{fallback:(0,b.jsx)("div",{className:"h-screen flex items-center justify-center bg-[var(--background)]",children:(0,b.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full"})}),children:(0,b.jsx)(f,{...a})})}a.s(["default",()=>g],27508)},177593,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(238246),e=a.i(50944),f=a.i(27508);function g({project:a,onEdit:c,onDelete:d,onClick:e,onManageTasks:f}){let g=a.repos&&a.repos.length>0;return(0,b.jsxs)("div",{onClick:()=>e?.(a),className:`p-5 surface-card space-y-4
1
+ module.exports=[556704,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},909270,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored.contexts.AppRouterContext},738783,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored["react-ssr"].ReactServerDOMTurbopackClient},120635,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},736313,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored.contexts.HooksClientContext},818341,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored.contexts.ServerInsertedHtml},27508,a=>{"use strict";var b=a.i(187924),c=a.i(238246),d=a.i(572131);function e(){let[a,c]=(0,d.useState)(null),[e,f]=(0,d.useState)("loading");(0,d.useEffect)(()=>{let a=!0;async function b(){try{let b=await fetch("/api/health");if(!a)return;if(!b.ok)return void f("error");let d=await b.json();c(d),f(d.connected?"connected":"disconnected")}catch{a&&f("error")}}b();let d=setInterval(b,3e4);return()=>{a=!1,clearInterval(d)}},[]);let g={loading:"Checking database…",connected:`${a?.adapter??"db"} connected (${a?.latencyMs??"?"}ms)`,disconnected:`${a?.adapter??"db"} disconnected`,error:"Database unreachable"};return(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-xs text-[var(--muted-foreground)]",role:"status","aria-label":g[e],children:[(0,b.jsx)("span",{className:`w-2 h-2 rounded-full ${{loading:"bg-yellow-400",connected:"bg-green-500",disconnected:"bg-red-500",error:"bg-red-500"}[e]}`}),(0,b.jsx)("span",{className:"hidden sm:inline",children:g[e]})]})}function f({children:a,fullWidth:d=!1,noFooter:f=!1}){return(0,b.jsxs)("div",{className:"h-screen flex flex-col overflow-hidden",children:[(0,b.jsx)("nav",{className:"desktop-titlebar flex-shrink-0 border-b border-[var(--card-border)] bg-[var(--card-bg)]/80 backdrop-blur-lg z-30",children:(0,b.jsx)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",children:(0,b.jsxs)("div",{className:"flex items-center justify-between h-16",children:[(0,b.jsx)("div",{className:"flex items-center gap-8",children:(0,b.jsx)(c.default,{href:"/",className:"flex items-center gap-3 group",children:(0,b.jsxs)("svg",{width:"52",height:"31",viewBox:"0 0 64 38",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"transition-transform group-hover:scale-105",children:[(0,b.jsx)("rect",{width:"64",height:"38",rx:"8",fill:"black"}),(0,b.jsxs)("g",{stroke:"white",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,b.jsx)("path",{d:"M 14 27 C 17 16 19 10 20 8 C 21 12 23 20 25 27"}),(0,b.jsx)("path",{d:"M 16 20 C 19 19 21 21 23 20"}),(0,b.jsx)("path",{d:"M 40 13 C 35 10 30 13 30 19 C 30 25 34 28 38 27 C 40 26 40 22 40 20 L 36 20"}),(0,b.jsx)("path",{d:"M 46 11 C 48 16 51 22 54 27"}),(0,b.jsx)("path",{d:"M 54 11 C 52 16 49 22 46 27"})]})]})})}),(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)(c.default,{href:"/",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Open Chat"}),(0,b.jsx)(c.default,{href:"/automations",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Automations"}),(0,b.jsx)(c.default,{href:"/skills",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Skills"}),(0,b.jsx)(c.default,{href:"/settings",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Settings"})]})]})})}),(0,b.jsx)("main",{className:`flex-1 min-h-0 flex flex-col ${d?"p-0":"p-4 sm:p-6 lg:p-8 overflow-y-auto"}`,children:a}),!f&&(0,b.jsx)("footer",{className:"flex-shrink-0 border-t border-[var(--card-border)] bg-[var(--card-bg)]/50 py-4",children:(0,b.jsxs)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 flex items-center justify-between text-xs text-[var(--muted-foreground)]",children:[(0,b.jsx)("span",{children:"AGX Board • Autonomous Agent Orchestration"}),(0,b.jsxs)("span",{className:"hidden sm:inline-flex items-center gap-3",children:[(0,b.jsx)(e,{}),(0,b.jsx)("span",{children:"Built with Next.js + Db"})]})]})})]})}function g(a){return(0,b.jsx)(d.Suspense,{fallback:(0,b.jsx)("div",{className:"h-screen flex items-center justify-center bg-[var(--background)]",children:(0,b.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full"})}),children:(0,b.jsx)(f,{...a})})}a.s(["default",()=>g],27508)},315776,a=>{"use strict";let b=new Set(["done","passed"]),c=new Set(["pending","running","awaiting_human","blocked"]);function d(a){return`node--${a}`}function e(a){return a.replace(/_/gu," ")}function f(a,b){return"root"===b.type?b.title?.trim()||"Task Objective":"work"===b.type||"function"===b.type?b.title?.trim()||a:"gate"===b.type?b.gateType.replace(/_gate$/u,"").replace(/_/gu," ").replace(/\b\w/gu,a=>a.toUpperCase()):"fork"===b.type?"Fork":"join"===b.type?`Join (${b.joinStrategy})`:"Conditional"}function g(a){for(let[b,c]of Object.entries(a.nodes))if("root"===c.type)return{id:b,node:c};return null}function h(a){let d,e=g(a);return{mode:a.mode,graphVersion:a.graphVersion,nodeCount:Object.keys(a.nodes).length,progress:0===(d=Object.values(a.nodes).filter(a=>"skipped"!==a.status)).length?100:Math.round(d.filter(a=>b.has(a.status)).length/d.length*100),currentBlocker:function(a){let b=function(a){let b=Object.entries(a.nodes),c=b.filter(([,a])=>"gate"===a.type&&a.required),d=c.find(([,a])=>"failed"===a.status);if(d)return d[0];let e=c.find(([,a])=>"awaiting_human"===a.status);if(e)return e[0];let f=c.find(([,a])=>"pending"===a.status||"running"===a.status);if(f)return f[0];let g=b.find(([,a])=>"work"===a.type&&"blocked"===a.status);return g?.[0]??null}(a);if(!b)return null;let c=a.nodes[b];return c?{nodeId:b,label:f(b,c),status:c.status,required:"gate"===c.type&&c.required}:null}(a),derivedStatus:function(a){let b=Object.keys(a.nodes).length;if(0===b)return"INTAKE";if(1===b){let b=Object.values(a.nodes)[0];if("root"===b.type&&!b.graphCreated)return"INTAKE"}return Object.values(a.nodes).some(a=>c.has(a.status))?"PROGRESS":"DONE"}(a),hasRootNode:null!==e,rootNodeId:e?.id??null}}a.s(["buildGraphSummary",()=>h,"findRootNode",()=>g,"formatNodeStatusLabel",()=>e,"getNodeLabel",()=>f,"toNodeStatusClass",()=>d],315776)},177593,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(238246),e=a.i(50944),f=a.i(27508);function g({project:a,onEdit:c,onDelete:d,onClick:e,onManageTasks:f}){let g=a.repos&&a.repos.length>0;return(0,b.jsxs)("div",{onClick:()=>e?.(a),className:`p-5 surface-card space-y-4
2
2
  ${e?"cursor-pointer hover:border-gray-300 dark:hover:border-gray-700 hover:shadow-md active:scale-[0.99]":""}`,children:[(0,b.jsxs)("div",{className:"flex items-start justify-between gap-4",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("h3",{className:"text-lg font-semibold",children:a.name}),(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] tracking-wide uppercase",children:a.slug})]}),(0,b.jsxs)("div",{className:"flex flex-col items-end gap-2",children:[(0,b.jsxs)("span",{className:"text-[11px] font-semibold text-[var(--muted-foreground)]",children:["Updated ",new Date(a.updated_at).toLocaleDateString()]}),(c||d||f)&&(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[f&&(0,b.jsx)("button",{type:"button",onClick:b=>{b.stopPropagation(),f(a)},className:"text-[11px] font-semibold px-2 py-1 rounded-full border border-[var(--card-border)] bg-[var(--background)] hover:border-[var(--primary)] hover:text-[var(--primary)] transition-all",children:"Tasks"}),c&&(0,b.jsx)("button",{type:"button",onClick:b=>{b.stopPropagation(),c(a)},className:"text-[11px] font-semibold px-2 py-1 rounded-full border border-[var(--card-border)] hover:border-[var(--primary)] hover:text-[var(--primary)] transition-all bg-[var(--background)]",children:"Edit"}),d&&(0,b.jsx)("button",{type:"button",onClick:b=>{b.stopPropagation(),d(a)},className:"text-[11px] font-semibold px-2 py-1 rounded-full border border-[var(--card-border)] text-[var(--destructive)] hover:border-[var(--destructive)] transition-all bg-[var(--background)]",children:"Delete"})]})]})]}),a.description&&(0,b.jsx)("p",{className:"text-sm text-[var(--foreground)] line-clamp-2",children:a.description}),a.ci_cd_info&&(0,b.jsxs)("div",{className:"text-sm",children:[(0,b.jsx)("p",{className:"text-[var(--muted-foreground)] text-[12px] uppercase tracking-wide",children:"CI / CD"}),(0,b.jsx)("p",{className:"text-[14px] text-[var(--accent)] font-medium truncate",children:a.ci_cd_info})]}),a.metadata&&Object.keys(a.metadata).length>0&&(0,b.jsxs)("div",{className:"p-3 rounded-lg bg-[var(--muted)]/20 border border-dashed border-[var(--card-border)] space-y-1",children:[(0,b.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-wide text-[var(--muted-foreground)]",children:"Metadata"}),(0,b.jsx)("div",{className:"space-y-1",children:Object.entries(a.metadata??{}).filter(([a])=>"undefined"!==a&&""!==a).map(([a,c])=>(0,b.jsxs)("div",{className:"text-[12px] text-[var(--muted-foreground)] flex justify-between",children:[(0,b.jsx)("span",{className:"font-semibold",children:a}),(0,b.jsx)("span",{className:"truncate text-right",children:"string"==typeof c?c:JSON.stringify(c)})]},a))})]}),(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsx)("span",{className:"text-[12px] uppercase tracking-wider text-[var(--muted-foreground)]",children:"Repositories"}),(0,b.jsx)("span",{className:"text-[12px] text-[var(--muted-foreground)]",children:g?`${a.repos.length} connected`:"Unlinked"})]}),g?(0,b.jsxs)("div",{className:"mt-3 space-y-2",children:[a.repos.slice(0,2).map(a=>(0,b.jsxs)("div",{className:"p-2 rounded-lg border border-[var(--card-border)] bg-[var(--background)] text-[11px]",children:[(0,b.jsx)("div",{className:"font-semibold truncate",children:a.name}),a.path&&(0,b.jsx)("p",{className:"text-[10px] text-[var(--muted-foreground)] truncate",children:a.path})]},a.id)),a.repos.length>2&&(0,b.jsxs)("p",{className:"text-[10px] text-center text-[var(--muted-foreground)]",children:["+ ",a.repos.length-2," more"]})]}):(0,b.jsx)("p",{className:"mt-3 text-[12px] text-[var(--muted-foreground)]",children:"No repositories added yet."})]})]})}var h=a.i(18984),i=a.i(999581);let j={in_progress:{title:"In Progress",icon:"🔄",color:"var(--status-in-progress)",description:"Currently being worked on by the daemon"},blocked:{title:"Blocked",icon:"🚧",color:"var(--status-blocked)",description:"Waiting for input or resolution"},queued:{title:"Queued",icon:"📋",color:"var(--status-queued)",description:"Ready to be picked up"},completed:{title:"Completed",icon:"✅",color:"var(--status-completed)",description:"Successfully finished"}};function k({tasks:a,onSelectTask:c,onStatusChange:d}){if(0===a.length)return(0,b.jsxs)("div",{className:"text-center py-20 animate-fade-in",children:[(0,b.jsx)("div",{className:"inline-flex items-center justify-center w-16 h-16 rounded-2xl bg-[var(--card-bg)] border border-[var(--card-border)] mb-4",children:(0,b.jsx)("span",{className:"text-3xl",children:"📋"})}),(0,b.jsx)("h3",{className:"text-lg font-semibold mb-2",children:"No tasks yet"}),(0,b.jsx)("p",{className:"text-[var(--muted-foreground)] text-sm max-w-md mx-auto",children:"Create your first task to get started. Tasks will appear here organized by status."})]});let e=a.filter(a=>"in_progress"===a.status),f=a.filter(a=>"queued"===a.status),g=a.filter(a=>"blocked"===a.status),h=a.filter(a=>"completed"===a.status||"failed"===a.status),k=(a,e)=>{if(0===e.length)return null;let f=j[a];return(0,b.jsxs)("section",{className:"mb-8 animate-fade-in-up",children:[(0,b.jsxs)("div",{className:"flex items-center gap-3 mb-4",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 px-3 py-1.5 rounded-lg",style:{backgroundColor:`color-mix(in srgb, ${f.color} 10%, transparent)`},children:[(0,b.jsx)("span",{className:"text-lg",children:f.icon}),(0,b.jsx)("h3",{className:"text-sm font-semibold",style:{color:f.color},children:f.title}),(0,b.jsx)("span",{className:"px-2 py-0.5 rounded-full text-xs font-medium",style:{backgroundColor:`color-mix(in srgb, ${f.color} 15%, transparent)`,color:f.color},children:e.length})]}),(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] hidden sm:block",children:f.description})]}),(0,b.jsx)("div",{className:"grid gap-3 sm:grid-cols-2 lg:grid-cols-3",children:e.map((a,e)=>(0,b.jsx)("div",{className:"animate-fade-in-up",style:{animationDelay:`${50*e}ms`},children:(0,b.jsx)(i.default,{task:a,onClick:()=>c?.(a),onStatusChange:d?b=>d(a.id,b):void 0})},a.id))})]})};return(0,b.jsxs)("div",{children:[k("in_progress",e),k("blocked",g),k("queued",f),k("completed",h)]})}var l=a.i(659102),m=a.i(56196);function n(){let a=(0,e.useRouter)(),i=(0,e.useSearchParams)(),{projects:j,isLoading:k,error:l,refetch:n,createProject:p,updateProject:q,deleteProject:r}=(0,m.useProjects)(),s=(0,h.useProjectFormState)(),[t,u]=(0,c.useState)(null),[v,w]=(0,c.useState)(!1),[x,y]=(0,c.useState)(null),{form:z,repos:A,handleRepoChange:B,addRepo:C,removeRepo:D,resetForm:E,hydrateFromProject:F,isSubmitting:G,setIsSubmitting:H,formError:I,setFormError:J,setForm:K}=s,L=()=>{u(null),E(),w(!0)},M=a=>{u(a),F(a),w(!0)};(0,c.useEffect)(()=>{let a=i.get("edit");if(!a||0===j.length||v)return;let b=j.find(b=>b.id===a);b&&M(b)},[i,j,v]);let N=(0,c.useCallback)(b=>{b.slug&&a.push(`/projects/${b.slug}`)},[a]),O=(0,c.useCallback)(a=>{y(a)},[]),P=(0,c.useCallback)(()=>{y(null)},[]),Q=()=>{E(),w(!1),u(null),i.get("edit")&&a.replace("/projects")},R=async()=>{if(!z.name.trim())return void J("Project name is required");let a=A.find(a=>a.name.trim()&&!a.path.trim());if(a)return void J(`Local path is required for folder "${a.name}"`);J(null),H(!0);let b=(0,h.createProjectPayload)(z,A);try{t?await q(t.id,b):await p(b),Q()}catch(a){J(a instanceof Error?a.message:"Failed to save project")}finally{H(!1)}},S=async a=>{if(window.confirm(`Delete project "${a.name}"? This cannot be undone.`))try{await r(a.id)}catch(a){alert(a instanceof Error?a.message:"Failed to delete project")}};return(0,b.jsx)(f.default,{children:(0,b.jsxs)("div",{className:"max-w-7xl mx-auto w-full flex flex-col min-h-full",children:[(0,b.jsxs)("header",{className:"flex flex-col sm:flex-row sm:items-center justify-between gap-4 py-8",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("h1",{className:"text-3xl font-bold tracking-tight",children:"Projects"}),(0,b.jsx)("p",{className:"text-[var(--muted-foreground)] mt-1",children:"Manage your projects and their folder contexts."})]}),(0,b.jsxs)("div",{className:"flex gap-3",children:[(0,b.jsx)("button",{onClick:n,className:"px-4 py-2 rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] hover:border-[var(--primary)] transition-all text-sm font-medium",children:"Refresh"}),(0,b.jsx)("button",{onClick:L,className:"btn-primary px-6 py-2 shadow-lg shadow-[var(--primary)]/20",children:"+ New Project"})]})]}),k?(0,b.jsx)("div",{className:"flex-1 flex items-center justify-center py-20",children:(0,b.jsxs)("div",{className:"flex flex-col items-center gap-4",children:[(0,b.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full"}),(0,b.jsx)("p",{className:"text-sm text-[var(--muted-foreground)] animate-pulse",children:"Loading projects..."})]})}):0===j.length?(0,b.jsxs)("div",{className:"flex-1 flex flex-col items-center justify-center py-20 animate-fade-in",children:[(0,b.jsx)("div",{className:"w-24 h-24 rounded-3xl bg-[var(--card-bg)] border border-[var(--card-border)] flex items-center justify-center text-4xl mb-6 shadow-xl",children:"📂"}),(0,b.jsx)("h2",{className:"text-2xl font-bold mb-2",children:"You have no projects"}),(0,b.jsx)("p",{className:"text-[var(--muted-foreground)] text-center max-w-sm mb-8 leading-relaxed",children:"Create your first project to start organizing your tasks and connecting your folders."}),(0,b.jsx)("button",{onClick:L,className:"btn-primary px-8 py-3 text-lg shadow-xl shadow-[var(--primary)]/20",children:"Create a Project"})]}):(0,b.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6 pb-20",children:[(0,b.jsxs)(d.default,{href:"/projects/orphans",className:"p-5 rounded-2xl border border-dashed border-[var(--card-border)] bg-[var(--card-bg)] shadow-sm space-y-4 transition-all hover:border-[var(--primary)] hover:shadow-md",children:[(0,b.jsx)("div",{className:"flex items-start justify-between gap-4",children:(0,b.jsxs)("div",{children:[(0,b.jsx)("h3",{className:"text-lg font-semibold",children:"Orphan Tasks"}),(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] tracking-wide uppercase",children:"Unassigned"})]})}),(0,b.jsx)("p",{className:"text-sm text-[var(--foreground)]",children:"Review tasks with empty project assignment and move them into the correct project."})]}),j.map(a=>(0,b.jsx)(g,{project:a,onEdit:M,onDelete:S,onManageTasks:O,onClick:N},a.id))]}),(0,b.jsx)(h.default,{isOpen:v,onClose:Q,onSubmit:R,editingProject:t,form:z,repos:A,isSubmitting:G,formError:I,onFieldChange:(a,b)=>K(c=>({...c,[a]:b})),onRepoChange:B,onAddRepo:C,onRemoveRepo:D}),x&&(0,b.jsx)(o,{project:x,onClose:P})]})})}function o({project:a,onClose:c}){let{tasks:d,isLoading:e}=(0,l.useTasks)({project:a.slug});return(0,b.jsx)("div",{className:"modal-backdrop p-2 sm:p-4 z-50 overflow-y-auto flex items-center justify-center",onClick:a=>a.target===a.currentTarget&&c(),children:(0,b.jsxs)("div",{className:"modal-content w-full max-w-5xl mx-2 sm:mx-auto bg-[var(--card-bg)] rounded-3xl border border-[var(--card-border)] shadow-2xl animate-scale-in flex flex-col max-h-[90vh]",children:[(0,b.jsxs)("div",{className:"px-4 py-4 sm:px-8 sm:py-6 border-b border-[var(--card-border)] flex items-center justify-between flex-shrink-0",children:[(0,b.jsxs)("div",{children:[(0,b.jsxs)("h2",{className:"text-xl font-bold",children:["Tasks for ",a.name]}),(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-0.5",children:"Viewing all tasks associated with this project."})]}),(0,b.jsx)("button",{onClick:c,className:"p-2 rounded-xl hover:bg-[var(--muted)]/50 transition-colors",children:(0,b.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,b.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),(0,b.jsx)("div",{className:"flex-1 overflow-y-auto p-8",children:e?(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center py-20",children:[(0,b.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full mb-4"}),(0,b.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"Loading project tasks..."})]}):(0,b.jsx)(k,{tasks:d})}),(0,b.jsx)("div",{className:"px-8 py-6 border-t border-[var(--card-border)] flex justify-end flex-shrink-0",children:(0,b.jsx)("button",{onClick:c,className:"px-6 py-2 rounded-xl border border-[var(--card-border)] hover:bg-[var(--muted)]/50 transition-colors text-sm font-medium",children:"Close"})})]})})}a.s(["default",()=>n],177593)}];
3
3
 
4
- //# sourceMappingURL=%5Broot-of-the-server%5D__ffbc2e98._.js.map
4
+ //# sourceMappingURL=%5Broot-of-the-server%5D__5e73414b._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[556704,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},750227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},909270,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored.contexts.AppRouterContext},738783,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored["react-ssr"].ReactServerDOMTurbopackClient},120635,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},736313,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored.contexts.HooksClientContext},818341,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored.contexts.ServerInsertedHtml},400210,a=>{"use strict";let b=(0,a.i(883706).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["ArrowLeft",()=>b],400210)},563588,a=>{"use strict";let b=(0,a.i(883706).default)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]);a.s(["MessageSquare",()=>b],563588)},669520,a=>{"use strict";let b=(0,a.i(883706).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);a.s(["RefreshCw",()=>b],669520)},194125,a=>{"use strict";function b(a){return a.replace(/\[reaction\s+[^\]]*\]/gi,"").replace(/\[agx:[^\]]*\]/g,"").replace(/\[checkpoint\]/g,"").replace(/\[criteria:\s*[^\]]*\]/g,"").replace(/\[done\]/g,"").replace(/\[blocked[^\]]*\]/g,"").replace(/^\[SKIP\]$/gm,"").trim()}a.s(["stripMarkers",()=>b])},501027,a=>{"use strict";let b=(0,a.i(883706).default)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);a.s(["Zap",()=>b],501027)},641710,a=>{"use strict";let b=(0,a.i(883706).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);a.s(["Clock",()=>b],641710)},660246,a=>{"use strict";let b=(0,a.i(883706).default)("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]]);a.s(["Users",()=>b],660246)},284505,a=>{"use strict";let b=(0,a.i(883706).default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);a.s(["Download",()=>b],284505)},104416,a=>{"use strict";let b=(0,a.i(883706).default)("shield-check",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);a.s(["ShieldCheck",()=>b],104416)},485552,a=>{"use strict";let b=(0,a.i(883706).default)("brain-circuit",[["path",{d:"M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z",key:"l5xja"}],["path",{d:"M9 13a4.5 4.5 0 0 0 3-4",key:"10igwf"}],["path",{d:"M6.003 5.125A3 3 0 0 0 6.401 6.5",key:"105sqy"}],["path",{d:"M3.477 10.896a4 4 0 0 1 .585-.396",key:"ql3yin"}],["path",{d:"M6 18a4 4 0 0 1-1.967-.516",key:"2e4loj"}],["path",{d:"M12 13h4",key:"1ku699"}],["path",{d:"M12 18h6a2 2 0 0 1 2 2v1",key:"105ag5"}],["path",{d:"M12 8h8",key:"1lhi5i"}],["path",{d:"M16 8V5a2 2 0 0 1 2-2",key:"u6izg6"}],["circle",{cx:"16",cy:"13",r:".5",key:"ry7gng"}],["circle",{cx:"18",cy:"3",r:".5",key:"1aiba7"}],["circle",{cx:"20",cy:"21",r:".5",key:"yhc1fs"}],["circle",{cx:"20",cy:"8",r:".5",key:"1e43v0"}]]);a.s(["BrainCircuit",()=>b],485552)}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__9ad05ace._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[556704,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},750227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},909270,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored.contexts.AppRouterContext},738783,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored["react-ssr"].ReactServerDOMTurbopackClient},120635,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},736313,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored.contexts.HooksClientContext},818341,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored.contexts.ServerInsertedHtml},80386,a=>{"use strict";let b=(0,a.i(883706).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);a.s(["Terminal",()=>b],80386)},215040,a=>{"use strict";let b={threadSidebarVisible:!1,workspaceRoots:[],homeSearchConsent:!1,hasCompletedFirstRun:!1,fileIgnorePatterns:[]};function c(a){return a&&"object"==typeof a?{threadSidebarVisible:"boolean"==typeof a.threadSidebarVisible?a.threadSidebarVisible:b.threadSidebarVisible,workspaceRoots:Array.isArray(a.workspaceRoots)?a.workspaceRoots.filter(a=>"string"==typeof a):b.workspaceRoots,homeSearchConsent:"boolean"==typeof a.homeSearchConsent?a.homeSearchConsent:b.homeSearchConsent,hasCompletedFirstRun:"boolean"==typeof a.hasCompletedFirstRun?a.hasCompletedFirstRun:b.hasCompletedFirstRun,fileIgnorePatterns:Array.isArray(a.fileIgnorePatterns)?a.fileIgnorePatterns.filter(a=>"string"==typeof a):b.fileIgnorePatterns}:b}let d="/api/userPreferences";function e(a){return a.json().then(a=>a&&"object"==typeof a?c(a.preferences??a):c(a)).catch(()=>c(null))}function f(a){return a.statusText||`Failed to reach ${d} (${a.status})`}async function g(){let a=await fetch(d,{cache:"no-store"});if(!a.ok)throw Error(f(a));return e(a)}async function h(a){let b=await fetch(d,{method:"POST",headers:{"Content-Type":"application/json"},cache:"no-store",body:JSON.stringify({preferences:a})});if(!b.ok)throw Error(f(b));return e(b)}a.s(["fetchUserPreferences",()=>g,"updateUserPreferences",()=>h],215040)},860614,a=>{"use strict";let b=(0,a.i(883706).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);a.s(["ExternalLink",()=>b],860614)},808406,a=>{"use strict";let b=(0,a.i(883706).default)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]]);a.s(["Sparkles",()=>b],808406)},915618,a=>{"use strict";let b=(0,a.i(883706).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);a.s(["Plus",()=>b],915618)},633508,a=>{"use strict";let b=(0,a.i(883706).default)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);a.s(["X",()=>b],633508)},405784,a=>{"use strict";let b=(0,a.i(883706).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);a.s(["ChevronDown",()=>b],405784)},47349,(a,b,c)=>{"use strict";var d=a.r(572131);d.useState,d.useEffect,d.useLayoutEffect,d.useDebugValue,c.useSyncExternalStore=void 0!==d.useSyncExternalStore?d.useSyncExternalStore:function(a,b){return b()}},487610,(a,b,c)=>{"use strict";b.exports=a.r(47349)},997514,(a,b,c)=>{"use strict";var d=a.r(572131),e=a.r(487610),f="function"==typeof Object.is?Object.is:function(a,b){return a===b&&(0!==a||1/a==1/b)||a!=a&&b!=b},g=e.useSyncExternalStore,h=d.useRef,i=d.useEffect,j=d.useMemo,k=d.useDebugValue;c.useSyncExternalStoreWithSelector=function(a,b,c,d,e){var l=h(null);if(null===l.current){var m={hasValue:!1,value:null};l.current=m}else m=l.current;var n=g(a,(l=j(function(){function a(a){if(!i){if(i=!0,g=a,a=d(a),void 0!==e&&m.hasValue){var b=m.value;if(e(b,a))return h=b}return h=a}if(b=h,f(g,a))return b;var c=d(a);return void 0!==e&&e(b,c)?(g=a,b):(g=a,h=c)}var g,h,i=!1,j=void 0===c?null:c;return[function(){return a(b())},null===j?void 0:function(){return a(j())}]},[b,c,d,e]))[0],l[1]);return i(function(){m.hasValue=!0,m.value=n},[n]),k(n),n}},864442,(a,b,c)=>{"use strict";b.exports=a.r(997514)},441997,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={BailoutToCSRError:function(){return g},isBailoutToCSRError:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f="BAILOUT_TO_CLIENT_SIDE_RENDERING";class g extends Error{constructor(a){super(`Bail out to client-side rendering: ${a}`),this.reason=a,this.digest=f}}function h(a){return"object"==typeof a&&null!==a&&"digest"in a&&a.digest===f}},883706,a=>{"use strict";var b=a.i(572131);let c=(...a)=>a.filter((a,b,c)=>!!a&&""!==a.trim()&&c.indexOf(a)===b).join(" ").trim(),d=a=>{let b=a.replace(/^([A-Z])|[\s-_]+(\w)/g,(a,b,c)=>c?c.toUpperCase():b.toLowerCase());return b.charAt(0).toUpperCase()+b.slice(1)};var e={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let f=(0,b.forwardRef)(({color:a="currentColor",size:d=24,strokeWidth:f=2,absoluteStrokeWidth:g,className:h="",children:i,iconNode:j,...k},l)=>(0,b.createElement)("svg",{ref:l,...e,width:d,height:d,stroke:a,strokeWidth:g?24*Number(f)/Number(d):f,className:c("lucide",h),...!i&&!(a=>{for(let b in a)if(b.startsWith("aria-")||"role"===b||"title"===b)return!0;return!1})(k)&&{"aria-hidden":"true"},...k},[...j.map(([a,c])=>(0,b.createElement)(a,c)),...Array.isArray(i)?i:[i]])),g=(a,e)=>{let g=(0,b.forwardRef)(({className:g,...h},i)=>(0,b.createElement)(f,{ref:i,iconNode:e,className:c(`lucide-${d(a).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${a}`,g),...h}));return g.displayName=d(a),g};a.s(["default",()=>g],883706)},68063,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={getDeploymentId:function(){return f},getDeploymentIdQueryOrEmptyString:function(){return g}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(){return!1}function g(){return""}},739118,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={DEFAULT_SEGMENT_KEY:function(){return l},NOT_FOUND_SEGMENT_KEY:function(){return m},PAGE_SEGMENT_KEY:function(){return k},addSearchParamsIfPageSegment:function(){return i},computeSelectedLayoutSegment:function(){return j},getSegmentValue:function(){return f},getSelectedLayoutSegmentPath:function(){return function a(b,c,d=!0,e=[]){let g;if(d)g=b[1][c];else{let a=b[1];g=a.children??Object.values(a)[0]}if(!g)return e;let h=f(g[0]);return!h||h.startsWith(k)?e:(e.push(h),a(g,c,!1,e))}},isGroupSegment:function(){return g},isParallelRouteSegment:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(a){return Array.isArray(a)?a[1]:a}function g(a){return"("===a[0]&&a.endsWith(")")}function h(a){return a.startsWith("@")&&"@children"!==a}function i(a,b){if(a.includes(k)){let a=JSON.stringify(b);return"{}"!==a?k+"?"+a:k}return a}function j(a,b){if(!a||0===a.length)return null;let c="children"===b?a[0]:a[a.length-1];return c===l?null:c}let k="__PAGE__",l="__DEFAULT__",m="/_not-found"},533441,a=>{"use strict";let b=(0,a.i(883706).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);a.s(["Check",()=>b],533441)},546842,a=>{"use strict";let b=(0,a.i(883706).default)("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]);a.s(["User",()=>b],546842)},65151,a=>{"use strict";let b=(0,a.i(883706).default)("circle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);a.s(["Circle",()=>b],65151)},292e3,a=>{"use strict";let b=(0,a.i(883706).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);a.s(["AlertCircle",()=>b],292e3)},561069,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(50944),e=a.i(238246);let f=[{id:"jane",name:"Jane",provider:"claude",model:"claude-opus-4-6",color:"#6366f1"},{id:"cody",name:"Cody",provider:"claude",model:"gpt-5.3",color:"#f59e0b"},{id:"flint",name:"Flint",provider:"ollama",model:"gemini-3.1-pro",color:"#10b981"},{id:"jewel",name:"Jewel",provider:"claude",model:"glm-5",color:"#ec4899"}],g=Date.now(),h=[{id:"demo-0",role:"user",participantId:null,content:"We're losing 40% of users at the onboarding config screen. How should we fix this?",timestamp:g-9e3},{id:"demo-1",role:"assistant",participantId:"jane",content:"The core problem is we're asking for setup before showing value. Users don't know *why* they need an API key yet. Flip the order — let them see the product working first, then ask for config when they actually need it.",timestamp:g-8e3},{id:"demo-2",role:"assistant",participantId:"cody",content:"We can prove that with a zero-config starter task: detect `package.json` or `.git` on load, run a local project analysis. No API key needed, instant result. That alone should cut the drop-off significantly.",timestamp:g-7e3},{id:"demo-3",role:"assistant",participantId:"flint",content:"Risk: if we defer config entirely, the *second* interaction fails when there's no provider configured. We'd just move the drop-off from step 1 to step 2. Need to handle that transition carefully.",timestamp:g-6e3},{id:"demo-4",role:"assistant",participantId:"jewel",content:"Graduated fidelity solves this. First task is local-only and always succeeds. When they trigger something that needs an LLM, prompt for the key *inline* — right where they need it, not on a separate page. Context-sensitive setup.",timestamp:g-5e3},{id:"demo-5",role:"assistant",participantId:"jane",content:"Exactly. Setup instructions are only useful at the moment you need them. Front-loading them is just anxiety. I'd also suggest we track `welcome_view → first_action → first_result` to measure the actual impact.",timestamp:g-4e3},{id:"demo-6",role:"assistant",participantId:"cody",content:'Here\'s a concrete implementation plan:\n1. Add framework detection on page load\n2. Show "Map this project" as default starter task\n3. Run it client-side with zero dependencies\n4. Persist the result so they land in a live session, not a blank page',timestamp:g-3e3},{id:"demo-7",role:"assistant",participantId:"flint",content:"One more thing — keep state from that first task. When they transition to the real workspace, they should land mid-session. Starting over after the demo kills momentum and trust.",timestamp:g-2e3},{id:"demo-8",role:"assistant",participantId:"jewel",content:"Summary: land → see agents working → join with one click → first task runs instantly → setup happens only when needed. Every step earns the next. Shall I draft the implementation spec?",timestamp:g-1e3}];var i=a.i(520138),j=a.i(815682),k=a.i(546842);function l(){let[a,d]=(0,c.useState)(0),g=(0,c.useRef)(null);(0,c.useEffect)(()=>{if(a>=h.length)return;let b=setTimeout(()=>{d(a=>a+1)},0===a?300:400);return()=>clearTimeout(b)},[a]),(0,c.useEffect)(()=>{g.current?.scrollTo({top:g.current.scrollHeight,behavior:"smooth"})},[a]);let l=Object.fromEntries(f.map(a=>[a.id,a]));return(0,b.jsx)("div",{ref:g,className:"flex-1 overflow-y-auto px-4 py-6",children:(0,b.jsx)("div",{className:"max-w-2xl mx-auto space-y-4",children:h.slice(0,a).map((a,c)=>{let d="user"===a.role,f=a.participantId?l[a.participantId]:null;return(0,b.jsxs)("div",{className:"flex gap-3 animate-in fade-in slide-in-from-bottom-2 duration-300",style:{animationDelay:`${50*c}ms`},children:[(0,b.jsx)("div",{className:"w-8 h-8 rounded-full overflow-hidden border border-[var(--border)] shadow-sm shrink-0 mt-0.5 flex items-center justify-center bg-[var(--muted)]",children:d?(0,b.jsx)(k.User,{className:"w-4 h-4 text-[var(--muted-foreground)]"}):f?(0,b.jsx)(e.default,{href:`/agents/${f.id}`,className:"w-full h-full hover:ring-2 hover:ring-blue-300 rounded-full transition-shadow",children:(0,b.jsx)("img",{src:(0,i.agentAvatarUrl)(f.id,32,f.color),alt:f.name,className:"w-full h-full object-cover"})}):null}),(0,b.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,b.jsxs)("div",{className:"flex items-baseline gap-2",children:[!d&&f?(0,b.jsx)(e.default,{href:`/agents/${f.id}`,className:"text-[12px] font-bold tracking-wide uppercase hover:underline",style:{color:f.color||"#64748b"},children:f.name}):(0,b.jsx)("span",{className:"text-[12px] font-bold tracking-wide uppercase",style:{color:d?"#334155":"#64748b"},children:d?"You":"Agent"}),!d&&f?.model&&(0,b.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)] font-medium",children:f.model})]}),(0,b.jsx)("div",{className:"text-[14px] text-[var(--foreground)] leading-relaxed mt-0.5",children:(0,b.jsx)(j.Markdown,{content:a.content,isUser:d})})]})]},a.id)})})})}var m=a.i(215040),n=a.i(533441),o=a.i(65151),p=a.i(705151),q=a.i(405784),r=a.i(860614),s=a.i(80386),t=a.i(292e3);let u=[{id:"claude",label:"Claude Code",bin:"claude",description:"Recommended for the fastest AGX setup.",installCmd:"npm install -g @anthropic-ai/claude-code",docsUrl:"https://docs.anthropic.com/en/docs/claude-code/quickstart",recommended:!0,statusLabel:"Installed"},{id:"codex",label:"Codex",bin:"codex",description:"OpenAI's terminal coding agent.",installCmd:"npm install -g @openai/codex",docsUrl:"https://github.com/openai/codex",statusLabel:"Installed"},{id:"gemini",label:"Gemini CLI",bin:"gemini",description:"Google's CLI for Gemini workflows.",installCmd:"npm install -g @google/gemini-cli",docsUrl:"https://github.com/google-gemini/gemini-cli",statusLabel:"Installed"},{id:"ollama",label:"Ollama",bin:"ollama",description:"Run local models on your machine.",installCmd:"curl -fsSL https://ollama.com/install.sh | sh",docsUrl:"https://ollama.com/download",statusLabel:"Installed"},{id:"zai",label:"Z.AI",bin:"claude",description:"Use the Claude CLI with your Z.AI API key.",installCmd:"npm install -g @anthropic-ai/claude-code",docsUrl:"https://z.ai/",installNote:"Requires Claude Code plus a configured Z.AI API key.",statusLabel:"Via Claude CLI"}].map(a=>({id:a.id,name:a.label,description:a.description,installCmd:a.installCmd,docsUrl:a.docsUrl,installNote:a.installNote,recommended:a.recommended}));function v({text:a}){let[d,e]=(0,c.useState)(!1),f=(0,c.useCallback)(()=>{navigator.clipboard.writeText(a).then(()=>{e(!0),setTimeout(()=>e(!1),2e3)})},[a]);return(0,b.jsx)("button",{type:"button",onClick:f,className:"p-1.5 rounded-md hover:bg-[var(--muted)] transition-colors text-[var(--muted-foreground)] hover:text-[var(--foreground)]",title:"Copy command",children:d?(0,b.jsx)(n.Check,{className:"w-3.5 h-3.5 text-emerald-500"}):(0,b.jsx)(p.Copy,{className:"w-3.5 h-3.5"})})}function w({cli:a}){let[d,e]=(0,c.useState)(!1);return(0,b.jsxs)("div",{className:"border border-[var(--card-border)] rounded-lg overflow-hidden",children:[(0,b.jsxs)("button",{type:"button",onClick:()=>e(!d),className:"w-full flex items-center gap-3 px-4 py-3 hover:bg-[var(--item-hover-bg)] transition-colors text-left",children:[(0,b.jsx)("div",{className:"shrink-0",children:null===a.installed?(0,b.jsx)(o.Circle,{className:"w-4 h-4 text-[var(--muted-foreground)] animate-pulse"}):a.installed?(0,b.jsx)("div",{className:"w-5 h-5 rounded-full bg-emerald-100 dark:bg-emerald-900/30 flex items-center justify-center",children:(0,b.jsx)(n.Check,{className:"w-3 h-3 text-emerald-600 dark:text-emerald-400"})}):(0,b.jsx)(o.Circle,{className:"w-4 h-4 text-[var(--muted-foreground)]"})}),(0,b.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:"text-[14px] font-semibold text-[var(--foreground)]",children:a.name}),a.recommended&&!a.installed&&(0,b.jsx)("span",{className:"text-[11px] font-medium text-[var(--foreground)] bg-[var(--secondary)] px-1.5 py-0.5 rounded",children:"Recommended"}),a.installed&&(0,b.jsx)("span",{className:"text-[11px] font-medium text-emerald-600 dark:text-emerald-400 bg-emerald-50 dark:bg-emerald-900/20 px-1.5 py-0.5 rounded",children:"Installed"})]}),(0,b.jsx)("p",{className:"text-[12px] text-[var(--muted-foreground)]",children:a.description})]}),!a.installed&&(0,b.jsx)(q.ChevronDown,{className:`w-4 h-4 text-[var(--muted-foreground)] transition-transform ${d?"rotate-180":""}`})]}),d&&!a.installed&&(0,b.jsxs)("div",{className:"px-4 pb-3 border-t border-[var(--card-border)]",children:[(0,b.jsxs)("div",{className:"mt-3 flex items-center gap-2 bg-[var(--secondary)] rounded-md px-3 py-2 font-mono text-[13px] text-[var(--foreground)]",children:[(0,b.jsx)(s.Terminal,{className:"w-3.5 h-3.5 text-[var(--muted-foreground)] shrink-0"}),(0,b.jsx)("code",{className:"flex-1 overflow-x-auto whitespace-nowrap",children:a.installCmd}),(0,b.jsx)(v,{text:a.installCmd})]}),(0,b.jsxs)("a",{href:a.docsUrl,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1 mt-2 text-[12px] text-[var(--primary)] hover:underline",children:["Documentation",(0,b.jsx)(r.ExternalLink,{className:"w-3 h-3"})]}),a.installNote?(0,b.jsx)("p",{className:"mt-2 text-[12px] text-[var(--muted-foreground)]",children:a.installNote}):null]})]})}function x(){let a=(0,d.useRouter)(),[e,f]=(0,c.useState)("checking"),[g,h]=(0,c.useState)(u.map(a=>({...a,installed:null}))),[i,j]=(0,c.useState)(!1),[k,n]=(0,c.useState)(!1),[o,p]=(0,c.useState)(null);(0,c.useEffect)(()=>{let a=!1;return(async()=>{try{let b=await fetch("/api/providers",{cache:"no-store"});if(a)return;if(!b.ok)return void f("error");let c=await b.json(),d=new Set(Array.isArray(c?.providers)?c.providers.filter(a=>a&&"string"==typeof a.id).map(a=>a.id):[]),e=u.map(a=>({...a,installed:d.has(a.id)}));!a&&(h(e),e.some(a=>a.installed)?a||f("ready"):a||(f("needs-setup"),j(!0)))}catch{a||f("error")}})(),()=>{a=!0}},[]);let r=(0,c.useCallback)(async()=>{n(!0),p(null);try{await (0,m.updateUserPreferences)({hasCompletedFirstRun:!0});let b=await fetch("/api/daemon");if(!b.ok)throw Error(`Could not read daemon status (${b.status})`);if(!(await b.json()).running){let a=await fetch("/api/daemon",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({workers:1})});if(!a.ok)throw Error(`Could not start AGX (${a.status})`)}a.push("/")}catch(a){console.error("Failed to finalize onboarding",a),p(a instanceof Error?a.message:"Could not complete setup. Try again.")}finally{n(!1)}},[a]),s=g.filter(a=>a.installed).length,v=g.length,x=g.find(a=>a.recommended)??g[0]??null,y=g.filter(a=>!a.recommended);return(0,b.jsxs)("div",{className:"h-screen w-full flex flex-col bg-[var(--secondary)]",children:[(0,b.jsx)("div",{className:"text-center pt-10 pb-2 px-4",children:(0,b.jsx)("h1",{className:"text-[15px] font-medium text-[var(--app-shell-soft-text)] tracking-wide",children:"Chat with a team of AI agents across Claude, Gemini, Codex, Ollama, and Z.AI"})}),(0,b.jsx)(l,{}),(0,b.jsxs)("div",{className:"pb-8 pt-4 flex flex-col items-center gap-3 px-4",children:["ready"===e&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("button",{type:"button",onClick:r,disabled:k,className:"inline-flex items-center gap-2 px-8 py-3.5 bg-[var(--foreground)] text-[var(--background)] text-[15px] font-semibold rounded-xl hover:opacity-90 transition-all duration-200 shadow-lg shadow-[var(--foreground)]/10 hover:-translate-y-0.5 disabled:opacity-60 disabled:hover:translate-y-0",children:k?"Starting AGX...":"Launch AGX"}),(0,b.jsxs)("button",{type:"button",onClick:()=>j(a=>!a),className:"text-[13px] text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors flex items-center gap-1",children:[(0,b.jsxs)("span",{className:"text-emerald-600",children:[s,"/",v," providers"]}),(0,b.jsx)(q.ChevronDown,{className:`w-3.5 h-3.5 transition-transform ${i?"rotate-180":""}`})]})]}),"checking"===e&&(0,b.jsx)("span",{className:"text-[13px] text-[var(--app-shell-soft-text)]",children:"Detecting installed providers..."}),"needs-setup"===e&&(0,b.jsxs)("div",{className:"text-center",children:[(0,b.jsx)("p",{className:"text-[14px] font-medium text-amber-600 dark:text-amber-400",children:"No providers found"}),(0,b.jsx)("p",{className:"text-[13px] text-[var(--muted-foreground)] mt-1",children:"Start with Claude Code, then come back to launch AGX"})]}),"error"===e&&(0,b.jsx)("span",{className:"text-[13px] text-[var(--app-shell-soft-text)]",children:"Could not check installed providers"}),o?(0,b.jsxs)("div",{className:"inline-flex items-center gap-2 rounded-lg border border-amber-200 bg-amber-50 px-3 py-2 text-[12px] text-amber-800",children:[(0,b.jsx)(t.AlertCircle,{className:"h-3.5 w-3.5 shrink-0"}),o]}):null]}),i&&(0,b.jsx)("div",{className:"border-t border-[var(--card-border)] bg-[var(--background)] overflow-y-auto",children:(0,b.jsxs)("div",{className:"max-w-lg mx-auto px-4 py-6",children:[(0,b.jsxs)("div",{className:"mb-4",children:[(0,b.jsx)("h2",{className:"text-[14px] font-semibold text-[var(--foreground)]",children:"Provider CLIs"}),(0,b.jsx)("p",{className:"mt-1 text-[12px] text-[var(--muted-foreground)]",children:"Install one provider to finish setup. Claude Code is the best first path."})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[x?(0,b.jsxs)("div",{className:"rounded-xl border border-[var(--card-border)] bg-[var(--secondary)] p-4",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-[var(--muted-foreground)]",children:"Start Here"}),(0,b.jsx)("span",{className:"rounded bg-[var(--background)] px-2 py-0.5 text-[11px] font-medium text-[var(--foreground)]",children:x.name})]}),(0,b.jsx)("p",{className:"mt-2 text-[13px] text-[var(--foreground)]",children:"Install Claude Code first if you want the shortest path into AGX."}),(0,b.jsx)("p",{className:"mt-1 text-[12px] text-[var(--muted-foreground)]",children:"Codex, Gemini CLI, Ollama, and Z.AI are available if they fit your stack better."})]}):null,x?(0,b.jsx)(w,{cli:x},x.id):null]}),y.length>0?(0,b.jsxs)("div",{className:"mt-4",children:[(0,b.jsx)("h3",{className:"mb-2 text-[12px] font-semibold uppercase tracking-wide text-[var(--muted-foreground)]",children:"Other Options"}),(0,b.jsx)("div",{className:"space-y-2",children:y.map(a=>(0,b.jsx)(w,{cli:a},a.id))})]}):null,"ready"===e?(0,b.jsx)("p",{className:"text-[12px] text-[var(--muted-foreground)] mt-4 text-center",children:"Setup is complete. Launch AGX when you're ready."}):null,"needs-setup"===e?(0,b.jsx)("p",{className:"text-[12px] text-[var(--muted-foreground)] mt-4 text-center",children:"After installing a CLI, restart AGX so it can detect the new provider."}):null]})})]})}a.s(["default",()=>x],561069)}];
1
+ module.exports=[556704,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},750227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},909270,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored.contexts.AppRouterContext},738783,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored["react-ssr"].ReactServerDOMTurbopackClient},120635,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},736313,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored.contexts.HooksClientContext},818341,(a,b,c)=>{"use strict";b.exports=a.r(342602).vendored.contexts.ServerInsertedHtml},80386,a=>{"use strict";let b=(0,a.i(883706).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);a.s(["Terminal",()=>b],80386)},215040,a=>{"use strict";let b={threadSidebarVisible:!1,workspaceRoots:[],homeSearchConsent:!1,hasCompletedFirstRun:!1,fileIgnorePatterns:[]};function c(a){return a&&"object"==typeof a?{threadSidebarVisible:"boolean"==typeof a.threadSidebarVisible?a.threadSidebarVisible:b.threadSidebarVisible,workspaceRoots:Array.isArray(a.workspaceRoots)?a.workspaceRoots.filter(a=>"string"==typeof a):b.workspaceRoots,homeSearchConsent:"boolean"==typeof a.homeSearchConsent?a.homeSearchConsent:b.homeSearchConsent,hasCompletedFirstRun:"boolean"==typeof a.hasCompletedFirstRun?a.hasCompletedFirstRun:b.hasCompletedFirstRun,fileIgnorePatterns:Array.isArray(a.fileIgnorePatterns)?a.fileIgnorePatterns.filter(a=>"string"==typeof a):b.fileIgnorePatterns}:b}let d="/api/userPreferences";function e(a){return a.json().then(a=>a&&"object"==typeof a?c(a.preferences??a):c(a)).catch(()=>c(null))}function f(a){return a.statusText||`Failed to reach ${d} (${a.status})`}async function g(){let a=await fetch(d,{cache:"no-store"});if(!a.ok)throw Error(f(a));return e(a)}async function h(a){let b=await fetch(d,{method:"POST",headers:{"Content-Type":"application/json"},cache:"no-store",body:JSON.stringify({preferences:a})});if(!b.ok)throw Error(f(b));return e(b)}a.s(["fetchUserPreferences",()=>g,"updateUserPreferences",()=>h],215040)},860614,a=>{"use strict";let b=(0,a.i(883706).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);a.s(["ExternalLink",()=>b],860614)},441997,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={BailoutToCSRError:function(){return g},isBailoutToCSRError:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f="BAILOUT_TO_CLIENT_SIDE_RENDERING";class g extends Error{constructor(a){super(`Bail out to client-side rendering: ${a}`),this.reason=a,this.digest=f}}function h(a){return"object"==typeof a&&null!==a&&"digest"in a&&a.digest===f}},808406,a=>{"use strict";let b=(0,a.i(883706).default)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]]);a.s(["Sparkles",()=>b],808406)},546842,a=>{"use strict";let b=(0,a.i(883706).default)("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]);a.s(["User",()=>b],546842)},405784,a=>{"use strict";let b=(0,a.i(883706).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);a.s(["ChevronDown",()=>b],405784)},533441,a=>{"use strict";let b=(0,a.i(883706).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);a.s(["Check",()=>b],533441)},47349,(a,b,c)=>{"use strict";var d=a.r(572131);d.useState,d.useEffect,d.useLayoutEffect,d.useDebugValue,c.useSyncExternalStore=void 0!==d.useSyncExternalStore?d.useSyncExternalStore:function(a,b){return b()}},487610,(a,b,c)=>{"use strict";b.exports=a.r(47349)},997514,(a,b,c)=>{"use strict";var d=a.r(572131),e=a.r(487610),f="function"==typeof Object.is?Object.is:function(a,b){return a===b&&(0!==a||1/a==1/b)||a!=a&&b!=b},g=e.useSyncExternalStore,h=d.useRef,i=d.useEffect,j=d.useMemo,k=d.useDebugValue;c.useSyncExternalStoreWithSelector=function(a,b,c,d,e){var l=h(null);if(null===l.current){var m={hasValue:!1,value:null};l.current=m}else m=l.current;var n=g(a,(l=j(function(){function a(a){if(!i){if(i=!0,g=a,a=d(a),void 0!==e&&m.hasValue){var b=m.value;if(e(b,a))return h=b}return h=a}if(b=h,f(g,a))return b;var c=d(a);return void 0!==e&&e(b,c)?(g=a,b):(g=a,h=c)}var g,h,i=!1,j=void 0===c?null:c;return[function(){return a(b())},null===j?void 0:function(){return a(j())}]},[b,c,d,e]))[0],l[1]);return i(function(){m.hasValue=!0,m.value=n},[n]),k(n),n}},864442,(a,b,c)=>{"use strict";b.exports=a.r(997514)},883706,a=>{"use strict";var b=a.i(572131);let c=(...a)=>a.filter((a,b,c)=>!!a&&""!==a.trim()&&c.indexOf(a)===b).join(" ").trim(),d=a=>{let b=a.replace(/^([A-Z])|[\s-_]+(\w)/g,(a,b,c)=>c?c.toUpperCase():b.toLowerCase());return b.charAt(0).toUpperCase()+b.slice(1)};var e={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let f=(0,b.forwardRef)(({color:a="currentColor",size:d=24,strokeWidth:f=2,absoluteStrokeWidth:g,className:h="",children:i,iconNode:j,...k},l)=>(0,b.createElement)("svg",{ref:l,...e,width:d,height:d,stroke:a,strokeWidth:g?24*Number(f)/Number(d):f,className:c("lucide",h),...!i&&!(a=>{for(let b in a)if(b.startsWith("aria-")||"role"===b||"title"===b)return!0;return!1})(k)&&{"aria-hidden":"true"},...k},[...j.map(([a,c])=>(0,b.createElement)(a,c)),...Array.isArray(i)?i:[i]])),g=(a,e)=>{let g=(0,b.forwardRef)(({className:g,...h},i)=>(0,b.createElement)(f,{ref:i,iconNode:e,className:c(`lucide-${d(a).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${a}`,g),...h}));return g.displayName=d(a),g};a.s(["default",()=>g],883706)},68063,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={getDeploymentId:function(){return f},getDeploymentIdQueryOrEmptyString:function(){return g}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(){return!1}function g(){return""}},739118,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={DEFAULT_SEGMENT_KEY:function(){return l},NOT_FOUND_SEGMENT_KEY:function(){return m},PAGE_SEGMENT_KEY:function(){return k},addSearchParamsIfPageSegment:function(){return i},computeSelectedLayoutSegment:function(){return j},getSegmentValue:function(){return f},getSelectedLayoutSegmentPath:function(){return function a(b,c,d=!0,e=[]){let g;if(d)g=b[1][c];else{let a=b[1];g=a.children??Object.values(a)[0]}if(!g)return e;let h=f(g[0]);return!h||h.startsWith(k)?e:(e.push(h),a(g,c,!1,e))}},isGroupSegment:function(){return g},isParallelRouteSegment:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(a){return Array.isArray(a)?a[1]:a}function g(a){return"("===a[0]&&a.endsWith(")")}function h(a){return a.startsWith("@")&&"@children"!==a}function i(a,b){if(a.includes(k)){let a=JSON.stringify(b);return"{}"!==a?k+"?"+a:k}return a}function j(a,b){if(!a||0===a.length)return null;let c="children"===b?a[0]:a[a.length-1];return c===l?null:c}let k="__PAGE__",l="__DEFAULT__",m="/_not-found"},633508,a=>{"use strict";let b=(0,a.i(883706).default)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);a.s(["X",()=>b],633508)},915618,a=>{"use strict";let b=(0,a.i(883706).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);a.s(["Plus",()=>b],915618)},65151,a=>{"use strict";let b=(0,a.i(883706).default)("circle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);a.s(["Circle",()=>b],65151)},292e3,a=>{"use strict";let b=(0,a.i(883706).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);a.s(["AlertCircle",()=>b],292e3)},561069,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(50944),e=a.i(238246);let f=[{id:"jane",name:"Jane",provider:"claude",model:"claude-opus-4-6",color:"#6366f1"},{id:"cody",name:"Cody",provider:"claude",model:"gpt-5.3",color:"#f59e0b"},{id:"flint",name:"Flint",provider:"ollama",model:"gemini-3.1-pro",color:"#10b981"},{id:"jewel",name:"Jewel",provider:"claude",model:"glm-5",color:"#ec4899"}],g=Date.now(),h=[{id:"demo-0",role:"user",participantId:null,content:"We're losing 40% of users at the onboarding config screen. How should we fix this?",timestamp:g-9e3},{id:"demo-1",role:"assistant",participantId:"jane",content:"The core problem is we're asking for setup before showing value. Users don't know *why* they need an API key yet. Flip the order — let them see the product working first, then ask for config when they actually need it.",timestamp:g-8e3},{id:"demo-2",role:"assistant",participantId:"cody",content:"We can prove that with a zero-config starter task: detect `package.json` or `.git` on load, run a local project analysis. No API key needed, instant result. That alone should cut the drop-off significantly.",timestamp:g-7e3},{id:"demo-3",role:"assistant",participantId:"flint",content:"Risk: if we defer config entirely, the *second* interaction fails when there's no provider configured. We'd just move the drop-off from step 1 to step 2. Need to handle that transition carefully.",timestamp:g-6e3},{id:"demo-4",role:"assistant",participantId:"jewel",content:"Graduated fidelity solves this. First task is local-only and always succeeds. When they trigger something that needs an LLM, prompt for the key *inline* — right where they need it, not on a separate page. Context-sensitive setup.",timestamp:g-5e3},{id:"demo-5",role:"assistant",participantId:"jane",content:"Exactly. Setup instructions are only useful at the moment you need them. Front-loading them is just anxiety. I'd also suggest we track `welcome_view → first_action → first_result` to measure the actual impact.",timestamp:g-4e3},{id:"demo-6",role:"assistant",participantId:"cody",content:'Here\'s a concrete implementation plan:\n1. Add framework detection on page load\n2. Show "Map this project" as default starter task\n3. Run it client-side with zero dependencies\n4. Persist the result so they land in a live session, not a blank page',timestamp:g-3e3},{id:"demo-7",role:"assistant",participantId:"flint",content:"One more thing — keep state from that first task. When they transition to the real workspace, they should land mid-session. Starting over after the demo kills momentum and trust.",timestamp:g-2e3},{id:"demo-8",role:"assistant",participantId:"jewel",content:"Summary: land → see agents working → join with one click → first task runs instantly → setup happens only when needed. Every step earns the next. Shall I draft the implementation spec?",timestamp:g-1e3}];var i=a.i(520138),j=a.i(815682),k=a.i(546842);function l(){let[a,d]=(0,c.useState)(0),g=(0,c.useRef)(null);(0,c.useEffect)(()=>{if(a>=h.length)return;let b=setTimeout(()=>{d(a=>a+1)},0===a?300:400);return()=>clearTimeout(b)},[a]),(0,c.useEffect)(()=>{g.current?.scrollTo({top:g.current.scrollHeight,behavior:"smooth"})},[a]);let l=Object.fromEntries(f.map(a=>[a.id,a]));return(0,b.jsx)("div",{ref:g,className:"flex-1 overflow-y-auto px-4 py-6",children:(0,b.jsx)("div",{className:"max-w-2xl mx-auto space-y-4",children:h.slice(0,a).map((a,c)=>{let d="user"===a.role,f=a.participantId?l[a.participantId]:null;return(0,b.jsxs)("div",{className:"flex gap-3 animate-in fade-in slide-in-from-bottom-2 duration-300",style:{animationDelay:`${50*c}ms`},children:[(0,b.jsx)("div",{className:"w-8 h-8 rounded-full overflow-hidden border border-[var(--border)] shadow-sm shrink-0 mt-0.5 flex items-center justify-center bg-[var(--muted)]",children:d?(0,b.jsx)(k.User,{className:"w-4 h-4 text-[var(--muted-foreground)]"}):f?(0,b.jsx)(e.default,{href:`/agents/${f.id}`,className:"w-full h-full hover:ring-2 hover:ring-blue-300 rounded-full transition-shadow",children:(0,b.jsx)("img",{src:(0,i.agentAvatarUrl)(f.id,32,f.color),alt:f.name,className:"w-full h-full object-cover"})}):null}),(0,b.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,b.jsxs)("div",{className:"flex items-baseline gap-2",children:[!d&&f?(0,b.jsx)(e.default,{href:`/agents/${f.id}`,className:"text-[12px] font-bold tracking-wide uppercase hover:underline",style:{color:f.color||"#64748b"},children:f.name}):(0,b.jsx)("span",{className:"text-[12px] font-bold tracking-wide uppercase",style:{color:d?"#334155":"#64748b"},children:d?"You":"Agent"}),!d&&f?.model&&(0,b.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)] font-medium",children:f.model})]}),(0,b.jsx)("div",{className:"text-[14px] text-[var(--foreground)] leading-relaxed mt-0.5",children:(0,b.jsx)(j.Markdown,{content:a.content,isUser:d})})]})]},a.id)})})})}var m=a.i(215040),n=a.i(533441),o=a.i(65151),p=a.i(705151),q=a.i(405784),r=a.i(860614),s=a.i(80386),t=a.i(292e3);let u=[{id:"claude",label:"Claude Code",bin:"claude",description:"Recommended for the fastest AGX setup.",installCmd:"npm install -g @anthropic-ai/claude-code",docsUrl:"https://docs.anthropic.com/en/docs/claude-code/quickstart",recommended:!0,statusLabel:"Installed"},{id:"codex",label:"Codex",bin:"codex",description:"OpenAI's terminal coding agent.",installCmd:"npm install -g @openai/codex",docsUrl:"https://github.com/openai/codex",statusLabel:"Installed"},{id:"gemini",label:"Gemini CLI",bin:"gemini",description:"Google's CLI for Gemini workflows.",installCmd:"npm install -g @google/gemini-cli",docsUrl:"https://github.com/google-gemini/gemini-cli",statusLabel:"Installed"},{id:"ollama",label:"Ollama",bin:"ollama",description:"Run local models on your machine.",installCmd:"curl -fsSL https://ollama.com/install.sh | sh",docsUrl:"https://ollama.com/download",statusLabel:"Installed"},{id:"zai",label:"Z.AI",bin:"claude",description:"Use the Claude CLI with your Z.AI API key.",installCmd:"npm install -g @anthropic-ai/claude-code",docsUrl:"https://z.ai/",installNote:"Requires Claude Code plus a configured Z.AI API key.",statusLabel:"Via Claude CLI"}].map(a=>({id:a.id,name:a.label,description:a.description,installCmd:a.installCmd,docsUrl:a.docsUrl,installNote:a.installNote,recommended:a.recommended}));function v({text:a}){let[d,e]=(0,c.useState)(!1),f=(0,c.useCallback)(()=>{navigator.clipboard.writeText(a).then(()=>{e(!0),setTimeout(()=>e(!1),2e3)})},[a]);return(0,b.jsx)("button",{type:"button",onClick:f,className:"p-1.5 rounded-md hover:bg-[var(--muted)] transition-colors text-[var(--muted-foreground)] hover:text-[var(--foreground)]",title:"Copy command",children:d?(0,b.jsx)(n.Check,{className:"w-3.5 h-3.5 text-emerald-500"}):(0,b.jsx)(p.Copy,{className:"w-3.5 h-3.5"})})}function w({cli:a}){let[d,e]=(0,c.useState)(!1);return(0,b.jsxs)("div",{className:"border border-[var(--card-border)] rounded-lg overflow-hidden",children:[(0,b.jsxs)("button",{type:"button",onClick:()=>e(!d),className:"w-full flex items-center gap-3 px-4 py-3 hover:bg-[var(--item-hover-bg)] transition-colors text-left",children:[(0,b.jsx)("div",{className:"shrink-0",children:null===a.installed?(0,b.jsx)(o.Circle,{className:"w-4 h-4 text-[var(--muted-foreground)] animate-pulse"}):a.installed?(0,b.jsx)("div",{className:"w-5 h-5 rounded-full bg-emerald-100 dark:bg-emerald-900/30 flex items-center justify-center",children:(0,b.jsx)(n.Check,{className:"w-3 h-3 text-emerald-600 dark:text-emerald-400"})}):(0,b.jsx)(o.Circle,{className:"w-4 h-4 text-[var(--muted-foreground)]"})}),(0,b.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:"text-[14px] font-semibold text-[var(--foreground)]",children:a.name}),a.recommended&&!a.installed&&(0,b.jsx)("span",{className:"text-[11px] font-medium text-[var(--foreground)] bg-[var(--secondary)] px-1.5 py-0.5 rounded",children:"Recommended"}),a.installed&&(0,b.jsx)("span",{className:"text-[11px] font-medium text-emerald-600 dark:text-emerald-400 bg-emerald-50 dark:bg-emerald-900/20 px-1.5 py-0.5 rounded",children:"Installed"})]}),(0,b.jsx)("p",{className:"text-[12px] text-[var(--muted-foreground)]",children:a.description})]}),!a.installed&&(0,b.jsx)(q.ChevronDown,{className:`w-4 h-4 text-[var(--muted-foreground)] transition-transform ${d?"rotate-180":""}`})]}),d&&!a.installed&&(0,b.jsxs)("div",{className:"px-4 pb-3 border-t border-[var(--card-border)]",children:[(0,b.jsxs)("div",{className:"mt-3 flex items-center gap-2 bg-[var(--secondary)] rounded-md px-3 py-2 font-mono text-[13px] text-[var(--foreground)]",children:[(0,b.jsx)(s.Terminal,{className:"w-3.5 h-3.5 text-[var(--muted-foreground)] shrink-0"}),(0,b.jsx)("code",{className:"flex-1 overflow-x-auto whitespace-nowrap",children:a.installCmd}),(0,b.jsx)(v,{text:a.installCmd})]}),(0,b.jsxs)("a",{href:a.docsUrl,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1 mt-2 text-[12px] text-[var(--primary)] hover:underline",children:["Documentation",(0,b.jsx)(r.ExternalLink,{className:"w-3 h-3"})]}),a.installNote?(0,b.jsx)("p",{className:"mt-2 text-[12px] text-[var(--muted-foreground)]",children:a.installNote}):null]})]})}function x(){let a=(0,d.useRouter)(),[e,f]=(0,c.useState)("checking"),[g,h]=(0,c.useState)(u.map(a=>({...a,installed:null}))),[i,j]=(0,c.useState)(!1),[k,n]=(0,c.useState)(!1),[o,p]=(0,c.useState)(null);(0,c.useEffect)(()=>{let a=!1;return(async()=>{try{let b=await fetch("/api/providers",{cache:"no-store"});if(a)return;if(!b.ok)return void f("error");let c=await b.json(),d=new Set(Array.isArray(c?.providers)?c.providers.filter(a=>a&&"string"==typeof a.id).map(a=>a.id):[]),e=u.map(a=>({...a,installed:d.has(a.id)}));!a&&(h(e),e.some(a=>a.installed)?a||f("ready"):a||(f("needs-setup"),j(!0)))}catch{a||f("error")}})(),()=>{a=!0}},[]);let r=(0,c.useCallback)(async()=>{n(!0),p(null);try{await (0,m.updateUserPreferences)({hasCompletedFirstRun:!0});let b=await fetch("/api/daemon");if(!b.ok)throw Error(`Could not read daemon status (${b.status})`);if(!(await b.json()).running){let a=await fetch("/api/daemon",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({workers:1})});if(!a.ok)throw Error(`Could not start AGX (${a.status})`)}a.push("/")}catch(a){console.error("Failed to finalize onboarding",a),p(a instanceof Error?a.message:"Could not complete setup. Try again.")}finally{n(!1)}},[a]),s=g.filter(a=>a.installed).length,v=g.length,x=g.find(a=>a.recommended)??g[0]??null,y=g.filter(a=>!a.recommended);return(0,b.jsxs)("div",{className:"h-screen w-full flex flex-col bg-[var(--secondary)]",children:[(0,b.jsx)("div",{className:"text-center pt-10 pb-2 px-4",children:(0,b.jsx)("h1",{className:"text-[15px] font-medium text-[var(--app-shell-soft-text)] tracking-wide",children:"Chat with a team of AI agents across Claude, Gemini, Codex, Ollama, and Z.AI"})}),(0,b.jsx)(l,{}),(0,b.jsxs)("div",{className:"pb-8 pt-4 flex flex-col items-center gap-3 px-4",children:["ready"===e&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("button",{type:"button",onClick:r,disabled:k,className:"inline-flex items-center gap-2 px-8 py-3.5 bg-[var(--foreground)] text-[var(--background)] text-[15px] font-semibold rounded-xl hover:opacity-90 transition-all duration-200 shadow-lg shadow-[var(--foreground)]/10 hover:-translate-y-0.5 disabled:opacity-60 disabled:hover:translate-y-0",children:k?"Starting AGX...":"Launch AGX"}),(0,b.jsxs)("button",{type:"button",onClick:()=>j(a=>!a),className:"text-[13px] text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors flex items-center gap-1",children:[(0,b.jsxs)("span",{className:"text-emerald-600",children:[s,"/",v," providers"]}),(0,b.jsx)(q.ChevronDown,{className:`w-3.5 h-3.5 transition-transform ${i?"rotate-180":""}`})]})]}),"checking"===e&&(0,b.jsx)("span",{className:"text-[13px] text-[var(--app-shell-soft-text)]",children:"Detecting installed providers..."}),"needs-setup"===e&&(0,b.jsxs)("div",{className:"text-center",children:[(0,b.jsx)("p",{className:"text-[14px] font-medium text-amber-600 dark:text-amber-400",children:"No providers found"}),(0,b.jsx)("p",{className:"text-[13px] text-[var(--muted-foreground)] mt-1",children:"Start with Claude Code, then come back to launch AGX"})]}),"error"===e&&(0,b.jsx)("span",{className:"text-[13px] text-[var(--app-shell-soft-text)]",children:"Could not check installed providers"}),o?(0,b.jsxs)("div",{className:"inline-flex items-center gap-2 rounded-lg border border-amber-200 bg-amber-50 px-3 py-2 text-[12px] text-amber-800",children:[(0,b.jsx)(t.AlertCircle,{className:"h-3.5 w-3.5 shrink-0"}),o]}):null]}),i&&(0,b.jsx)("div",{className:"border-t border-[var(--card-border)] bg-[var(--background)] overflow-y-auto",children:(0,b.jsxs)("div",{className:"max-w-lg mx-auto px-4 py-6",children:[(0,b.jsxs)("div",{className:"mb-4",children:[(0,b.jsx)("h2",{className:"text-[14px] font-semibold text-[var(--foreground)]",children:"Provider CLIs"}),(0,b.jsx)("p",{className:"mt-1 text-[12px] text-[var(--muted-foreground)]",children:"Install one provider to finish setup. Claude Code is the best first path."})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[x?(0,b.jsxs)("div",{className:"rounded-xl border border-[var(--card-border)] bg-[var(--secondary)] p-4",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-[var(--muted-foreground)]",children:"Start Here"}),(0,b.jsx)("span",{className:"rounded bg-[var(--background)] px-2 py-0.5 text-[11px] font-medium text-[var(--foreground)]",children:x.name})]}),(0,b.jsx)("p",{className:"mt-2 text-[13px] text-[var(--foreground)]",children:"Install Claude Code first if you want the shortest path into AGX."}),(0,b.jsx)("p",{className:"mt-1 text-[12px] text-[var(--muted-foreground)]",children:"Codex, Gemini CLI, Ollama, and Z.AI are available if they fit your stack better."})]}):null,x?(0,b.jsx)(w,{cli:x},x.id):null]}),y.length>0?(0,b.jsxs)("div",{className:"mt-4",children:[(0,b.jsx)("h3",{className:"mb-2 text-[12px] font-semibold uppercase tracking-wide text-[var(--muted-foreground)]",children:"Other Options"}),(0,b.jsx)("div",{className:"space-y-2",children:y.map(a=>(0,b.jsx)(w,{cli:a},a.id))})]}):null,"ready"===e?(0,b.jsx)("p",{className:"text-[12px] text-[var(--muted-foreground)] mt-4 text-center",children:"Setup is complete. Launch AGX when you're ready."}):null,"needs-setup"===e?(0,b.jsx)("p",{className:"text-[12px] text-[var(--muted-foreground)] mt-4 text-center",children:"After installing a CLI, restart AGX so it can detect the new provider."}):null]})})]})}a.s(["default",()=>x],561069)}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__a42e4555._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__d96bb3b5._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[193695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},994367,a=>{a.n(a.i(216893))},70864,a=>{a.n(a.i(233290))},43619,a=>{a.n(a.i(379962))},13718,a=>{a.n(a.i(685523))},118198,a=>{a.n(a.i(545518))},190476,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/app/folders/page.tsx <module evaluation> from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/app/folders/page.tsx <module evaluation>","default")},689252,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(211857).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/app/folders/page.tsx from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/app/folders/page.tsx","default")},891578,a=>{"use strict";a.i(190476);var b=a.i(689252);a.n(b)}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__ec81a3d9._.js.map