@mndrk/agx 2.0.42 → 2.0.44

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 (1161) hide show
  1. package/cloud-runtime/standalone/.linear-token.json +4 -0
  2. package/cloud-runtime/standalone/.next/BUILD_ID +1 -1
  3. package/cloud-runtime/standalone/.next/app-path-routes-manifest.json +10 -2
  4. package/cloud-runtime/standalone/.next/build-manifest.json +8 -8
  5. package/cloud-runtime/standalone/.next/prerender-manifest.json +3 -3
  6. package/cloud-runtime/standalone/.next/routes-manifest.json +64 -16
  7. package/cloud-runtime/standalone/.next/server/app/_global-error/page/build-manifest.json +6 -6
  8. package/cloud-runtime/standalone/.next/server/app/_global-error/page.js +2 -2
  9. package/cloud-runtime/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  10. package/cloud-runtime/standalone/.next/server/app/_global-error.html +2 -2
  11. package/cloud-runtime/standalone/.next/server/app/_global-error.rsc +7 -7
  12. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
  13. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +7 -7
  14. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +3 -3
  15. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
  16. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  17. package/cloud-runtime/standalone/.next/server/app/_not-found/page/build-manifest.json +6 -6
  18. package/cloud-runtime/standalone/.next/server/app/_not-found/page.js +2 -2
  19. package/cloud-runtime/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  20. package/cloud-runtime/standalone/.next/server/app/_not-found.html +2 -2
  21. package/cloud-runtime/standalone/.next/server/app/_not-found.rsc +12 -12
  22. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +12 -12
  23. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +3 -3
  24. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +8 -8
  25. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  26. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  27. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  28. package/cloud-runtime/standalone/.next/server/app/agents/[id]/page/build-manifest.json +6 -6
  29. package/cloud-runtime/standalone/.next/server/app/agents/[id]/page.js +2 -2
  30. package/cloud-runtime/standalone/.next/server/app/agents/[id]/page.js.nft.json +1 -1
  31. package/cloud-runtime/standalone/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
  32. package/cloud-runtime/standalone/.next/server/app/agents/page/build-manifest.json +6 -6
  33. package/cloud-runtime/standalone/.next/server/app/agents/page.js +2 -2
  34. package/cloud-runtime/standalone/.next/server/app/agents/page.js.nft.json +1 -1
  35. package/cloud-runtime/standalone/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  36. package/cloud-runtime/standalone/.next/server/app/agents.html +2 -2
  37. package/cloud-runtime/standalone/.next/server/app/agents.rsc +14 -14
  38. package/cloud-runtime/standalone/.next/server/app/agents.segments/_full.segment.rsc +14 -14
  39. package/cloud-runtime/standalone/.next/server/app/agents.segments/_head.segment.rsc +3 -3
  40. package/cloud-runtime/standalone/.next/server/app/agents.segments/_index.segment.rsc +8 -8
  41. package/cloud-runtime/standalone/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
  42. package/cloud-runtime/standalone/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +4 -4
  43. package/cloud-runtime/standalone/.next/server/app/agents.segments/agents.segment.rsc +3 -3
  44. package/cloud-runtime/standalone/.next/server/app/api/agent-specs/pull/route.js +2 -2
  45. package/cloud-runtime/standalone/.next/server/app/api/agent-specs/route.js +6 -4
  46. package/cloud-runtime/standalone/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
  47. package/cloud-runtime/standalone/.next/server/app/api/agents/[id]/messages/route.js +2 -2
  48. package/cloud-runtime/standalone/.next/server/app/api/agents/[id]/profile/route.js +7 -5
  49. package/cloud-runtime/standalone/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
  50. package/cloud-runtime/standalone/.next/server/app/api/agents/export/route.js +6 -4
  51. package/cloud-runtime/standalone/.next/server/app/api/agents/export/route.js.nft.json +1 -1
  52. package/cloud-runtime/standalone/.next/server/app/api/attachments/[id]/route.js +2 -2
  53. package/cloud-runtime/standalone/.next/server/app/api/audit/route.js +2 -2
  54. package/cloud-runtime/standalone/.next/server/app/api/automations/create/route.js +9 -6
  55. package/cloud-runtime/standalone/.next/server/app/api/automations/create/route.js.nft.json +1 -1
  56. package/cloud-runtime/standalone/.next/server/app/api/automations/route.js +5 -3
  57. package/cloud-runtime/standalone/.next/server/app/api/automations/route.js.nft.json +1 -1
  58. package/cloud-runtime/standalone/.next/server/app/api/chat/route.js +10 -7
  59. package/cloud-runtime/standalone/.next/server/app/api/chat/route.js.nft.json +1 -1
  60. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/route.js +2 -2
  61. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/signal/route.js +3 -3
  62. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/signal/route.js.nft.json +1 -1
  63. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/route.js +2 -2
  64. package/cloud-runtime/standalone/.next/server/app/api/daemon/route.js +2 -2
  65. package/cloud-runtime/standalone/.next/server/app/api/domains/[id]/route.js +2 -2
  66. package/cloud-runtime/standalone/.next/server/app/api/file-read/route.js +2 -2
  67. package/cloud-runtime/standalone/.next/server/app/api/file-search/route.js +2 -2
  68. package/cloud-runtime/standalone/.next/server/app/api/file-search/route.js.nft.json +1 -1
  69. package/cloud-runtime/standalone/.next/server/app/api/filesystem/browse/route.js +2 -2
  70. package/cloud-runtime/standalone/.next/server/app/api/filesystem/pick-folder/route.js +3 -3
  71. package/cloud-runtime/standalone/.next/server/app/api/filesystem/pick-folder/route.js.nft.json +1 -1
  72. package/cloud-runtime/standalone/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js +5 -2
  73. package/cloud-runtime/standalone/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js.nft.json +1 -1
  74. package/cloud-runtime/standalone/.next/server/app/api/health/route.js +7 -5
  75. package/cloud-runtime/standalone/.next/server/app/api/health/route.js.nft.json +1 -1
  76. package/cloud-runtime/standalone/.next/server/app/api/history/route.js +2 -2
  77. package/cloud-runtime/standalone/.next/server/app/api/history/status/route.js +2 -2
  78. package/cloud-runtime/standalone/.next/server/app/api/knowledge-notes/route.js +6 -4
  79. package/cloud-runtime/standalone/.next/server/app/api/knowledge-notes/route.js.nft.json +1 -1
  80. package/cloud-runtime/standalone/.next/server/app/api/learnings/route.js +7 -5
  81. package/cloud-runtime/standalone/.next/server/app/api/learnings/route.js.nft.json +1 -1
  82. package/cloud-runtime/standalone/.next/server/app/api/linear/auth/route/app-paths-manifest.json +3 -0
  83. package/cloud-runtime/standalone/.next/server/app/api/linear/auth/route.js +7 -0
  84. package/cloud-runtime/standalone/.next/server/app/api/linear/auth/route.js.nft.json +1 -0
  85. package/cloud-runtime/standalone/.next/server/app/api/linear/auth/route_client-reference-manifest.js +2 -0
  86. package/cloud-runtime/standalone/.next/server/app/api/linear/callback/route/app-paths-manifest.json +3 -0
  87. package/cloud-runtime/standalone/.next/server/app/api/linear/callback/route.js +7 -0
  88. package/cloud-runtime/standalone/.next/server/app/api/linear/callback/route.js.nft.json +1 -0
  89. package/cloud-runtime/standalone/.next/server/app/api/linear/callback/route_client-reference-manifest.js +2 -0
  90. package/cloud-runtime/standalone/.next/server/app/api/linear/cycles/route/app-paths-manifest.json +3 -0
  91. package/cloud-runtime/standalone/.next/server/app/api/linear/cycles/route/build-manifest.json +11 -0
  92. package/cloud-runtime/standalone/.next/server/app/api/linear/cycles/route/server-reference-manifest.json +4 -0
  93. package/cloud-runtime/standalone/.next/server/app/api/linear/cycles/route.js +7 -0
  94. package/cloud-runtime/standalone/.next/server/app/api/linear/cycles/route.js.map +5 -0
  95. package/cloud-runtime/standalone/.next/server/app/api/linear/cycles/route.js.nft.json +1 -0
  96. package/cloud-runtime/standalone/.next/server/app/api/linear/cycles/route_client-reference-manifest.js +2 -0
  97. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/route/app-paths-manifest.json +3 -0
  98. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/route/build-manifest.json +11 -0
  99. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/route/server-reference-manifest.json +4 -0
  100. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/route.js +7 -0
  101. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/route.js.map +5 -0
  102. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/route.js.nft.json +1 -0
  103. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/route_client-reference-manifest.js +2 -0
  104. package/cloud-runtime/standalone/.next/server/app/api/linear/mcp-setup/route/app-paths-manifest.json +3 -0
  105. package/cloud-runtime/standalone/.next/server/app/api/linear/mcp-setup/route/build-manifest.json +11 -0
  106. package/cloud-runtime/standalone/.next/server/app/api/linear/mcp-setup/route/server-reference-manifest.json +4 -0
  107. package/cloud-runtime/standalone/.next/server/app/api/linear/mcp-setup/route.js +8 -0
  108. package/cloud-runtime/standalone/.next/server/app/api/linear/mcp-setup/route.js.map +5 -0
  109. package/cloud-runtime/standalone/.next/server/app/api/linear/mcp-setup/route.js.nft.json +1 -0
  110. package/cloud-runtime/standalone/.next/server/app/api/linear/mcp-setup/route_client-reference-manifest.js +2 -0
  111. package/cloud-runtime/standalone/.next/server/app/api/linear/runs/[id]/route/app-paths-manifest.json +3 -0
  112. package/cloud-runtime/standalone/.next/server/app/api/linear/runs/[id]/route/build-manifest.json +11 -0
  113. package/cloud-runtime/standalone/.next/server/app/api/linear/runs/[id]/route/server-reference-manifest.json +4 -0
  114. package/cloud-runtime/standalone/.next/server/app/api/linear/runs/[id]/route.js +7 -0
  115. package/cloud-runtime/standalone/.next/server/app/api/linear/runs/[id]/route.js.map +5 -0
  116. package/cloud-runtime/standalone/.next/server/app/api/linear/runs/[id]/route.js.nft.json +1 -0
  117. package/cloud-runtime/standalone/.next/server/app/api/linear/runs/[id]/route_client-reference-manifest.js +2 -0
  118. package/cloud-runtime/standalone/.next/server/app/api/linear/runs/route/app-paths-manifest.json +3 -0
  119. package/cloud-runtime/standalone/.next/server/app/api/linear/runs/route/build-manifest.json +11 -0
  120. package/cloud-runtime/standalone/.next/server/app/api/linear/runs/route/server-reference-manifest.json +4 -0
  121. package/cloud-runtime/standalone/.next/server/app/api/linear/runs/route.js +7 -0
  122. package/cloud-runtime/standalone/.next/server/app/api/linear/runs/route.js.map +5 -0
  123. package/cloud-runtime/standalone/.next/server/app/api/linear/runs/route.js.nft.json +1 -0
  124. package/cloud-runtime/standalone/.next/server/app/api/linear/runs/route_client-reference-manifest.js +2 -0
  125. package/cloud-runtime/standalone/.next/server/app/api/linear/status/route/app-paths-manifest.json +3 -0
  126. package/cloud-runtime/standalone/.next/server/app/api/linear/status/route/build-manifest.json +11 -0
  127. package/cloud-runtime/standalone/.next/server/app/api/linear/status/route/server-reference-manifest.json +4 -0
  128. package/cloud-runtime/standalone/.next/server/app/api/linear/status/route.js +7 -0
  129. package/cloud-runtime/standalone/.next/server/app/api/linear/status/route.js.map +5 -0
  130. package/cloud-runtime/standalone/.next/server/app/api/linear/status/route.js.nft.json +1 -0
  131. package/cloud-runtime/standalone/.next/server/app/api/linear/status/route_client-reference-manifest.js +2 -0
  132. package/cloud-runtime/standalone/.next/server/app/api/linear/token/route/app-paths-manifest.json +3 -0
  133. package/cloud-runtime/standalone/.next/server/app/api/linear/token/route/build-manifest.json +11 -0
  134. package/cloud-runtime/standalone/.next/server/app/api/linear/token/route/server-reference-manifest.json +4 -0
  135. package/cloud-runtime/standalone/.next/server/app/api/linear/token/route.js +7 -0
  136. package/cloud-runtime/standalone/.next/server/app/api/linear/token/route.js.map +5 -0
  137. package/cloud-runtime/standalone/.next/server/app/api/linear/token/route.js.nft.json +1 -0
  138. package/cloud-runtime/standalone/.next/server/app/api/linear/token/route_client-reference-manifest.js +2 -0
  139. package/cloud-runtime/standalone/.next/server/app/api/logs/route.js +2 -2
  140. package/cloud-runtime/standalone/.next/server/app/api/logs/stream/route.js +2 -2
  141. package/cloud-runtime/standalone/.next/server/app/api/memories/route.js +2 -2
  142. package/cloud-runtime/standalone/.next/server/app/api/messages/[id]/route.js +2 -2
  143. package/cloud-runtime/standalone/.next/server/app/api/migrate/teams-to-projects/route.js +2 -2
  144. package/cloud-runtime/standalone/.next/server/app/api/migrate/workspaces-to-projects/route.js +2 -2
  145. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/cancel/route.js +3 -3
  146. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/cancel/route.js.nft.json +1 -1
  147. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/signal/route.js +3 -3
  148. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/signal/route.js.nft.json +1 -1
  149. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js +7 -5
  150. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js.nft.json +1 -1
  151. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js +7 -5
  152. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js.nft.json +1 -1
  153. package/cloud-runtime/standalone/.next/server/app/api/participants/route.js +7 -5
  154. package/cloud-runtime/standalone/.next/server/app/api/participants/route.js.nft.json +1 -1
  155. package/cloud-runtime/standalone/.next/server/app/api/processes/route.js +2 -2
  156. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/agents/route.js +7 -5
  157. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/agents/route.js.nft.json +1 -1
  158. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v1/route.js +7 -5
  159. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v1/route.js.nft.json +1 -1
  160. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v2/route.js +7 -5
  161. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v2/route.js.nft.json +1 -1
  162. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/route.js +5 -3
  163. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
  164. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/skills/route.js +7 -5
  165. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/skills/route.js.nft.json +1 -1
  166. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/threads/route.js +7 -5
  167. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/threads/route.js.nft.json +1 -1
  168. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/variables/route.js +7 -5
  169. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/variables/route.js.nft.json +1 -1
  170. package/cloud-runtime/standalone/.next/server/app/api/projects/route.js +7 -5
  171. package/cloud-runtime/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
  172. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/cancel/route.js +7 -5
  173. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/cancel/route.js.nft.json +1 -1
  174. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/route.js +8 -6
  175. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/route.js.nft.json +1 -1
  176. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/runs/route.js +7 -5
  177. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/runs/route.js.nft.json +1 -1
  178. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/agents/route.js +7 -5
  179. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/agents/route.js.nft.json +1 -1
  180. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/poll/route.js +9 -6
  181. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/poll/route.js.nft.json +1 -1
  182. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/route.js +8 -6
  183. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/route.js.nft.json +1 -1
  184. package/cloud-runtime/standalone/.next/server/app/api/providers/route.js +3 -3
  185. package/cloud-runtime/standalone/.next/server/app/api/providers/route.js.nft.json +1 -1
  186. package/cloud-runtime/standalone/.next/server/app/api/queue/complete/route.js +7 -5
  187. package/cloud-runtime/standalone/.next/server/app/api/queue/complete/route.js.nft.json +1 -1
  188. package/cloud-runtime/standalone/.next/server/app/api/queue/route.js +9 -7
  189. package/cloud-runtime/standalone/.next/server/app/api/queue/route.js.nft.json +1 -1
  190. package/cloud-runtime/standalone/.next/server/app/api/reactions/route.js +2 -2
  191. package/cloud-runtime/standalone/.next/server/app/api/schedules/debug/route.js +7 -5
  192. package/cloud-runtime/standalone/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
  193. package/cloud-runtime/standalone/.next/server/app/api/schedules/poll/route.js +7 -5
  194. package/cloud-runtime/standalone/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
  195. package/cloud-runtime/standalone/.next/server/app/api/schedules/route.js +9 -6
  196. package/cloud-runtime/standalone/.next/server/app/api/schedules/route.js.nft.json +1 -1
  197. package/cloud-runtime/standalone/.next/server/app/api/search/route.js +2 -2
  198. package/cloud-runtime/standalone/.next/server/app/api/skills/assign/route.js +1 -1
  199. package/cloud-runtime/standalone/.next/server/app/api/skills/assign/route.js.nft.json +1 -1
  200. package/cloud-runtime/standalone/.next/server/app/api/skills/available/route.js +3 -3
  201. package/cloud-runtime/standalone/.next/server/app/api/skills/available/route.js.nft.json +1 -1
  202. package/cloud-runtime/standalone/.next/server/app/api/skills/detail/route.js +3 -3
  203. package/cloud-runtime/standalone/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
  204. package/cloud-runtime/standalone/.next/server/app/api/skills/history/route.js +3 -3
  205. package/cloud-runtime/standalone/.next/server/app/api/skills/history/route.js.nft.json +1 -1
  206. package/cloud-runtime/standalone/.next/server/app/api/skills/learn/route.js +3 -3
  207. package/cloud-runtime/standalone/.next/server/app/api/skills/learn/route.js.nft.json +1 -1
  208. package/cloud-runtime/standalone/.next/server/app/api/skills/route.js +3 -3
  209. package/cloud-runtime/standalone/.next/server/app/api/skills/route.js.nft.json +1 -1
  210. package/cloud-runtime/standalone/.next/server/app/api/skills/unlearn/route.js +1 -1
  211. package/cloud-runtime/standalone/.next/server/app/api/skills/unlearn/route.js.nft.json +1 -1
  212. package/cloud-runtime/standalone/.next/server/app/api/status/route.js +3 -3
  213. package/cloud-runtime/standalone/.next/server/app/api/status/route.js.nft.json +1 -1
  214. package/cloud-runtime/standalone/.next/server/app/api/summarize/route.js +7 -5
  215. package/cloud-runtime/standalone/.next/server/app/api/summarize/route.js.nft.json +1 -1
  216. package/cloud-runtime/standalone/.next/server/app/api/system/db-status/route.js +2 -2
  217. package/cloud-runtime/standalone/.next/server/app/api/task-drafts/route.js +2 -2
  218. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js +6 -4
  219. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
  220. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/route.js +8 -6
  221. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
  222. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/costs/route.js +7 -5
  223. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/costs/route.js.nft.json +1 -1
  224. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/dependencies/route.js +8 -6
  225. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/dependencies/route.js.nft.json +1 -1
  226. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/events/route.js +8 -5
  227. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/events/route.js.nft.json +1 -1
  228. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/history/route.js +9 -6
  229. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/history/route.js.nft.json +1 -1
  230. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/metrics/route.js +9 -6
  231. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/metrics/route.js.nft.json +1 -1
  232. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/pause/route.js +2 -2
  233. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/replan/route.js +12 -8
  234. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/replan/route.js.nft.json +1 -1
  235. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/restart/route.js +7 -5
  236. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/restart/route.js.nft.json +1 -1
  237. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/resume/route.js +7 -5
  238. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/resume/route.js.nft.json +1 -1
  239. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/rollback/route.js +11 -7
  240. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/rollback/route.js.nft.json +1 -1
  241. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/route.js +13 -9
  242. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/route.js.nft.json +1 -1
  243. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/schedule/route.js +11 -8
  244. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/schedule/route.js.nft.json +1 -1
  245. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/start/route.js +7 -5
  246. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/start/route.js.nft.json +1 -1
  247. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/stop/route.js +3 -1
  248. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/stop/route.js.nft.json +1 -1
  249. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/heartbeat/route.js +2 -2
  250. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/history/route.js +7 -5
  251. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/history/route.js.nft.json +1 -1
  252. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/logs/route.js +9 -6
  253. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/logs/route.js.nft.json +1 -1
  254. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/logs/stream/route.js +2 -2
  255. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js +5 -3
  256. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js.nft.json +1 -1
  257. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js +11 -8
  258. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js.nft.json +1 -1
  259. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js +11 -8
  260. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js.nft.json +1 -1
  261. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js +11 -8
  262. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js.nft.json +1 -1
  263. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js +11 -8
  264. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js.nft.json +1 -1
  265. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js +11 -8
  266. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js.nft.json +1 -1
  267. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js +12 -9
  268. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
  269. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/route.js +9 -6
  270. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
  271. package/cloud-runtime/standalone/.next/server/app/api/tasks/assign-orphans/route.js +7 -5
  272. package/cloud-runtime/standalone/.next/server/app/api/tasks/assign-orphans/route.js.nft.json +1 -1
  273. package/cloud-runtime/standalone/.next/server/app/api/tasks/extract/route.js +7 -5
  274. package/cloud-runtime/standalone/.next/server/app/api/tasks/extract/route.js.nft.json +1 -1
  275. package/cloud-runtime/standalone/.next/server/app/api/tasks/route.js +11 -8
  276. package/cloud-runtime/standalone/.next/server/app/api/tasks/route.js.nft.json +1 -1
  277. package/cloud-runtime/standalone/.next/server/app/api/tasks/stream/route.js +2 -2
  278. package/cloud-runtime/standalone/.next/server/app/api/thread-export/route.js +2 -2
  279. package/cloud-runtime/standalone/.next/server/app/api/threads/knowledge/route.js +6 -5
  280. package/cloud-runtime/standalone/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -1
  281. package/cloud-runtime/standalone/.next/server/app/api/threads/route.js +6 -5
  282. package/cloud-runtime/standalone/.next/server/app/api/threads/route.js.nft.json +1 -1
  283. package/cloud-runtime/standalone/.next/server/app/api/upload/[id]/route.js +2 -2
  284. package/cloud-runtime/standalone/.next/server/app/api/upload/route.js +2 -2
  285. package/cloud-runtime/standalone/.next/server/app/api/user-settings/route.js +7 -5
  286. package/cloud-runtime/standalone/.next/server/app/api/user-settings/route.js.nft.json +1 -1
  287. package/cloud-runtime/standalone/.next/server/app/api/userPreferences/route.js +2 -2
  288. package/cloud-runtime/standalone/.next/server/app/automations/page/build-manifest.json +6 -6
  289. package/cloud-runtime/standalone/.next/server/app/automations/page/react-loadable-manifest.json +11 -3
  290. package/cloud-runtime/standalone/.next/server/app/automations/page.js +2 -2
  291. package/cloud-runtime/standalone/.next/server/app/automations/page.js.nft.json +1 -1
  292. package/cloud-runtime/standalone/.next/server/app/automations/page_client-reference-manifest.js +1 -1
  293. package/cloud-runtime/standalone/.next/server/app/automations.html +2 -2
  294. package/cloud-runtime/standalone/.next/server/app/automations.rsc +15 -15
  295. package/cloud-runtime/standalone/.next/server/app/automations.segments/_full.segment.rsc +15 -15
  296. package/cloud-runtime/standalone/.next/server/app/automations.segments/_head.segment.rsc +3 -3
  297. package/cloud-runtime/standalone/.next/server/app/automations.segments/_index.segment.rsc +8 -8
  298. package/cloud-runtime/standalone/.next/server/app/automations.segments/_tree.segment.rsc +3 -3
  299. package/cloud-runtime/standalone/.next/server/app/automations.segments/automations/__PAGE__.segment.rsc +5 -5
  300. package/cloud-runtime/standalone/.next/server/app/automations.segments/automations.segment.rsc +3 -3
  301. package/cloud-runtime/standalone/.next/server/app/board/page/build-manifest.json +6 -6
  302. package/cloud-runtime/standalone/.next/server/app/board/page.js +2 -2
  303. package/cloud-runtime/standalone/.next/server/app/board/page_client-reference-manifest.js +1 -1
  304. package/cloud-runtime/standalone/.next/server/app/board.html +2 -2
  305. package/cloud-runtime/standalone/.next/server/app/board.rsc +12 -12
  306. package/cloud-runtime/standalone/.next/server/app/board.segments/_full.segment.rsc +12 -12
  307. package/cloud-runtime/standalone/.next/server/app/board.segments/_head.segment.rsc +3 -3
  308. package/cloud-runtime/standalone/.next/server/app/board.segments/_index.segment.rsc +8 -8
  309. package/cloud-runtime/standalone/.next/server/app/board.segments/_tree.segment.rsc +2 -2
  310. package/cloud-runtime/standalone/.next/server/app/board.segments/board/__PAGE__.segment.rsc +2 -2
  311. package/cloud-runtime/standalone/.next/server/app/board.segments/board.segment.rsc +3 -3
  312. package/cloud-runtime/standalone/.next/server/app/execution-graph/page/build-manifest.json +6 -6
  313. package/cloud-runtime/standalone/.next/server/app/execution-graph/page.js +2 -2
  314. package/cloud-runtime/standalone/.next/server/app/execution-graph/page.js.nft.json +1 -1
  315. package/cloud-runtime/standalone/.next/server/app/execution-graph/page_client-reference-manifest.js +1 -1
  316. package/cloud-runtime/standalone/.next/server/app/execution-graph.html +2 -2
  317. package/cloud-runtime/standalone/.next/server/app/execution-graph.rsc +14 -14
  318. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_full.segment.rsc +14 -14
  319. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_head.segment.rsc +3 -3
  320. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_index.segment.rsc +8 -8
  321. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_tree.segment.rsc +2 -2
  322. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph/__PAGE__.segment.rsc +4 -4
  323. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph.segment.rsc +3 -3
  324. package/cloud-runtime/standalone/.next/server/app/index.html +2 -2
  325. package/cloud-runtime/standalone/.next/server/app/index.rsc +15 -15
  326. package/cloud-runtime/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +5 -5
  327. package/cloud-runtime/standalone/.next/server/app/index.segments/_full.segment.rsc +15 -15
  328. package/cloud-runtime/standalone/.next/server/app/index.segments/_head.segment.rsc +3 -3
  329. package/cloud-runtime/standalone/.next/server/app/index.segments/_index.segment.rsc +8 -8
  330. package/cloud-runtime/standalone/.next/server/app/index.segments/_tree.segment.rsc +4 -4
  331. package/cloud-runtime/standalone/.next/server/app/page/build-manifest.json +6 -6
  332. package/cloud-runtime/standalone/.next/server/app/page.js +2 -2
  333. package/cloud-runtime/standalone/.next/server/app/page.js.nft.json +1 -1
  334. package/cloud-runtime/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  335. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/automations/page/build-manifest.json +6 -6
  336. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/automations/page/react-loadable-manifest.json +11 -3
  337. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/automations/page.js +2 -2
  338. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/automations/page.js.nft.json +1 -1
  339. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/automations/page_client-reference-manifest.js +1 -1
  340. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page/build-manifest.json +6 -6
  341. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page.js +2 -2
  342. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
  343. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
  344. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page/build-manifest.json +6 -6
  345. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page.js +2 -2
  346. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page.js.nft.json +1 -1
  347. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page_client-reference-manifest.js +1 -1
  348. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page/app-paths-manifest.json +3 -0
  349. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page/build-manifest.json +18 -0
  350. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page/next-font-manifest.json +11 -0
  351. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page/react-loadable-manifest.json +10 -0
  352. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page/server-reference-manifest.json +4 -0
  353. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page.js +16 -0
  354. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page.js.map +5 -0
  355. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page.js.nft.json +1 -0
  356. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page_client-reference-manifest.js +2 -0
  357. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page/build-manifest.json +6 -6
  358. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page.js +2 -2
  359. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
  360. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  361. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page/build-manifest.json +6 -6
  362. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page.js +2 -2
  363. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -1
  364. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +1 -1
  365. package/cloud-runtime/standalone/.next/server/app/projects/orphans/page/build-manifest.json +6 -6
  366. package/cloud-runtime/standalone/.next/server/app/projects/orphans/page.js +2 -2
  367. package/cloud-runtime/standalone/.next/server/app/projects/orphans/page_client-reference-manifest.js +1 -1
  368. package/cloud-runtime/standalone/.next/server/app/projects/orphans.html +2 -2
  369. package/cloud-runtime/standalone/.next/server/app/projects/orphans.rsc +14 -14
  370. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_full.segment.rsc +14 -14
  371. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_head.segment.rsc +3 -3
  372. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_index.segment.rsc +8 -8
  373. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_tree.segment.rsc +2 -2
  374. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans/__PAGE__.segment.rsc +4 -4
  375. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans.segment.rsc +3 -3
  376. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects.segment.rsc +3 -3
  377. package/cloud-runtime/standalone/.next/server/app/projects/page/build-manifest.json +6 -6
  378. package/cloud-runtime/standalone/.next/server/app/projects/page.js +2 -2
  379. package/cloud-runtime/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  380. package/cloud-runtime/standalone/.next/server/app/projects.html +2 -2
  381. package/cloud-runtime/standalone/.next/server/app/projects.rsc +14 -14
  382. package/cloud-runtime/standalone/.next/server/app/projects.segments/_full.segment.rsc +14 -14
  383. package/cloud-runtime/standalone/.next/server/app/projects.segments/_head.segment.rsc +3 -3
  384. package/cloud-runtime/standalone/.next/server/app/projects.segments/_index.segment.rsc +8 -8
  385. package/cloud-runtime/standalone/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
  386. package/cloud-runtime/standalone/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +4 -4
  387. package/cloud-runtime/standalone/.next/server/app/projects.segments/projects.segment.rsc +3 -3
  388. package/cloud-runtime/standalone/.next/server/app/settings/page/build-manifest.json +6 -6
  389. package/cloud-runtime/standalone/.next/server/app/settings/page.js +2 -2
  390. package/cloud-runtime/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  391. package/cloud-runtime/standalone/.next/server/app/settings.html +2 -2
  392. package/cloud-runtime/standalone/.next/server/app/settings.rsc +14 -14
  393. package/cloud-runtime/standalone/.next/server/app/settings.segments/_full.segment.rsc +14 -14
  394. package/cloud-runtime/standalone/.next/server/app/settings.segments/_head.segment.rsc +3 -3
  395. package/cloud-runtime/standalone/.next/server/app/settings.segments/_index.segment.rsc +8 -8
  396. package/cloud-runtime/standalone/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  397. package/cloud-runtime/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +4 -4
  398. package/cloud-runtime/standalone/.next/server/app/settings.segments/settings.segment.rsc +3 -3
  399. package/cloud-runtime/standalone/.next/server/app/skills/page/build-manifest.json +6 -6
  400. package/cloud-runtime/standalone/.next/server/app/skills/page.js +2 -2
  401. package/cloud-runtime/standalone/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  402. package/cloud-runtime/standalone/.next/server/app/skills.html +2 -2
  403. package/cloud-runtime/standalone/.next/server/app/skills.rsc +14 -14
  404. package/cloud-runtime/standalone/.next/server/app/skills.segments/_full.segment.rsc +14 -14
  405. package/cloud-runtime/standalone/.next/server/app/skills.segments/_head.segment.rsc +3 -3
  406. package/cloud-runtime/standalone/.next/server/app/skills.segments/_index.segment.rsc +8 -8
  407. package/cloud-runtime/standalone/.next/server/app/skills.segments/_tree.segment.rsc +2 -2
  408. package/cloud-runtime/standalone/.next/server/app/skills.segments/skills/__PAGE__.segment.rsc +4 -4
  409. package/cloud-runtime/standalone/.next/server/app/skills.segments/skills.segment.rsc +3 -3
  410. package/cloud-runtime/standalone/.next/server/app/status/page/build-manifest.json +6 -6
  411. package/cloud-runtime/standalone/.next/server/app/status/page.js +2 -2
  412. package/cloud-runtime/standalone/.next/server/app/status/page_client-reference-manifest.js +1 -1
  413. package/cloud-runtime/standalone/.next/server/app/status.html +2 -2
  414. package/cloud-runtime/standalone/.next/server/app/status.rsc +14 -14
  415. package/cloud-runtime/standalone/.next/server/app/status.segments/_full.segment.rsc +14 -14
  416. package/cloud-runtime/standalone/.next/server/app/status.segments/_head.segment.rsc +3 -3
  417. package/cloud-runtime/standalone/.next/server/app/status.segments/_index.segment.rsc +8 -8
  418. package/cloud-runtime/standalone/.next/server/app/status.segments/_tree.segment.rsc +2 -2
  419. package/cloud-runtime/standalone/.next/server/app/status.segments/status/__PAGE__.segment.rsc +4 -4
  420. package/cloud-runtime/standalone/.next/server/app/status.segments/status.segment.rsc +3 -3
  421. package/cloud-runtime/standalone/.next/server/app/thread/[id]/page/build-manifest.json +6 -6
  422. package/cloud-runtime/standalone/.next/server/app/thread/[id]/page.js +2 -2
  423. package/cloud-runtime/standalone/.next/server/app/thread/[id]/page.js.nft.json +1 -1
  424. package/cloud-runtime/standalone/.next/server/app/thread/[id]/page_client-reference-manifest.js +1 -1
  425. package/cloud-runtime/standalone/.next/server/app/welcome/page/build-manifest.json +6 -6
  426. package/cloud-runtime/standalone/.next/server/app/welcome/page.js +2 -2
  427. package/cloud-runtime/standalone/.next/server/app/welcome/page.js.nft.json +1 -1
  428. package/cloud-runtime/standalone/.next/server/app/welcome/page_client-reference-manifest.js +1 -1
  429. package/cloud-runtime/standalone/.next/server/app/welcome.html +2 -2
  430. package/cloud-runtime/standalone/.next/server/app/welcome.rsc +14 -14
  431. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_full.segment.rsc +14 -14
  432. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_head.segment.rsc +3 -3
  433. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_index.segment.rsc +8 -8
  434. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_tree.segment.rsc +2 -2
  435. package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome/__PAGE__.segment.rsc +4 -4
  436. package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome.segment.rsc +3 -3
  437. package/cloud-runtime/standalone/.next/server/app-paths-manifest.json +10 -2
  438. package/cloud-runtime/standalone/.next/server/chunks/[externals]__29a2424c._.js +3 -0
  439. package/cloud-runtime/standalone/.next/server/chunks/[externals]__64355ed1._.js +1 -1
  440. package/cloud-runtime/standalone/.next/server/chunks/[externals]__d6ed3021._.js +3 -0
  441. package/cloud-runtime/standalone/.next/server/chunks/[externals]_node:child_process_261e8bca._.js +1 -1
  442. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__0281ad06._.js +49 -0
  443. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__0284ea89._.js +13 -0
  444. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__04c806f4._.js +3 -0
  445. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__05243927._.js +29 -0
  446. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__0c3dd73b._.js +2 -2
  447. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__0c4807d1._.js +49 -0
  448. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__0cc3f3b7._.js +2 -2
  449. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__0f6532d7._.js +93 -0
  450. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1017e012._.js +1 -1
  451. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__13fe776f._.js +3 -0
  452. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1b96352c._.js +1 -1
  453. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1be9b30e._.js +3 -0
  454. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1dce6c15._.js +1 -1
  455. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__22b7bf38._.js +3 -0
  456. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__255b11f2._.js +1 -1
  457. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__26817611._.js +1 -1
  458. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__28524c6a._.js +3 -0
  459. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__294fceef._.js +1 -1
  460. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__2d15af44._.js +3 -0
  461. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__2d776aa6._.js +3 -0
  462. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__314d5c41._.js +1 -1
  463. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__349d67e7._.js +61 -0
  464. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__34efe92e._.js +15 -0
  465. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__352dad6d._.js +1 -1
  466. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__42804c1d._.js +110 -0
  467. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__44ef900b._.js +49 -0
  468. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4559476d._.js +49 -0
  469. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__45a50de9._.js +3 -0
  470. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__46947325._.js +1 -1
  471. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__46ad8e50._.js +49 -0
  472. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4700e1b3._.js +80 -0
  473. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__49c04b15._.js +49 -0
  474. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4a4265e0._.js +2 -2
  475. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4c2d07e0._.js +3 -0
  476. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4c5c536d._.js +2 -2
  477. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4c89c60a._.js +93 -0
  478. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__509b1dd2._.js +13 -0
  479. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__50ddd3ce._.js +1 -1
  480. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__529a6e1c._.js +2 -2
  481. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__5650bac3._.js +1 -1
  482. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__56dbe1a4._.js +39 -0
  483. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__5a042505._.js +15 -0
  484. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__5a1fd688._.js +1 -1
  485. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__5d359afa._.js +21 -18
  486. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__5e5eb809._.js +61 -0
  487. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__5fbc700c._.js +25 -0
  488. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__621dcb4a._.js +1 -1
  489. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__628d686b._.js +1 -1
  490. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__6db132e9._.js +1 -1
  491. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__6dbe939c._.js +49 -0
  492. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__6fe5a96f._.js +80 -0
  493. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__73b17f49._.js +3 -0
  494. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__74a37ca4._.js +13 -0
  495. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__76290829._.js +29 -0
  496. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__76658fd6._.js +15 -0
  497. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__7c94b104._.js +2 -2
  498. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__7cade6c6._.js +6 -0
  499. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__7d4fa0fd._.js +3 -0
  500. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__889996dd._.js +49 -0
  501. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__8a35d73b._.js +80 -0
  502. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__8b5fd676._.js +3 -0
  503. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__8c7d1318._.js +13 -0
  504. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__91b51f33._.js +8 -0
  505. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__92924218._.js +2 -2
  506. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__94bd7f65._.js +1 -1
  507. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__9746d1f5._.js +2 -2
  508. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__98d58423._.js +3 -0
  509. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__9b69f93e._.js +2 -2
  510. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__9d3a2caa._.js +134 -0
  511. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__a1e62918._.js +1 -1
  512. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__a2e17f69._.js +3 -0
  513. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ac9b93fd._.js +48 -0
  514. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ad4cb055._.js +3 -0
  515. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ad6d6402._.js +29 -0
  516. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__af7a73fd._.js +1 -1
  517. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__b8f4e4a3._.js +1 -1
  518. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__bacb0193._.js +7 -0
  519. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__bd11b2ad._.js +1 -1
  520. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c0919d7d._.js +101 -0
  521. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c1b28690._.js +49 -0
  522. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c4ea4921._.js +1 -1
  523. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c4ed5d83._.js +2 -2
  524. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c5025f86._.js +66 -0
  525. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c695a5f2._.js +2 -2
  526. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c77efd85._.js +8 -0
  527. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c9550a93._.js +39 -0
  528. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__cb5c7680._.js +1 -1
  529. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__cf6082be._.js +49 -0
  530. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__d2ac93f2._.js +13 -0
  531. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__d3945cae._.js +15 -0
  532. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__d57e800e._.js +2 -2
  533. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__d8b615bf._.js +2 -2
  534. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__d9bd6334._.js +1 -1
  535. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__d9f2041b._.js +34 -0
  536. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__db469f1b._.js +1 -1
  537. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__dc542063._.js +2 -2
  538. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__dd1cb250._.js +49 -0
  539. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__de2a1e43._.js +1 -1
  540. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__dffa5183._.js +29 -0
  541. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__e0994be2._.js +3 -0
  542. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__e20922e8._.js +13 -0
  543. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__e3ecfd17._.js +2 -2
  544. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__e4f01b5c._.js +97 -0
  545. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__e5bad635._.js +44 -0
  546. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f168c6dc._.js +14 -14
  547. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f21849ad._.js +39 -0
  548. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f536cd2f._.js +1 -1
  549. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f9f7f2df._.js +2 -2
  550. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__fb1f7e58._.js +39 -0
  551. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__fdb21d1b._.js +1 -1
  552. package/cloud-runtime/standalone/.next/server/chunks/_0a767dfe._.js +1 -1
  553. package/cloud-runtime/standalone/.next/server/chunks/_110bf46e._.js +6 -0
  554. package/cloud-runtime/standalone/.next/server/chunks/_22fe5fd2._.js +1 -1
  555. package/cloud-runtime/standalone/.next/server/chunks/_2a5aeb76._.js +3 -0
  556. package/cloud-runtime/standalone/.next/server/chunks/_2f3e5ac1._.js +1 -1
  557. package/cloud-runtime/standalone/.next/server/chunks/_4689976f._.js +6 -0
  558. package/cloud-runtime/standalone/.next/server/chunks/_5462a047._.js +1 -1
  559. package/cloud-runtime/standalone/.next/server/chunks/_65fd2525._.js +10 -0
  560. package/cloud-runtime/standalone/.next/server/chunks/_682c9d81._.js +6 -0
  561. package/cloud-runtime/standalone/.next/server/chunks/_7011db4f._.js +1 -1
  562. package/cloud-runtime/standalone/.next/server/chunks/_9b10087f._.js +8 -0
  563. package/cloud-runtime/standalone/.next/server/chunks/_9dea7192._.js +10 -0
  564. package/cloud-runtime/standalone/.next/server/chunks/_a32a5cdd._.js +6 -0
  565. package/cloud-runtime/standalone/.next/server/chunks/_a877d34f._.js +1 -1
  566. package/cloud-runtime/standalone/.next/server/chunks/_af7bd752._.js +3 -0
  567. package/cloud-runtime/standalone/.next/server/chunks/_b0524599._.js +3 -0
  568. package/cloud-runtime/standalone/.next/server/chunks/_c31ca6ab._.js +1 -1
  569. package/cloud-runtime/standalone/.next/server/chunks/_c3c28282._.js +3 -0
  570. package/cloud-runtime/standalone/.next/server/chunks/_c965f7b3._.js +1 -1
  571. package/cloud-runtime/standalone/.next/server/chunks/_d2ea7d84._.js +3 -0
  572. package/cloud-runtime/standalone/.next/server/chunks/_e469c080._.js +10 -0
  573. package/cloud-runtime/standalone/.next/server/chunks/_ee99a36b._.js +1 -1
  574. package/cloud-runtime/standalone/.next/server/chunks/_fe32a267._.js +3 -0
  575. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_agent-specs_pull_route_actions_33fd1f01.js +1 -1
  576. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_agent-specs_route_actions_3c4fd7d4.js +1 -1
  577. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_agents_[id]_profile_route_actions_e8d70dac.js +1 -1
  578. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_agents_export_route_actions_cc761823.js +1 -1
  579. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_attachments_[id]_route_actions_28040395.js +1 -1
  580. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_audit_route_actions_9d92fa80.js +1 -1
  581. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_automations_create_route_actions_ffb767ae.js +1 -1
  582. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_automations_route_actions_0112e2f7.js +1 -1
  583. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_chat-runs_[id]_route_actions_033ac330.js +1 -1
  584. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_chat-runs_route_actions_0c8cd01c.js +1 -1
  585. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_chat_route_actions_ac0c75e3.js +1 -1
  586. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_daemon_route_actions_89f9619f.js +1 -1
  587. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_domains_[id]_route_actions_36310215.js +1 -1
  588. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_domains_route_actions_8d8cc0aa.js +1 -1
  589. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_file-read_route_actions_a562d24d.js +1 -1
  590. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_file-search_route_actions_8af77a20.js +1 -1
  591. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_filesystem_browse_route_actions_8e268170.js +1 -1
  592. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_filesystem_pick-folder_route_actions_162664ff.js +1 -1
  593. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_health_route_actions_da3433c4.js +1 -1
  594. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_history_route_actions_f1813cd2.js +1 -1
  595. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_knowledge-notes_route_actions_0ddf6109.js +1 -1
  596. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_learnings_route_actions_c32db009.js +1 -1
  597. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_linear_auth_route_actions_6bba0ae0.js +3 -0
  598. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_linear_callback_route_actions_0fc8695c.js +3 -0
  599. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_linear_cycles_route_actions_9cbb85fe.js +3 -0
  600. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_linear_issues_route_actions_8f12f3b7.js +3 -0
  601. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_linear_mcp-setup_route_actions_a11b04f4.js +3 -0
  602. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_linear_runs_[id]_route_actions_5c46cc4e.js +3 -0
  603. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_linear_runs_route_actions_a99753a8.js +3 -0
  604. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_linear_status_route_actions_e43f376f.js +3 -0
  605. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_linear_token_route_actions_510583b8.js +3 -0
  606. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_logs_route_actions_30a87f47.js +1 -1
  607. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_logs_stream_route_actions_92bf6397.js +1 -1
  608. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_memories_route_actions_f0712914.js +1 -1
  609. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_messages_[id]_route_actions_3ca634d2.js +1 -1
  610. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_participants_route_actions_2bae2919.js +1 -1
  611. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_processes_route_actions_93e6bd01.js +1 -1
  612. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_projects_[id]_agents_route_actions_62a7e8e5.js +1 -1
  613. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_projects_[id]_migrate-v1_route_actions_e28a058d.js +1 -1
  614. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_projects_[id]_migrate-v2_route_actions_0cfff9eb.js +1 -1
  615. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_projects_[id]_route_actions_6fd2e5a5.js +1 -1
  616. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_projects_[id]_skills_route_actions_90fdd1e6.js +1 -1
  617. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_projects_[id]_threads_route_actions_88ac9ddb.js +1 -1
  618. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_projects_[id]_variables_route_actions_e646c8d9.js +1 -1
  619. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_prompt-jobs_[id]_cancel_route_actions_fbd5be89.js +1 -1
  620. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_prompt-jobs_[id]_route_actions_774a2e21.js +1 -1
  621. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_prompt-jobs_[id]_runs_route_actions_6e59ee83.js +1 -1
  622. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_prompt-jobs_agents_route_actions_399e1f19.js +1 -1
  623. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_prompt-jobs_poll_route_actions_23fbbfa1.js +1 -1
  624. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_prompt-jobs_route_actions_acf03860.js +1 -1
  625. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_providers_route_actions_5388b373.js +1 -1
  626. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_queue_complete_route_actions_1350a2ac.js +1 -1
  627. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_queue_route_actions_1e9c9b6f.js +1 -1
  628. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_reactions_route_actions_e075d50e.js +1 -1
  629. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_schedules_debug_route_actions_61c03e5e.js +1 -1
  630. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_schedules_poll_route_actions_dfc6ace4.js +1 -1
  631. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_schedules_route_actions_f5db3d09.js +1 -1
  632. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_search_route_actions_4244da48.js +1 -1
  633. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_skills_assign_route_actions_15267be8.js +1 -1
  634. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_skills_available_route_actions_24023111.js +1 -1
  635. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_skills_detail_route_actions_1148baef.js +1 -1
  636. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_skills_history_route_actions_5e5c4757.js +1 -1
  637. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_skills_learn_route_actions_d3a37d25.js +1 -1
  638. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_skills_route_actions_780e175f.js +1 -1
  639. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_skills_unlearn_route_actions_3dfee433.js +1 -1
  640. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_status_route_actions_d551bce0.js +1 -1
  641. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_summarize_route_actions_3e77989a.js +1 -1
  642. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_system_db-status_route_actions_0f864710.js +1 -1
  643. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_task-drafts_route_actions_3b90bec5.js +1 -1
  644. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_comments_route_actions_71745d03.js +1 -1
  645. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_costs_route_actions_e20adc3f.js +1 -1
  646. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_dependencies_route_actions_b85eaa7f.js +1 -1
  647. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_graph_events_route_actions_3e2c7edc.js +1 -1
  648. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_graph_history_route_actions_debb26dc.js +1 -1
  649. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_graph_metrics_route_actions_a82052ba.js +1 -1
  650. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_graph_pause_route_actions_1341b4e1.js +1 -1
  651. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_graph_replan_route_actions_0d67ebea.js +1 -1
  652. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_graph_restart_route_actions_bbd1883b.js +1 -1
  653. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_graph_resume_route_actions_745fbaa8.js +1 -1
  654. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_graph_rollback_route_actions_77968f37.js +1 -1
  655. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_graph_route_actions_766df5f7.js +1 -1
  656. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_graph_schedule_route_actions_943bcc22.js +1 -1
  657. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_graph_start_route_actions_1d7e784a.js +1 -1
  658. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_graph_stop_route_actions_5f5d6ff0.js +1 -1
  659. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_heartbeat_route_actions_28915a39.js +1 -1
  660. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_history_route_actions_7ecd517e.js +1 -1
  661. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_logs_route_actions_e1a486bd.js +1 -1
  662. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_logs_stream_route_actions_ed381b79.js +1 -1
  663. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_[id]_route_actions_8de83605.js +1 -1
  664. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_extract_route_actions_2651c393.js +1 -1
  665. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_route_actions_84c37746.js +1 -1
  666. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_tasks_stream_route_actions_37a289da.js +1 -1
  667. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_thread-export_route_actions_26354edd.js +1 -1
  668. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_thread-repos_route_actions_e95d24ee.js +1 -1
  669. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_threads_knowledge_route_actions_c139bcf7.js +1 -1
  670. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_threads_route_actions_f9ea97f2.js +1 -1
  671. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_upload_[id]_route_actions_d9c30458.js +1 -1
  672. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_upload_route_actions_f15ed185.js +1 -1
  673. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_user-settings_route_actions_553a1208.js +1 -1
  674. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_userPreferences_route_actions_178deeb3.js +1 -1
  675. package/cloud-runtime/standalone/.next/server/chunks/ce889_server_app_api_migrate_workspaces-to-projects_route_actions_cb1e42e0.js +1 -1
  676. package/cloud-runtime/standalone/.next/server/chunks/ce889_server_app_api_orchestrator_tasks_[taskId]_cancel_route_actions_8b9cd080.js +1 -1
  677. package/cloud-runtime/standalone/.next/server/chunks/ce889_server_app_api_orchestrator_tasks_[taskId]_signal_route_actions_5a3d8250.js +1 -1
  678. package/cloud-runtime/standalone/.next/server/chunks/ce889_server_app_api_orchestrator_tasks_[taskId]_start_route_actions_08f1c94e.js +1 -1
  679. package/cloud-runtime/standalone/.next/server/chunks/ce889_server_app_api_orchestrator_tasks_[taskId]_status_route_actions_4062630f.js +1 -1
  680. package/cloud-runtime/standalone/.next/server/chunks/ce889_server_app_api_tasks_[id]_nodes_[nodeId]_complete_route_actions_c44e3cb4.js +1 -1
  681. package/cloud-runtime/standalone/.next/server/chunks/ce889_server_app_api_tasks_[id]_nodes_[nodeId]_fail_route_actions_7ff931bc.js +1 -1
  682. package/cloud-runtime/standalone/.next/server/chunks/ce889_server_app_api_tasks_[id]_nodes_[nodeId]_resume_route_actions_a9f01d21.js +1 -1
  683. package/cloud-runtime/standalone/.next/server/chunks/ce889_server_app_api_tasks_[id]_nodes_[nodeId]_stop_route_actions_dbea30a3.js +1 -1
  684. package/cloud-runtime/standalone/.next/server/chunks/ce889_server_app_api_tasks_[id]_nodes_[nodeId]_verify_route_actions_ff371970.js +1 -1
  685. package/cloud-runtime/standalone/.next/server/chunks/lib_2492d514._.js +11 -37
  686. package/cloud-runtime/standalone/.next/server/chunks/lib_3c080873._.js +34 -0
  687. package/cloud-runtime/standalone/.next/server/chunks/lib_70cd6b4a._.js +80 -0
  688. package/cloud-runtime/standalone/.next/server/chunks/lib_7f7835f1._.js +68 -0
  689. package/cloud-runtime/standalone/.next/server/chunks/lib_88726721._.js +79 -0
  690. package/cloud-runtime/standalone/.next/server/chunks/lib_98ae187c._.js +34 -0
  691. package/cloud-runtime/standalone/.next/server/chunks/lib_9f439b27._.js +25 -0
  692. package/cloud-runtime/standalone/.next/server/chunks/lib_check-node-version_ts_ef89bf83._.js +1 -1
  693. package/cloud-runtime/standalone/.next/server/chunks/lib_db_ts_e06c6085._.js +1 -1
  694. package/cloud-runtime/standalone/.next/server/chunks/lib_history-store_ts_2e721df2._.js +3 -3
  695. package/cloud-runtime/standalone/.next/server/chunks/lib_history-store_ts_74d1c060._.js +3 -3
  696. package/cloud-runtime/standalone/.next/server/chunks/lib_orchestrator_chat-processor_ts_4c335719._.js +4 -4
  697. package/cloud-runtime/standalone/.next/server/chunks/lib_sqlite-query-adapter_ts_3ea4d849._.js +5 -5
  698. package/cloud-runtime/standalone/.next/server/chunks/lib_sqlite-query-adapter_ts_b0b1a9b2._.js +5 -5
  699. package/cloud-runtime/standalone/.next/server/chunks/lib_vault-store_ts_3718ff79._.js +34 -0
  700. package/cloud-runtime/standalone/.next/server/chunks/node_modules_18a495c8._.js +3 -0
  701. package/cloud-runtime/standalone/.next/server/chunks/node_modules_4223ed10._.js +3 -0
  702. package/cloud-runtime/standalone/.next/server/chunks/node_modules_ccc242ec._.js +4 -0
  703. package/cloud-runtime/standalone/.next/server/chunks/node_modules_d2858615._.js +3 -0
  704. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_1402a1da._.js +3 -3
  705. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0f808fa3.js +1 -1
  706. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_19315704.js +2 -2
  707. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_2aaf71c8.js +1 -1
  708. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_2bdede98.js +1 -1
  709. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_371d0bff.js +15 -15
  710. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_3d31fed0.js +1 -1
  711. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_57a073eb.js +1 -1
  712. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_63e89275.js +1 -1
  713. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_84e28f38.js +1 -1
  714. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_9aff0990.js +3 -0
  715. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_cc6c687d.js +1 -1
  716. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_dcaa7800.js +3 -0
  717. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_def8bfbe.js +2 -2
  718. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_e0cc2bbf.js +1 -1
  719. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_fce9bc95.js +3 -0
  720. package/cloud-runtime/standalone/.next/server/chunks/node_modules_zod_v4_classic_external_fa90cebf.js +3 -3
  721. package/cloud-runtime/standalone/.next/server/chunks/src_graph_12d46a92._.js +3 -0
  722. package/cloud-runtime/standalone/.next/server/chunks/src_graph_138dc200._.js +59 -0
  723. package/cloud-runtime/standalone/.next/server/chunks/src_graph_914bb19c._.js +59 -0
  724. package/cloud-runtime/standalone/.next/server/chunks/src_graph_api-route-utils_ts_b7225a0e._.js +1 -1
  725. package/cloud-runtime/standalone/.next/server/chunks/src_graph_executor_ts_55c06268._.js +3 -3
  726. package/cloud-runtime/standalone/.next/server/chunks/src_graph_executor_ts_a8bc8d58._.js +3 -3
  727. package/cloud-runtime/standalone/.next/server/chunks/src_graph_scheduler_ts_d7b7497d._.js +57 -0
  728. package/cloud-runtime/standalone/.next/server/chunks/src_graph_state-machine_ts_ae1de66e._.js +1 -1
  729. package/cloud-runtime/standalone/.next/server/chunks/src_graph_store_ts_d6588a77._.js +56 -0
  730. package/cloud-runtime/standalone/.next/server/chunks/src_graph_validate_ts_a06b9fab._.js +1 -1
  731. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__0497a547._.js +2 -2
  732. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__056cdf7d._.js +1 -1
  733. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__11e33b9b._.js +1 -1
  734. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__139838ab._.js +3 -0
  735. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__19cd257e._.js +1 -1
  736. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__26d669c2._.js +1 -1
  737. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__351b2cc6._.js +1 -1
  738. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__35f9b4a6._.js +3 -0
  739. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__38071250._.js +1 -1
  740. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__43a0398d._.js +3 -0
  741. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__4ebf5947._.js +1 -1
  742. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__5ffa2883._.js +1 -1
  743. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__67d5f883._.js +1 -1
  744. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__6e83bf83._.js +1 -1
  745. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__71b6d8a9._.js +3 -0
  746. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__7d279e62._.js +3 -0
  747. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__7e7d6790._.js +3 -0
  748. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__8fe8b9dd._.js +1 -1
  749. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__a0a1cb74._.js +1 -1
  750. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__a42e4555._.js +3 -0
  751. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__a667191a._.js +1 -1
  752. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__aa28d46f._.js +1 -1
  753. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__b6598a70._.js +3 -0
  754. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__ba4308c3._.js +3 -0
  755. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__bb149a22._.js +3 -0
  756. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__bd4d5430._.js +1 -1
  757. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__bde5bc78._.js +1 -1
  758. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__cde88183._.js +1 -1
  759. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__d36dd8bc._.js +1 -1
  760. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__dac5ab29._.js +1 -1
  761. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__e0c64529._.js +1 -1
  762. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__e87ba2b0._.js +1 -1
  763. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__f2c3b7ab._.js +3 -0
  764. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__f62d412e._.js +1 -1
  765. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__f63d6594._.js +1 -1
  766. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__fbd1aaff._.js +1 -1
  767. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__febbd0b8._.js +1 -1
  768. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__ff22a10e._.js +1 -1
  769. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__ffbc2e98._.js +2 -2
  770. package/cloud-runtime/standalone/.next/server/chunks/ssr/_02c78cac._.js +2 -2
  771. package/cloud-runtime/standalone/.next/server/chunks/ssr/_05c8a494._.js +1 -1
  772. package/cloud-runtime/standalone/.next/server/chunks/ssr/_087a5b2b._.js +3 -0
  773. package/cloud-runtime/standalone/.next/server/chunks/ssr/_0b36c9d6._.js +2 -2
  774. package/cloud-runtime/standalone/.next/server/chunks/ssr/_0ff7c687._.js +3 -3
  775. package/cloud-runtime/standalone/.next/server/chunks/ssr/_0ffd2660._.js +2 -2
  776. package/cloud-runtime/standalone/.next/server/chunks/ssr/_11ce4c04._.js +95 -0
  777. package/cloud-runtime/standalone/.next/server/chunks/ssr/_173da79d._.js +2 -2
  778. package/cloud-runtime/standalone/.next/server/chunks/ssr/_1c58ab2d._.js +2 -2
  779. package/cloud-runtime/standalone/.next/server/chunks/ssr/_1e5aee62._.js +3 -0
  780. package/cloud-runtime/standalone/.next/server/chunks/ssr/_222af282._.js +2 -2
  781. package/cloud-runtime/standalone/.next/server/chunks/ssr/_22e99a52._.js +3 -0
  782. package/cloud-runtime/standalone/.next/server/chunks/ssr/_23f5fddc._.js +1 -1
  783. package/cloud-runtime/standalone/.next/server/chunks/ssr/_24feb541._.js +2 -2
  784. package/cloud-runtime/standalone/.next/server/chunks/ssr/_260b10ce._.js +3 -0
  785. package/cloud-runtime/standalone/.next/server/chunks/ssr/_3aa32c11._.js +2 -2
  786. package/cloud-runtime/standalone/.next/server/chunks/ssr/_43472af3._.js +1 -1
  787. package/cloud-runtime/standalone/.next/server/chunks/ssr/_45f91a8f._.js +3 -0
  788. package/cloud-runtime/standalone/.next/server/chunks/ssr/_47e9a061._.js +3 -3
  789. package/cloud-runtime/standalone/.next/server/chunks/ssr/_4bfdfb14._.js +1 -1
  790. package/cloud-runtime/standalone/.next/server/chunks/ssr/_4d4ba84b._.js +2 -2
  791. package/cloud-runtime/standalone/.next/server/chunks/ssr/_50d04b8f._.js +2 -2
  792. package/cloud-runtime/standalone/.next/server/chunks/ssr/_52fe115d._.js +1 -1
  793. package/cloud-runtime/standalone/.next/server/chunks/ssr/_547b6462._.js +2 -2
  794. package/cloud-runtime/standalone/.next/server/chunks/ssr/_629dc55c._.js +2 -2
  795. package/cloud-runtime/standalone/.next/server/chunks/ssr/_69164b06._.js +95 -0
  796. package/cloud-runtime/standalone/.next/server/chunks/ssr/_84a166cb._.js +3 -0
  797. package/cloud-runtime/standalone/.next/server/chunks/ssr/_93914ecd._.js +2 -2
  798. package/cloud-runtime/standalone/.next/server/chunks/ssr/_95434d70._.js +3 -0
  799. package/cloud-runtime/standalone/.next/server/chunks/ssr/_a10eb951._.js +2 -2
  800. package/cloud-runtime/standalone/.next/server/chunks/ssr/_a1b966f7._.js +1 -1
  801. package/cloud-runtime/standalone/.next/server/chunks/ssr/_aa5b4886._.js +8 -0
  802. package/cloud-runtime/standalone/.next/server/chunks/ssr/_ae20456d._.js +2 -2
  803. package/cloud-runtime/standalone/.next/server/chunks/ssr/_cb4d8a23._.js +2 -2
  804. package/cloud-runtime/standalone/.next/server/chunks/ssr/_cee3cf86._.js +95 -0
  805. package/cloud-runtime/standalone/.next/server/chunks/ssr/_dc2072e7._.js +4 -0
  806. package/cloud-runtime/standalone/.next/server/chunks/ssr/_e04b4053._.js +2 -2
  807. package/cloud-runtime/standalone/.next/server/chunks/ssr/_e1769638._.js +3 -3
  808. package/cloud-runtime/standalone/.next/server/chunks/ssr/_f1465cc8._.js +2 -2
  809. package/cloud-runtime/standalone/.next/server/chunks/ssr/_f2a7beb1._.js +2 -2
  810. package/cloud-runtime/standalone/.next/server/chunks/ssr/_fb404ac0._.js +3 -0
  811. package/cloud-runtime/standalone/.next/server/chunks/ssr/_fc1aaf9e._.js +2 -2
  812. package/cloud-runtime/standalone/.next/server/chunks/ssr/_fd0dda03._.js +2 -2
  813. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_75761787.js +1 -1
  814. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_554ec2bf.js +1 -1
  815. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_agents_[id]_page_actions_45703105.js +1 -1
  816. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_agents_page_actions_2bceb931.js +1 -1
  817. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_automations_page_actions_415dbaa9.js +1 -1
  818. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_board_page_actions_469e0e61.js +1 -1
  819. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_execution-graph_page_actions_3eceb5c1.js +1 -1
  820. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_page_actions_39d4fc33.js +1 -1
  821. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_projects_[slug]_automations_page_actions_9371bc66.js +1 -1
  822. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_projects_[slug]_graph_[taskId]_page_actions_c1473d77.js +1 -1
  823. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_projects_[slug]_knowledge_page_actions_1037c40a.js +1 -1
  824. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_projects_[slug]_linear_page_actions_0a8dc487.js +3 -0
  825. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_projects_orphans_page_actions_6f398ff8.js +1 -1
  826. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_projects_page_actions_42ca3f3e.js +1 -1
  827. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_settings_page_actions_840229cd.js +1 -1
  828. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_status_page_actions_39bbdbbf.js +1 -1
  829. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_thread_[id]_page_actions_94774546.js +1 -1
  830. package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_welcome_page_actions_e32fb27e.js +1 -1
  831. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_agents_[id]_page_tsx_9c49d8c8._.js +1 -1
  832. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_agents_layout_tsx_b9360330._.js +1 -1
  833. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_agents_page_tsx_f5f08ed8._.js +1 -1
  834. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_execution-graph_page_tsx_f854185a._.js +2 -2
  835. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_global-error_tsx_9170b7a0._.js +1 -1
  836. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_projects_[slug]_graph_[taskId]_page_tsx_d8b1d582._.js +2 -2
  837. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_projects_[slug]_knowledge_page_tsx_e2a55cbd._.js +1 -1
  838. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_projects_[slug]_layout_tsx_67c9550a._.js +1 -1
  839. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_projects_[slug]_linear_page_tsx_971a6ba7._.js +39 -0
  840. package/cloud-runtime/standalone/.next/server/chunks/ssr/ce889_server_app_projects_[slug]_thread_[threadId]_page_actions_660a8857.js +1 -1
  841. package/cloud-runtime/standalone/.next/server/chunks/ssr/components_PromptJobBoard_tsx_f83f722f._.js +8 -0
  842. package/cloud-runtime/standalone/.next/server/chunks/ssr/components_chat-ui_bfeda794._.js +6 -6
  843. package/cloud-runtime/standalone/.next/server/chunks/ssr/components_graph_graph-derived_ts_2b94148f._.js +1 -1
  844. package/cloud-runtime/standalone/.next/server/chunks/ssr/components_thread_WorkspaceSidebar_tsx_e660301b._.js +1 -1
  845. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_@dnd-kit_core_dist_core_esm_57071f37.js +1 -1
  846. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_f76a24fb._.js +1 -1
  847. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_e8bdedc5._.js +3 -0
  848. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_next_dist_03ec2107._.js +2 -2
  849. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_next_dist_174ae28d._.js +3 -3
  850. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_next_dist_4b63a0e1._.js +1 -1
  851. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_next_dist_61a87db9._.js +1 -1
  852. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_9774470f._.js +1 -1
  853. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_45780354.js +1 -1
  854. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_15817684.js +1 -1
  855. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_61c49327.js +2 -2
  856. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_eedfc1fd._.js +2 -2
  857. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_next_f2865b38._.js +2 -2
  858. package/cloud-runtime/standalone/.next/server/edge/chunks/[root-of-the-server]__9491d0b8._.js +2 -2
  859. package/cloud-runtime/standalone/.next/server/edge/chunks/_52aa5b93._.js +1 -1
  860. package/cloud-runtime/standalone/.next/server/edge/chunks/node_modules_next_dist_esm_build_templates_edge-wrapper_3b93bb62.js +1 -1
  861. package/cloud-runtime/standalone/.next/server/edge/chunks/turbopack-node_modules_next_dist_esm_build_templates_edge-wrapper_405b82a5.js +1 -1
  862. package/cloud-runtime/standalone/.next/server/edge/chunks/turbopack-node_modules_next_dist_esm_build_templates_edge-wrapper_cd32efca.js +1 -1
  863. package/cloud-runtime/standalone/.next/server/functions-config-manifest.json +9 -2
  864. package/cloud-runtime/standalone/.next/server/instrumentation.js +2 -2
  865. package/cloud-runtime/standalone/.next/server/middleware-build-manifest.js +6 -6
  866. package/cloud-runtime/standalone/.next/server/middleware-manifest.json +5 -5
  867. package/cloud-runtime/standalone/.next/server/next-font-manifest.js +1 -1
  868. package/cloud-runtime/standalone/.next/server/next-font-manifest.json +4 -0
  869. package/cloud-runtime/standalone/.next/server/pages/404.html +2 -2
  870. package/cloud-runtime/standalone/.next/server/pages/500.html +2 -2
  871. package/cloud-runtime/standalone/.next/server/server-reference-manifest.js +1 -1
  872. package/cloud-runtime/standalone/.next/server/server-reference-manifest.json +1 -1
  873. package/cloud-runtime/standalone/.next/static/chunks/0010f3df27ae53b8.js +1 -0
  874. package/cloud-runtime/standalone/.next/static/chunks/012b9216c9932478.js +1 -0
  875. package/cloud-runtime/standalone/.next/static/chunks/{8304e8487aa74059.css → 06003b84da346995.css} +0 -1
  876. package/cloud-runtime/standalone/.next/static/chunks/081fcf3ea160ca2d.js +1 -0
  877. package/cloud-runtime/standalone/.next/static/chunks/09c637be82a06122.js +1 -0
  878. package/cloud-runtime/standalone/.next/static/chunks/0c5b9fe15dda4972.js +1 -0
  879. package/cloud-runtime/standalone/.next/static/chunks/0fe219bd73492107.js +5 -0
  880. package/cloud-runtime/standalone/.next/static/chunks/14922fd23cdc223b.js +1 -0
  881. package/cloud-runtime/standalone/.next/static/chunks/1d8496cecfe9a523.js +1 -0
  882. package/cloud-runtime/standalone/.next/static/chunks/1fa91c34c99502bf.js +1 -0
  883. package/cloud-runtime/standalone/.next/static/chunks/2375e3fd2a9b8844.js +2 -0
  884. package/cloud-runtime/standalone/.next/static/chunks/2618f9566e3788e4.js +1 -0
  885. package/cloud-runtime/standalone/.next/static/chunks/2a9c83f8211196e0.js +1 -0
  886. package/cloud-runtime/standalone/.next/static/chunks/2ac8e643e539b81e.js +1 -0
  887. package/cloud-runtime/standalone/.next/static/chunks/2dbfd095c1e1d01f.js +1 -0
  888. package/cloud-runtime/standalone/.next/static/chunks/2e471cd7ac5cd8fb.js +6 -0
  889. package/cloud-runtime/standalone/.next/static/chunks/335f551791affdd1.js +1 -0
  890. package/cloud-runtime/standalone/.next/static/chunks/34dd491bc4ce9561.js +1 -0
  891. package/cloud-runtime/standalone/.next/static/chunks/360fde144fd22461.js +1 -0
  892. package/cloud-runtime/standalone/.next/static/chunks/416cf5039e669b5d.js +1 -0
  893. package/cloud-runtime/standalone/.next/static/chunks/657c261f623752de.js +1 -0
  894. package/cloud-runtime/standalone/.next/static/chunks/66769c2bf128027d.js +1 -0
  895. package/cloud-runtime/standalone/.next/static/chunks/68586017f55137e8.js +1 -0
  896. package/cloud-runtime/standalone/.next/static/chunks/73e3194f06db260e.js +1 -0
  897. package/cloud-runtime/standalone/.next/static/chunks/76229fb555232113.js +3 -0
  898. package/cloud-runtime/standalone/.next/static/chunks/797fcb0710da3be2.js +4 -0
  899. package/cloud-runtime/standalone/.next/static/chunks/818fb0f154cee2c5.js +1 -0
  900. package/cloud-runtime/standalone/.next/static/chunks/8b40d0636a2ba3b0.js +28 -0
  901. package/cloud-runtime/standalone/.next/static/chunks/8fc3ed1915e0659b.js +88 -0
  902. package/cloud-runtime/standalone/.next/static/chunks/95b85b1cb6868d27.js +1 -0
  903. package/cloud-runtime/standalone/.next/static/chunks/961311cbebbffb6d.js +1 -0
  904. package/cloud-runtime/standalone/.next/static/chunks/963060cf6e72339b.js +6 -0
  905. package/cloud-runtime/standalone/.next/static/chunks/966278eaefc0aa32.js +1 -0
  906. package/cloud-runtime/standalone/.next/static/chunks/a2a98ae5d4a3e5e3.js +2 -0
  907. package/cloud-runtime/standalone/.next/static/chunks/a72fbac84e32f665.js +1 -0
  908. package/cloud-runtime/standalone/.next/static/chunks/aa4d86855d0a3a55.js +1 -0
  909. package/cloud-runtime/standalone/.next/static/chunks/ab74849aeb87503e.js +5 -0
  910. package/cloud-runtime/standalone/.next/static/chunks/b553dba1f51e709b.js +16 -0
  911. package/cloud-runtime/standalone/.next/static/chunks/b93f49b29a473a1d.js +6 -0
  912. package/cloud-runtime/standalone/.next/static/chunks/c3784233f00e1ff5.js +12 -0
  913. package/cloud-runtime/standalone/.next/static/chunks/c48afb0a7fd0423c.js +28 -0
  914. package/cloud-runtime/standalone/.next/static/chunks/{2d1d138d8ea3234c.css → c5661b1d4c5abd6a.css} +1 -0
  915. package/cloud-runtime/standalone/.next/static/chunks/cb6301624094c91e.js +1 -0
  916. package/cloud-runtime/standalone/.next/static/chunks/{787436fad75f5bc6.js → ccaf68956da192f8.js} +2 -2
  917. package/cloud-runtime/standalone/.next/static/chunks/d522224ad5c8d724.css +1 -0
  918. package/cloud-runtime/standalone/.next/static/chunks/d96012bcfc98706a.js +1 -0
  919. package/cloud-runtime/standalone/.next/static/chunks/da12f313213a5615.js +1 -0
  920. package/cloud-runtime/standalone/.next/static/chunks/de271f8f22d293b4.js +1 -0
  921. package/cloud-runtime/standalone/.next/static/chunks/e2fa3c18dd56dc25.js +1 -0
  922. package/cloud-runtime/standalone/.next/static/chunks/e910386016ceacad.js +37 -0
  923. package/cloud-runtime/standalone/.next/static/chunks/f2fe77583374541b.js +1 -0
  924. package/cloud-runtime/standalone/.next/static/chunks/f8cfa030ea3cb3c3.js +1 -0
  925. package/cloud-runtime/standalone/.next/static/chunks/turbopack-0ace1f53f3e3cf46.js +4 -0
  926. package/cloud-runtime/standalone/README.md +37 -5
  927. package/cloud-runtime/standalone/app/api/automations/route.ts +64 -17
  928. package/cloud-runtime/standalone/app/api/chat/route.ts +29 -3
  929. package/cloud-runtime/standalone/app/api/linear/auth/route.ts +14 -0
  930. package/cloud-runtime/standalone/app/api/linear/callback/route.ts +43 -0
  931. package/cloud-runtime/standalone/app/api/linear/cycles/route.ts +22 -0
  932. package/cloud-runtime/standalone/app/api/linear/issues/route.ts +66 -0
  933. package/cloud-runtime/standalone/app/api/linear/mcp-setup/route.ts +181 -0
  934. package/cloud-runtime/standalone/app/api/linear/runs/[id]/route.ts +81 -0
  935. package/cloud-runtime/standalone/app/api/linear/runs/route.ts +91 -0
  936. package/cloud-runtime/standalone/app/api/linear/status/route.ts +38 -0
  937. package/cloud-runtime/standalone/app/api/linear/token/route.ts +59 -0
  938. package/cloud-runtime/standalone/app/api/prompt-jobs/route.ts +1 -1
  939. package/cloud-runtime/standalone/app/api/providers/route.ts +1 -14
  940. package/cloud-runtime/standalone/app/api/status/route.ts +6 -14
  941. package/cloud-runtime/standalone/app/projects/[slug]/knowledge/page.tsx +3 -181
  942. package/cloud-runtime/standalone/app/projects/[slug]/layout.tsx +2 -1
  943. package/cloud-runtime/standalone/app/projects/[slug]/linear/page.tsx +26 -0
  944. package/cloud-runtime/standalone/components/LinearBoard.tsx +1321 -0
  945. package/cloud-runtime/standalone/components/LinearSetup.tsx +239 -0
  946. package/cloud-runtime/standalone/components/ProjectModal.tsx +15 -3
  947. package/cloud-runtime/standalone/components/PromptJobBoard.tsx +367 -87
  948. package/cloud-runtime/standalone/components/chat-ui/ChatContainer.tsx +27 -14
  949. package/cloud-runtime/standalone/components/chat-ui/Composer.tsx +23 -5
  950. package/cloud-runtime/standalone/components/thread/WorkspaceSidebar.tsx +53 -48
  951. package/cloud-runtime/standalone/docs/superpowers/plans/2026-04-07-linear-integration.md +1352 -0
  952. package/cloud-runtime/standalone/hooks/useGroupChat.ts +4 -1
  953. package/cloud-runtime/standalone/hooks/useLinearConnection.ts +128 -0
  954. package/cloud-runtime/standalone/hooks/useLinearIssues.ts +78 -0
  955. package/cloud-runtime/standalone/hooks/useLinearRuns.ts +137 -0
  956. package/cloud-runtime/standalone/hooks/useProjectResources.ts +0 -50
  957. package/cloud-runtime/standalone/lib/chat/composer-routing.ts +128 -0
  958. package/cloud-runtime/standalone/lib/cli-runner.ts +15 -15
  959. package/cloud-runtime/standalone/lib/db.ts +32 -46
  960. package/cloud-runtime/standalone/lib/knowledge-notes.ts +6 -242
  961. package/cloud-runtime/standalone/lib/knowledge-store.ts +8 -211
  962. package/cloud-runtime/standalone/lib/linear-client.ts +276 -0
  963. package/cloud-runtime/standalone/lib/linear-execution-prompt.ts +153 -0
  964. package/cloud-runtime/standalone/lib/linear-run-store.ts +374 -0
  965. package/cloud-runtime/standalone/lib/repo-knowledge.ts +46 -125
  966. package/cloud-runtime/standalone/lib/shell-env.ts +71 -0
  967. package/cloud-runtime/standalone/lib/task-context.ts +3 -13
  968. package/cloud-runtime/standalone/lib/thread-knowledge.ts +2 -11
  969. package/cloud-runtime/standalone/lib/vault-store.ts +2067 -0
  970. package/cloud-runtime/standalone/mcp/README.md +22 -11
  971. package/cloud-runtime/standalone/package-lock.json +7 -0
  972. package/cloud-runtime/standalone/package.json +3 -0
  973. package/cloud-runtime/standalone/planning/automation-frontmatter-migration-spec.md +710 -0
  974. package/cloud-runtime/standalone/scripts/backfill-automations-frontmatter.ts +145 -0
  975. package/cloud-runtime/standalone/scripts/migrate-vault.ts +13 -0
  976. package/cloud-runtime/standalone/src/automations/adapters.ts +219 -0
  977. package/cloud-runtime/standalone/src/automations/index.ts +7 -0
  978. package/cloud-runtime/standalone/src/automations/parser.ts +33 -0
  979. package/cloud-runtime/standalone/src/automations/repository.ts +440 -0
  980. package/cloud-runtime/standalone/src/automations/serializer.ts +94 -0
  981. package/cloud-runtime/standalone/src/automations/state.ts +166 -0
  982. package/cloud-runtime/standalone/src/automations/types.ts +134 -0
  983. package/cloud-runtime/standalone/src/automations/validation.ts +337 -0
  984. package/cloud-runtime/standalone/src/graph/schedule-runner.ts +45 -7
  985. package/cloud-runtime/standalone/src/graph/store.ts +174 -5
  986. package/cloud-runtime/standalone/src/prompt-scheduler/store.ts +522 -162
  987. package/cloud-runtime/standalone/src/prompt-scheduler/types.ts +1 -0
  988. package/cloud-runtime/standalone/state/automations/.state/24a6a5db-3b14-49c4-841f-29f10f015fbb.json +8 -0
  989. package/cloud-runtime/standalone/state/automations/active/24a6a5db-3b14-49c4-841f-29f10f015fbb.md +17 -0
  990. package/cloud-runtime/standalone/tsconfig.tsbuildinfo +1 -1
  991. package/cloud-runtime/standalone/worker/index.js +4547 -366
  992. package/package.json +1 -1
  993. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/memory/route/app-paths-manifest.json +0 -3
  994. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/memory/route.js +0 -9
  995. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/memory/route.js.nft.json +0 -1
  996. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/memory/route_client-reference-manifest.js +0 -2
  997. package/cloud-runtime/standalone/.next/server/app/api/repos/[id]/knowledge/route/app-paths-manifest.json +0 -3
  998. package/cloud-runtime/standalone/.next/server/app/api/repos/[id]/knowledge/route.js +0 -8
  999. package/cloud-runtime/standalone/.next/server/app/api/repos/[id]/knowledge/route.js.nft.json +0 -1
  1000. package/cloud-runtime/standalone/.next/server/app/api/repos/[id]/knowledge/route_client-reference-manifest.js +0 -2
  1001. package/cloud-runtime/standalone/.next/server/chunks/[externals]__bc6c7111._.js +0 -3
  1002. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__01cd082e._.js +0 -13
  1003. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__0936925d._.js +0 -3
  1004. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__09ca81e1._.js +0 -101
  1005. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1ac3236d._.js +0 -25
  1006. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1b0bb735._.js +0 -15
  1007. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1c86bf6e._.js +0 -48
  1008. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__20c58b41._.js +0 -46
  1009. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__2126c763._.js +0 -42
  1010. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__236c35bb._.js +0 -51
  1011. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__277ed37d._.js +0 -3
  1012. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__2f06f568._.js +0 -46
  1013. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__30bd0c87._.js +0 -13
  1014. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__374cd94c._.js +0 -42
  1015. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__3785024c._.js +0 -80
  1016. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__379604d4._.js +0 -13
  1017. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__3c8f1de6._.js +0 -15
  1018. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__3d0df5a8._.js +0 -8
  1019. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4014ed70._.js +0 -51
  1020. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__42fcb81c._.js +0 -52
  1021. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4a3cd6ac._.js +0 -13
  1022. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4e522535._.js +0 -6
  1023. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__50c24784._.js +0 -3
  1024. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__59d1cdd8._.js +0 -3
  1025. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__644e6285._.js +0 -112
  1026. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__65755104._.js +0 -7
  1027. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__73c20995._.js +0 -15
  1028. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__8125bbc3._.js +0 -63
  1029. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__85275b88._.js +0 -3
  1030. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__89666394._.js +0 -8
  1031. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__8c0fb154._.js +0 -13
  1032. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__8f5cac13._.js +0 -46
  1033. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__91b22098._.js +0 -8
  1034. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__96ae701e._.js +0 -3
  1035. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__98ce983b._.js +0 -3
  1036. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__9a9fd39f._.js +0 -44
  1037. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__9ad4e385._.js +0 -3
  1038. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__a01ddd0b._.js +0 -46
  1039. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__a099c992._.js +0 -58
  1040. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__a9b949c3._.js +0 -7
  1041. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__bd43017b._.js +0 -3
  1042. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__bf6fb108._.js +0 -80
  1043. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c0a18648._.js +0 -80
  1044. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c122c54a._.js +0 -75
  1045. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c5b8ceb7._.js +0 -3
  1046. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c8b49077._.js +0 -79
  1047. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__dec3e1b7._.js +0 -30
  1048. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f1147a4a._.js +0 -15
  1049. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f5597fea._.js +0 -13
  1050. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f8c94cb3._.js +0 -8
  1051. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__fa79d53f._.js +0 -46
  1052. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__fb14cd4a._.js +0 -3
  1053. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__fc27a898._.js +0 -158
  1054. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__fce2cdce._.js +0 -3
  1055. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__fcf0b40a._.js +0 -3
  1056. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ffb21023._.js +0 -80
  1057. package/cloud-runtime/standalone/.next/server/chunks/_05fa3b89._.js +0 -46
  1058. package/cloud-runtime/standalone/.next/server/chunks/_4190f170._.js +0 -46
  1059. package/cloud-runtime/standalone/.next/server/chunks/_42e9c8d5._.js +0 -46
  1060. package/cloud-runtime/standalone/.next/server/chunks/_5ca51127._.js +0 -54
  1061. package/cloud-runtime/standalone/.next/server/chunks/_5fd6af5d._.js +0 -57
  1062. package/cloud-runtime/standalone/.next/server/chunks/_6519418b._.js +0 -59
  1063. package/cloud-runtime/standalone/.next/server/chunks/_6bb93816._.js +0 -6
  1064. package/cloud-runtime/standalone/.next/server/chunks/_6bc1b3e1._.js +0 -59
  1065. package/cloud-runtime/standalone/.next/server/chunks/_862895c0._.js +0 -57
  1066. package/cloud-runtime/standalone/.next/server/chunks/_8b9fde82._.js +0 -97
  1067. package/cloud-runtime/standalone/.next/server/chunks/_95ac98db._.js +0 -49
  1068. package/cloud-runtime/standalone/.next/server/chunks/_994414cd._.js +0 -54
  1069. package/cloud-runtime/standalone/.next/server/chunks/_99b78daf._.js +0 -46
  1070. package/cloud-runtime/standalone/.next/server/chunks/_affbdbb0._.js +0 -46
  1071. package/cloud-runtime/standalone/.next/server/chunks/_d22934ab._.js +0 -97
  1072. package/cloud-runtime/standalone/.next/server/chunks/_efc73784._.js +0 -46
  1073. package/cloud-runtime/standalone/.next/server/chunks/_fba13a4a._.js +0 -6
  1074. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_projects_[id]_memory_route_actions_f0c255ef.js +0 -3
  1075. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_repos_[id]_knowledge_route_actions_993fe4e5.js +0 -3
  1076. package/cloud-runtime/standalone/.next/server/chunks/lib_281e5787._.js +0 -16
  1077. package/cloud-runtime/standalone/.next/server/chunks/lib_63067e21._.js +0 -16
  1078. package/cloud-runtime/standalone/.next/server/chunks/lib_87c06aeb._.js +0 -25
  1079. package/cloud-runtime/standalone/.next/server/chunks/lib_a5adca60._.js +0 -64
  1080. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_7f8022ab.js +0 -3
  1081. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_8ec90680.js +0 -3
  1082. package/cloud-runtime/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_a590fcd6.js +0 -3
  1083. package/cloud-runtime/standalone/.next/server/chunks/src_graph_14067235._.js +0 -46
  1084. package/cloud-runtime/standalone/.next/server/chunks/src_graph_b63e2d39._.js +0 -46
  1085. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__096c39a3._.js +0 -3
  1086. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__47caef59._.js +0 -3
  1087. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__8b4e7816._.js +0 -3
  1088. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__a37fb1c3._.js +0 -3
  1089. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__a456581d._.js +0 -3
  1090. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__d74022f1._.js +0 -3
  1091. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__ea035cd9._.js +0 -3
  1092. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__fca7df40._.js +0 -3
  1093. package/cloud-runtime/standalone/.next/server/chunks/ssr/_0c5c111f._.js +0 -3
  1094. package/cloud-runtime/standalone/.next/server/chunks/ssr/_23656a95._.js +0 -3
  1095. package/cloud-runtime/standalone/.next/server/chunks/ssr/_27a789b3._.js +0 -3
  1096. package/cloud-runtime/standalone/.next/server/chunks/ssr/_36b413cc._.js +0 -3
  1097. package/cloud-runtime/standalone/.next/server/chunks/ssr/_46e00a9b._.js +0 -95
  1098. package/cloud-runtime/standalone/.next/server/chunks/ssr/_478f4991._.js +0 -3
  1099. package/cloud-runtime/standalone/.next/server/chunks/ssr/_547f19ec._.js +0 -3
  1100. package/cloud-runtime/standalone/.next/server/chunks/ssr/_85ca101b._.js +0 -8
  1101. package/cloud-runtime/standalone/.next/server/chunks/ssr/_9e07dcac._.js +0 -95
  1102. package/cloud-runtime/standalone/.next/server/chunks/ssr/_a68d8f62._.js +0 -3
  1103. package/cloud-runtime/standalone/.next/server/chunks/ssr/_a80e12c8._.js +0 -3
  1104. package/cloud-runtime/standalone/.next/server/chunks/ssr/_b1e1ef71._.js +0 -95
  1105. package/cloud-runtime/standalone/.next/server/chunks/ssr/_e1349560._.js +0 -3
  1106. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_welcome_page_tsx_6c79bc59._.js +0 -3
  1107. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_b82e03da._.js +0 -3
  1108. package/cloud-runtime/standalone/.next/static/chunks/01428247f94115a6.js +0 -1
  1109. package/cloud-runtime/standalone/.next/static/chunks/06cf0ed16bf8aa70.js +0 -28
  1110. package/cloud-runtime/standalone/.next/static/chunks/0bd6498bda341889.js +0 -1
  1111. package/cloud-runtime/standalone/.next/static/chunks/0ec92a111fe969fd.css +0 -1
  1112. package/cloud-runtime/standalone/.next/static/chunks/19dd745b663fdffa.js +0 -1
  1113. package/cloud-runtime/standalone/.next/static/chunks/1a3298f21d1040e9.js +0 -4
  1114. package/cloud-runtime/standalone/.next/static/chunks/1c8583feefee0765.js +0 -1
  1115. package/cloud-runtime/standalone/.next/static/chunks/1e3dede69b464364.js +0 -1
  1116. package/cloud-runtime/standalone/.next/static/chunks/238a28856e739dc9.js +0 -2
  1117. package/cloud-runtime/standalone/.next/static/chunks/24772e179852c73e.js +0 -1
  1118. package/cloud-runtime/standalone/.next/static/chunks/2deeba875ec50761.js +0 -1
  1119. package/cloud-runtime/standalone/.next/static/chunks/2e011469003993e9.js +0 -28
  1120. package/cloud-runtime/standalone/.next/static/chunks/31a4164e40ca71e5.js +0 -6
  1121. package/cloud-runtime/standalone/.next/static/chunks/3a55441b018d52e4.js +0 -1
  1122. package/cloud-runtime/standalone/.next/static/chunks/3c202e89da05d9b9.js +0 -1
  1123. package/cloud-runtime/standalone/.next/static/chunks/3c72becf6dff5597.js +0 -1
  1124. package/cloud-runtime/standalone/.next/static/chunks/44dafb5e85578e12.js +0 -16
  1125. package/cloud-runtime/standalone/.next/static/chunks/48e332ac3e9ed56c.js +0 -1
  1126. package/cloud-runtime/standalone/.next/static/chunks/5c0819dcc4bfec85.js +0 -1
  1127. package/cloud-runtime/standalone/.next/static/chunks/5d52c79d9812d06e.js +0 -1
  1128. package/cloud-runtime/standalone/.next/static/chunks/617db51b7444f818.js +0 -1
  1129. package/cloud-runtime/standalone/.next/static/chunks/673bb6094cea9ded.js +0 -1
  1130. package/cloud-runtime/standalone/.next/static/chunks/687d09973325dcf8.js +0 -1
  1131. package/cloud-runtime/standalone/.next/static/chunks/76a50c4abceb3362.js +0 -12
  1132. package/cloud-runtime/standalone/.next/static/chunks/8a4684388ca0f6de.js +0 -7
  1133. package/cloud-runtime/standalone/.next/static/chunks/9f236cc9572783b9.js +0 -93
  1134. package/cloud-runtime/standalone/.next/static/chunks/a9aaec85125f69b1.js +0 -1
  1135. package/cloud-runtime/standalone/.next/static/chunks/ac9a7d8cf17b5d75.js +0 -1
  1136. package/cloud-runtime/standalone/.next/static/chunks/b4c29a62f9255268.js +0 -1
  1137. package/cloud-runtime/standalone/.next/static/chunks/b6bbe747d2b0dddb.js +0 -1
  1138. package/cloud-runtime/standalone/.next/static/chunks/badc6258750e247d.js +0 -1
  1139. package/cloud-runtime/standalone/.next/static/chunks/bc3cad3c821b169b.js +0 -2
  1140. package/cloud-runtime/standalone/.next/static/chunks/bf2bb1662353aff5.js +0 -1
  1141. package/cloud-runtime/standalone/.next/static/chunks/c1fb885eed94aa8c.js +0 -1
  1142. package/cloud-runtime/standalone/.next/static/chunks/c653186036e56204.js +0 -1
  1143. package/cloud-runtime/standalone/.next/static/chunks/cb5581d868e78205.js +0 -1
  1144. package/cloud-runtime/standalone/.next/static/chunks/cbdeb17a36b99000.js +0 -1
  1145. package/cloud-runtime/standalone/.next/static/chunks/d5cc62984dc4205c.js +0 -1
  1146. package/cloud-runtime/standalone/.next/static/chunks/d78cc7d749043fef.js +0 -1
  1147. package/cloud-runtime/standalone/.next/static/chunks/da2b00558cf32f37.js +0 -1
  1148. package/cloud-runtime/standalone/.next/static/chunks/ee5f1457fbc593e1.js +0 -1
  1149. package/cloud-runtime/standalone/.next/static/chunks/ff1a16fafef87110.js +0 -1
  1150. package/cloud-runtime/standalone/.next/static/chunks/turbopack-e1d640f2fbe4fa5e.js +0 -4
  1151. package/cloud-runtime/standalone/app/api/projects/[id]/memory/route.ts +0 -81
  1152. package/cloud-runtime/standalone/app/api/repos/[id]/knowledge/route.ts +0 -98
  1153. /package/cloud-runtime/standalone/.next/server/app/api/{projects/[id]/memory → linear/auth}/route/build-manifest.json +0 -0
  1154. /package/cloud-runtime/standalone/.next/server/app/api/{projects/[id]/memory → linear/auth}/route/server-reference-manifest.json +0 -0
  1155. /package/cloud-runtime/standalone/.next/server/app/api/{projects/[id]/memory → linear/auth}/route.js.map +0 -0
  1156. /package/cloud-runtime/standalone/.next/server/app/api/{repos/[id]/knowledge → linear/callback}/route/build-manifest.json +0 -0
  1157. /package/cloud-runtime/standalone/.next/server/app/api/{repos/[id]/knowledge → linear/callback}/route/server-reference-manifest.json +0 -0
  1158. /package/cloud-runtime/standalone/.next/server/app/api/{repos/[id]/knowledge → linear/callback}/route.js.map +0 -0
  1159. /package/cloud-runtime/standalone/.next/static/{PH4cjH9B7XiWyHWYdevbx → 1ixi4WIJBgIPp7LJeYeKs}/_buildManifest.js +0 -0
  1160. /package/cloud-runtime/standalone/.next/static/{PH4cjH9B7XiWyHWYdevbx → 1ixi4WIJBgIPp7LJeYeKs}/_clientMiddlewareManifest.json +0 -0
  1161. /package/cloud-runtime/standalone/.next/static/{PH4cjH9B7XiWyHWYdevbx → 1ixi4WIJBgIPp7LJeYeKs}/_ssgManifest.js +0 -0
@@ -1,6 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,50030,e=>{"use strict";var t=e.i(71645);let r=new Set(["spawning","running"]);function s(e,s){let a=s?.intervalMs??1500,n=s?.idleIntervalMs??1e4,[l,o]=(0,t.useState)(new Set),[i,d]=(0,t.useState)([]),[c,u]=(0,t.useState)({}),[p,m]=(0,t.useState)([]),f=(0,t.useRef)(e);f.current=e;let g=(0,t.useRef)(s?.messages??[]);g.current=s?.messages??[];let h=(0,t.useRef)(s?.setMessages);h.current=s?.setMessages;let x=(0,t.useRef)(0);(0,t.useEffect)(()=>{let e=s?.messages??[];if(e.length>0){let t=Math.max(...e.map(e=>e.timestamp));t>x.current&&(x.current=t)}},[s?.messages]);let b=(0,t.useCallback)(async()=>{let e=f.current;if(!e){o(new Set),d([]),u({}),m([]);return}let t=null;if(e.threadId?t=`/api/processes?threadId=${encodeURIComponent(e.threadId)}`:e.workspaceId&&(t=`/api/processes?workspaceId=${encodeURIComponent(e.workspaceId)}`),!t){o(new Set),d([]),u({}),m([]);return}try{let a=e.workspaceId||e.threadId,n=a?`/api/history?threadId=${encodeURIComponent(a)}&since=${x.current}`:null,l=a?`/api/chat-runs?threadId=${encodeURIComponent(a)}&limit=20`:null,i=[fetch(t)];n&&i.push(fetch(n)),l&&i.push(fetch(l));let[c,p,b]=await Promise.all(i),v=f.current;if(v?.threadId!==e.threadId||v?.workspaceId!==e.workspaceId)return;if(c.ok){let e=await c.json();d(e);let t=new Set(e.filter(e=>r.has(e.state)).map(e=>e.agentId));o(t);let s={};for(let t of e){if(!r.has(t.state))continue;let e=g.current.find(e=>e.id===t.sinceMessageId),a=e?.rootMessageId??t.sinceMessageId;s[t.agentId]={content:"",rootMessageId:a}}u(s)}if(b?.ok){var s;let e=(s=await b.json(),Array.isArray(s)?s.map(e=>{if(!e||"object"!=typeof e)return null;let t="string"==typeof e.chatRunId?e.chatRunId:"string"==typeof e.id?e.id:null,r="string"==typeof e.threadId?e.threadId:null,s="string"==typeof e.status?e.status:null,a="string"==typeof e.rootMessageId?e.rootMessageId:(e.rootMessageId,null);return t&&r&&s&&("queued"===s||"running"===s||"awaiting_user"===s||"blocked"===s||"completed"===s||"failed"===s||"cancelled"===s)?{chatRunId:t,threadId:r,rootMessageId:a,status:s,optimistic:!1}:null}).filter(e=>!!e):[]);m(e)}if(p?.ok&&h.current){let e=await p.json();if(e.length>0){let t=Math.max(...e.map(e=>e.timestamp));t>x.current&&(x.current=t),h.current(t=>{let r=new Set(t.map(e=>e.id)),s=e.filter(e=>!r.has(e.id)),a=t.map(t=>e.find(e=>e.id===t.id)??t);return 0===s.length?a:[...a,...s].sort((e,t)=>e.timestamp-t.timestamp)})}}}catch{}},[]),v=e?.threadId||e?.workspaceId||null,w=p.some(e=>"queued"===e.status||"running"===e.status),y=i.some(e=>r.has(e.state)),j=w||y?a:n;return(0,t.useEffect)(()=>{if(!v){o(new Set),d([]),u({}),m([]);return}b();let e=setInterval(b,j);return()=>clearInterval(e)},[v,j,b]),{activeAgents:l,processes:i,streaming:c,chatRuns:p,poll:b}}e.s(["useProcessPolling",()=>s])},67581,e=>{"use strict";var t=e.i(18050),r=e.i(71645),s=e.i(18566),a=e.i(43531),n=e.i(64659),l=e.i(55436),o=e.i(37727),i=e.i(19580),d=e.i(74049),c=e.i(40461),u=e.i(36797),p=e.i(67041),m=e.i(93237);function f(){let[e,s]=(0,r.useState)(null),[a,n]=(0,r.useState)(!1),l=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/daemon");e.ok&&s(await e.json())}catch{}},[]);(0,r.useEffect)(()=>{l();let e=setInterval(l,1e4);return()=>clearInterval(e)},[l]);let o=async()=>{n(!0);try{e?.running?await fetch("/api/daemon",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"stop"})}):await fetch("/api/daemon",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({workers:1})}),await l()}finally{n(!1)}},i=async t=>{if(!e)return;let r=Math.max(1,Math.min(e.maxWorkers,e.targetWorkers+t));if(r!==e.targetWorkers){n(!0);try{await fetch("/api/daemon",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({workers:r})}),await l()}finally{n(!1)}}};if(!e)return null;let d=e.running;return(0,t.jsxs)("div",{className:"flex items-center gap-3 py-2 text-xs text-[var(--muted-foreground)]",children:[(0,t.jsxs)("button",{type:"button",onClick:o,disabled:a,className:"inline-flex items-center gap-1.5 px-2.5 py-1 rounded-full border border-[var(--border)] hover:border-[var(--border)] transition-colors disabled:opacity-50",children:[(0,t.jsx)("span",{className:`w-1.5 h-1.5 rounded-full ${d?"bg-emerald-500":"bg-[var(--app-shell-soft-text)]"}`}),(0,t.jsx)("span",{className:"font-medium text-[var(--muted-foreground)]",children:a?"...":d?"Daemon running":"Daemon stopped"})]}),d&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"inline-flex items-center rounded-full border border-[var(--border)] overflow-hidden",children:[(0,t.jsx)("button",{type:"button",onClick:()=>i(-1),disabled:a||e.targetWorkers<=1,className:"px-1.5 py-0.5 hover:bg-[var(--muted)] transition-colors disabled:opacity-30 text-[var(--muted-foreground)]",children:"-"}),(0,t.jsxs)("span",{className:"px-2 py-0.5 font-mono text-[var(--muted-foreground)] border-x border-[var(--border)]",children:[e.activeWorkers,"/",e.targetWorkers,"w"]}),(0,t.jsx)("button",{type:"button",onClick:()=>i(1),disabled:a||e.targetWorkers>=e.maxWorkers,className:"px-1.5 py-0.5 hover:bg-[var(--muted)] transition-colors disabled:opacity-30 text-[var(--muted-foreground)]",children:"+"})]}),e.startedAt&&(0,t.jsxs)("span",{className:"text-[var(--muted-foreground)]",children:["up since ",new Date(e.startedAt).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})]})]})]})}var g=e.i(50030);let h="__no_department__",x="__unassigned__";function b(e){if(!e)return[];let t=e.trim();return t?t.startsWith("[")&&t.endsWith("]")?t.slice(1,-1).split(",").map(e=>e.trim().replace(/^["']|["']$/g,"")).filter(Boolean):t.split(",").map(e=>e.trim()).filter(Boolean):[]}function v(e,t,r,s){let a=new Map;for(let s of e){let e=t(s);for(let t of e.length>0?e:[r])a.set(t,(a.get(t)||0)+1)}return Array.from(a.entries()).map(([e,t])=>({value:e,label:e===r?s:e.replace(/[_-]+/g," ").replace(/\s+/g," ").trim().replace(/\b\w/g,e=>e.toUpperCase()),count:t})).sort((e,t)=>e.label.localeCompare(t.label))}function w({params:e}){let{slug:a}=(0,r.use)(e),n=(0,s.useRouter)(),{tasks:o,isLoading:w,createTask:j,updateTask:k,completeTaskStage:N,cancelWorkflow:I,refetch:S,cancellingTaskId:C}=(0,i.useTasks)({realtime:!0,project:a}),{projects:M}=(0,d.useProjects)(),{stages:$,stageConfig:T,isValidTransition:_,isLoading:A}=(0,c.useWorkflows)(),[R,E]=(0,r.useState)([]),[L,O]=(0,r.useState)(""),[W,P]=(0,r.useState)([]),[U,z]=(0,r.useState)([]),D=M.find(e=>e.slug===a);(0,r.useEffect)(()=>{let e=!1;return fetch("/api/participants").then(e=>e.json()).then(t=>{e||E(Array.isArray(t)?t:[])}).catch(()=>{e||E([])}),()=>{e=!0}},[]);let q=(0,r.useMemo)(()=>new Map(R.map(e=>[e.id,e])),[R]),B=(0,r.useMemo)(()=>{let e=new Map;for(let t of o)e.set(t.id,function(e,t){let r=function(e){let t=e.match(/^---\n([\s\S]*?)\n---\n?/);if(!t)return{};let r={};for(let e of t[1].split("\n")){let t=e.trim();if(!t)continue;let s=t.indexOf(":");if(s<=0)continue;let a=t.slice(0,s).trim(),n=t.slice(s+1).trim();a&&n&&(r[a]=n)}return r}(e.content||""),s=[...b(r.department),...b(r.team),...b(r.area)],a=[...b(r.assignee),...b(r.assigned_agent),...b(r.assignedAgent),...b(r.agent),...b(r.agent_id),...b(r.owner)],n=Array.from(new Set(s.map(e=>e.trim()).filter(Boolean))),l=Array.from(new Set(a.map(e=>{let r=e.trim();if(!r)return"";let s=t.get(r);return s?.name?.trim()||r}).filter(Boolean)));return{departments:n.length>0?n:[h],assignees:l.length>0?l:[x]}}(t,q));return e},[o,q]),K=(0,r.useMemo)(()=>v(o,e=>B.get(e.id)?.departments||[h],h,"No department"),[o,B]),F=(0,r.useMemo)(()=>v(o,e=>B.get(e.id)?.assignees||[x],x,"Unassigned"),[o,B]),{processes:G}=(0,g.useProcessPolling)(D?{workspaceId:D.id}:null,{intervalMs:3e3}),J=(0,r.useMemo)(()=>{let e=L.trim().toLowerCase(),t=new Set(W),r=new Set(U);return o.filter(s=>{let a=B.get(s.id)||{departments:[h],assignees:[x]},n=0===t.size||a.departments.some(e=>t.has(e)),l=0===r.size||a.assignees.some(e=>r.has(e)),o=!e||(s.title||"").toLowerCase().includes(e)||(s.content||"").toLowerCase().includes(e);return n&&l&&o})},[o,L,W,U,B]),V=(0,r.useMemo)(()=>o.some(e=>!!e.graph_id),[o]),X=(0,r.useMemo)(()=>o.filter(e=>e.graph_id).map(e=>e.id),[o]);(0,r.useEffect)(()=>{0!==X.length&&(0,m.prefetchGraphSummaries)(X)},[X]);let H=(0,r.useCallback)(e=>{let t=(0,m.getCachedGraphSummary)(e.id);if(!t)return"done"===e.stage||"completed"===e.status?"DONE":"INTAKE"===e.stage||"ideation"===e.stage||"queued"===e.status?"INTAKE":"PROGRESS";return t.derivedStatus},[]),Q=(0,r.useCallback)(e=>{n.push(`/projects/${a}/graph/${e.id}`)},[n,a]),Y=(0,r.useCallback)(async(e,t)=>{await k(e,t)},[k]),Z=async(e,t)=>{let r=[`status: ${"INTAKE"===t?"queued":"in_progress"}`,`stage: ${t}`];D&&(r.push(`project: ${D.slug}`),r.push(`project_id: ${D.id}`),r.push(`workflow_id: ${D.workflow_id||c.DEFAULT_WORKFLOW_ID}`));let s=`---
2
- ${r.join("\n")}
3
- ---
4
-
5
- # ${e}
6
- `;await j(s,null)};return w||A?(0,t.jsx)("div",{className:"h-full flex items-center justify-center",children:(0,t.jsxs)("div",{className:"flex flex-col items-center gap-4",children:[(0,t.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full"}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"Loading board..."})]})}):(0,t.jsxs)("div",{className:"h-full flex flex-col animate-slide-in-right",children:[(0,t.jsxs)("div",{className:"flex-shrink-0 border-b border-[var(--border)] bg-[var(--card-bg)] backdrop-blur-md px-3 sm:px-6 py-3 flex flex-col gap-3",children:[(0,t.jsx)("div",{className:"flex items-center gap-3 text-sm text-[var(--app-shell-soft-text)]",children:(0,t.jsx)("span",{className:"font-semibold text-[var(--foreground)] truncate",children:D?.name||a})}),(0,t.jsxs)("div",{className:"flex flex-col gap-2 lg:flex-row lg:items-center lg:justify-between",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,t.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-[0.24em] text-[var(--app-shell-soft-text)]",children:"Filter by"}),(0,t.jsx)(y,{label:"Department",options:K,selectedValues:W,onChange:P}),(0,t.jsx)(y,{label:"Assignee",options:F,selectedValues:U,onChange:z})]}),(0,t.jsxs)("div",{className:"relative w-full lg:max-w-sm group",children:[(0,t.jsx)(l.Search,{className:"absolute left-3 top-1/2 -translate-y-1/2 text-[var(--app-shell-soft-text)] group-focus-within:text-indigo-500 transition-colors",size:14}),(0,t.jsx)("input",{type:"text",placeholder:"Search tasks",value:L,onChange:e=>O(e.target.value),className:"w-full bg-[var(--secondary)] border border-[var(--border)] rounded-full py-1.5 pl-9 pr-4 text-xs focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all"})]})]})]}),(0,t.jsx)("div",{className:"flex-shrink-0 px-3 sm:px-6",children:(0,t.jsx)(f,{})}),(0,t.jsx)(p.default,{tasks:J,processes:G,onTaskClick:e=>n.push(`/projects/${a}/graph/${e.id}`),onStop:async e=>{await I({taskId:e}),await S()},onRetry:async e=>{await N({taskId:e,decision:"not_done",final_result:"Manual retry requested.",explanation:"Manual retry requested."})},cancellingTaskId:C,panelId:`now-running:${a}`}),(0,t.jsx)("div",{className:"flex-1 min-h-0 relative",children:(0,t.jsx)("div",{className:"absolute inset-0 overflow-hidden",children:(0,t.jsx)(u.default,{tasks:J,onSelectTask:Q,onTasksChange:()=>{},onTaskUpdate:Y,onAddTask:(e,t)=>Z(e,t),stages:$,stageConfig:T,isValidTransition:V?void 0:_,graphColumnFn:V?H:void 0})})})]})}function y({label:e,options:s,selectedValues:i,onChange:d}){let[c,u]=(0,r.useState)(!1),[p,m]=(0,r.useState)(""),f=(0,r.useRef)(null),g=(0,r.useMemo)(()=>new Set(i),[i]);(0,r.useEffect)(()=>{if(!c)return;let e=e=>{f.current?.contains(e.target)||u(!1)};return document.addEventListener("pointerdown",e),()=>document.removeEventListener("pointerdown",e)},[c]);let h=(0,r.useMemo)(()=>{let e=p.trim().toLowerCase();return e?s.filter(t=>t.label.toLowerCase().includes(e)):s},[s,p]),x=0===i.length?e:`${e} (${i.length})`;return(0,t.jsxs)("div",{className:"relative",ref:f,children:[(0,t.jsxs)("div",{className:"flex items-center gap-1",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>u(e=>!e),"aria-expanded":c,className:`inline-flex items-center gap-2 rounded-full border px-3 py-1.5 text-xs transition-colors ${i.length>0?"border-indigo-500/40 bg-indigo-500/10 text-indigo-600":"border-[var(--border)] bg-[var(--secondary)] text-[var(--foreground)]"}`,children:[(0,t.jsx)("span",{children:x}),(0,t.jsx)(n.ChevronDown,{size:14})]}),i.length>0&&(0,t.jsx)("button",{type:"button",onClick:()=>d([]),className:"inline-flex h-7 w-7 items-center justify-center rounded-full border border-[var(--border)] bg-[var(--secondary)] text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]","aria-label":`Clear ${e} filters`,children:(0,t.jsx)(o.X,{size:12})})]}),c&&(0,t.jsxs)("div",{className:"absolute left-0 top-full z-30 mt-2 w-72 overflow-hidden rounded-2xl border border-[var(--border)] bg-[var(--card-bg)] shadow-2xl shadow-black/10 backdrop-blur-xl",children:[(0,t.jsx)("div",{className:"border-b border-[var(--border)] p-3",children:(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)(l.Search,{className:"absolute left-3 top-1/2 -translate-y-1/2 text-[var(--app-shell-soft-text)]",size:14}),(0,t.jsx)("input",{type:"text",value:p,onChange:e=>m(e.target.value),placeholder:`Search ${e.toLowerCase()}`,className:"w-full rounded-xl border border-[var(--border)] bg-[var(--secondary)] py-2 pl-9 pr-3 text-xs focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500"})]})}),(0,t.jsx)("div",{className:"max-h-72 overflow-y-auto p-2",children:0===h.length?(0,t.jsx)("div",{className:"px-3 py-6 text-center text-xs text-[var(--muted-foreground)]",children:"No matches"}):h.map(e=>{let r=g.has(e.value);return(0,t.jsxs)("button",{type:"button",onClick:()=>{var t;return t=e.value,void(g.has(t)?d(i.filter(e=>e!==t)):d([...i,t]))},className:`flex w-full items-center justify-between rounded-xl px-3 py-2 text-left text-xs transition-colors ${r?"bg-indigo-500/10 text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--secondary)]"}`,children:[(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:`flex h-4 w-4 items-center justify-center rounded border ${r?"border-indigo-500 bg-indigo-500 text-white":"border-[var(--border)] bg-[var(--card-bg)] text-transparent"}`,children:(0,t.jsx)(a.Check,{size:11})}),(0,t.jsx)("span",{children:e.label})]}),(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:e.count})]},e.value)})})]})]})}e.s(["default",()=>w],67581)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,86311,e=>{"use strict";let t=(0,e.i(75254).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"}]]);e.s(["MessageSquare",()=>t],86311)},78583,e=>{"use strict";let t=(0,e.i(75254).default)("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);e.s(["FileText",()=>t],78583)},61090,e=>{"use strict";var t=e.i(18050),r=e.i(71645),a=e.i(14065),s=e.i(23385),o=e.i(78583),n=e.i(90272),l=e.i(86311),d=e.i(7233),i=e.i(55436);let c=(0,e.i(75254).default)("square-pen",[["path",{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",key:"1m0v6g"}],["path",{d:"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z",key:"ohrbg2"}]]);var u=e.i(27612),x=e.i(37727),m=e.i(74049);function p(e){return e?{id:e.id,content:e.content,created_at:e.createdAt,updated_at:e.updatedAt,source:e.sourceType}:null}function f({params:e}){let{slug:a}=(0,r.use)(e),{projects:c}=(0,m.useProjects)(),x=c.find(e=>e.slug===a),f=x?.id??null,{skills:y,addSkill:N,removeSkill:w}=function(e){let[t,a]=(0,r.useState)([]),[s,o]=(0,r.useState)(!0),n=(0,r.useCallback)(async()=>{if(!e){a([]),o(!1);return}try{let t=await fetch(`/api/projects/${e}/skills`);if(!t.ok)return;let r=await t.json();a(r.skills??[])}catch{}finally{o(!1)}},[e]);return(0,r.useEffect)(()=>{n()},[n]),{skills:t,isLoading:s,addSkill:(0,r.useCallback)(async(t,r)=>{if(e)try{(await fetch(`/api/projects/${e}/skills`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({file:t,condition:r})})).ok&&await n()}catch{}},[e,n]),removeSkill:(0,r.useCallback)(async t=>{if(e)try{(await fetch(`/api/projects/${e}/skills?skillId=${t}`,{method:"DELETE"})).ok&&a(e=>e.filter(e=>e.id!==t))}catch{}},[e]),refresh:n}}(f),{memory:k,addMemory:C,deleteMemory:S}=function(e){let[t,a]=(0,r.useState)([]),[s,o]=(0,r.useState)(!0),n=(0,r.useCallback)(async()=>{if(!e){a([]),o(!1);return}try{let t=await fetch(`/api/projects/${e}/memory?producer=human`);if(!t.ok)return;let r=await t.json();a(r.memory??[])}catch{}finally{o(!1)}},[e]);return(0,r.useEffect)(()=>{n()},[n]),{memory:t,isLoading:s,addMemory:(0,r.useCallback)(async(t,r)=>{if(e)try{(await fetch(`/api/projects/${e}/memory`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:t,source:r,producer:"human"})})).ok&&await n()}catch{}},[e,n]),deleteMemory:(0,r.useCallback)(async t=>{if(e)try{(await fetch(`/api/projects/${e}/memory?memoryId=${t}`,{method:"DELETE"})).ok&&a(e=>e.filter(e=>e.id!==t))}catch{}},[e]),refresh:n}}(f),[L,T]=(0,r.useState)("project"),[z,E]=(0,r.useState)(""),[M,P]=(0,r.useState)(!1),[$,A]=(0,r.useState)(""),[F,O]=(0,r.useState)(""),[R,H]=(0,r.useState)(""),[I,U]=(0,r.useState)(null),[D,B]=(0,r.useState)({}),[_,q]=(0,r.useState)({});(0,r.useEffect)(()=>{x?.repos&&B(e=>{let t={};for(let r of x.repos)t[r.id]=e[r.id]??r.notes??"";return t})},[x?.repos]),(0,r.useEffect)(()=>{let e=!1;return async function(){let t=x?.repos??[];if(0!==t.length)try{let r=await Promise.all(t.map(async e=>{let t=await fetch(`/api/repos/${e.id}/knowledge?producer=human`),r=((t.ok?await t.json():{knowledge:[]}).knowledge??[]).map(e=>String(e.content??"").trim()).filter(Boolean).join("\n\n");return[e.id,r]}));e||B(e=>{let t={...e};for(let[e,a]of r)a&&(t[e]=a);return t})}catch{}}(),()=>{e=!0}},[x?.repos]),(0,r.useEffect)(()=>{let e=!1;return async function(){if(!f)return U(null);try{let t=await fetch(`/api/knowledge-notes?scope=project&subjectId=${encodeURIComponent(f)}`),r=t.ok?await t.json():{note:null};e||U(p(r.note))}catch{e||U(null)}}(),()=>{e=!0}},[f]),(0,r.useEffect)(()=>{let e=!1;return async function(){let t=x?.repos??[];if(0===t.length)return q({});try{let r=await Promise.all(t.map(async e=>{let t=await fetch(`/api/knowledge-notes?scope=repo&subjectId=${encodeURIComponent(e.id)}`),r=t.ok?await t.json():{note:null};return[e.id,p(r.note)]}));e||q(Object.fromEntries(r))}catch{e||q({})}}(),()=>{e=!0}},[x?.repos]);let J=y.filter(e=>!z||e.file.toLowerCase().includes(z.toLowerCase())||(e.condition??"").toLowerCase().includes(z.toLowerCase())),G=k.filter(e=>!z||e.content.toLowerCase().includes(z.toLowerCase())),K=!z||I?.content.toLowerCase().includes(z.toLowerCase()),V=(x?.repos??[]).filter(e=>{if(!z)return!0;let t=z.toLowerCase(),r=(D[e.id]??"").toLowerCase(),a=(_[e.id]?.content??"").toLowerCase();return e.name.toLowerCase().includes(t)||(e.path??"").toLowerCase().includes(t)||r.includes(t)||a.includes(t)});return x?(0,t.jsxs)("div",{className:"flex h-full flex-col overflow-hidden",children:[(0,t.jsx)("div",{className:"flex-shrink-0 border-b border-[var(--border)] bg-[var(--card-bg)] px-3 py-2 backdrop-blur-md sm:h-14 sm:px-6 sm:py-0",children:(0,t.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between sm:gap-4",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm",children:[(0,t.jsx)("span",{className:"font-semibold text-[var(--foreground)]",children:x.name}),(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"/"}),(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Knowledge"})]}),(0,t.jsxs)("div",{className:"relative w-full sm:max-w-xs",children:[(0,t.jsx)(i.Search,{className:"absolute left-3 top-1/2 -translate-y-1/2 text-[var(--app-shell-soft-text)]",size:14}),(0,t.jsx)("input",{type:"text",placeholder:"Search notes...",value:z,onChange:e=>E(e.target.value),className:"w-full rounded-full border border-[var(--border)] bg-[var(--secondary)] py-1.5 pl-9 pr-4 text-xs focus:outline-none focus:ring-2 focus:ring-[var(--ring)] focus:border-[var(--primary)]"})]})]})}),(0,t.jsx)("div",{className:"flex-shrink-0 px-3 pb-2 pt-4 sm:px-6",children:(0,t.jsxs)("div",{className:"flex w-fit gap-1 rounded-xl border border-[var(--border)] bg-[var(--secondary)] p-1",children:[(0,t.jsx)(h,{active:"project"===L,onClick:()=>T("project"),icon:(0,t.jsx)(s.BrainCircuit,{size:14}),label:"Project"}),(0,t.jsx)(h,{active:"repos"===L,onClick:()=>T("repos"),icon:(0,t.jsx)(n.FolderGit2,{size:14}),label:"Repositories"})]})}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto px-3 pb-8 sm:px-6",children:"project"===L?(0,t.jsxs)("div",{className:"mt-2 grid grid-cols-12 gap-4 sm:gap-6",children:[(0,t.jsx)("div",{className:"col-span-12 lg:col-span-4 space-y-4",children:(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--border)] bg-[var(--card-bg)] p-5 shadow-[var(--shadow-sm)]",children:[(0,t.jsx)("h3",{className:"mb-4 text-[10px] font-black uppercase tracking-[0.2em] text-[var(--app-shell-soft-text)]",children:"Overview"}),(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-3",children:[(0,t.jsx)(v,{label:"References",value:J.length,sub:"File-backed"}),(0,t.jsx)(v,{label:"Notes",value:G.length,sub:"Human-authored"})]}),(0,t.jsx)("div",{className:"mt-3",children:(0,t.jsx)(v,{label:"System Note",value:+!!I?.content,sub:"Living doc"})})]})}),(0,t.jsxs)("div",{className:"col-span-12 lg:col-span-8 space-y-4",children:[(0,t.jsxs)("section",{className:"rounded-2xl border border-[var(--border)] bg-[var(--card-bg)] p-5 shadow-[var(--shadow-sm)]",children:[(0,t.jsxs)("div",{className:"mb-4",children:[(0,t.jsxs)("h2",{className:"flex items-center gap-2 text-sm font-semibold text-[var(--foreground)]",children:[(0,t.jsx)(s.BrainCircuit,{size:16,className:"text-[var(--primary)]"}),"Living Project Note"]}),(0,t.jsx)("p",{className:"mt-1 text-xs text-[var(--muted-foreground)]",children:"Auto-maintained project knowledge. It updates in place instead of creating review candidates."})]}),(0,t.jsx)(g,{note:K?I:I?.content?{...I,content:""}:null,emptyLabel:z?"No matching project note content.":"No project note yet.",scope:"project",subjectId:f??"",onSaved:U})]}),(0,t.jsxs)("section",{className:"rounded-2xl border border-[var(--border)] bg-[var(--card-bg)] p-5 shadow-[var(--shadow-sm)]",children:[(0,t.jsxs)("div",{className:"mb-4",children:[(0,t.jsxs)("h2",{className:"flex items-center gap-2 text-sm font-semibold text-[var(--foreground)]",children:[(0,t.jsx)(o.FileText,{size:16,className:"text-[var(--primary)]"}),"Human-Authored References"]}),(0,t.jsx)("p",{className:"mt-1 text-xs text-[var(--muted-foreground)]",children:"File-backed project knowledge for project-specific instructions."})]}),J.length>0&&(0,t.jsx)("div",{className:"mb-4 grid grid-cols-1 gap-2 md:grid-cols-2",children:J.map(e=>(0,t.jsxs)("div",{className:"group flex items-start gap-3 rounded-xl border border-[var(--border)] bg-[var(--secondary)] p-3",children:[(0,t.jsx)("div",{className:"flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-lg bg-[var(--primary-muted)]",children:(0,t.jsx)(o.FileText,{size:14,className:"text-[var(--primary)]"})}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("div",{className:"truncate break-all font-mono text-xs text-[var(--secondary-foreground)]",children:e.file}),e.condition&&(0,t.jsx)("div",{className:"mt-0.5 text-[11px] text-[var(--muted-foreground)]",children:e.condition})]}),(0,t.jsx)("button",{type:"button",onClick:()=>void w(e.id),className:"rounded-lg p-1.5 text-[var(--app-shell-soft-text)] opacity-0 transition-all group-hover:opacity-100 hover:bg-[var(--card-bg)] hover:text-red-500","aria-label":"Remove reference",children:(0,t.jsx)(u.Trash2,{className:"h-3.5 w-3.5"})})]},e.id))}),M?(0,t.jsxs)("div",{className:"space-y-2 rounded-xl border border-[var(--border)] bg-[var(--secondary)] p-3",children:[(0,t.jsx)("input",{type:"text",value:$,onChange:e=>A(e.target.value),placeholder:"path/to/project-knowledge.md",className:"w-full rounded-lg border border-[var(--border)] bg-[var(--card-bg)] px-3 py-2 text-sm focus:outline-none focus:ring-2 focus:ring-[var(--ring)] focus:border-[var(--primary)]",autoFocus:!0}),(0,t.jsx)("input",{type:"text",value:F,onChange:e=>O(e.target.value),placeholder:"Optional condition",className:"w-full rounded-lg border border-[var(--border)] bg-[var(--card-bg)] px-3 py-2 text-sm focus:outline-none focus:ring-2 focus:ring-[var(--ring)] focus:border-[var(--primary)]"}),(0,t.jsxs)("div",{className:"flex items-center justify-end gap-2",children:[(0,t.jsx)("button",{type:"button",onClick:()=>{P(!1),A(""),O("")},className:"px-3 py-1.5 text-xs text-[var(--muted-foreground)]",children:"Cancel"}),(0,t.jsxs)("button",{type:"button",onClick:async()=>{let e=$.trim();e&&(await N(e,F.trim()||void 0),A(""),O(""),P(!1))},className:"inline-flex items-center gap-1.5 rounded-lg bg-[var(--primary)] px-3 py-1.5 text-xs font-medium text-[var(--primary-foreground)]",children:[(0,t.jsx)(d.Plus,{className:"h-3.5 w-3.5"}),"Add"]})]})]}):(0,t.jsxs)("button",{type:"button",onClick:()=>P(!0),className:"group flex w-full items-center justify-center gap-2 rounded-xl border-2 border-dashed border-[var(--border)] py-3 text-sm text-[var(--muted-foreground)] transition-all hover:bg-[var(--secondary)] hover:text-[var(--foreground)]",children:[(0,t.jsx)(d.Plus,{size:16,className:"transition-transform group-hover:scale-110"}),"Add Reference"]})]}),(0,t.jsxs)("section",{className:"rounded-2xl border border-[var(--border)] bg-[var(--card-bg)] p-5 shadow-[var(--shadow-sm)]",children:[(0,t.jsxs)("div",{className:"mb-4",children:[(0,t.jsxs)("h2",{className:"flex items-center gap-2 text-sm font-semibold text-[var(--foreground)]",children:[(0,t.jsx)(l.MessageSquare,{size:16,className:"text-[var(--primary)]"}),"Project Notes"]}),(0,t.jsx)("p",{className:"mt-1 text-xs text-[var(--muted-foreground)]",children:"Human-authored coordination notes."})]}),G.length>0&&(0,t.jsx)("div",{className:"mb-4 space-y-2",children:G.map(e=>(0,t.jsx)(b,{content:e.content,source:e.source||"project",time:new Date(e.created_at).toLocaleString(),onDelete:()=>void S(e.id)},e.id))}),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("textarea",{value:R,onChange:e=>H(e.target.value),placeholder:"Add a new project note...",rows:3,className:"w-full resize-none rounded-xl border border-[var(--border)] bg-[var(--secondary)] px-4 py-3 text-sm focus:outline-none focus:ring-2 focus:ring-[var(--ring)] focus:border-[var(--primary)]"}),R.trim()&&(0,t.jsx)("button",{type:"button",onClick:async()=>{let e=R.trim();e&&(await C(e,"human-authored"),H(""))},className:"absolute bottom-3 right-3 rounded-lg bg-[var(--primary)] px-3 py-1.5 text-xs font-medium text-[var(--primary-foreground)]",children:"Save Note"})]})]})]})]}):(0,t.jsx)("div",{className:"mt-2 space-y-4",children:0===V.length?(0,t.jsxs)("div",{className:"rounded-2xl border border-dashed border-[var(--border)] px-6 py-12 text-center",children:[(0,t.jsx)(n.FolderGit2,{size:32,className:"mx-auto mb-3 text-[var(--app-shell-soft-text)]"}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:0===x.repos.length?"This project has no repos attached yet.":"No matching repositories."})]}):(0,t.jsx)("div",{className:"grid grid-cols-1 gap-4 xl:grid-cols-2",children:V.map(e=>(0,t.jsx)(j,{repo:e,draft:D[e.id]??"",systemNote:_[e.id]??null,systemNoteMatches:!z||(_[e.id]?.content??"").toLowerCase().includes(z.toLowerCase()),onDraftChange:t=>B(r=>({...r,[e.id]:t})),onSave:async()=>{await fetch(`/api/repos/${e.id}/knowledge`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({producer:"human",content:D[e.id]??""})}).then(async e=>{if(!e.ok)throw Error((await e.json().catch(()=>({}))).error||"Failed to save")})},onSystemNoteSaved:t=>q(r=>({...r,[e.id]:t}))},e.id))})})})]}):(0,t.jsx)("div",{className:"flex h-full items-center justify-center",children:(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"Loading..."})})}function h({active:e,onClick:r,icon:a,label:s}){return(0,t.jsxs)("button",{onClick:r,className:`flex items-center gap-2 rounded-lg px-4 py-1.5 text-xs font-semibold transition-all ${e?"bg-[var(--card-bg)] text-[var(--foreground)] shadow-[var(--shadow-sm)] ring-1 ring-[var(--border)]":"text-[var(--muted-foreground)] hover:text-[var(--foreground)]"}`,children:[a,s]})}function v({label:e,value:r,sub:a}){return(0,t.jsxs)("div",{className:"flex flex-col rounded-xl border border-[var(--border)] bg-[var(--secondary)] p-4",children:[(0,t.jsx)("span",{className:"text-[10px] font-black uppercase tracking-[0.2em] text-[var(--app-shell-soft-text)]",children:e}),(0,t.jsx)("span",{className:"mt-1 text-2xl font-bold text-[var(--foreground)]",children:r}),(0,t.jsx)("span",{className:"mt-1 text-[10px] text-[var(--app-shell-soft-text)]",children:a})]})}function g({note:e,emptyLabel:s,scope:o,subjectId:n,onSaved:l}){let[d,i]=(0,r.useState)(!1),[u,m]=(0,r.useState)(e?.content??""),[f,h]=(0,r.useState)(!1),[v,g]=(0,r.useState)(null);(0,r.useEffect)(()=>{m(e?.content??"")},[e?.id,e?.content]);let b=!!e?.content.trim(),j=e?.updated_at??e?.created_at,y=e?.source;async function N(){if(n){h(!0),g(null);try{let e=await fetch("/api/knowledge-notes",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({scope:o,subjectId:n,content:u})}),t=await e.json().catch(()=>({}));if(!e.ok)throw Error(t.error||"Failed to save knowledge note");let r=p(t.note);l(r),m(r?.content??""),i(!1)}catch(e){g(e instanceof Error?e.message:"Failed to save knowledge note")}finally{h(!1)}}}return b?(0,t.jsxs)("div",{className:"rounded-xl border border-[var(--border)] bg-[var(--secondary)] p-4",children:[(0,t.jsxs)("div",{className:"mb-3 flex items-start justify-between gap-3",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2 text-[11px] text-[var(--app-shell-soft-text)]",children:[j?(0,t.jsxs)("span",{children:["Updated ",new Date(j).toLocaleString()]}):null,y?(0,t.jsx)("span",{children:y}):null]}),d?null:(0,t.jsxs)("button",{type:"button",onClick:()=>{m(e?.content??""),g(null),i(!0)},className:"inline-flex items-center gap-1.5 rounded-lg border border-[var(--border)] bg-[var(--card-bg)] px-3 py-1.5 text-xs font-medium text-[var(--foreground)]",children:[(0,t.jsx)(c,{className:"h-3.5 w-3.5"}),"Edit"]})]}),d?(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsx)("textarea",{value:u,onChange:e=>m(e.target.value),rows:12,className:"w-full resize-y rounded-xl border border-[var(--border)] bg-[var(--card-bg)] px-4 py-3 text-sm text-[var(--foreground)] focus:border-[var(--primary)] focus:outline-none focus:ring-2 focus:ring-[var(--ring)]",placeholder:"Write the living knowledge note in markdown..."}),v?(0,t.jsx)("p",{className:"text-xs text-red-500",children:v}):null,(0,t.jsxs)("div",{className:"flex items-center justify-end gap-2",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>{m(e?.content??""),g(null),i(!1)},className:"inline-flex items-center gap-1.5 rounded-lg px-3 py-1.5 text-xs font-medium text-[var(--muted-foreground)]",disabled:f,children:[(0,t.jsx)(x.X,{className:"h-3.5 w-3.5"}),"Cancel"]}),(0,t.jsx)("button",{type:"button",onClick:()=>void N(),disabled:f,className:"inline-flex items-center gap-1.5 rounded-lg bg-[var(--primary)] px-3 py-1.5 text-xs font-medium text-[var(--primary-foreground)] disabled:opacity-60",children:f?"Saving...":"Save"})]})]}):(0,t.jsx)("div",{className:"text-sm leading-relaxed text-[var(--secondary-foreground)]",children:(0,t.jsx)(a.Markdown,{content:e?.content??""})})]}):(0,t.jsxs)("div",{className:"rounded-xl border border-dashed border-[var(--border)] px-4 py-6 text-sm text-[var(--muted-foreground)]",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)("span",{children:s}),(0,t.jsxs)("button",{type:"button",onClick:()=>{m(e?.content??""),g(null),i(!0)},className:"inline-flex items-center gap-1.5 rounded-lg border border-[var(--border)] bg-[var(--secondary)] px-3 py-1.5 text-xs font-medium text-[var(--foreground)]",children:[(0,t.jsx)(c,{className:"h-3.5 w-3.5"}),"Edit"]})]}),d?(0,t.jsxs)("div",{className:"mt-4 space-y-3",children:[(0,t.jsx)("textarea",{value:u,onChange:e=>m(e.target.value),rows:10,className:"w-full resize-y rounded-xl border border-[var(--border)] bg-[var(--secondary)] px-4 py-3 text-sm text-[var(--foreground)] focus:border-[var(--primary)] focus:outline-none focus:ring-2 focus:ring-[var(--ring)]",placeholder:"Write the living knowledge note in markdown..."}),v?(0,t.jsx)("p",{className:"text-xs text-red-500",children:v}):null,(0,t.jsxs)("div",{className:"flex items-center justify-end gap-2",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>{m(e?.content??""),g(null),i(!1)},className:"inline-flex items-center gap-1.5 rounded-lg px-3 py-1.5 text-xs font-medium text-[var(--muted-foreground)]",disabled:f,children:[(0,t.jsx)(x.X,{className:"h-3.5 w-3.5"}),"Cancel"]}),(0,t.jsx)("button",{type:"button",onClick:()=>void N(),disabled:f,className:"inline-flex items-center gap-1.5 rounded-lg bg-[var(--primary)] px-3 py-1.5 text-xs font-medium text-[var(--primary-foreground)] disabled:opacity-60",children:f?"Saving...":"Save"})]})]}):null]})}function b({content:e,source:r,time:a,onDelete:s}){return(0,t.jsxs)("div",{className:"group rounded-xl border border-[var(--border)] bg-[var(--secondary)] p-3",children:[(0,t.jsxs)("div",{className:"mb-1.5 flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-[11px] font-semibold text-[var(--foreground)]",children:r}),(0,t.jsx)("span",{className:"text-[10px] text-[var(--app-shell-soft-text)]",children:a})]}),(0,t.jsx)("button",{type:"button",onClick:s,className:"rounded p-1 text-[var(--app-shell-soft-text)] opacity-0 transition-all group-hover:opacity-100 hover:text-red-500",children:(0,t.jsx)(u.Trash2,{size:12})})]}),(0,t.jsx)("p",{className:"text-sm leading-relaxed text-[var(--secondary-foreground)]",children:e})]})}function j({repo:e,draft:r,systemNote:a,systemNoteMatches:s,onDraftChange:o,onSave:l,onSystemNoteSaved:d}){return(0,t.jsxs)("div",{className:"group flex flex-col rounded-2xl border border-[var(--border)] bg-[var(--card-bg)] p-5 shadow-[var(--shadow-sm)] transition-colors hover:border-[var(--card-hover-border)]",children:[(0,t.jsxs)("div",{className:"mb-3 flex items-start justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("div",{className:"flex h-9 w-9 items-center justify-center rounded-xl bg-[var(--secondary)] text-[var(--muted-foreground)]",children:(0,t.jsx)(n.FolderGit2,{size:20})}),(0,t.jsxs)("div",{children:[(0,t.jsx)("h3",{className:"text-sm font-semibold text-[var(--foreground)]",children:e.name}),(0,t.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)]",children:e.path||"No path set"})]})]}),(0,t.jsx)("button",{type:"button",onClick:l,className:"rounded-lg border border-[var(--border)] bg-[var(--secondary)] px-3 py-1.5 text-xs font-medium",children:"Save"})]}),(0,t.jsxs)("div",{className:"mb-3",children:[(0,t.jsx)("p",{className:"mb-2 text-[10px] font-black uppercase tracking-[0.16em] text-[var(--app-shell-soft-text)]",children:"Living Repo Note"}),(0,t.jsx)(g,{note:s?a:a?.content?{...a,content:""}:null,emptyLabel:"No repo note yet.",scope:"repo",subjectId:e.id,onSaved:d})]}),(0,t.jsx)("p",{className:"mb-2 text-[10px] font-black uppercase tracking-[0.16em] text-[var(--app-shell-soft-text)]",children:"Human Notes"}),(0,t.jsx)("textarea",{value:r,onChange:e=>o(e.target.value),rows:4,placeholder:"Architecture facts, repo conventions, commands...",className:"w-full resize-none rounded-xl border border-[var(--border)] bg-[var(--secondary)] px-3 py-2.5 text-sm focus:outline-none focus:ring-2 focus:ring-[var(--ring)] focus:border-[var(--primary)]"})]})}e.s(["default",()=>f],61090)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,33525,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},98183,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={assign:function(){return i},searchParamsToUrlQuery:function(){return a},urlQueryToSearchParams:function(){return l}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});function a(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function o(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function l(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let e of n)t.append(r,o(e));else t.set(r,o(n));return t}function i(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,n]of r.entries())e.append(t,n)}return e}},61746,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return l},formatWithValidation:function(){return c},urlObjectKeys:function(){return i}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});let a=e.r(90809)._(e.r(98183)),o=/https?|ftp|gopher|file/;function l(e){let{auth:t,hostname:r}=e,n=e.protocol||"",s=e.pathname||"",l=e.hash||"",i=e.query||"",c=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?c=t+e.host:r&&(c=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(c+=":"+e.port)),i&&"object"==typeof i&&(i=String(a.urlQueryToSearchParams(i)));let u=e.search||i&&`?${i}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||o.test(n))&&!1!==c?(c="//"+(c||""),s&&"/"!==s[0]&&(s="/"+s)):c||(c=""),l&&"#"!==l[0]&&(l="#"+l),u&&"?"!==u[0]&&(u="?"+u),s=s.replace(/[?#]/g,encodeURIComponent),u=u.replace("#","%23"),`${n}${c}${s}${u}${l}`}let i=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return l(e)}},18581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return s}});let n=e.r(71645);function s(e,t){let r=(0,n.useRef)(null),s=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=s.current;t&&(s.current=null,t())}else e&&(r.current=a(e,n)),t&&(s.current=a(t,n))},[e,t])}function a(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},18967,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DecodeError:function(){return g},MiddlewareNotFoundError:function(){return y},MissingStaticPage:function(){return j},NormalizeError:function(){return b},PageNotFoundError:function(){return v},SP:function(){return p},ST:function(){return x},WEB_VITALS:function(){return a},execOnce:function(){return o},getDisplayName:function(){return d},getLocationOrigin:function(){return c},getURL:function(){return u},isAbsoluteUrl:function(){return i},isResSent:function(){return f},loadGetInitialProps:function(){return h},normalizeRepeatedSlashes:function(){return m},stringifyError:function(){return N}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});let a=["CLS","FCP","FID","INP","LCP","TTFB"];function o(e){let t,r=!1;return(...n)=>(r||(r=!0,t=e(...n)),t)}let l=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,i=e=>l.test(e);function c(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function u(){let{href:e}=window.location,t=c();return e.substring(t.length)}function d(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function f(e){return e.finished||e.headersSent}function m(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function h(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await h(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&f(r))return n;if(!n)throw Object.defineProperty(Error(`"${d(e)}.getInitialProps()" should resolve to an object. But found "${n}" instead.`),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return n}let p="u">typeof performance,x=p&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class g extends Error{}class b extends Error{}class v extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class j extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class y extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function N(e){return JSON.stringify({message:e.message,stack:e.stack})}},73668,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return a}});let n=e.r(18967),s=e.r(52817);function a(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,s.hasBasePath)(r.pathname)}catch(e){return!1}}},84508,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},22016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return g},useLinkStatus:function(){return v}};for(var s in n)Object.defineProperty(r,s,{enumerable:!0,get:n[s]});let a=e.r(90809),o=e.r(18050),l=a._(e.r(71645)),i=e.r(61746),c=e.r(8372),u=e.r(18581),d=e.r(18967),f=e.r(5550);e.r(33525);let m=e.r(91949),h=e.r(73668),p=e.r(9396);function x(e){return"string"==typeof e?e:(0,i.formatUrl)(e)}function g(t){var r;let n,s,a,[i,g]=(0,l.useOptimistic)(m.IDLE_LINK_STATUS),v=(0,l.useRef)(null),{href:j,as:y,children:N,prefetch:w=null,passHref:k,replace:P,shallow:S,scroll:_,onClick:C,onMouseEnter:E,onTouchStart:O,legacyBehavior:T=!1,onNavigate:$,ref:L,unstable_dynamicOnHover:M,...A}=t;n=N,T&&("string"==typeof n||"number"==typeof n)&&(n=(0,o.jsx)("a",{children:n}));let R=l.default.useContext(c.AppRouterContext),B=!1!==w,I=!1!==w?null===(r=w)||"auto"===r?p.FetchStrategy.PPR:p.FetchStrategy.Full:p.FetchStrategy.PPR,{href:F,as:U}=l.default.useMemo(()=>{let e=x(j);return{href:e,as:y?x(y):e}},[j,y]);if(T){if(n?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});s=l.default.Children.only(n)}let D=T?s&&"object"==typeof s&&s.ref:L,z=l.default.useCallback(e=>(null!==R&&(v.current=(0,m.mountLinkInstance)(e,F,R,I,B,g)),()=>{v.current&&((0,m.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,m.unmountPrefetchableInstance)(e)}),[B,F,R,I,g]),K={ref:(0,u.useMergedRef)(z,D),onClick(t){T||"function"!=typeof C||C(t),T&&s.props&&"function"==typeof s.props.onClick&&s.props.onClick(t),!R||t.defaultPrevented||function(t,r,n,s,a,o,i){if("u">typeof window){let c,{nodeName:u}=t.currentTarget;if("A"===u.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,h.isLocalURL)(r)){a&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),i){let e=!1;if(i({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:d}=e.r(99781);l.default.startTransition(()=>{d(n||r,a?"replace":"push",o??!0,s.current)})}}(t,F,U,v,P,_,$)},onMouseEnter(e){T||"function"!=typeof E||E(e),T&&s.props&&"function"==typeof s.props.onMouseEnter&&s.props.onMouseEnter(e),R&&B&&(0,m.onNavigationIntent)(e.currentTarget,!0===M)},onTouchStart:function(e){T||"function"!=typeof O||O(e),T&&s.props&&"function"==typeof s.props.onTouchStart&&s.props.onTouchStart(e),R&&B&&(0,m.onNavigationIntent)(e.currentTarget,!0===M)}};return(0,d.isAbsoluteUrl)(U)?K.href=U:T&&!k&&("a"!==s.type||"href"in s.props)||(K.href=(0,f.addBasePath)(U)),a=T?l.default.cloneElement(s,K):(0,o.jsx)("a",{...A,...K,children:n}),(0,o.jsx)(b.Provider,{value:i,children:a})}e.r(84508);let b=(0,l.createContext)(m.IDLE_LINK_STATUS),v=()=>(0,l.useContext)(b);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},59015,e=>{"use strict";var t=e.i(18050),r=e.i(22016),n=e.i(71645);function s(){let[e,r]=(0,n.useState)(null),[s,a]=(0,n.useState)("loading");(0,n.useEffect)(()=>{let e=!0;async function t(){try{let t=await fetch("/api/health");if(!e)return;if(!t.ok)return void a("error");let n=await t.json();r(n),a(n.connected?"connected":"disconnected")}catch{e&&a("error")}}t();let n=setInterval(t,3e4);return()=>{e=!1,clearInterval(n)}},[]);let o={loading:"Checking database…",connected:`${e?.adapter??"db"} connected (${e?.latencyMs??"?"}ms)`,disconnected:`${e?.adapter??"db"} disconnected`,error:"Database unreachable"};return(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-xs text-[var(--muted-foreground)]",role:"status","aria-label":o[s],children:[(0,t.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"}[s]}`}),(0,t.jsx)("span",{className:"hidden sm:inline",children:o[s]})]})}function a({children:e,fullWidth:n=!1,noFooter:a=!1}){return(0,t.jsxs)("div",{className:"h-screen flex flex-col overflow-hidden",children:[(0,t.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,t.jsx)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",children:(0,t.jsxs)("div",{className:"flex items-center justify-between h-16",children:[(0,t.jsx)("div",{className:"flex items-center gap-8",children:(0,t.jsx)(r.default,{href:"/",className:"flex items-center gap-3 group",children:(0,t.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,t.jsx)("rect",{width:"64",height:"38",rx:"8",fill:"black"}),(0,t.jsxs)("g",{stroke:"white",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M 14 27 C 17 16 19 10 20 8 C 21 12 23 20 25 27"}),(0,t.jsx)("path",{d:"M 16 20 C 19 19 21 21 23 20"}),(0,t.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,t.jsx)("path",{d:"M 46 11 C 48 16 51 22 54 27"}),(0,t.jsx)("path",{d:"M 54 11 C 52 16 49 22 46 27"})]})]})})}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)(r.default,{href:"/",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Open Chat"}),(0,t.jsx)(r.default,{href:"/automations",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Automations"}),(0,t.jsx)(r.default,{href:"/skills",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Skills"}),(0,t.jsx)(r.default,{href:"/settings",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Settings"})]})]})})}),(0,t.jsx)("main",{className:`flex-1 min-h-0 flex flex-col ${n?"p-0":"p-4 sm:p-6 lg:p-8 overflow-y-auto"}`,children:e}),!a&&(0,t.jsx)("footer",{className:"flex-shrink-0 border-t border-[var(--card-border)] bg-[var(--card-bg)]/50 py-4",children:(0,t.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,t.jsx)("span",{children:"AGX Board • Autonomous Agent Orchestration"}),(0,t.jsxs)("span",{className:"hidden sm:inline-flex items-center gap-3",children:[(0,t.jsx)(s,{}),(0,t.jsx)("span",{children:"Built with Next.js + Db"})]})]})})]})}function o(e){return(0,t.jsx)(n.Suspense,{fallback:(0,t.jsx)("div",{className:"h-screen flex items-center justify-center bg-[var(--background)]",children:(0,t.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full"})}),children:(0,t.jsx)(a,{...e})})}e.s(["default",()=>o],59015)},32545,e=>{"use strict";var t=e.i(18050),r=e.i(71645),n=e.i(59015);let s={pass:{icon:"✓",color:"text-green-600",label:"Pass"},fail:{icon:"✗",color:"text-red-600",label:"Fail"},warn:{icon:"!",color:"text-yellow-600",label:"Warning"}};function a(){var e;let[n,a]=(0,r.useState)(null),[o,l]=(0,r.useState)(!0),[i,c]=(0,r.useState)(null);(0,r.useEffect)(()=>{let e=!1;return(async()=>{try{l(!0),c(null);let t=await fetch("/api/system/db-status"),r=await t.json();if(!t.ok)throw Error(r?.error||`HTTP ${t.status}`);e||a(r)}catch(t){e||c(t?.message||"Failed to load database status")}finally{e||l(!1)}})(),()=>{e=!0}},[]);let u=n?.checks.some(e=>"fail"===e.status);return(0,t.jsxs)("div",{className:"card p-6",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,t.jsx)("h2",{className:"text-lg font-semibold",children:"SQLite Environment"}),n&&(0,t.jsx)("span",{className:`text-xs font-medium px-2 py-1 rounded-full ${u?"bg-red-100 text-red-700":"bg-green-100 text-green-700"}`,role:"status","aria-label":u?"Configuration issues detected":"All checks passed",children:u?"Issues Detected":"Healthy"})]}),o&&(0,t.jsx)("div",{className:"text-sm text-[var(--muted-foreground)]",role:"status","aria-live":"polite",children:"Loading database status..."}),i&&(0,t.jsx)("div",{className:"p-3 rounded-lg border border-red-200 bg-red-50 text-red-800 text-sm",role:"alert",children:i}),n&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"overflow-x-auto",children:(0,t.jsxs)("table",{className:"w-full text-sm",role:"table","aria-label":"SQLite configuration checks",children:[(0,t.jsx)("thead",{children:(0,t.jsxs)("tr",{className:"border-b border-[var(--card-border)]",children:[(0,t.jsx)("th",{className:"text-left py-2 pr-4 text-xs font-semibold text-[var(--muted-foreground)]",scope:"col",children:"Check"}),(0,t.jsx)("th",{className:"text-left py-2 pr-4 text-xs font-semibold text-[var(--muted-foreground)]",scope:"col",children:"Value"}),(0,t.jsx)("th",{className:"text-center py-2 text-xs font-semibold text-[var(--muted-foreground)]",scope:"col",children:"Status"})]})}),(0,t.jsx)("tbody",{children:n.checks.map(e=>{let r=s[e.status];return(0,t.jsxs)("tr",{className:"border-b border-[var(--card-border)] last:border-0",children:[(0,t.jsx)("td",{className:"py-2 pr-4 font-medium",children:e.label}),(0,t.jsx)("td",{className:"py-2 pr-4 font-mono text-xs",children:e.value}),(0,t.jsx)("td",{className:"py-2 text-center",children:(0,t.jsx)("span",{className:`inline-flex items-center justify-center w-6 h-6 rounded-full text-sm font-bold ${r.color}`,role:"img","aria-label":`${e.label}: ${r.label}`,children:r.icon})})]},e.label)})})]})}),(0,t.jsxs)("div",{className:"mt-4 pt-4 border-t border-[var(--card-border)]",children:[(0,t.jsx)("h3",{className:"text-xs font-semibold text-[var(--muted-foreground)] mb-2",children:"Backup Status"}),(0,t.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-2 text-sm",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Last backup: "}),(0,t.jsx)("span",{className:"font-mono text-xs",children:n.backup.lastBackup?new Date(n.backup.lastBackup).toLocaleString():"None"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"WAL size: "}),(0,t.jsx)("span",{className:"font-mono text-xs",children:null!=n.backup.walSizeBytes?(e=n.backup.walSizeBytes)<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:`${(e/1048576).toFixed(1)} MB`:"N/A"})]})]})]})]})]})}let o=["gemini","claude","ollama","codex","zai"];function l(){let[e,s]=(0,r.useState)(!0),[l,i]=(0,r.useState)(!1),[c,u]=(0,r.useState)(null),[d,f]=(0,r.useState)(null),m=d?.default_provider||"gemini",h=(0,r.useMemo)(()=>(d?.models||{})[m]||"",[d,m]);(0,r.useEffect)(()=>{let e=!1;return(async()=>{try{s(!0),u(null);let t=await fetch("/api/user-settings",{method:"GET"}),r=await t.json().catch(()=>({}));if(!t.ok)throw Error(r?.error||`HTTP ${t.status}`);e||f(r.settings||{default_provider:"gemini",models:{}})}catch(t){e||u(t?.message||"Failed to load settings")}finally{e||s(!1)}})(),()=>{e=!0}},[]);let p=async()=>{try{i(!0),u(null);let e={default_provider:m,default_model:h,models:d?.models||{},provenance:"web"},t=await fetch("/api/user-settings",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),r=await t.json().catch(()=>({}));if(!t.ok)throw Error(r?.error||`HTTP ${t.status}`);f(r.settings||e)}catch(e){u(e?.message||"Failed to save settings")}finally{i(!1)}};return(0,t.jsx)(n.default,{children:(0,t.jsxs)("div",{className:"max-w-3xl mx-auto w-full",children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-6 mb-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h1",{className:"text-2xl font-bold tracking-tight",children:"Settings"}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)] mt-1",children:"Default provider/model used by the CLI and the board."})]}),(0,t.jsx)("button",{className:"btn btn-primary",onClick:p,disabled:e||l,children:l?"Saving...":"Save"})]}),c&&(0,t.jsx)("div",{className:"mb-4 p-3 rounded-lg border border-red-200 bg-red-50 text-red-800 text-sm",children:c}),(0,t.jsx)("div",{className:"card p-6",children:e?(0,t.jsx)("div",{className:"text-sm text-[var(--muted-foreground)]",children:"Loading..."}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"block text-xs font-semibold text-[var(--muted-foreground)] mb-2",children:"Default Provider"}),(0,t.jsx)("select",{className:"w-full rounded-lg border border-[var(--card-border)] bg-[var(--background)] px-3 py-2 text-sm",value:m,onChange:e=>{var t;return t=e.target.value,void f(e=>({...e||{},default_provider:t}))},children:o.map(e=>(0,t.jsx)("option",{value:e,children:e},e))})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{className:"block text-xs font-semibold text-[var(--muted-foreground)] mb-2",children:["Default Model (",m,")"]}),(0,t.jsx)("input",{className:"w-full rounded-lg border border-[var(--card-border)] bg-[var(--background)] px-3 py-2 text-sm",value:h,placeholder:"e.g. claude-sonnet-4, gemini-2.5-pro, llama3.2:3b, glm-4.5-air",onChange:e=>{var t;return t=e.target.value,void f(e=>{let r={...e||{}},n={...r.models||{}};return n[m]=t,r.models=n,r})}})]})]}),(0,t.jsxs)("div",{className:"mt-6 text-xs text-[var(--muted-foreground)]",children:[(0,t.jsxs)("div",{children:["Provenance: ",d?.provenance||"unknown"]}),(0,t.jsxs)("div",{children:["Changed at: ",d?.changed_at||"unknown"]})]})]})}),(0,t.jsx)("div",{className:"mt-8",children:(0,t.jsx)(a,{})})]})})}e.s(["default",()=>l],32545)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,10980,83086,e=>{"use strict";var t=e.i(75254);let r=(0,t.default)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);e.s(["BookOpen",()=>r],10980);let s=(0,t.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"}]]);e.s(["Sparkles",()=>s],83086)},66992,e=>{"use strict";let t=(0,e.i(75254).default)("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]);e.s(["Cpu",()=>t],66992)},84614,e=>{"use strict";let t=(0,e.i(75254).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"}]]);e.s(["User",()=>t],84614)},72664,e=>{"use strict";let t=(0,e.i(75254).default)("box",[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]]);e.s(["Box",()=>t],72664)},75505,e=>{"use strict";let t=(0,e.i(75254).default)("folder-open",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]);e.s(["FolderOpen",()=>t],75505)},74886,e=>{"use strict";let t=(0,e.i(75254).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);e.s(["Copy",()=>t],74886)},25459,e=>{"use strict";var t=e.i(18050),r=e.i(71645),s=e.i(37727),l=e.i(84614),a=e.i(66992),o=e.i(72664),i=e.i(10980),n=e.i(83086),d=e.i(7233),c=e.i(75505),u=e.i(64659),m=e.i(74886),x=e.i(43531),p=e.i(87990);function f(e,t=32,r){let s=`https://api.dicebear.com/9.x/bottts-neutral/svg?seed=${encodeURIComponent(e)}&size=${t}`;if(!r)return s;let l=r.replace("#","");return`${s}&backgroundColor=${l}`}e.i(77183),e.i(76590),e.i(7311);let h=["claude","ollama","gemini","codex","zai"];function g(e){return(e??[]).map(e=>e.condition?.trim()?`${e.file} | ${e.condition}`:e.file).join("\n")}function v(e){return e.split("\n").map(e=>e.trim()).filter(Boolean).map(e=>{let[t,...r]=e.split("|");return{file:t.trim(),condition:r.join("|").trim()}}).filter(e=>e.file.length>0)}function b(e,t){return JSON.stringify({name:e.name,...e.title?{title:e.title}:{},provider:e.provider,model:e.model,identity:e.identity,color:e.color??"#6B7280",skills:e.skills??[],skillBindings:e.skillBindings??[],...t?{projectIds:t}:{}},null,2)}function y({title:e,initial:y,submitLabel:j,onSubmit:k,onCancel:N,projects:w,initialProjectIds:C,agentId:S,projectMemberships:A,onAddToProject:M,onRemoveFromProject:I}){let[z,B]=(0,r.useState)(y.name),[O,E]=(0,r.useState)(y.title??""),[$,F]=(0,r.useState)(y.provider),[P,T]=(0,r.useState)(y.model),[J,U]=(0,r.useState)(y.identity),[L,R]=(0,r.useState)(y.color??"#6B7280"),[K,D]=(0,r.useState)(g(y.skills)),[V,H]=(0,r.useState)(new Set(C??[])),[X,_]=(0,r.useState)("form"),[q,G]=(0,r.useState)(()=>b(y,w?C??[]:void 0)),[Z,W]=(0,r.useState)(null),[Y,Q]=(0,r.useState)(!1),[ee,et]=(0,r.useState)([]),[er,es]=(0,r.useState)(""),[el,ea]=(0,r.useState)(!1),[eo,ei]=(0,r.useState)(y.skillBindings??[]),en=(0,r.useRef)(null),ed=(0,r.useRef)(null);(0,r.useEffect)(()=>{let e=e=>{ed.current&&!ed.current.contains(e.target)&&N()},t=setTimeout(()=>document.addEventListener("mousedown",e),0);return()=>{clearTimeout(t),document.removeEventListener("mousedown",e)}},[ed,N]),(0,r.useEffect)(()=>{if(!el)return;let e=e=>{en.current&&!en.current.contains(e.target)&&ea(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[el]),(0,r.useEffect)(()=>{"form"===X&&G(b({name:z,title:O,provider:$,model:P,identity:J,color:L,skills:v(K),skillBindings:eo},w?Array.from(V):void 0))},[X,z,O,$,P,J,L,K,eo,V,w]),(0,r.useEffect)(()=>{if(!Y)return;let e=window.setTimeout(()=>Q(!1),1200);return()=>window.clearTimeout(e)},[Y]),(0,r.useEffect)(()=>{let e=!1;return async function(){try{let t=await fetch("/api/skills");if(!t.ok)return;let r=await t.json();if(e)return;let s=Array.isArray(r.skills)?r.skills.filter(e=>!!e&&"object"==typeof e).map(e=>({skillId:String(e.skillId??"").trim(),repo:String(e.repo??"").trim(),name:String(e.name??e.skillId??"").trim()})).filter(e=>e.skillId.length>0&&e.repo.length>0):[];et(s)}catch{e||et([])}}(),()=>{e=!0}},[]);let ec=e=>{let t=function(e,t){let r;try{r=JSON.parse(e)}catch{throw Error("JSON is invalid.")}if(!r||"object"!=typeof r||Array.isArray(r))throw Error("JSON must be an object.");let s=r,l="string"==typeof s.provider?s.provider:t,a=h.includes(l)?l:t,o=(Array.isArray(s.skills)?s.skills:[]).flatMap(e=>{if("string"==typeof e){let[t,...r]=e.split("|"),s=t.trim();return s?[{file:s,condition:r.join("|").trim()}]:[]}if(!e||"object"!=typeof e||Array.isArray(e))return[];let t="string"==typeof e.file?e.file.trim():"";return t?[{file:t,condition:"string"==typeof e.condition?e.condition.trim():""}]:[]}),i=Array.isArray(s.projectIds)?s.projectIds.filter(e=>"string"==typeof e&&e.trim().length>0):void 0,n=(Array.isArray(s.skillBindings)?s.skillBindings:[]).flatMap(e=>{if(!e||"object"!=typeof e||Array.isArray(e))return[];let t="string"==typeof e.repo?e.repo.trim():"",r="string"==typeof e.skillId?e.skillId.trim():"";return t&&r?[{repo:t,skillId:r,condition:"string"==typeof e.condition?e.condition.trim():""}]:[]});return{data:{name:"string"==typeof s.name?s.name:"",title:"string"==typeof s.title?s.title:"",provider:a,model:"string"==typeof s.model?s.model:"",identity:"string"==typeof s.identity?s.identity:"",color:"string"==typeof s.color&&s.color.trim()?s.color:"#6B7280",skills:o,skillBindings:n},projectIds:i}}(e,$),r=w?(t.projectIds??[]).filter(e=>w.some(t=>t.id===e)):void 0;return B(t.data.name),E(t.data.title??""),F(t.data.provider),T(t.data.model),U(t.data.identity),R(t.data.color??"#6B7280"),D(g(t.data.skills)),ei(t.data.skillBindings??[]),w&&H(new Set(r??[])),G(b(t.data,w?r??[]:void 0)),W(null),{...t,projectIds:r}},eu=()=>{if("form"!==X)try{ec(q),_("form")}catch(e){W(e instanceof Error?e.message:"Unable to parse JSON.")}},em=async()=>{try{await navigator.clipboard.writeText(q),Q(!0)}catch{Q(!1)}},ex=(0,r.useMemo)(()=>{let e=er.trim().toLowerCase();return e?ee.filter(t=>[t.name,t.skillId,t.repo].some(t=>t.toLowerCase().includes(e))).slice(0,50):ee.slice(0,50)},[ee,er]),ep=(0,r.useMemo)(()=>new Set(eo.map(e=>`${e.repo}::${e.skillId}`)),[eo]);return(0,t.jsx)("div",{ref:ed,className:"fixed inset-0 z-[100] flex items-center justify-center p-4 bg-black/30 backdrop-blur-sm",onKeyDown:e=>{"Escape"===e.key&&N()},children:(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-[32px] shadow-2xl overflow-hidden w-full max-w-2xl max-h-[90vh] flex flex-col animate-in fade-in zoom-in duration-300",children:[(0,t.jsxs)("div",{className:"px-8 pt-8 pb-4 shrink-0 flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-4",children:[S&&(0,t.jsxs)("div",{className:"flex flex-col items-center gap-1.5",children:[(0,t.jsx)("img",{src:f(S,64,L),alt:z,className:"w-14 h-14 rounded-full bg-[var(--muted)]"}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("label",{className:"text-[10px] text-[var(--muted-foreground)]",children:"Color"}),(0,t.jsx)("input",{type:"color",value:L,onChange:e=>R(e.target.value),className:"w-5 h-5 rounded border border-[var(--border)] cursor-pointer p-0"})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-[10px] font-bold tracking-widest text-[var(--muted-foreground)] uppercase",children:e}),(0,t.jsx)("h1",{className:"text-2xl font-semibold mt-1",children:z||"Configure Agent"})]})]}),(0,t.jsx)("button",{onClick:N,className:"p-2 text-[var(--muted-foreground)] hover:text-[var(--muted-foreground)] hover:bg-[var(--muted)] rounded-full transition-all",children:(0,t.jsx)(s.X,{size:20})})]}),(0,t.jsxs)("div",{className:"px-8 pb-8 space-y-6 overflow-y-auto",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsxs)("div",{className:"inline-flex rounded-xl bg-[var(--muted)] p-1",children:[(0,t.jsx)("button",{type:"button",onClick:eu,className:"form"===X?"px-3 py-1.5 text-xs font-semibold rounded-lg bg-[var(--card-bg)] text-[var(--foreground)] shadow-sm":"px-3 py-1.5 text-xs font-semibold rounded-lg text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:"Form"}),(0,t.jsx)("button",{type:"button",onClick:()=>{G(b({name:z,title:O,provider:$,model:P,identity:J,color:L,skills:v(K),skillBindings:eo},w?Array.from(V):void 0)),W(null),_("json")},className:"json"===X?"px-3 py-1.5 text-xs font-semibold rounded-lg bg-[var(--card-bg)] text-[var(--foreground)] shadow-sm":"px-3 py-1.5 text-xs font-semibold rounded-lg text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:"JSON"})]}),"json"===X&&(0,t.jsxs)("button",{type:"button",onClick:em,className:"inline-flex items-center gap-1.5 px-3 py-1.5 text-xs font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)] rounded-lg transition-colors",children:[Y?(0,t.jsx)(x.Check,{size:14,className:"text-emerald-500"}):(0,t.jsx)(m.Copy,{size:14}),Y?"Copied":"Copy"]})]}),"form"===X?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(l.User,{size:16})," Name"]}),(0,t.jsx)("input",{type:"text",value:z,onChange:e=>B(e.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. Ada, Kai, Sage...",autoFocus:!0})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:"Title"}),(0,t.jsx)("input",{type:"text",value:O,onChange:e=>E(e.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. VP of Engineering"})]})]}),(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(o.Box,{size:16})," Provider"]}),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsxs)("select",{value:$,onChange:e=>F(e.target.value),className:"w-full appearance-none px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all pr-10 cursor-pointer",children:[(0,t.jsx)("option",{value:"claude",children:"Claude"}),(0,t.jsx)("option",{value:"ollama",children:"Ollama"}),(0,t.jsx)("option",{value:"gemini",children:"Gemini"}),(0,t.jsx)("option",{value:"codex",children:"Codex"}),(0,t.jsx)("option",{value:"zai",children:"Z.AI"})]}),(0,t.jsx)(u.ChevronDown,{className:"absolute right-3 top-1/2 -translate-y-1/2 text-[var(--muted-foreground)] pointer-events-none",size:16})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(a.Cpu,{size:16})," Model"]}),(0,t.jsx)("input",{type:"text",value:P,onChange:e=>T(e.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all font-mono text-sm",placeholder:"e.g. claude-sonnet-4-6"})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(i.BookOpen,{size:16})," Identity"]}),(0,t.jsx)("div",{className:"border border-[var(--border)] rounded-xl overflow-hidden bg-[var(--app-shell-subtle)] focus-within:ring-2 focus-within:ring-indigo-500/20 focus-within:border-indigo-500 transition-all",children:(0,t.jsx)(p.default,{content:J,onChange:e=>U(e),placeholder:"You are a ..."})}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Identity defines who the agent is. Keep portable knowledge separate below; project and repo knowledge belong on their scoped surfaces."})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(n.Sparkles,{size:16})," Portable Knowledge"]}),(0,t.jsxs)("div",{className:"rounded-xl border border-[var(--border)] bg-[var(--app-shell-subtle)] p-3 space-y-3",children:[(0,t.jsx)("div",{className:"flex items-center justify-between gap-3",children:(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-xs font-semibold text-[var(--foreground)]",children:"Skills Picker"}),(0,t.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)]",children:"Pick a skill here. AGX will install it later only if the run actually needs it."})]})}),ee.length>0?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"relative",ref:en,children:[(0,t.jsxs)("button",{type:"button",onClick:()=>ea(e=>!e),className:"w-full flex items-center justify-between px-3 py-2 rounded-xl border border-[var(--border)] bg-[var(--card-bg)] text-sm font-medium hover:border-indigo-500",children:[(0,t.jsx)("span",{className:"truncate text-left",children:"Search and add skills"}),(0,t.jsx)(u.ChevronDown,{size:16,className:`shrink-0 text-[var(--muted-foreground)] transition-transform ${el?"rotate-180":""}`})]}),el&&(0,t.jsxs)("div",{className:"absolute left-0 right-0 top-full mt-2 z-30 rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] shadow-lg overflow-hidden",children:[(0,t.jsx)("div",{className:"p-2 border-b border-[var(--border)]",children:(0,t.jsx)("input",{type:"text",value:er,onChange:e=>es(e.target.value),placeholder:"Search skills",className:"w-full px-3 py-2 bg-[var(--card-bg)] border border-[var(--border)] rounded-lg text-sm focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500",autoFocus:!0})}),(0,t.jsx)("div",{className:"max-h-64 overflow-y-auto",children:ex.length>0?ex.map(e=>{let r=`${e.repo}::${e.skillId}`,s=ep.has(r);return(0,t.jsx)("button",{type:"button",className:`w-full px-3 py-2 text-left text-sm transition-colors ${s?"bg-emerald-50 text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onMouseDown:e=>e.preventDefault(),onClick:()=>{var t,r;return t=e.repo,r=e.skillId,void(ei(e=>e.some(e=>e.repo===t&&e.skillId===r)?e.filter(e=>e.repo!==t||e.skillId!==r):[...e,{repo:t,skillId:r}]),es(""))},children:(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("div",{className:"font-medium",children:e.name||e.skillId}),(0,t.jsx)("div",{className:"text-[11px] text-[var(--muted-foreground)]",children:e.repo})]}),s&&(0,t.jsx)("span",{className:"shrink-0 rounded-full bg-emerald-100 px-2 py-0.5 text-[10px] font-semibold text-emerald-700",children:"Added"})]})},r)}):(0,t.jsx)("div",{className:"px-3 py-3 text-sm text-[var(--muted-foreground)]",children:"No matching skills."})})]})]}),(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[eo.map(e=>(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-full bg-emerald-50 text-emerald-700 border border-emerald-200 px-2.5 py-1 text-[11px] font-medium",children:[e.skillId,(0,t.jsx)("button",{type:"button",onClick:()=>{var t,r;return t=e.repo,r=e.skillId,void ei(e=>e.filter(e=>e.repo!==t||e.skillId!==r))},className:"text-emerald-700/70 hover:text-emerald-900",title:`Remove ${e.skillId}`,children:(0,t.jsx)(s.X,{size:12})})]},`${e.repo}::${e.skillId}`)),0===eo.length&&(0,t.jsx)("span",{className:"text-[11px] text-[var(--muted-foreground)]",children:"No library skills selected yet."})]})]}):(0,t.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)]",children:"No catalog skills available right now."})]}),(0,t.jsx)("textarea",{value:K,onChange:e=>D(e.target.value),rows:5,className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all font-mono text-xs",placeholder:"one/path/to/skill.md\npath/to/skill.md | when coding in TypeScript"}),(0,t.jsxs)("p",{className:"text-xs text-[var(--muted-foreground)]",children:["Portable agent knowledge only. One reference per line. Use ",(0,t.jsx)("code",{children:"|"})," to add an optional condition."]})]}),w&&w.length>0&&(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(c.FolderOpen,{size:16})," Assign To Projects"]}),(0,t.jsx)("div",{className:"space-y-1 max-h-[160px] overflow-y-auto",children:w.map(e=>{let r=V.has(e.id);return(0,t.jsxs)("button",{type:"button",className:r?"w-full flex items-center gap-3 px-3 py-2 rounded-lg text-sm transition-colors bg-indigo-50 text-indigo-700":"w-full flex items-center gap-3 px-3 py-2 rounded-lg text-sm transition-colors text-[var(--muted-foreground)] hover:bg-[var(--app-shell-subtle)]",onClick:()=>H(t=>{let r=new Set(t);return r.has(e.id)?r.delete(e.id):r.add(e.id),r}),children:[(0,t.jsx)("div",{className:r?"w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center bg-indigo-600 border-indigo-600":"w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center border-[var(--border)]",children:r&&(0,t.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,t.jsx)("path",{d:"M2 5l2 2 4-4",stroke:"white",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,t.jsx)("span",{className:"text-xs font-medium text-left",children:e.label??e.name})]},e.id)})})]}),A&&(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(c.FolderOpen,{size:16})," Project Memberships"]}),A.current.length>0?(0,t.jsx)("div",{className:"flex flex-col gap-1",children:A.current.map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs bg-[var(--app-shell-subtle)] rounded-lg px-3 py-2",children:[(0,t.jsx)(c.FolderOpen,{size:12,className:"text-[var(--muted-foreground)] shrink-0"}),(0,t.jsx)("span",{className:"truncate flex-1",children:e.name}),I&&!e.is_default&&(0,t.jsx)("button",{type:"button",className:"text-[var(--muted-foreground)] hover:text-red-500 transition-colors",onClick:()=>I(e.id),title:"Remove from project",children:(0,t.jsx)(s.X,{size:12})})]},e.id))}):(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] italic",children:"Not assigned to any projects"}),A.available.length>0&&M&&(0,t.jsx)("div",{className:"flex flex-wrap gap-1",children:A.available.map(e=>(0,t.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1 text-[10px] px-2 py-1 rounded-lg border border-dashed border-[var(--border)] text-[var(--muted-foreground)] hover:border-[var(--border)] hover:text-[var(--foreground)] transition-colors",onClick:()=>M(e.id),children:[(0,t.jsx)(d.Plus,{size:10}),e.name]},e.id))})]})]}):(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Paste agent JSON here. Switching back to Form or saving will apply valid JSON to the form state."}),(0,t.jsx)("button",{type:"button",onClick:eu,className:"px-3 py-1.5 text-xs font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)] rounded-lg transition-colors",children:"Apply to Form"})]}),(0,t.jsx)("textarea",{value:q,onChange:e=>{G(e.target.value),Z&&W(null)},rows:22,className:"w-full px-4 py-3 bg-[var(--app-shell-bg)] text-[var(--foreground)] border border-[var(--app-shell-border)] rounded-2xl focus:outline-none focus:ring-2 focus:ring-[var(--ring)] focus:border-[var(--primary)] transition-all font-mono text-xs",spellCheck:!1,autoFocus:!0}),Z&&(0,t.jsx)("p",{className:"text-xs text-red-500",children:Z})]}),(0,t.jsxs)("div",{className:"flex items-center justify-end gap-3 pt-4 border-t border-[var(--border)]",children:[(0,t.jsx)("button",{onClick:N,className:"px-6 py-2.5 text-sm font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)] rounded-xl transition-all",children:"Cancel"}),(0,t.jsx)("button",{onClick:()=>{let e=z.trim(),t=O.trim(),r=$,s=P.trim(),l=J.trim(),a=L,o=v(K),i=eo,n=w?Array.from(V):void 0;if("json"===X)try{let d=ec(q);e=d.data.name.trim(),t=(d.data.title??"").trim(),r=d.data.provider,s=d.data.model.trim(),l=d.data.identity.trim(),a=d.data.color??"#6B7280",o=d.data.skills??[],i=d.data.skillBindings??[],n=w?d.projectIds??[]:void 0}catch(e){W(e instanceof Error?e.message:"Unable to parse JSON.");return}e&&s&&k({name:e,title:t||void 0,provider:r,model:s,identity:l,color:a,skills:o,skillBindings:i},n)},disabled:"form"===X&&(!z.trim()||!P.trim()),className:"px-8 py-2.5 bg-indigo-600 text-white text-sm font-semibold rounded-xl shadow-[0_4px_12px_rgba(79,70,229,0.3)] hover:bg-indigo-700 active:scale-95 disabled:opacity-50 transition-all font-bold",children:j})]})]})]})})}e.s(["AgentForm",()=>y,"agentAvatarUrl",()=>f])}]);
@@ -1,16 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,11132,e=>{"use strict";var t=e.i(18050),r=e.i(71645);function a({initialPath:e,onSelect:a,onCancel:s}){let[n,o]=(0,r.useState)(e||""),[l,i]=(0,r.useState)(null),[c,d]=(0,r.useState)(!1),[u,p]=(0,r.useState)(null),m=(0,r.useRef)(null),f=(0,r.useCallback)(async e=>{d(!0),p(null);try{let t=e?`?path=${encodeURIComponent(e)}`:"",r=await fetch(`/api/filesystem/browse${t}`),a=await r.json();if(!r.ok)return void p(a.error||"Failed to browse");i(a),o(a.current),m.current?.scrollTo(0,0)}catch{p("Failed to connect")}finally{d(!1)}},[]);return(0,r.useEffect)(()=>{f(e||"")},[]),(0,t.jsxs)("div",{className:"rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] overflow-hidden shadow-lg",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 py-2 border-b border-[var(--card-border)] bg-[var(--muted)]/30",children:[(0,t.jsx)("input",{value:n,onChange:e=>o(e.target.value),onKeyDown:e=>{"Enter"===e.key&&f(n)},className:"input text-xs flex-1 py-1",placeholder:"Enter path..."}),(0,t.jsx)("button",{type:"button",onClick:()=>f(n),className:"text-[10px] font-bold uppercase tracking-wider text-[var(--primary)] hover:underline px-2 py-1 shrink-0",children:"Go"})]}),(0,t.jsxs)("div",{ref:m,className:"max-h-48 overflow-y-auto",children:[c&&(0,t.jsx)("div",{className:"px-3 py-4 text-xs text-[var(--muted-foreground)] text-center",children:"Loading..."}),u&&(0,t.jsx)("div",{className:"px-3 py-4 text-xs text-[var(--destructive)] text-center",children:u}),!c&&l&&(0,t.jsxs)("div",{className:"py-1",children:[l.parent&&(0,t.jsxs)("button",{type:"button",onClick:()=>f(l.parent),className:"w-full text-left px-3 py-1.5 text-sm hover:bg-[var(--muted)]/50 transition-colors flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"↑"}),(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:".."})]}),0===l.dirs.length&&!l.parent&&(0,t.jsx)("div",{className:"px-3 py-3 text-xs text-[var(--muted-foreground)] text-center",children:"No subdirectories"}),l.dirs.map(e=>(0,t.jsxs)("button",{type:"button",onClick:()=>f(e.path),className:"w-full text-left px-3 py-1.5 text-sm hover:bg-[var(--muted)]/50 transition-colors flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"📁"}),(0,t.jsx)("span",{className:"truncate",children:e.name})]},e.path))]})]}),(0,t.jsxs)("div",{className:"flex items-center justify-between px-3 py-2 border-t border-[var(--card-border)] bg-[var(--muted)]/30",children:[(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)] truncate max-w-[60%]",children:l?.current||n}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("button",{type:"button",onClick:s,className:"text-xs font-medium text-[var(--muted-foreground)] hover:underline px-2 py-1",children:"Cancel"}),(0,t.jsx)("button",{type:"button",onClick:()=>a(l?.current||n),className:"text-xs font-bold text-[var(--primary)] hover:underline px-2 py-1",children:"Select"})]})]})]})}let s={name:"",description:""},n={name:"",path:"",notes:""};function o(){let[e,t]=(0,r.useState)(s),[a,o]=(0,r.useState)([n]),[l,i]=(0,r.useState)(!1),[c,d]=(0,r.useState)(null),u=(0,r.useCallback)((e,t,r)=>{o(a=>a.map((a,s)=>s===e?{...a,[t]:r}:a))},[]),p=(0,r.useCallback)(()=>{o(e=>[...e,{...n}])},[]),m=(0,r.useCallback)(e=>{o(t=>t.filter((t,r)=>r!==e))},[]),f=(0,r.useCallback)(()=>{t(s),o([n]),d(null)},[]),h=(0,r.useCallback)(e=>{t({name:e.name||"",description:e.description||""}),e.repos&&e.repos.length>0?o(e.repos.map(e=>({id:e.id,name:e.name||"",path:e.path||"",git_url:e.git_url||"",notes:e.notes||""}))):o([n]),d(null)},[]);return{form:e,setForm:t,repos:a,handleRepoChange:u,addRepo:p,removeRepo:m,resetForm:f,hydrateFromProject:h,isSubmitting:l,setIsSubmitting:i,formError:c,setFormError:d}}function l(e,t){let r=t.filter(e=>e.name.trim()&&e.path.trim()).map(e=>({...e.id?{id:e.id}:{},name:e.name.trim(),path:e.path.trim(),...e.git_url?.trim()?{git_url:e.git_url.trim()}:{},notes:e.notes.trim()||void 0}));return{name:e.name.trim(),description:e.description.trim()||void 0,repos:r.length?r:void 0}}function i({form:e,repos:s,isEditingProject:n,isSubmitting:o,onFieldChange:l,onRepoChange:i,onAddRepo:c,onRemoveRepo:d}){let[u,p]=(0,r.useState)([]),[m,f]=(0,r.useState)(null),h=(0,r.useRef)(0);(0,r.useEffect)(()=>{n?p([]):p(s.map((e,t)=>t)),h.current=s.length},[n,s.length]),(0,r.useEffect)(()=>{if(!n){h.current=s.length;return}let e=h.current;p(t=>{let r=t.filter(e=>e<s.length);return s.length>e&&r.push(...Array.from({length:s.length-e},(t,r)=>e+r)),r}),h.current=s.length},[n,s.length]);let x=(0,r.useCallback)(e=>{p(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},[]),g=(0,r.useCallback)(e=>!n||u.includes(e),[u,n]);return(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsx)("div",{className:"grid gap-4",children:(0,t.jsxs)("label",{className:"space-y-1.5 block",children:[(0,t.jsx)("span",{className:"text-xs font-bold uppercase tracking-wider text-[var(--muted-foreground)]",children:"Project Name"}),(0,t.jsx)("input",{value:e.name,onChange:e=>l("name",e.target.value),className:"input w-full",placeholder:"e.g. AGX Cloud",disabled:o})]})}),(0,t.jsxs)("label",{className:"space-y-1.5 block",children:[(0,t.jsx)("span",{className:"text-xs font-bold uppercase tracking-wider text-[var(--muted-foreground)]",children:"Description"}),(0,t.jsx)("textarea",{value:e.description,onChange:e=>l("description",e.target.value),className:"input w-full h-24 resize-none",placeholder:"What is this project about?",disabled:o})]}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between border-b border-[var(--card-border)] pb-2",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h3",{className:"text-sm font-bold uppercase tracking-widest text-[var(--muted-foreground)]",children:"Folders"}),(0,t.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)] mt-0.5",children:"Code repos, doc folders, design assets, config directories — any path your team needs access to."})]}),(0,t.jsx)("button",{type:"button",onClick:c,className:"text-xs font-semibold text-[var(--primary)] hover:underline flex-shrink-0",disabled:o,children:"+ Add Folder"})]}),(0,t.jsx)("div",{className:"space-y-4",children:s.map((e,r)=>(0,t.jsxs)("div",{className:"p-4 rounded-2xl border border-[var(--card-border)] bg-[var(--muted)]/20 space-y-3 relative group",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"text-xs font-bold text-[var(--foreground)] uppercase",children:["Folder #",r+1]}),n&&!g(r)?(0,t.jsxs)("div",{className:"mt-1 text-sm text-[var(--muted-foreground)]",children:[(0,t.jsx)("div",{children:e.name||"Unnamed folder"}),(0,t.jsx)("div",{className:"truncate",children:e.path||"No local path set"})]}):null]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[n&&(0,t.jsx)("button",{type:"button",onClick:()=>x(r),className:"text-xs font-semibold text-[var(--primary)] hover:underline",disabled:o,children:g(r)?"Done":"Edit"}),s.length>1&&(0,t.jsx)("button",{type:"button",onClick:()=>d(r),className:"text-xs font-semibold text-[var(--destructive)] hover:underline",disabled:o,children:"Remove"})]})]}),g(r)?(0,t.jsxs)("div",{className:"grid gap-3 md:grid-cols-2",children:[(0,t.jsx)("input",{value:e.name,onChange:e=>i(r,"name",e.target.value),placeholder:"Name (e.g. Frontend, API Docs, Design System)",className:"input text-sm",disabled:o}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("input",{value:e.path,onChange:e=>i(r,"path",e.target.value),placeholder:"Local path to folder",className:"input text-sm flex-1",disabled:o}),(0,t.jsx)("button",{type:"button",onClick:async()=>{try{let e=await fetch("/api/filesystem/pick-folder",{method:"POST"}),t=await e.json();t.path&&i(r,"path",t.path)}catch{f(m===r?null:r)}},className:"px-3 py-2 rounded-xl border border-[var(--card-border)] bg-[var(--muted)]/30 hover:bg-[var(--muted)]/60 transition-colors text-xs font-semibold text-[var(--muted-foreground)] whitespace-nowrap",disabled:o,children:"Browse"})]}),m===r&&(0,t.jsx)("div",{className:"md:col-span-2",children:(0,t.jsx)(a,{initialPath:e.path||"",onSelect:e=>{i(r,"path",e),f(null)},onCancel:()=>f(null)})}),(0,t.jsx)("div",{className:"md:col-span-2",children:(0,t.jsx)("textarea",{value:e.notes,onChange:e=>i(r,"notes",e.target.value),placeholder:"Notes for this folder — e.g. coding conventions, deploy steps, ownership, doc standards...",className:"input text-sm w-full min-h-24 resize-y",disabled:o})})]}):null]},r))})]})]})}function c({isOpen:e,onClose:a,onSubmit:s,editingProject:n,form:o,repos:l,isSubmitting:c,formError:d,onFieldChange:u,onRepoChange:p,onAddRepo:m,onRemoveRepo:f}){let[h,x]=(0,r.useState)([]);return((0,r.useEffect)(()=>{let e=!1;return async function(){if(!n)return x([]);try{let t=await fetch(`/api/projects/${n.id}/memory?producer=system`),r=t.ok?await t.json():{memory:[]};e||x(r.memory??[])}catch{e||x([])}}(),()=>{e=!0}},[n]),e)?(0,t.jsx)("div",{className:"modal-backdrop p-2 sm:p-4 z-50 overflow-y-auto flex items-center justify-center",onClick:e=>e.target===e.currentTarget&&a(),children:(0,t.jsxs)("div",{className:"modal-content w-full max-w-4xl 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,t.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,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-xl font-bold",children:n?"Edit Project":"Create New Project"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-0.5",children:n?"Update your project settings and folders.":"Define a new project and connect folders."})]}),(0,t.jsx)("button",{onClick:a,className:"p-2 rounded-xl hover:bg-[var(--muted)]/50 transition-colors",children:(0,t.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),(0,t.jsxs)("div",{className:"flex-1 overflow-y-auto p-4 sm:p-8",children:[n&&(0,t.jsx)("div",{className:"mb-6",children:(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--card-border)] bg-[var(--muted)]/20 p-4",children:[(0,t.jsx)("h3",{className:"text-sm font-bold uppercase tracking-widest text-[var(--muted-foreground)]",children:"Living Project Note"}),h.length>0?(0,t.jsx)("div",{className:"mt-3 space-y-2",children:h.slice(0,5).map(e=>(0,t.jsxs)("div",{className:"rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] px-3 py-2 text-sm text-[var(--foreground)]",children:[(0,t.jsx)("div",{children:e.content}),e.created_at?(0,t.jsx)("div",{className:"mt-1 text-[11px] text-[var(--muted-foreground)]",children:new Date(e.created_at).toLocaleString()}):null]},e.id))}):(0,t.jsx)("p",{className:"mt-2 text-sm text-[var(--muted-foreground)]",children:"No project note yet."})]})}),(0,t.jsx)(i,{form:o,repos:l,isEditingProject:!!n,isSubmitting:c,onFieldChange:u,onRepoChange:p,onAddRepo:m,onRemoveRepo:f}),d&&(0,t.jsx)("div",{className:"mt-6 p-4 rounded-xl bg-[var(--destructive-muted)] border border-[var(--destructive)]/20 text-sm text-[var(--destructive)]",children:d})]}),(0,t.jsxs)("div",{className:"px-4 py-4 sm:px-8 sm:py-6 border-t border-[var(--card-border)] flex items-center justify-end gap-3 flex-shrink-0",children:[(0,t.jsx)("button",{onClick:a,className:"px-6 py-2 rounded-xl border border-[var(--card-border)] hover:bg-[var(--muted)]/50 transition-colors text-sm font-medium",children:"Cancel"}),(0,t.jsx)("button",{onClick:s,disabled:c,className:"btn-primary px-8 py-2 shadow-lg shadow-[var(--primary)]/20 min-w-[120px]",children:c?(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"spinner w-3 h-3 border-2 border-white/20 border-t-white"}),"Saving..."]}):n?"Save Changes":"Create Project"})]})]})}):null}e.s(["createProjectPayload",()=>l,"default",()=>c,"useProjectFormState",()=>o],11132)},74049,e=>{"use strict";var t=e.i(71645);function r(){let[e,r]=(0,t.useState)([]),[a,s]=(0,t.useState)(!1),[n,o]=(0,t.useState)(null),l=(0,t.useCallback)(async()=>{s(!0);try{let e=await fetch("/api/projects");if(!e.ok)throw Error("Failed to fetch projects");let t=await e.json();r(t.projects??[]),o(null)}catch(e){o(e instanceof Error?e:Error("Unknown error"))}finally{s(!1)}},[]);(0,t.useEffect)(()=>{l()},[l]);let i=(0,t.useCallback)(async e=>{let t=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw Error((await t.json().catch(()=>({}))).error||"Failed to create project");let a=(await t.json()).project;return r(e=>[a,...e]),a},[]);return{projects:e,isLoading:a,error:n,refetch:l,createProject:i,updateProject:(0,t.useCallback)(async(e,t)=>{let a=await fetch(`/api/projects/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!a.ok)throw Error((await a.json().catch(()=>({}))).error||"Failed to update project");let s=(await a.json()).project;return r(t=>t.map(t=>t.id===e?s:t)),s},[]),deleteProject:(0,t.useCallback)(async e=>{let t=await fetch(`/api/projects/${e}`,{method:"DELETE"});if(!t.ok)throw Error((await t.json().catch(()=>({}))).error||"Failed to delete project");r(t=>t.filter(t=>t.id!==e))},[])}}function a(){let[e,r]=(0,t.useState)([]),[a,s]=(0,t.useState)(!0),n=(0,t.useCallback)(async()=>{try{let e=await fetch("/api/projects");if(!e.ok)return;let{projects:t}=await e.json(),a=await Promise.all((t??[]).map(async e=>{let t=[],r=[];try{let[a,s]=await Promise.all([fetch(`/api/projects/${e.id}/agents`),fetch(`/api/projects/${e.id}/threads`)]);a.ok&&(t=(await a.json()).agents??[]),s.ok&&(r=((await s.json()).threads??[]).map(e=>e.thread_id))}catch{}return{...e,repos:e.repos??[],agents:t.map(t=>({project_id:e.id,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at})),thread_ids:r,workspace_ids:r}}));r(a)}catch{}finally{s(!1)}},[]);(0,t.useEffect)(()=>{n()},[n]);let o=(0,t.useCallback)(async(e,t)=>{try{let a="string"==typeof e?{name:e}:e,s=a.name.trim(),n=(a.slug||s.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")).trim(),o=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...a,name:s,slug:n})});if(!o.ok)return null;let{project:l}=await o.json(),i=Array.isArray(t)?t:t?[t]:[];for(let e of i)await fetch(`/api/projects/${l.id}/threads`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:e})}).catch(()=>{});let c={...l,repos:l.repos??[],agents:[],thread_ids:i,workspace_ids:i};return r(e=>[...e,c].sort((e,t)=>e.name.localeCompare(t.name))),c}catch{return null}},[]),l=(0,t.useCallback)(async(e,t)=>{try{if(!(await fetch(`/api/projects/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:t})})).ok)return;r(r=>r.map(r=>r.id===e?{...r,name:t}:r).sort((e,t)=>e.name.localeCompare(t.name)))}catch{}},[]),i=(0,t.useCallback)(async e=>{try{if(!(await fetch(`/api/projects/${e}`,{method:"DELETE"})).ok)return;r(t=>t.filter(t=>t.id!==e))}catch{}},[]),c=(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!a.ok){let e=await a.json().catch(()=>({}));throw Error(e.error||"Failed to update project")}let s=(await a.json()).project;return r(t=>t.map(t=>t.id===e?{...t,...s,repos:s.repos??t.repos}:t)),s}catch{return null}},[]),d=(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:t})});if(!a.ok)return;let s=((await a.json()).agents??[]).map(t=>({project_id:e,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at}));r(t=>t.map(t=>t.id===e?{...t,agents:s}:t))}catch{}},[]),u=(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}/agents?agentId=${t}`,{method:"DELETE"});if(!a.ok)return;let s=((await a.json()).agents??[]).map(t=>({project_id:e,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at}));r(t=>t.map(t=>t.id===e?{...t,agents:s}:t))}catch{}},[]);return{projects:e,isLoading:a,createProject:o,updateProject:c,renameProject:l,deleteProject:i,addAgent:d,removeAgent:u,reorderAgents:(0,t.useCallback)(async(e,t)=>{try{let a=await fetch(`/api/projects/${e}/agents`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({orderedAgentIds:t})});if(!a.ok)return;let s=((await a.json()).agents??[]).map(t=>({project_id:e,agent_id:t.agent_id,routing_order:t.routing_order,created_at:t.created_at}));r(t=>t.map(t=>t.id===e?{...t,agents:s}:t))}catch{}},[]),moveAgent:(0,t.useCallback)(async(e,t,r)=>{try{await fetch(`/api/projects/${t}/agents?agentId=${e}`,{method:"DELETE"}),await fetch(`/api/projects/${r}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:e})}),await n()}catch{}},[n]),refresh:n}}e.s(["useProjects",()=>r,"useProjectsWithAgents",()=>a])},33525,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return a}});let a=e=>{}},98183,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={assign:function(){return i},searchParamsToUrlQuery:function(){return n},urlQueryToSearchParams:function(){return l}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});function n(e){let t={};for(let[r,a]of e.entries()){let e=t[r];void 0===e?t[r]=a:Array.isArray(e)?e.push(a):t[r]=[e,a]}return t}function o(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function l(e){let t=new URLSearchParams;for(let[r,a]of Object.entries(e))if(Array.isArray(a))for(let e of a)t.append(r,o(e));else t.set(r,o(a));return t}function i(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,a]of r.entries())e.append(t,a)}return e}},61746,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={formatUrl:function(){return l},formatWithValidation:function(){return c},urlObjectKeys:function(){return i}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=e.r(90809)._(e.r(98183)),o=/https?|ftp|gopher|file/;function l(e){let{auth:t,hostname:r}=e,a=e.protocol||"",s=e.pathname||"",l=e.hash||"",i=e.query||"",c=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?c=t+e.host:r&&(c=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(c+=":"+e.port)),i&&"object"==typeof i&&(i=String(n.urlQueryToSearchParams(i)));let d=e.search||i&&`?${i}`||"";return a&&!a.endsWith(":")&&(a+=":"),e.slashes||(!a||o.test(a))&&!1!==c?(c="//"+(c||""),s&&"/"!==s[0]&&(s="/"+s)):c||(c=""),l&&"#"!==l[0]&&(l="#"+l),d&&"?"!==d[0]&&(d="?"+d),s=s.replace(/[?#]/g,encodeURIComponent),d=d.replace("#","%23"),`${a}${c}${s}${d}${l}`}let i=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return l(e)}},18581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return s}});let a=e.r(71645);function s(e,t){let r=(0,a.useRef)(null),s=(0,a.useRef)(null);return(0,a.useCallback)(a=>{if(null===a){let e=r.current;e&&(r.current=null,e());let t=s.current;t&&(s.current=null,t())}else e&&(r.current=n(e,a)),t&&(s.current=n(t,a))},[e,t])}function n(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},18967,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={DecodeError:function(){return g},MiddlewareNotFoundError:function(){return y},MissingStaticPage:function(){return j},NormalizeError:function(){return b},PageNotFoundError:function(){return v},SP:function(){return h},ST:function(){return x},WEB_VITALS:function(){return n},execOnce:function(){return o},getDisplayName:function(){return u},getLocationOrigin:function(){return c},getURL:function(){return d},isAbsoluteUrl:function(){return i},isResSent:function(){return p},loadGetInitialProps:function(){return f},normalizeRepeatedSlashes:function(){return m},stringifyError:function(){return k}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=["CLS","FCP","FID","INP","LCP","TTFB"];function o(e){let t,r=!1;return(...a)=>(r||(r=!0,t=e(...a)),t)}let l=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,i=e=>l.test(e);function c(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function d(){let{href:e}=window.location,t=c();return e.substring(t.length)}function u(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function p(e){return e.finished||e.headersSent}function m(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function f(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await f(t.Component,t.ctx)}:{};let a=await e.getInitialProps(t);if(r&&p(r))return a;if(!a)throw Object.defineProperty(Error(`"${u(e)}.getInitialProps()" should resolve to an object. But found "${a}" instead.`),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return a}let h="u">typeof performance,x=h&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class g extends Error{}class b extends Error{}class v extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class j extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class y extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function k(e){return JSON.stringify({message:e.message,stack:e.stack})}},73668,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return n}});let a=e.r(18967),s=e.r(52817);function n(e){if(!(0,a.isAbsoluteUrl)(e))return!0;try{let t=(0,a.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,s.hasBasePath)(r.pathname)}catch(e){return!1}}},84508,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return a}});let a=e=>{}},22016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={default:function(){return g},useLinkStatus:function(){return v}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=e.r(90809),o=e.r(18050),l=n._(e.r(71645)),i=e.r(61746),c=e.r(8372),d=e.r(18581),u=e.r(18967),p=e.r(5550);e.r(33525);let m=e.r(91949),f=e.r(73668),h=e.r(9396);function x(e){return"string"==typeof e?e:(0,i.formatUrl)(e)}function g(t){var r;let a,s,n,[i,g]=(0,l.useOptimistic)(m.IDLE_LINK_STATUS),v=(0,l.useRef)(null),{href:j,as:y,children:k,prefetch:N=null,passHref:w,replace:C,shallow:S,scroll:_,onClick:E,onMouseEnter:P,onTouchStart:T,legacyBehavior:O=!1,onNavigate:L,ref:A,unstable_dynamicOnHover:$,...R}=t;a=k,O&&("string"==typeof a||"number"==typeof a)&&(a=(0,o.jsx)("a",{children:a}));let I=l.default.useContext(c.AppRouterContext),M=!1!==N,F=!1!==N?null===(r=N)||"auto"===r?h.FetchStrategy.PPR:h.FetchStrategy.Full:h.FetchStrategy.PPR,{href:D,as:U}=l.default.useMemo(()=>{let e=x(j);return{href:e,as:y?x(y):e}},[j,y]);if(O){if(a?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});s=l.default.Children.only(a)}let B=O?s&&"object"==typeof s&&s.ref:A,q=l.default.useCallback(e=>(null!==I&&(v.current=(0,m.mountLinkInstance)(e,D,I,F,M,g)),()=>{v.current&&((0,m.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,m.unmountPrefetchableInstance)(e)}),[M,D,I,F,g]),J={ref:(0,d.useMergedRef)(q,B),onClick(t){O||"function"!=typeof E||E(t),O&&s.props&&"function"==typeof s.props.onClick&&s.props.onClick(t),!I||t.defaultPrevented||function(t,r,a,s,n,o,i){if("u">typeof window){let c,{nodeName:d}=t.currentTarget;if("A"===d.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,f.isLocalURL)(r)){n&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),i){let e=!1;if(i({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:u}=e.r(99781);l.default.startTransition(()=>{u(a||r,n?"replace":"push",o??!0,s.current)})}}(t,D,U,v,C,_,L)},onMouseEnter(e){O||"function"!=typeof P||P(e),O&&s.props&&"function"==typeof s.props.onMouseEnter&&s.props.onMouseEnter(e),I&&M&&(0,m.onNavigationIntent)(e.currentTarget,!0===$)},onTouchStart:function(e){O||"function"!=typeof T||T(e),O&&s.props&&"function"==typeof s.props.onTouchStart&&s.props.onTouchStart(e),I&&M&&(0,m.onNavigationIntent)(e.currentTarget,!0===$)}};return(0,u.isAbsoluteUrl)(U)?J.href=U:O&&!w&&("a"!==s.type||"href"in s.props)||(J.href=(0,p.addBasePath)(U)),n=O?l.default.cloneElement(s,J):(0,o.jsx)("a",{...R,...J,children:a}),(0,o.jsx)(b.Provider,{value:i,children:n})}e.r(84508);let b=(0,l.createContext)(m.IDLE_LINK_STATUS),v=()=>(0,l.useContext)(b);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},18566,(e,t,r)=>{t.exports=e.r(76562)},59015,e=>{"use strict";var t=e.i(18050),r=e.i(22016),a=e.i(71645);function s(){let[e,r]=(0,a.useState)(null),[s,n]=(0,a.useState)("loading");(0,a.useEffect)(()=>{let e=!0;async function t(){try{let t=await fetch("/api/health");if(!e)return;if(!t.ok)return void n("error");let a=await t.json();r(a),n(a.connected?"connected":"disconnected")}catch{e&&n("error")}}t();let a=setInterval(t,3e4);return()=>{e=!1,clearInterval(a)}},[]);let o={loading:"Checking database…",connected:`${e?.adapter??"db"} connected (${e?.latencyMs??"?"}ms)`,disconnected:`${e?.adapter??"db"} disconnected`,error:"Database unreachable"};return(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-xs text-[var(--muted-foreground)]",role:"status","aria-label":o[s],children:[(0,t.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"}[s]}`}),(0,t.jsx)("span",{className:"hidden sm:inline",children:o[s]})]})}function n({children:e,fullWidth:a=!1,noFooter:n=!1}){return(0,t.jsxs)("div",{className:"h-screen flex flex-col overflow-hidden",children:[(0,t.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,t.jsx)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",children:(0,t.jsxs)("div",{className:"flex items-center justify-between h-16",children:[(0,t.jsx)("div",{className:"flex items-center gap-8",children:(0,t.jsx)(r.default,{href:"/",className:"flex items-center gap-3 group",children:(0,t.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,t.jsx)("rect",{width:"64",height:"38",rx:"8",fill:"black"}),(0,t.jsxs)("g",{stroke:"white",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M 14 27 C 17 16 19 10 20 8 C 21 12 23 20 25 27"}),(0,t.jsx)("path",{d:"M 16 20 C 19 19 21 21 23 20"}),(0,t.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,t.jsx)("path",{d:"M 46 11 C 48 16 51 22 54 27"}),(0,t.jsx)("path",{d:"M 54 11 C 52 16 49 22 46 27"})]})]})})}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)(r.default,{href:"/",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Open Chat"}),(0,t.jsx)(r.default,{href:"/automations",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Automations"}),(0,t.jsx)(r.default,{href:"/skills",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Skills"}),(0,t.jsx)(r.default,{href:"/settings",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Settings"})]})]})})}),(0,t.jsx)("main",{className:`flex-1 min-h-0 flex flex-col ${a?"p-0":"p-4 sm:p-6 lg:p-8 overflow-y-auto"}`,children:e}),!n&&(0,t.jsx)("footer",{className:"flex-shrink-0 border-t border-[var(--card-border)] bg-[var(--card-bg)]/50 py-4",children:(0,t.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,t.jsx)("span",{children:"AGX Board • Autonomous Agent Orchestration"}),(0,t.jsxs)("span",{className:"hidden sm:inline-flex items-center gap-3",children:[(0,t.jsx)(s,{}),(0,t.jsx)("span",{children:"Built with Next.js + Db"})]})]})})]})}function o(e){return(0,t.jsx)(a.Suspense,{fallback:(0,t.jsx)("div",{className:"h-screen flex items-center justify-center bg-[var(--background)]",children:(0,t.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full"})}),children:(0,t.jsx)(n,{...e})})}e.s(["default",()=>o],59015)},3176,e=>{"use strict";let t=new Set(["done","passed"]),r=new Set(["pending","running","awaiting_human","blocked"]);function a(e){return`node--${e}`}function s(e){return e.replace(/_/gu," ")}function n(e,t){return"root"===t.type?t.title?.trim()||"Task Objective":"work"===t.type||"function"===t.type?t.title?.trim()||e:"gate"===t.type?t.gateType.replace(/_gate$/u,"").replace(/_/gu," ").replace(/\b\w/gu,e=>e.toUpperCase()):"fork"===t.type?"Fork":"join"===t.type?`Join (${t.joinStrategy})`:"Conditional"}function o(e){for(let[t,r]of Object.entries(e.nodes))if("root"===r.type)return{id:t,node:r};return null}function l(e){let a,s=o(e);return{mode:e.mode,graphVersion:e.graphVersion,nodeCount:Object.keys(e.nodes).length,progress:0===(a=Object.values(e.nodes).filter(e=>"skipped"!==e.status)).length?100:Math.round(a.filter(e=>t.has(e.status)).length/a.length*100),currentBlocker:function(e){let t=function(e){let t=Object.entries(e.nodes),r=t.filter(([,e])=>"gate"===e.type&&e.required),a=r.find(([,e])=>"failed"===e.status);if(a)return a[0];let s=r.find(([,e])=>"awaiting_human"===e.status);if(s)return s[0];let n=r.find(([,e])=>"pending"===e.status||"running"===e.status);if(n)return n[0];let o=t.find(([,e])=>"work"===e.type&&"blocked"===e.status);return o?.[0]??null}(e);if(!t)return null;let r=e.nodes[t];return r?{nodeId:t,label:n(t,r),status:r.status,required:"gate"===r.type&&r.required}:null}(e),derivedStatus:function(e){let t=Object.keys(e.nodes).length;if(0===t)return"INTAKE";if(1===t){let t=Object.values(e.nodes)[0];if("root"===t.type&&!t.graphCreated)return"INTAKE"}return Object.values(e.nodes).some(e=>r.has(e.status))?"PROGRESS":"DONE"}(e),hasRootNode:null!==s,rootNodeId:s?.id??null}}e.s(["buildGraphSummary",()=>l,"findRootNode",()=>o,"formatNodeStatusLabel",()=>s,"getNodeLabel",()=>n,"toNodeStatusClass",()=>a],3176)},99695,93237,e=>{"use strict";var t=e.i(18050),r=e.i(71645),a=e.i(74080);let s=[{value:"queued",label:"Queued",color:"var(--status-queued)",icon:"○"},{value:"in_progress",label:"In Progress",color:"var(--status-in-progress)",icon:"◑"},{value:"blocked",label:"Blocked",color:"var(--status-blocked)",icon:"⊘"},{value:"completed",label:"Done",color:"var(--status-completed)",icon:"●"},{value:"failed",label:"Failed",color:"var(--status-failed)",icon:"✕"}];function n({status:e,onStatusChange:n}){let[o,l]=(0,r.useState)(!1),[i,c]=(0,r.useState)(null),d=(0,r.useRef)(null),u=(0,r.useRef)(null),p=(0,r.useCallback)(()=>{if(!d.current)return;let e=d.current.getBoundingClientRect();c({top:e.bottom+4,left:e.left})},[]);(0,r.useEffect)(()=>{if(!o)return;p();let e=e=>{d.current&&!d.current.contains(e.target)&&u.current&&!u.current.contains(e.target)&&l(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[o,p]),(0,r.useEffect)(()=>{l(!1)},[e]);let m=s.find(t=>t.value===e)||s[0],f="completed"===e,h="in_progress"===e;return(0,t.jsxs)("div",{className:"relative flex-shrink-0",ref:d,children:[(0,t.jsxs)("button",{type:"button",onClick:e=>{e.stopPropagation(),n&&l(!o)},className:`w-4 h-4 rounded-full border-[1.5px] flex items-center justify-center transition-all
2
- hover:scale-110 focus-visible:outline-2 focus-visible:outline-[var(--ring)]
3
- ${n?"cursor-pointer":"cursor-default"}
4
- ${h?"animate-pulse":""}
5
- `,style:{borderColor:m.color,backgroundColor:f?m.color:"transparent"},title:m.label,children:[f&&(0,t.jsx)("svg",{className:"w-2.5 h-2.5 text-white",viewBox:"0 0 12 12",fill:"none",children:(0,t.jsx)("path",{d:"M2.5 6L5 8.5L9.5 3.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),"failed"===e&&(0,t.jsx)("svg",{className:"w-2 h-2",viewBox:"0 0 12 12",fill:"none",children:(0,t.jsx)("path",{d:"M3 3L9 9M9 3L3 9",stroke:m.color,strokeWidth:"1.5",strokeLinecap:"round"})}),h&&(0,t.jsx)("div",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:m.color}})]}),o&&i&&(0,a.createPortal)((0,t.jsx)("div",{ref:u,className:"fixed z-[9999] py-1 rounded-lg border shadow-lg min-w-[140px]",style:{top:i.top,left:i.left,backgroundColor:"var(--card-bg)",borderColor:"var(--card-border)"},children:s.map(r=>{let a=r.value===e;return(0,t.jsxs)("button",{type:"button",className:`w-full flex items-center gap-2 px-3 py-1.5 text-xs text-left transition-colors
6
- hover:bg-[var(--item-hover-bg)]
7
- ${a?"font-semibold bg-[var(--item-hover-bg)]":""}
8
- `,onClick:e=>{e.stopPropagation(),n?.(r.value),l(!1)},children:[(0,t.jsxs)("span",{className:"w-3 h-3 rounded-full border-[1.5px] flex items-center justify-center",style:{borderColor:r.color,backgroundColor:"completed"===r.value?r.color:"transparent"},children:["completed"===r.value&&(0,t.jsx)("svg",{className:"w-2 h-2 text-white",viewBox:"0 0 12 12",fill:"none",children:(0,t.jsx)("path",{d:"M2.5 6L5 8.5L9.5 3.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),"failed"===r.value&&(0,t.jsx)("svg",{className:"w-1.5 h-1.5",viewBox:"0 0 12 12",fill:"none",children:(0,t.jsx)("path",{d:"M3 3L9 9M9 3L3 9",stroke:r.color,strokeWidth:"1.5",strokeLinecap:"round"})}),"in_progress"===r.value&&(0,t.jsx)("div",{className:"w-1 h-1 rounded-full",style:{backgroundColor:r.color}})]}),(0,t.jsx)("span",{style:{color:a?r.color:void 0},children:r.label}),a&&(0,t.jsx)("svg",{className:"w-3 h-3 ml-auto",viewBox:"0 0 12 12",fill:"none",children:(0,t.jsx)("path",{d:"M2 6L5 9L10 3",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]},r.value)})}),document.body)]})}var o=e.i(3176);let l=new Map,i=new Map;async function c(e){let t=l.get(e);if(void 0!==t)return t;let r=i.get(e);if(r)return r;let a=(async()=>{let t=await fetch(`/api/tasks/${e}/graph`,{method:"GET",cache:"no-store"});if(404===t.status)return l.set(e,null),null;let r=await t.json().catch(()=>({}));if(!t.ok)throw Error(r?.error||`Failed to fetch graph summary (${t.status})`);let a=r?.graph??null,s=a?(0,o.buildGraphSummary)(a):null;return l.set(e,s),s})();i.set(e,a);try{return await a}finally{i.delete(e)}}function d(e){let t=(0,r.useMemo)(()=>e?l.get(e)??null:null,[e]),[a,s]=(0,r.useState)(t),[n,o]=(0,r.useState)(!!e&&null===t),[i,d]=(0,r.useState)(null),u=(0,r.useCallback)(async()=>{if(!e){s(null),d(null),o(!1);return}o(!0),d(null);try{let t=await c(e);s(t)}catch(e){d(e instanceof Error?e.message:"Failed to fetch graph summary"),s(null)}finally{o(!1)}},[e]);return(0,r.useEffect)(()=>{u()},[u]),{summary:a,isLoading:n,error:i,refresh:u}}function u(e){return l.get(e)??null}async function p(e){await Promise.allSettled(e.map(e=>c(e)))}e.s(["getCachedGraphSummary",()=>u,"prefetchGraphSummaries",()=>p,"useTaskGraphSummary",()=>d],93237);let m={queued:{className:"badge-status-queued",label:"Queued",dotColor:"bg-[var(--status-queued)]"},in_progress:{className:"badge-status-in_progress",label:"In Progress",dotColor:"bg-[var(--status-in-progress)]"},blocked:{className:"badge-status-blocked",label:"Blocked",dotColor:"bg-[var(--status-blocked)]"},completed:{className:"badge-status-completed",label:"Completed",dotColor:"bg-[var(--status-completed)]"},failed:{className:"badge-status-failed",label:"Failed",dotColor:"bg-[var(--status-failed)]"}},f={INTAKE:{icon:"📥",label:"Intake"},PROGRESS:{icon:"🔄",label:"Progress"},DONE:{icon:"✅",label:"Done"}};function h({task:e,onClick:r,compact:a=!1,onStatusChange:s,onApprovalModeChange:o,allTasks:l,relationship:i="none"}){m[e.status||"queued"],e.stage&&f[e.stage];let{summary:c,isLoading:u}=d("draft"!==e.id?e.id:null),p=e.depends_on?.length?e.depends_on.map(e=>{let t=l?.find(t=>t.id===e);return{id:e,title:t?.title||e.slice(0,8),done:t?.status==="completed"}}):null;return p&&p.every(e=>e.done),(0,t.jsxs)("div",{onClick:r,role:"button",tabIndex:0,onKeyDown:e=>"Enter"===e.key&&r?.(),className:`group relative flex flex-col gap-1.5 sm:gap-2 p-2 sm:p-3 surface-card cursor-grab active:cursor-grabbing
9
- focus-visible:outline-2 focus-visible:outline-[var(--ring)] focus-visible:outline-offset-2
10
- ${"active"===i?"border-primary ring-2 ring-primary/20 z-40":"blocking"===i?"border-[var(--status-blocked)] bg-rose-50/30 dark:bg-rose-950/20 z-20":"dependent"===i?"border-[var(--status-in-progress)] bg-blue-50/30 dark:bg-blue-950/20 z-20":"dimmed"===i?"opacity-40 grayscale scale-[0.98]":""}
11
- ${"failed"===e.status&&"none"===i?"border-red-200 bg-red-50/30 dark:bg-red-950/20":""}
12
- ${"completed"===e.status&&"none"===i?"opacity-75 bg-[var(--secondary)]":""}
13
- `,children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,t.jsx)("h3",{className:`text-sm font-medium text-[var(--foreground)] leading-snug line-clamp-2 sm:line-clamp-3
14
- ${"completed"===e.status?"text-[var(--muted-foreground)] line-through":""}
15
- `,children:e.title||"Untitled Task"}),(0,t.jsx)("div",{className:"shrink-0 mt-0.5",children:(0,t.jsx)(n,{status:e.status||"queued",onStatusChange:s})})]}),(0,t.jsx)("div",{className:"flex items-center justify-between min-h-[16px]",children:(0,t.jsxs)("div",{className:"flex items-center gap-2 text-[10px] text-[var(--muted-foreground)] flex-wrap",children:[void 0!==e.priority&&e.priority>0&&(0,t.jsxs)("span",{className:`px-1.5 py-0.5 rounded font-semibold bg-[var(--secondary)] ${0===e.priority?"text-[var(--primary)]":""}`,children:["P",e.priority]}),o&&("auto"===e.approval_mode?(0,t.jsx)("span",{className:"px-1.5 py-0.5 rounded font-semibold bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-400 cursor-pointer select-none",title:"Auto-approve enabled. Click to switch to manual.",onClick:e=>{e.stopPropagation(),o("manual")},children:"AUTO"}):(0,t.jsx)("span",{className:"px-1.5 py-0.5 rounded font-semibold bg-gray-100 text-gray-400 dark:bg-gray-800 dark:text-gray-500 cursor-pointer select-none opacity-0 group-hover:opacity-100 transition-opacity",title:"Manual approval. Click to enable auto-approve.",onClick:e=>{e.stopPropagation(),o("auto")},children:"AUTO"})),"draft"!==e.id&&(0,t.jsx)("span",{className:"opacity-0 group-hover:opacity-100 transition-opacity font-mono text-[9px]",children:e.id.slice(0,5)})]})})]})}e.s(["default",()=>h],99695)},19580,e=>{"use strict";var t=e.i(47167),r=e.i(71645);let a={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:t.default.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:t.default.env.AGX_BOARD_USER_NAME||"Local Board User"};function s(e={}){let n="1"===t.default.env.NEXT_PUBLIC_AGX_BOARD_DISABLE_AUTH,o=e.project,l=e.status,i=e.orphan,c=e.realtime,[d,u]=(0,r.useState)([]),[p,m]=(0,r.useState)(!0),[f,h]=(0,r.useState)(null),[x,g]=(0,r.useState)(null),[b,v]=(0,r.useState)(null),j=(0,r.useCallback)(e=>{if(!e)return[];if(Array.isArray(e))return Array.from(new Set(e.map(e=>String(e||"").trim()).filter(Boolean)));if("string"==typeof e){let t=e.trim();if(!t)return[];try{let e=JSON.parse(t);if(Array.isArray(e))return Array.from(new Set(e.map(e=>String(e||"").trim()).filter(Boolean)))}catch{}return Array.from(new Set(t.split(",").map(e=>e.trim()).filter(Boolean)))}return[]},[]),y=(0,r.useCallback)(e=>{let t=String(e||"").match(/^---\n([\s\S]*?)\n---\n?/);if(!t)return[];let r=t[1].split("\n").find(e=>e.trim().toLowerCase().startsWith("depends_on:"));return r?j(r.slice(r.indexOf(":")+1).trim()):[]},[j]),k=(0,r.useCallback)((e,t)=>{let r=j(e.depends_on);if(r.length>0)return{...e,depends_on:r};let a="string"==typeof e?.content?y(e.content):[];if(a.length>0)return{...e,depends_on:a};let s=j(t?.depends_on);return s.length>0?{...e,depends_on:s}:e},[y,j]),N=(0,r.useCallback)(async()=>{try{let e=new URLSearchParams;o&&e.set("project",o),l&&e.set("status",l),i&&e.set("orphan","1");let t=await fetch(`/api/tasks?${e.toString()}`);if(!t.ok)throw Error("Failed to fetch tasks");let r=await t.json(),a=Array.isArray(r.tasks)?r.tasks.map(e=>k(e)):[];u(a),h(null)}catch(e){h(e instanceof Error?e:Error("Unknown error"))}finally{m(!1)}},[o,l,i]);(0,r.useEffect)(()=>{N()},[N]),(0,r.useEffect)(()=>{if(!n||!c)return;let e=setInterval(N,3e3);return()=>clearInterval(e)},[n,c,N]),(0,r.useEffect)(()=>{if(n||!c)return;let e={auth:{getSession:async()=>({data:{session:{access_token:"local-token",refresh_token:"local-refresh",expires_in:3600,user:{id:a.id,email:a.email,user_metadata:{name:a.name,full_name:a.name}}}},error:null}),signInWithOAuth:async()=>({error:Error("Auth disabled in AGX Board local mode")}),signOut:async()=>({error:null}),onAuthStateChange:()=>({data:{subscription:{unsubscribe(){}}}})},channel:()=>({on(){return this},subscribe(){return this}}),removeChannel(){}},t=e.channel("tasks-changes").on("postgres_changes",{event:"*",schema:"public",table:"tasks"},e=>{"INSERT"===e.eventType?u(t=>{let r=k(e.new);return t.some(e=>e.id===r.id)?t:[r,...t]}):"UPDATE"===e.eventType?u(t=>t.map(t=>t.id===e.new.id?k(e.new,t):t)):"DELETE"===e.eventType&&u(t=>t.filter(t=>t.id!==e.old.id))}).subscribe();return()=>{e.removeChannel(t)}},[c,n]),(0,r.useEffect)(()=>{if(n||!c)return;let e=setInterval(N,3e3);return()=>clearInterval(e)},[c,n,N]);let w=(0,r.useCallback)(async(e,t)=>{let r=await fetch("/api/tasks",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:e,swarm_models:t})});if(!r.ok)throw Error((await r.json()).error||"Failed to create task");let{task:a}=await r.json(),s=k(a);return u(e=>e.some(e=>e.id===s.id)?e:[s,...e]),s},[e.realtime,k]),C=(0,r.useCallback)(async(e,t)=>{let r=await fetch(`/api/tasks/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!r.ok){let e=null;throw"function"==typeof r.json&&(e=await r.json().catch(()=>null)),Error(e?.error||e?.details||`Failed to update task (${r.status} ${r.statusText||"Error"})`)}let{task:a}=await r.json();return u(t=>t.map(t=>t.id===e?k({...t,...a},t):t)),k(a)},[e.realtime,k]),S=(0,r.useCallback)(async e=>{if(!(await fetch(`/api/tasks/${e}`,{method:"DELETE"})).ok)throw Error("Failed to delete task");u(t=>t.filter(t=>t.id!==e))},[e.realtime]),_=(0,r.useCallback)(async e=>{let t=await fetch("/api/queue/complete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw Error((await t.json().catch(()=>({}))).error||"Failed to complete task stage");let{task:r}=await t.json();return u(t=>t.map(t=>t.id===e.taskId?k({...t,...r},t):t)),k(r)},[e.realtime,k]),E=(0,r.useCallback)(async e=>{g(e.taskId),v(null);try{let t=await fetch(`/api/orchestrator/tasks/${e.taskId}/cancel`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e.reason?{reason:e.reason}:{})});if(!t.ok){let e=await t.json().catch(()=>({})),r=e?.error||"Failed to cancel workflow";throw Error(r)}return t.json()}catch(t){let e=t instanceof Error?t:Error("Failed to cancel workflow");throw v(e),e}finally{g(null)}},[]),P=(0,r.useCallback)(async e=>{let t=await fetch(`/api/tasks/${e}`),r=await t.json().catch(()=>null);if(!t.ok)throw Error(r?.error||"Failed to fetch task details");return k(r?.task)},[k]),T=(0,r.useCallback)(async e=>{let t=await fetch("/api/tasks/assign-orphans",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({project_id:e})}),r=await t.json().catch(()=>({}));if(!t.ok)throw Error(r?.error||"Failed to assign orphan tasks");return await N(),{updatedCount:Number(r?.updatedCount||0),taskIds:Array.isArray(r?.taskIds)?r.taskIds:[]}},[N]);return{tasks:d,isLoading:p,error:f,cancellingTaskId:x,isCancelling:!!x,cancelError:b,refetch:N,createTask:w,updateTask:C,deleteTask:S,completeTaskStage:_,cancelWorkflow:E,fetchTask:P,assignOrphanTasksToProject:T}}e.s(["useTasks",()=>s],19580)},39012,e=>{"use strict";var t=e.i(18050),r=e.i(71645),a=e.i(22016),s=e.i(18566),n=e.i(59015);function o({project:e,onEdit:r,onDelete:a,onClick:s,onManageTasks:n}){let o=e.repos&&e.repos.length>0;return(0,t.jsxs)("div",{onClick:()=>s?.(e),className:`p-5 surface-card space-y-4
16
- ${s?"cursor-pointer hover:border-gray-300 dark:hover:border-gray-700 hover:shadow-md active:scale-[0.99]":""}`,children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h3",{className:"text-lg font-semibold",children:e.name}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] tracking-wide uppercase",children:e.slug})]}),(0,t.jsxs)("div",{className:"flex flex-col items-end gap-2",children:[(0,t.jsxs)("span",{className:"text-[11px] font-semibold text-[var(--muted-foreground)]",children:["Updated ",new Date(e.updated_at).toLocaleDateString()]}),(r||a||n)&&(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[n&&(0,t.jsx)("button",{type:"button",onClick:t=>{t.stopPropagation(),n(e)},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"}),r&&(0,t.jsx)("button",{type:"button",onClick:t=>{t.stopPropagation(),r(e)},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"}),a&&(0,t.jsx)("button",{type:"button",onClick:t=>{t.stopPropagation(),a(e)},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"})]})]})]}),e.description&&(0,t.jsx)("p",{className:"text-sm text-[var(--foreground)] line-clamp-2",children:e.description}),e.ci_cd_info&&(0,t.jsxs)("div",{className:"text-sm",children:[(0,t.jsx)("p",{className:"text-[var(--muted-foreground)] text-[12px] uppercase tracking-wide",children:"CI / CD"}),(0,t.jsx)("p",{className:"text-[14px] text-[var(--accent)] font-medium truncate",children:e.ci_cd_info})]}),e.metadata&&Object.keys(e.metadata).length>0&&(0,t.jsxs)("div",{className:"p-3 rounded-lg bg-[var(--muted)]/20 border border-dashed border-[var(--card-border)] space-y-1",children:[(0,t.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-wide text-[var(--muted-foreground)]",children:"Metadata"}),(0,t.jsx)("div",{className:"space-y-1",children:Object.entries(e.metadata??{}).filter(([e])=>"undefined"!==e&&""!==e).map(([e,r])=>(0,t.jsxs)("div",{className:"text-[12px] text-[var(--muted-foreground)] flex justify-between",children:[(0,t.jsx)("span",{className:"font-semibold",children:e}),(0,t.jsx)("span",{className:"truncate text-right",children:"string"==typeof r?r:JSON.stringify(r)})]},e))})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("span",{className:"text-[12px] uppercase tracking-wider text-[var(--muted-foreground)]",children:"Repositories"}),(0,t.jsx)("span",{className:"text-[12px] text-[var(--muted-foreground)]",children:o?`${e.repos.length} connected`:"Unlinked"})]}),o?(0,t.jsxs)("div",{className:"mt-3 space-y-2",children:[e.repos.slice(0,2).map(e=>(0,t.jsxs)("div",{className:"p-2 rounded-lg border border-[var(--card-border)] bg-[var(--background)] text-[11px]",children:[(0,t.jsx)("div",{className:"font-semibold truncate",children:e.name}),e.path&&(0,t.jsx)("p",{className:"text-[10px] text-[var(--muted-foreground)] truncate",children:e.path})]},e.id)),e.repos.length>2&&(0,t.jsxs)("p",{className:"text-[10px] text-center text-[var(--muted-foreground)]",children:["+ ",e.repos.length-2," more"]})]}):(0,t.jsx)("p",{className:"mt-3 text-[12px] text-[var(--muted-foreground)]",children:"No repositories added yet."})]})]})}var l=e.i(11132),i=e.i(99695);let c={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 d({tasks:e,onSelectTask:r,onStatusChange:a}){if(0===e.length)return(0,t.jsxs)("div",{className:"text-center py-20 animate-fade-in",children:[(0,t.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,t.jsx)("span",{className:"text-3xl",children:"📋"})}),(0,t.jsx)("h3",{className:"text-lg font-semibold mb-2",children:"No tasks yet"}),(0,t.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 s=e.filter(e=>"in_progress"===e.status),n=e.filter(e=>"queued"===e.status),o=e.filter(e=>"blocked"===e.status),l=e.filter(e=>"completed"===e.status||"failed"===e.status),d=(e,s)=>{if(0===s.length)return null;let n=c[e];return(0,t.jsxs)("section",{className:"mb-8 animate-fade-in-up",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 mb-4",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 py-1.5 rounded-lg",style:{backgroundColor:`color-mix(in srgb, ${n.color} 10%, transparent)`},children:[(0,t.jsx)("span",{className:"text-lg",children:n.icon}),(0,t.jsx)("h3",{className:"text-sm font-semibold",style:{color:n.color},children:n.title}),(0,t.jsx)("span",{className:"px-2 py-0.5 rounded-full text-xs font-medium",style:{backgroundColor:`color-mix(in srgb, ${n.color} 15%, transparent)`,color:n.color},children:s.length})]}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] hidden sm:block",children:n.description})]}),(0,t.jsx)("div",{className:"grid gap-3 sm:grid-cols-2 lg:grid-cols-3",children:s.map((e,s)=>(0,t.jsx)("div",{className:"animate-fade-in-up",style:{animationDelay:`${50*s}ms`},children:(0,t.jsx)(i.default,{task:e,onClick:()=>r?.(e),onStatusChange:a?t=>a(e.id,t):void 0})},e.id))})]})};return(0,t.jsxs)("div",{children:[d("in_progress",s),d("blocked",o),d("queued",n),d("completed",l)]})}var u=e.i(19580),p=e.i(74049);function m(){let e=(0,s.useRouter)(),i=(0,s.useSearchParams)(),{projects:c,isLoading:d,error:u,refetch:m,createProject:h,updateProject:x,deleteProject:g}=(0,p.useProjects)(),b=(0,l.useProjectFormState)(),[v,j]=(0,r.useState)(null),[y,k]=(0,r.useState)(!1),[N,w]=(0,r.useState)(null),{form:C,repos:S,handleRepoChange:_,addRepo:E,removeRepo:P,resetForm:T,hydrateFromProject:O,isSubmitting:L,setIsSubmitting:A,formError:$,setFormError:R,setForm:I}=b,M=()=>{j(null),T(),k(!0)},F=e=>{j(e),O(e),k(!0)};(0,r.useEffect)(()=>{let e=i.get("edit");if(!e||0===c.length||y)return;let t=c.find(t=>t.id===e);t&&F(t)},[i,c,y]);let D=(0,r.useCallback)(t=>{t.slug&&e.push(`/projects/${t.slug}`)},[e]),U=(0,r.useCallback)(e=>{w(e)},[]),B=(0,r.useCallback)(()=>{w(null)},[]),q=()=>{T(),k(!1),j(null),i.get("edit")&&e.replace("/projects")},J=async()=>{if(!C.name.trim())return void R("Project name is required");let e=S.find(e=>e.name.trim()&&!e.path.trim());if(e)return void R(`Local path is required for folder "${e.name}"`);R(null),A(!0);let t=(0,l.createProjectPayload)(C,S);try{v?await x(v.id,t):await h(t),q()}catch(e){R(e instanceof Error?e.message:"Failed to save project")}finally{A(!1)}},z=async e=>{if(window.confirm(`Delete project "${e.name}"? This cannot be undone.`))try{await g(e.id)}catch(e){alert(e instanceof Error?e.message:"Failed to delete project")}};return(0,t.jsx)(n.default,{children:(0,t.jsxs)("div",{className:"max-w-7xl mx-auto w-full flex flex-col min-h-full",children:[(0,t.jsxs)("header",{className:"flex flex-col sm:flex-row sm:items-center justify-between gap-4 py-8",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h1",{className:"text-3xl font-bold tracking-tight",children:"Projects"}),(0,t.jsx)("p",{className:"text-[var(--muted-foreground)] mt-1",children:"Manage your projects and their folder contexts."})]}),(0,t.jsxs)("div",{className:"flex gap-3",children:[(0,t.jsx)("button",{onClick:m,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,t.jsx)("button",{onClick:M,className:"btn-primary px-6 py-2 shadow-lg shadow-[var(--primary)]/20",children:"+ New Project"})]})]}),d?(0,t.jsx)("div",{className:"flex-1 flex items-center justify-center py-20",children:(0,t.jsxs)("div",{className:"flex flex-col items-center gap-4",children:[(0,t.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full"}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)] animate-pulse",children:"Loading projects..."})]})}):0===c.length?(0,t.jsxs)("div",{className:"flex-1 flex flex-col items-center justify-center py-20 animate-fade-in",children:[(0,t.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,t.jsx)("h2",{className:"text-2xl font-bold mb-2",children:"You have no projects"}),(0,t.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,t.jsx)("button",{onClick:M,className:"btn-primary px-8 py-3 text-lg shadow-xl shadow-[var(--primary)]/20",children:"Create a Project"})]}):(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6 pb-20",children:[(0,t.jsxs)(a.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,t.jsx)("div",{className:"flex items-start justify-between gap-4",children:(0,t.jsxs)("div",{children:[(0,t.jsx)("h3",{className:"text-lg font-semibold",children:"Orphan Tasks"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] tracking-wide uppercase",children:"Unassigned"})]})}),(0,t.jsx)("p",{className:"text-sm text-[var(--foreground)]",children:"Review tasks with empty project assignment and move them into the correct project."})]}),c.map(e=>(0,t.jsx)(o,{project:e,onEdit:F,onDelete:z,onManageTasks:U,onClick:D},e.id))]}),(0,t.jsx)(l.default,{isOpen:y,onClose:q,onSubmit:J,editingProject:v,form:C,repos:S,isSubmitting:L,formError:$,onFieldChange:(e,t)=>I(r=>({...r,[e]:t})),onRepoChange:_,onAddRepo:E,onRemoveRepo:P}),N&&(0,t.jsx)(f,{project:N,onClose:B})]})})}function f({project:e,onClose:r}){let{tasks:a,isLoading:s}=(0,u.useTasks)({project:e.slug});return(0,t.jsx)("div",{className:"modal-backdrop p-2 sm:p-4 z-50 overflow-y-auto flex items-center justify-center",onClick:e=>e.target===e.currentTarget&&r(),children:(0,t.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,t.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,t.jsxs)("div",{children:[(0,t.jsxs)("h2",{className:"text-xl font-bold",children:["Tasks for ",e.name]}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-0.5",children:"Viewing all tasks associated with this project."})]}),(0,t.jsx)("button",{onClick:r,className:"p-2 rounded-xl hover:bg-[var(--muted)]/50 transition-colors",children:(0,t.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto p-8",children:s?(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center py-20",children:[(0,t.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full mb-4"}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"Loading project tasks..."})]}):(0,t.jsx)(d,{tasks:a})}),(0,t.jsx)("div",{className:"px-8 py-6 border-t border-[var(--card-border)] flex justify-end flex-shrink-0",children:(0,t.jsx)("button",{onClick:r,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"})})]})})}e.s(["default",()=>m],39012)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,33525,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return l}});let l=e=>{}},98183,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var l={assign:function(){return i},searchParamsToUrlQuery:function(){return n},urlQueryToSearchParams:function(){return o}};for(var s in l)Object.defineProperty(r,s,{enumerable:!0,get:l[s]});function n(e){let t={};for(let[r,l]of e.entries()){let e=t[r];void 0===e?t[r]=l:Array.isArray(e)?e.push(l):t[r]=[e,l]}return t}function a(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function o(e){let t=new URLSearchParams;for(let[r,l]of Object.entries(e))if(Array.isArray(l))for(let e of l)t.append(r,a(e));else t.set(r,a(l));return t}function i(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,l]of r.entries())e.append(t,l)}return e}},61746,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var l={formatUrl:function(){return o},formatWithValidation:function(){return d},urlObjectKeys:function(){return i}};for(var s in l)Object.defineProperty(r,s,{enumerable:!0,get:l[s]});let n=e.r(90809)._(e.r(98183)),a=/https?|ftp|gopher|file/;function o(e){let{auth:t,hostname:r}=e,l=e.protocol||"",s=e.pathname||"",o=e.hash||"",i=e.query||"",d=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?d=t+e.host:r&&(d=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(d+=":"+e.port)),i&&"object"==typeof i&&(i=String(n.urlQueryToSearchParams(i)));let c=e.search||i&&`?${i}`||"";return l&&!l.endsWith(":")&&(l+=":"),e.slashes||(!l||a.test(l))&&!1!==d?(d="//"+(d||""),s&&"/"!==s[0]&&(s="/"+s)):d||(d=""),o&&"#"!==o[0]&&(o="#"+o),c&&"?"!==c[0]&&(c="?"+c),s=s.replace(/[?#]/g,encodeURIComponent),c=c.replace("#","%23"),`${l}${d}${s}${c}${o}`}let i=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function d(e){return o(e)}},18581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return s}});let l=e.r(71645);function s(e,t){let r=(0,l.useRef)(null),s=(0,l.useRef)(null);return(0,l.useCallback)(l=>{if(null===l){let e=r.current;e&&(r.current=null,e());let t=s.current;t&&(s.current=null,t())}else e&&(r.current=n(e,l)),t&&(s.current=n(t,l))},[e,t])}function n(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},18967,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var l={DecodeError:function(){return g},MiddlewareNotFoundError:function(){return j},MissingStaticPage:function(){return y},NormalizeError:function(){return b},PageNotFoundError:function(){return v},SP:function(){return p},ST:function(){return h},WEB_VITALS:function(){return n},execOnce:function(){return a},getDisplayName:function(){return u},getLocationOrigin:function(){return d},getURL:function(){return c},isAbsoluteUrl:function(){return i},isResSent:function(){return f},loadGetInitialProps:function(){return m},normalizeRepeatedSlashes:function(){return x},stringifyError:function(){return k}};for(var s in l)Object.defineProperty(r,s,{enumerable:!0,get:l[s]});let n=["CLS","FCP","FID","INP","LCP","TTFB"];function a(e){let t,r=!1;return(...l)=>(r||(r=!0,t=e(...l)),t)}let o=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,i=e=>o.test(e);function d(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function c(){let{href:e}=window.location,t=d();return e.substring(t.length)}function u(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function f(e){return e.finished||e.headersSent}function x(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function m(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await m(t.Component,t.ctx)}:{};let l=await e.getInitialProps(t);if(r&&f(r))return l;if(!l)throw Object.defineProperty(Error(`"${u(e)}.getInitialProps()" should resolve to an object. But found "${l}" instead.`),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return l}let p="u">typeof performance,h=p&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class g extends Error{}class b extends Error{}class v extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class y extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class j extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function k(e){return JSON.stringify({message:e.message,stack:e.stack})}},73668,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return n}});let l=e.r(18967),s=e.r(52817);function n(e){if(!(0,l.isAbsoluteUrl)(e))return!0;try{let t=(0,l.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,s.hasBasePath)(r.pathname)}catch(e){return!1}}},84508,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return l}});let l=e=>{}},22016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var l={default:function(){return g},useLinkStatus:function(){return v}};for(var s in l)Object.defineProperty(r,s,{enumerable:!0,get:l[s]});let n=e.r(90809),a=e.r(18050),o=n._(e.r(71645)),i=e.r(61746),d=e.r(8372),c=e.r(18581),u=e.r(18967),f=e.r(5550);e.r(33525);let x=e.r(91949),m=e.r(73668),p=e.r(9396);function h(e){return"string"==typeof e?e:(0,i.formatUrl)(e)}function g(t){var r;let l,s,n,[i,g]=(0,o.useOptimistic)(x.IDLE_LINK_STATUS),v=(0,o.useRef)(null),{href:y,as:j,children:k,prefetch:N=null,passHref:w,replace:I,shallow:S,scroll:C,onClick:P,onMouseEnter:O,onTouchStart:_,legacyBehavior:E=!1,onNavigate:T,ref:A,unstable_dynamicOnHover:R,...L}=t;l=k,E&&("string"==typeof l||"number"==typeof l)&&(l=(0,a.jsx)("a",{children:l}));let $=o.default.useContext(d.AppRouterContext),M=!1!==N,U=!1!==N?null===(r=N)||"auto"===r?p.FetchStrategy.PPR:p.FetchStrategy.Full:p.FetchStrategy.PPR,{href:F,as:B}=o.default.useMemo(()=>{let e=h(y);return{href:e,as:j?h(j):e}},[y,j]);if(E){if(l?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});s=o.default.Children.only(l)}let D=E?s&&"object"==typeof s&&s.ref:A,K=o.default.useCallback(e=>(null!==$&&(v.current=(0,x.mountLinkInstance)(e,F,$,U,M,g)),()=>{v.current&&((0,x.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,x.unmountPrefetchableInstance)(e)}),[M,F,$,U,g]),z={ref:(0,c.useMergedRef)(K,D),onClick(t){E||"function"!=typeof P||P(t),E&&s.props&&"function"==typeof s.props.onClick&&s.props.onClick(t),!$||t.defaultPrevented||function(t,r,l,s,n,a,i){if("u">typeof window){let d,{nodeName:c}=t.currentTarget;if("A"===c.toUpperCase()&&((d=t.currentTarget.getAttribute("target"))&&"_self"!==d||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,m.isLocalURL)(r)){n&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),i){let e=!1;if(i({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:u}=e.r(99781);o.default.startTransition(()=>{u(l||r,n?"replace":"push",a??!0,s.current)})}}(t,F,B,v,I,C,T)},onMouseEnter(e){E||"function"!=typeof O||O(e),E&&s.props&&"function"==typeof s.props.onMouseEnter&&s.props.onMouseEnter(e),$&&M&&(0,x.onNavigationIntent)(e.currentTarget,!0===R)},onTouchStart:function(e){E||"function"!=typeof _||_(e),E&&s.props&&"function"==typeof s.props.onTouchStart&&s.props.onTouchStart(e),$&&M&&(0,x.onNavigationIntent)(e.currentTarget,!0===R)}};return(0,u.isAbsoluteUrl)(B)?z.href=B:E&&!w&&("a"!==s.type||"href"in s.props)||(z.href=(0,f.addBasePath)(B)),n=E?o.default.cloneElement(s,z):(0,a.jsx)("a",{...L,...z,children:l}),(0,a.jsx)(b.Provider,{value:i,children:n})}e.r(84508);let b=(0,o.createContext)(x.IDLE_LINK_STATUS),v=()=>(0,o.useContext)(b);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},59015,e=>{"use strict";var t=e.i(18050),r=e.i(22016),l=e.i(71645);function s(){let[e,r]=(0,l.useState)(null),[s,n]=(0,l.useState)("loading");(0,l.useEffect)(()=>{let e=!0;async function t(){try{let t=await fetch("/api/health");if(!e)return;if(!t.ok)return void n("error");let l=await t.json();r(l),n(l.connected?"connected":"disconnected")}catch{e&&n("error")}}t();let l=setInterval(t,3e4);return()=>{e=!1,clearInterval(l)}},[]);let a={loading:"Checking database…",connected:`${e?.adapter??"db"} connected (${e?.latencyMs??"?"}ms)`,disconnected:`${e?.adapter??"db"} disconnected`,error:"Database unreachable"};return(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-xs text-[var(--muted-foreground)]",role:"status","aria-label":a[s],children:[(0,t.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"}[s]}`}),(0,t.jsx)("span",{className:"hidden sm:inline",children:a[s]})]})}function n({children:e,fullWidth:l=!1,noFooter:n=!1}){return(0,t.jsxs)("div",{className:"h-screen flex flex-col overflow-hidden",children:[(0,t.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,t.jsx)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8",children:(0,t.jsxs)("div",{className:"flex items-center justify-between h-16",children:[(0,t.jsx)("div",{className:"flex items-center gap-8",children:(0,t.jsx)(r.default,{href:"/",className:"flex items-center gap-3 group",children:(0,t.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,t.jsx)("rect",{width:"64",height:"38",rx:"8",fill:"black"}),(0,t.jsxs)("g",{stroke:"white",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M 14 27 C 17 16 19 10 20 8 C 21 12 23 20 25 27"}),(0,t.jsx)("path",{d:"M 16 20 C 19 19 21 21 23 20"}),(0,t.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,t.jsx)("path",{d:"M 46 11 C 48 16 51 22 54 27"}),(0,t.jsx)("path",{d:"M 54 11 C 52 16 49 22 46 27"})]})]})})}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)(r.default,{href:"/",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Open Chat"}),(0,t.jsx)(r.default,{href:"/automations",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Automations"}),(0,t.jsx)(r.default,{href:"/skills",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Skills"}),(0,t.jsx)(r.default,{href:"/settings",className:"text-sm font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Settings"})]})]})})}),(0,t.jsx)("main",{className:`flex-1 min-h-0 flex flex-col ${l?"p-0":"p-4 sm:p-6 lg:p-8 overflow-y-auto"}`,children:e}),!n&&(0,t.jsx)("footer",{className:"flex-shrink-0 border-t border-[var(--card-border)] bg-[var(--card-bg)]/50 py-4",children:(0,t.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,t.jsx)("span",{children:"AGX Board • Autonomous Agent Orchestration"}),(0,t.jsxs)("span",{className:"hidden sm:inline-flex items-center gap-3",children:[(0,t.jsx)(s,{}),(0,t.jsx)("span",{children:"Built with Next.js + Db"})]})]})})]})}function a(e){return(0,t.jsx)(l.Suspense,{fallback:(0,t.jsx)("div",{className:"h-screen flex items-center justify-center bg-[var(--background)]",children:(0,t.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full"})}),children:(0,t.jsx)(n,{...e})})}e.s(["default",()=>a],59015)},92862,e=>{"use strict";var t=e.i(18050),r=e.i(71645),l=e.i(59015);let s=[{id:"claude",label:"Claude"},{id:"codex",label:"Codex"},{id:"gemini",label:"Gemini"},{id:"zai",label:"Z.AI"}];function n(){let[e,n]=(0,r.useState)(!0),[a,o]=(0,r.useState)(null),[i,d]=(0,r.useState)(null),[c,u]=(0,r.useState)(""),[f,x]=(0,r.useState)([]),[m,p]=(0,r.useState)([]),[h,g]=(0,r.useState)([]),[b,v]=(0,r.useState)([]),[y,j]=(0,r.useState)({}),[k,N]=(0,r.useState)({}),[w,I]=(0,r.useState)({}),[S,C]=(0,r.useState)(null);async function P(){try{n(!0),d(null);let[e,t,r]=await Promise.all([fetch("/api/skills"),fetch("/api/skills/history?limit=20"),fetch("/api/participants")]),l=e.ok?await e.json():{skills:[],installed:[]},s=t.ok?await t.json():{history:[]},a=r.ok?await r.json():[];x(l.skills??[]),p(l.installed??[]),g(s.history??[]),v(Array.isArray(a)?a:[])}catch(e){d(e?.message||"Failed to load skills")}finally{n(!1)}}(0,r.useEffect)(()=>{P()},[]),(0,r.useEffect)(()=>{0!==b.length&&N(e=>{let t={...e};for(let e of f)t[e.skillId]||(t[e.skillId]=b[0].id);return t})},[b,f]);let O=(0,r.useMemo)(()=>{let e=c.trim().toLowerCase();return e?f.filter(t=>[t.name,t.skillId,t.repo].some(t=>t.toLowerCase().includes(e))):f},[c,f]),_=(0,r.useMemo)(()=>new Set(m),[m]);async function E(e){if(void 0!==w[e.skillId])return void C(t=>t===e.skillId?null:e.skillId);C(e.skillId);let t=await fetch(`/api/skills/detail?source=${encodeURIComponent(e.repo)}&skillId=${encodeURIComponent(e.skillId)}`),r=t.ok?await t.json():{detail:null};I(t=>({...t,[e.skillId]:r.detail??null}))}async function T(e){o(e.skillId),d(null);try{let t=y[e.skillId]??["codex"],r=await fetch("/api/skills/learn",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({repo:e.repo,skillId:e.skillId,providers:t})}),l=await r.json().catch(()=>({}));if(!r.ok)throw Error(l.error||"Failed to install skill");await P()}catch(e){d(e?.message||"Failed to install skill")}finally{o(null)}}async function A(e){o(e.skillId),d(null);try{let t=y[e.skillId]??["codex"],r=await fetch("/api/skills/unlearn",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({skillId:e.skillId,providers:t})}),l=await r.json().catch(()=>({}));if(!r.ok)throw Error(l.error||"Failed to remove skill");await P()}catch(e){d(e?.message||"Failed to remove skill")}finally{o(null)}}async function R(e){let t=k[e.skillId];if(t){o(e.skillId),d(null);try{let r=await fetch("/api/skills/assign",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:t,repo:e.repo,skillId:e.skillId})}),l=await r.json().catch(()=>({}));if(!r.ok)throw Error(l.error||"Failed to assign skill");await P()}catch(e){d(e?.message||"Failed to assign skill")}finally{o(null)}}}return(0,t.jsx)(l.default,{children:(0,t.jsxs)("div",{className:"max-w-7xl mx-auto w-full flex flex-col gap-6",children:[(0,t.jsxs)("header",{className:"flex flex-col gap-4 lg:flex-row lg:items-end lg:justify-between",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h1",{className:"text-3xl font-bold tracking-tight",children:"Skills Library"}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)] mt-1",children:"Browse skills from skills.sh, install them into this workspace, then attach installed skills to AGX agents."})]}),(0,t.jsxs)("div",{className:"flex gap-3",children:[(0,t.jsx)("input",{value:c,onChange:e=>u(e.target.value),placeholder:"Search skills",className:"w-full lg:w-80 rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] px-4 py-2 text-sm"}),(0,t.jsx)("button",{onClick:()=>void P(),className:"rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] px-4 py-2 text-sm font-medium hover:border-[var(--primary)]",children:"Refresh"})]})]}),i&&(0,t.jsx)("div",{className:"rounded-xl border border-red-200 bg-red-50 px-4 py-3 text-sm text-red-800",children:i}),(0,t.jsxs)("section",{className:"grid gap-4 lg:grid-cols-[2fr_1fr]",children:[(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)] p-5",children:[(0,t.jsx)("div",{className:"flex items-center justify-between gap-3 mb-4",children:(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-lg font-semibold",children:"Catalog"}),(0,t.jsxs)("p",{className:"text-xs text-[var(--muted-foreground)]",children:[O.length," visible skills"]})]})}),e?(0,t.jsx)("div",{className:"text-sm text-[var(--muted-foreground)]",children:"Loading skills…"}):(0,t.jsx)("div",{className:"grid gap-4",children:O.map(e=>{let r=_.has(e.skillId),l=w[e.skillId],n=y[e.skillId]??["codex"],o=k[e.skillId]??"",i=a===e.skillId;return(0,t.jsxs)("article",{className:"rounded-2xl border border-[var(--card-border)] bg-[var(--background)] p-4",children:[(0,t.jsxs)("div",{className:"flex flex-col gap-4 xl:flex-row xl:items-start xl:justify-between",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,t.jsx)("h3",{className:"text-base font-semibold",children:e.name||e.skillId}),(0,t.jsx)("span",{className:`rounded-full px-2 py-0.5 text-[11px] font-medium ${r?"bg-emerald-100 text-emerald-700":"bg-slate-100 text-slate-600"}`,children:r?"Installed":"Not installed"})]}),(0,t.jsxs)("p",{className:"mt-1 text-xs text-[var(--muted-foreground)]",children:[e.repo," · ",e.skillId]}),(0,t.jsxs)("p",{className:"mt-2 text-xs text-[var(--muted-foreground)]",children:["skills.sh installs: ",e.installs.toLocaleString()]})]}),(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,t.jsx)("button",{onClick:()=>void E(e),className:"rounded-xl border border-[var(--card-border)] px-3 py-2 text-xs font-medium",children:S===e.skillId?"Hide details":"Details"}),r?(0,t.jsx)("button",{onClick:()=>void A(e),disabled:i,className:"rounded-xl border border-amber-200 bg-amber-50 px-3 py-2 text-xs font-medium text-amber-800 disabled:opacity-60",children:i?"Removing…":"Remove"}):(0,t.jsx)("button",{onClick:()=>void T(e),disabled:i,className:"rounded-xl bg-[var(--primary)] px-3 py-2 text-xs font-medium text-[var(--primary-foreground)] disabled:opacity-60",children:i?"Installing…":"Install"})]})]}),(0,t.jsxs)("div",{className:"mt-4 flex flex-col gap-3 lg:flex-row lg:items-center lg:justify-between",children:[(0,t.jsx)("div",{className:"flex flex-wrap gap-2",children:s.map(r=>(0,t.jsx)("button",{onClick:()=>{var t,l;return t=e.skillId,l=r.id,void j(e=>{let r=new Set(e[t]??["codex"]);r.has(l)?r.delete(l):r.add(l);let s=Array.from(r);return{...e,[t]:s.length>0?s:["codex"]}})},className:`rounded-full border px-3 py-1 text-[11px] font-medium ${n.includes(r.id)?"border-[var(--primary)] bg-[var(--primary)]/10 text-[var(--primary)]":"border-[var(--card-border)] text-[var(--muted-foreground)]"}`,children:r.label},r.id))}),(0,t.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-center",children:[(0,t.jsxs)("select",{value:o,onChange:t=>N(r=>({...r,[e.skillId]:t.target.value})),className:"min-w-44 rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] px-3 py-2 text-xs",children:[(0,t.jsx)("option",{value:"",children:"Assign to agent…"}),b.map(e=>(0,t.jsxs)("option",{value:e.id,children:[e.name," · ",e.provider]},e.id))]}),(0,t.jsx)("button",{onClick:()=>void R(e),disabled:!r||!o||i,className:"rounded-xl border border-[var(--card-border)] px-3 py-2 text-xs font-medium disabled:opacity-50",children:"Assign to Agent"})]})]}),S===e.skillId&&(0,t.jsx)("div",{className:"mt-4 rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] p-4 text-sm",children:l?(0,t.jsxs)("div",{className:"space-y-3",children:[l.description&&(0,t.jsx)("p",{children:l.description}),(l.weeklyInstalls||l.firstSeen)&&(0,t.jsxs)("p",{className:"text-xs text-[var(--muted-foreground)]",children:[l.weeklyInstalls?`Weekly installs: ${l.weeklyInstalls}`:"",l.weeklyInstalls&&l.firstSeen?" · ":"",l.firstSeen?`First seen: ${l.firstSeen}`:""]}),l.whenToUse.length>0&&(0,t.jsx)("ul",{className:"list-disc pl-5 text-xs text-[var(--muted-foreground)] space-y-1",children:l.whenToUse.slice(0,4).map(e=>(0,t.jsx)("li",{children:e},e))}),(0,t.jsx)("code",{className:"block overflow-x-auto rounded-lg bg-black px-3 py-2 text-xs text-white",children:l.installCommand})]}):(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"No detail available for this skill yet."})})]},e.skillId)})})]}),(0,t.jsxs)("aside",{className:"space-y-4",children:[(0,t.jsxs)("section",{className:"rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)] p-5",children:[(0,t.jsx)("h2",{className:"text-lg font-semibold",children:"Installed Here"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-1",children:"Project-local skills from `.agents/skills`."}),(0,t.jsx)("div",{className:"mt-4 flex flex-wrap gap-2",children:m.length>0?m.map(e=>(0,t.jsx)("span",{className:"rounded-full bg-emerald-100 px-2 py-1 text-[11px] font-medium text-emerald-700",children:e},e)):(0,t.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"No installed skills yet."})})]}),(0,t.jsxs)("section",{className:"rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)] p-5",children:[(0,t.jsx)("h2",{className:"text-lg font-semibold",children:"Recent Activity"}),(0,t.jsx)("div",{className:"mt-4 space-y-3",children:h.length>0?h.map(e=>(0,t.jsxs)("div",{className:"rounded-xl border border-[var(--card-border)] bg-[var(--background)] p-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)("span",{className:"text-sm font-medium",children:e.skill_label}),(0,t.jsx)("span",{className:`rounded-full px-2 py-0.5 text-[11px] font-medium ${"succeeded"===e.status?"bg-emerald-100 text-emerald-700":"bg-red-100 text-red-700"}`,children:e.status})]}),(0,t.jsxs)("p",{className:"mt-1 text-xs text-[var(--muted-foreground)]",children:[e.provider," · ",e.repo]}),(0,t.jsx)("p",{className:"mt-1 text-[11px] text-[var(--muted-foreground)]",children:new Date(e.updated_at).toLocaleString()}),e.error&&(0,t.jsx)("p",{className:"mt-2 text-xs text-red-700",children:e.error})]},e.id)):(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No skill activity yet."})})]})]})]})]})})}e.s(["default",()=>n])}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,67585,(e,r,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BailoutToCSR",{enumerable:!0,get:function(){return s}});let a=e.r(32061);function s({reason:e,children:r}){if("u"<typeof window)throw Object.defineProperty(new a.BailoutToCSRError(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return r}},9885,(e,r,t)=>{"use strict";function a(e){return e.split("/").map(e=>encodeURIComponent(e)).join("/")}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"encodeURIPath",{enumerable:!0,get:function(){return a}})},74916,(e,r,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"PreloadChunks",{enumerable:!0,get:function(){return l}});let a=e.r(18050),s=e.r(74080),n=e.r(63599),o=e.r(9885),d=e.r(43369);function l({moduleIds:e}){if("u">typeof window)return null;let r=n.workAsyncStorage.getStore();if(void 0===r)return null;let t=[];if(r.reactLoadableManifest&&e){let a=r.reactLoadableManifest;for(let r of e){if(!a[r])continue;let e=a[r].files;t.push(...e)}}if(0===t.length)return null;let l=(0,d.getDeploymentIdQueryOrEmptyString)();return(0,a.jsx)(a.Fragment,{children:t.map(e=>{let t=`${r.assetPrefix}/_next/${(0,o.encodeURIPath)(e)}${l}`;return e.endsWith(".css")?(0,a.jsx)("link",{precedence:"dynamic",href:t,rel:"stylesheet",as:"style",nonce:r.nonce},e):((0,s.preload)(t,{as:"script",fetchPriority:"low",nonce:r.nonce}),null)})})}},69093,(e,r,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return i}});let a=e.r(18050),s=e.r(71645),n=e.r(67585),o=e.r(74916);function d(e){return{default:e&&"default"in e?e.default:e}}let l={loader:()=>Promise.resolve(d(()=>null)),loading:null,ssr:!0},i=function(e){let r={...l,...e},t=(0,s.lazy)(()=>r.loader().then(d)),i=r.loading;function c(e){let d=i?(0,a.jsx)(i,{isLoading:!0,pastDelay:!0,error:null}):null,l=!r.ssr||!!r.loading,c=l?s.Suspense:s.Fragment,u=r.ssr?(0,a.jsxs)(a.Fragment,{children:["u"<typeof window?(0,a.jsx)(o.PreloadChunks,{moduleIds:r.modules}):null,(0,a.jsx)(t,{...e})]}):(0,a.jsx)(n.BailoutToCSR,{reason:"next/dynamic",children:(0,a.jsx)(t,{...e})});return(0,a.jsx)(c,{...l?{fallback:d}:{},children:u})}return c.displayName="LoadableComponent",c}},70703,(e,r,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return s}});let a=e.r(55682)._(e.r(69093));function s(e,r){let t={};"function"==typeof e&&(t.loader=e);let s={...t,...r};return(0,a.default)({...s,modules:s.loadableGenerated?.modules})}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),r.exports=t.default)},40212,e=>{"use strict";var r=e.i(18050),t=e.i(71645),a=e.i(70703),s=e.i(31343),n=e.i(27612),o=e.i(7233),d=e.i(37727),l=e.i(3116),i=e.i(68054),c=e.i(16715),u=e.i(64659),x=e.i(84765),m=e.i(39312),p=e.i(75254);let v=(0,p.default)("calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]),h=(0,p.default)("calendar-days",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M8 14h.01",key:"6423bh"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M16 14h.01",key:"1gbofw"}],["path",{d:"M8 18h.01",key:"lrp35t"}],["path",{d:"M12 18h.01",key:"mhygvu"}],["path",{d:"M16 18h.01",key:"kzsmim"}]]),f=(0,p.default)("repeat",[["path",{d:"m17 2 4 4-4 4",key:"nntrym"}],["path",{d:"M3 11v-1a4 4 0 0 1 4-4h14",key:"84bu3i"}],["path",{d:"m7 22-4-4 4-4",key:"1wqhfi"}],["path",{d:"M21 13v1a4 4 0 0 1-4 4H3",key:"1rx37r"}]]);var b=e.i(88699),g=e.i(71689);let j=(0,a.default)(()=>e.A(76473),{loadableGenerated:{modules:[32077]},ssr:!1});function y(e,r){if("paused"===r)return"Paused";if("stopped"===r)return"Stopped";if(null===e)return"Pending...";let t=e-Date.now();return t<0?"overdue":t<6e4?`in ${Math.round(t/1e3)}s`:t<36e5?`in ${Math.round(t/6e4)}m`:t<864e5?`in ${Math.round(t/36e5)}h`:`in ${Math.round(t/864e5)}d`}function N(e){if(!e)return"—";let r=new Date(e);return r.toLocaleDateString("en-US",{month:"short",day:"numeric"})+", "+r.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit"})}function k({state:e}){let t={active:"text-green-400 bg-green-400/10 border-green-400/20",paused:"text-amber-400 bg-amber-400/10 border-amber-400/20",stopped:"text-[var(--muted-foreground)] bg-[var(--muted)] border-[var(--card-border)]"};return(0,r.jsx)("span",{className:`text-[10px] font-semibold uppercase tracking-wider px-2 py-0.5 rounded-md border ${t[e]??t.stopped}`,children:e})}let w={active:"bg-emerald-400",paused:"bg-amber-400",stopped:"bg-zinc-500"},C={success:"bg-emerald-400",failed:"bg-red-400",cancelled:"bg-zinc-500",running:"bg-sky-400",queued:"bg-amber-400"},S=[{label:"Sun",short:"S",value:0},{label:"Mon",short:"M",value:1},{label:"Tue",short:"T",value:2},{label:"Wed",short:"W",value:3},{label:"Thu",short:"T",value:4},{label:"Fri",short:"F",value:5},{label:"Sat",short:"S",value:6}];function $(e,r,t,a,s){switch(e){case"hourly":return`${t} * * * *`;case"daily":default:return`${t} ${r} * * *`;case"weekly":return`${t} ${r} * * ${a.sort().join(",")}`;case"monthly":return`${t} ${r} ${s} * *`}}function P(e,r,t,a,s){let n=parseInt(r),o=`${n%12||12}:${t} ${n>=12?"PM":"AM"}`;switch(e){case"hourly":return`Every hour at :${t}`;case"daily":default:return`Every day at ${o}`;case"weekly":{let e=a.sort().map(e=>S.find(r=>r.value===e).label);return`${o} on ${e.join(", ")}`}case"monthly":let d,l;return`${s}${(d=["th","st","nd","rd"])[((l=s%100)-20)%10]||d[l]||d[0]} of every month at ${o}`}}function M({value:e,onChange:a}){let[s,n]=(0,t.useState)("daily"),[o,d]=(0,t.useState)("09"),[i,c]=(0,t.useState)("00"),[u,x]=(0,t.useState)([1,2,3,4,5]),[m,p]=(0,t.useState)(1);(0,t.useEffect)(()=>{a($(s,o,i,u,m),P(s,o,i,u,m))},[s,o,i,u,m]);let b=(e,t,a)=>(0,r.jsxs)("button",{type:"button",onClick:()=>n(e),className:`flex flex-col items-center justify-center p-2.5 rounded-xl border transition-all text-[11px] font-medium ${s===e?"border-[var(--foreground)] bg-[var(--foreground)]/5 text-[var(--foreground)]":"border-[var(--card-border)] bg-[var(--muted)] text-[var(--muted-foreground)] hover:border-[var(--muted-foreground)]"}`,children:[(0,r.jsx)(a,{size:16}),(0,r.jsx)("span",{className:"mt-1",children:t})]},e),g="bg-[var(--muted)] border border-[var(--card-border)] rounded-lg px-2 py-1.5 text-sm font-medium text-[var(--foreground)] focus:outline-none focus:border-[var(--foreground)] transition-colors";return(0,r.jsxs)("div",{className:"space-y-4",children:[(0,r.jsxs)("div",{className:"grid grid-cols-4 gap-2",children:[b("hourly","Hourly",f),b("daily","Daily",l.Clock),b("weekly","Weekly",h),b("monthly","Monthly",v)]}),"hourly"!==s?(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-[10px] font-semibold text-[var(--muted-foreground)] uppercase tracking-widest mb-1.5",children:"Time"}),(0,r.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,r.jsx)("select",{value:o,onChange:e=>d(e.target.value),className:g,children:Array.from({length:24}).map((e,t)=>{let a=t.toString().padStart(2,"0");return(0,r.jsx)("option",{value:a,children:a},a)})}),(0,r.jsx)("span",{className:"text-sm font-bold text-[var(--muted-foreground)]",children:":"}),(0,r.jsx)("select",{value:i,onChange:e=>c(e.target.value),className:g,children:["00","05","10","15","20","25","30","35","40","45","50","55"].map(e=>(0,r.jsx)("option",{value:e,children:e},e))}),(0,r.jsx)("span",{className:"ml-1.5 text-[10px] text-[var(--muted-foreground)]",children:parseInt(o)>=12?"PM":"AM"})]})]}):(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-[10px] font-semibold text-[var(--muted-foreground)] uppercase tracking-widest mb-1.5",children:"At minute"}),(0,r.jsx)("select",{value:i,onChange:e=>c(e.target.value),className:g,children:["00","05","10","15","20","25","30","35","40","45","50","55"].map(e=>(0,r.jsxs)("option",{value:e,children:[":",e]},e))})]}),"weekly"===s&&(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-[10px] font-semibold text-[var(--muted-foreground)] uppercase tracking-widest mb-1.5",children:"Repeat on"}),(0,r.jsx)("div",{className:"flex gap-1.5",children:S.map(e=>(0,r.jsx)("button",{type:"button",onClick:()=>{let r;return r=e.value,x(e=>e.includes(r)?e.filter(e=>e!==r):[...e,r])},className:`size-8 rounded-full flex items-center justify-center text-[10px] font-bold transition-all ${u.includes(e.value)?"bg-[var(--foreground)] text-[var(--background)]":"bg-[var(--muted)] text-[var(--muted-foreground)] hover:bg-[var(--card-border)]"}`,children:e.label[0]},e.value))})]}),"monthly"===s&&(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-[10px] font-semibold text-[var(--muted-foreground)] uppercase tracking-widest mb-1.5",children:"On day"}),(0,r.jsx)("div",{className:"grid grid-cols-7 gap-1",children:Array.from({length:31}).map((e,t)=>{let a=t+1;return(0,r.jsx)("button",{type:"button",onClick:()=>p(a),className:`size-7 rounded-lg flex items-center justify-center text-[10px] font-medium transition-all ${m===a?"bg-[var(--foreground)] text-[var(--background)]":"bg-[var(--muted)] text-[var(--muted-foreground)] hover:bg-[var(--card-border)]"}`,children:a},a)})})]}),(0,r.jsxs)("div",{className:"px-3 py-2 rounded-lg bg-[var(--muted)] border border-[var(--card-border)]",children:[(0,r.jsx)("div",{className:"text-[10px] text-[var(--muted-foreground)] mb-0.5",children:"Schedule"}),(0,r.jsx)("div",{className:"text-xs font-medium text-[var(--foreground)]",children:P(s,o,i,u,m)}),(0,r.jsx)("div",{className:"text-[10px] font-mono text-[var(--muted-foreground)] mt-0.5",children:$(s,o,i,u,m)})]})]})}let z=[{label:"1 min",ms:6e4},{label:"5 min",ms:3e5},{label:"15 min",ms:9e5},{label:"30 min",ms:18e5},{label:"1 hour",ms:36e5}];function T({children:e}){return(0,r.jsx)("label",{className:"block text-[10px] font-semibold text-[var(--muted-foreground)] uppercase tracking-widest mb-2",children:e})}function I(e,r,t=24){let a=r?r.replace("#",""):"e2e8f0";return`https://api.dicebear.com/9.x/bottts-neutral/svg?seed=${encodeURIComponent(e)}&size=${t}&backgroundColor=${a}`}function R({agents:e,value:a,onChange:s}){let[n,o]=(0,t.useState)(!1),d=e.find(e=>e.id===a);return(0,r.jsxs)("div",{className:"relative",children:[(0,r.jsx)(T,{children:"Agent"}),(0,r.jsxs)("button",{type:"button",onClick:()=>o(!n),className:"w-full flex items-center gap-2.5 px-3 py-2.5 rounded-lg border border-[var(--card-border)] bg-[var(--muted)] text-left transition-colors hover:border-[var(--muted-foreground)]",children:[d?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("img",{src:I(d.id,d.color),alt:"",className:"size-6 rounded-full shrink-0"}),(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsx)("div",{className:"text-xs font-medium text-[var(--foreground)] truncate",children:d.name}),(0,r.jsxs)("div",{className:"text-[10px] text-[var(--muted-foreground)]",children:[d.provider,d.model?` / ${d.model}`:""]})]})]}):(0,r.jsx)("span",{className:"text-xs text-[var(--muted-foreground)]",children:"Select an agent..."}),(0,r.jsx)(u.ChevronDown,{size:14,className:`ml-auto text-[var(--muted-foreground)] transition-transform ${n?"rotate-180":""}`})]}),n&&(0,r.jsx)("div",{className:"absolute z-20 mt-1 w-full rounded-lg border border-[var(--card-border)] bg-[var(--card-bg)] shadow-lg max-h-[280px] overflow-y-auto",children:e.map(e=>(0,r.jsxs)("button",{type:"button",onClick:()=>{s(e.id),o(!1)},className:`w-full flex items-center gap-2.5 px-3 py-2.5 text-left transition-colors hover:bg-[var(--muted)] ${a===e.id?"bg-[var(--muted)]":""}`,children:[(0,r.jsx)("img",{src:I(e.id,e.color),alt:"",className:"size-6 rounded-full shrink-0"}),(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsx)("div",{className:"text-xs font-medium text-[var(--foreground)] truncate",children:e.name}),(0,r.jsxs)("div",{className:"text-[10px] text-[var(--muted-foreground)]",children:[e.provider,e.model?` / ${e.model}`:""]})]}),a===e.id&&(0,r.jsx)("span",{className:"text-xs text-[var(--foreground)]",children:"✓"})]},e.id))})]})}function E({onClose:e,onSubmit:a,editingJob:s}){let[n,o]=(0,t.useState)([]),[l,i]=(0,t.useState)(s?.name??""),[c,p]=(0,t.useState)(s?.prompt??""),[h,f]=(0,t.useState)(s?.agentId??""),[b,g]=(0,t.useState)(s?.provider??"claude"),[y,N]=(0,t.useState)(s?.model??"");(0,t.useEffect)(()=>{fetch("/api/prompt-jobs/agents").then(e=>e.json()).then(e=>o(e.agents??[])).catch(()=>{})},[]);let[k,w]=(0,t.useState)(s?.cliArgs??""),[C,S]=(0,t.useState)(s?.cadence??""),[$,P]=(0,t.useState)(s?.cadence??""),[I,E]=(0,t.useState)(s?.triggerType??"scheduled"),[O,A]=(0,t.useState)(s?.condition??""),[_,D]=(0,t.useState)(s?.checkEveryMs??3e5),[F,U]=(0,t.useState)(s?.catchUpPolicy??"fire_once"),[L,J]=(0,t.useState)(!!s?.cliArgs||s?.catchUpPolicy!=null&&"fire_once"!==s.catchUpPolicy),[B,H]=(0,t.useState)(!1),W=async r=>{r.preventDefault(),!l.trim()||!c.trim()||"scheduled"===I&&!C.trim()||("condition"!==I||O.trim())&&(H(!0),await a({name:l.trim(),prompt:c.trim(),agentId:h,provider:b,model:y.trim(),cliArgs:k.trim(),catchUpPolicy:F,cadence:"scheduled"===I?C.trim():"",triggerType:I,condition:O.trim(),checkEveryMs:_}),H(!1),e())},q="w-full bg-[var(--muted)] border border-[var(--card-border)] rounded-lg px-3 py-2 text-sm text-[var(--foreground)] placeholder:text-[var(--muted-foreground)] focus:outline-none focus:border-[var(--foreground)] transition-colors";return(0,r.jsxs)("div",{className:"h-full flex flex-col text-[var(--foreground)]",children:[(0,r.jsxs)("div",{className:"h-14 shrink-0 border-b border-[var(--card-border)] flex items-center justify-between px-6",children:[(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)("button",{onClick:e,className:"p-1.5 rounded-md text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)] transition-colors",children:(0,r.jsx)(d.X,{size:18})}),(0,r.jsx)("h2",{className:"text-sm font-semibold",children:s?"Edit Prompt Job":"New Prompt Job"})]}),(0,r.jsx)("button",{onClick:W,disabled:B||!l.trim()||!c.trim(),className:"px-5 py-2 rounded-lg text-sm font-medium bg-[var(--foreground)] text-[var(--background)] hover:opacity-90 disabled:opacity-40 transition-opacity",children:B?"Saving...":s?"Save Changes":"Create Job"})]}),(0,r.jsxs)("div",{className:"flex flex-1 min-h-0 overflow-hidden",children:[(0,r.jsxs)("div",{className:"flex-1 border-r border-[var(--card-border)] flex flex-col min-w-0",children:[(0,r.jsx)("div",{className:"px-8 pt-8 pb-4",children:(0,r.jsx)("input",{type:"text",value:l,onChange:e=>i(e.target.value),placeholder:"Untitled job",className:"w-full text-2xl font-bold bg-transparent border-none outline-none placeholder:text-[var(--muted-foreground)]/40 text-[var(--foreground)]",autoFocus:!0})}),(0,r.jsxs)("div",{className:"flex-1 px-8 pb-8 overflow-y-auto",children:[(0,r.jsx)(T,{children:"Instructions"}),(0,r.jsx)("div",{className:"bg-[var(--card-bg)] border border-[var(--card-border)] rounded-xl overflow-hidden min-h-[300px]",children:(0,r.jsx)(j,{content:c,onChange:e=>p(e),placeholder:"Describe what this prompt should do..."})})]})]}),(0,r.jsxs)("div",{className:"w-[380px] shrink-0 overflow-y-auto p-6 space-y-6",children:[(0,r.jsx)(R,{agents:n,value:h,onChange:e=>{f(e);let r=n.find(r=>r.id===e);r?(g(r.provider),N(r.model??"")):(g("claude"),N(""))}}),(0,r.jsxs)("div",{children:[(0,r.jsx)(T,{children:"Trigger"}),(0,r.jsxs)("div",{className:"flex rounded-lg border border-[var(--card-border)] overflow-hidden",children:[(0,r.jsxs)("button",{type:"button",onClick:()=>E("scheduled"),className:`flex-1 py-2.5 text-xs font-medium flex items-center justify-center gap-1.5 transition-colors ${"scheduled"===I?"bg-[var(--foreground)] text-[var(--background)]":"bg-[var(--muted)] text-[var(--muted-foreground)] hover:text-[var(--foreground)]"}`,children:[(0,r.jsx)(v,{size:13})," Schedule"]}),(0,r.jsxs)("button",{type:"button",onClick:()=>E("condition"),className:`flex-1 py-2.5 text-xs font-medium flex items-center justify-center gap-1.5 transition-colors ${"condition"===I?"bg-[var(--foreground)] text-[var(--background)]":"bg-[var(--muted)] text-[var(--muted-foreground)] hover:text-[var(--foreground)]"}`,children:[(0,r.jsx)(m.Zap,{size:13})," Condition"]})]})]}),"scheduled"===I?(0,r.jsx)(M,{value:C,onChange:(e,r)=>{S(e),P(r)}}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{children:[(0,r.jsx)(T,{children:"Condition"}),(0,r.jsx)("textarea",{value:O,onChange:e=>A(e.target.value),placeholder:"there are unread emails in my inbox",rows:3,className:`${q} resize-none`}),(0,r.jsx)("p",{className:"text-[10px] text-[var(--muted-foreground)] mt-1.5",children:"The LLM evaluates this as a gate. If true, the prompt runs."})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)(T,{children:"Check frequency"}),(0,r.jsx)("div",{className:"flex flex-wrap gap-1.5",children:z.map(e=>{let t;return(0,r.jsx)("button",{type:"button",onClick:()=>D(e.ms),className:(t=_===e.ms,`px-3 py-1.5 rounded-lg text-xs font-medium border transition-all cursor-pointer ${t?"bg-[var(--foreground)] text-[var(--background)] border-[var(--foreground)]":"bg-[var(--muted)] text-[var(--muted-foreground)] border-[var(--card-border)] hover:border-[var(--muted-foreground)] hover:text-[var(--foreground)]"}`),children:e.label},e.ms)})})]})]}),(0,r.jsxs)("div",{children:[(0,r.jsxs)("button",{type:"button",onClick:()=>J(!L),className:"flex items-center gap-1.5 text-[11px] text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:[(0,r.jsx)(x.Settings2,{size:12})," ",L?"Hide":"Show"," advanced",(0,r.jsx)(u.ChevronDown,{size:12,className:`transition-transform ${L?"rotate-180":""}`})]}),L&&(0,r.jsxs)("div",{className:"mt-3 space-y-3 pt-3 border-t border-[var(--card-border)]",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)(T,{children:"CLI Arguments"}),(0,r.jsx)("input",{type:"text",value:k,onChange:e=>w(e.target.value),placeholder:"--dangerously-skip-permissions",className:q}),(0,r.jsx)("p",{className:"text-[10px] text-[var(--muted-foreground)] mt-1",children:"Extra flags passed to the CLI command."})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)(T,{children:"When missed"}),(0,r.jsx)("div",{className:"space-y-1.5",children:[{id:"fire_once",label:"Run once on recovery",desc:"Execute a single run regardless of how many were missed"},{id:"replay_all",label:"Run all missed",desc:"Queue one run per missed occurrence (use with caution)"},{id:"skip",label:"Skip and wait for next",desc:"Discard missed runs, wait for the next scheduled time"}].map(e=>(0,r.jsxs)("button",{type:"button",onClick:()=>U(e.id),className:`w-full text-left px-3 py-2 rounded-lg border transition-all ${F===e.id?"border-[var(--foreground)] bg-[var(--foreground)]/5":"border-[var(--card-border)] bg-[var(--muted)] hover:border-[var(--muted-foreground)]"}`,children:[(0,r.jsx)("div",{className:"text-xs font-medium text-[var(--foreground)]",children:e.label}),(0,r.jsx)("div",{className:"text-[10px] text-[var(--muted-foreground)]",children:e.desc})]},e.id))})]})]})]})]})]})]})}function O({job:e,agentMap:a,onBack:o,onEdit:d,onToggle:l,onDelete:c,onRunNow:u,onCancelRun:x,onUpdateAgent:m,fetchRuns:p}){let[v,h]=(0,t.useState)([]),[f,j]=(0,t.useState)(null),k=Object.values(a),S=e.agentId&&a[e.agentId]?a[e.agentId].name:null,$=(0,t.useCallback)(async()=>{let r=await p(e.id);h(r),r.length>0&&!f&&j(r[0].id)},[e.id,p,f]);(0,t.useEffect)(()=>{$()},[$]),(0,t.useEffect)(()=>{let e=setInterval($,5e3);return()=>clearInterval(e)},[$]);let P=v.find(e=>e.id===f)??null,M="running"===e.lastOutcome;return(0,r.jsxs)("div",{className:"h-full flex flex-col text-[var(--foreground)]",children:[(0,r.jsxs)("div",{className:"shrink-0 flex items-center gap-3 border-b border-[var(--card-border)] px-4 py-3.5 pt-4",children:[(0,r.jsxs)("button",{onClick:o,className:"inline-flex items-center gap-1.5 rounded-md border border-[var(--card-border)] px-2.5 py-1 text-[11px] text-[var(--muted-foreground)] transition-colors hover:bg-[var(--muted)] hover:text-[var(--foreground)]",children:[(0,r.jsx)(g.ArrowLeft,{size:12})," Back"]}),(0,r.jsx)("h2",{className:"text-[13px] font-semibold truncate",children:e.name}),(0,r.jsx)("span",{className:`inline-block size-2 shrink-0 rounded-full ${w[e.state]??"bg-zinc-500"}`})]}),(0,r.jsxs)("div",{className:"flex min-h-0 flex-1",children:[(0,r.jsx)("div",{className:"flex w-[260px] shrink-0 flex-col border-r border-[var(--card-border)] overflow-y-auto",children:(0,r.jsxs)("div",{className:"p-4 space-y-4",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsxs)("button",{onClick:u,disabled:M,className:"inline-flex items-center gap-1.5 rounded-md border border-[var(--card-border)] px-2.5 py-1 text-[10px] font-bold uppercase tracking-[0.05em] text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)] hover:border-[var(--foreground)] disabled:opacity-50",children:[(0,r.jsx)(s.Play,{size:11})," Run now"]}),(0,r.jsx)("button",{onClick:l,type:"button",role:"switch","aria-checked":"active"===e.state,title:"active"===e.state?"Pause":"Resume",className:`relative inline-flex h-[16px] w-[28px] shrink-0 cursor-pointer rounded-full border transition-colors ${"active"===e.state?"border-emerald-400/30 bg-emerald-500/40":"border-[var(--card-border)] bg-[var(--muted)]"}`,children:(0,r.jsx)("span",{className:`pointer-events-none absolute top-[2px] size-[10px] rounded-full bg-white/90 shadow-sm transition-transform ${"active"===e.state?"translate-x-[14px]":"translate-x-[2px]"}`})}),M&&(0,r.jsx)("button",{onClick:x,className:"inline-flex items-center gap-1.5 rounded-md border border-[var(--card-border)] px-2.5 py-1 text-[10px] font-bold uppercase tracking-[0.05em] text-[var(--muted-foreground)] hover:text-red-400 hover:border-red-400/30 transition-colors",children:"Cancel"}),(0,r.jsxs)("div",{className:"ml-auto flex items-center gap-1",children:[(0,r.jsx)("button",{onClick:d,title:"Edit",className:"p-1.5 rounded-md border border-[var(--card-border)] text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:border-[var(--foreground)] transition-colors",children:(0,r.jsx)(b.Pencil,{size:12})}),(0,r.jsx)("button",{onClick:c,title:"Delete",className:"p-1.5 rounded-md border border-[var(--card-border)] text-[var(--muted-foreground)] hover:text-red-400 hover:border-red-400/30 transition-colors",children:(0,r.jsx)(n.Trash2,{size:12})})]})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-[10px] font-bold uppercase tracking-[0.12em] text-[var(--muted-foreground)] mb-1.5",children:"Status"}),(0,r.jsx)("div",{className:`text-[12px] font-semibold ${"active"===e.state?"text-emerald-400":"paused"===e.state?"text-amber-400":"text-[var(--muted-foreground)]"}`,children:e.state.charAt(0).toUpperCase()+e.state.slice(1)})]}),(0,r.jsx)(R,{agents:k,value:e.agentId,onChange:m}),(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-[10px] font-bold uppercase tracking-[0.12em] text-[var(--muted-foreground)] mb-1.5",children:"Trigger"}),(0,r.jsx)("div",{className:"text-[12px] text-[var(--foreground)]",children:"condition"===e.triggerType?`Condition (every ${Math.round(e.checkEveryMs/6e4)}m)`:e.cadence||e.cronExpr})]}),e.condition&&(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-[10px] font-bold uppercase tracking-[0.12em] text-[var(--muted-foreground)] mb-1.5",children:"Condition"}),(0,r.jsx)("div",{className:"text-[12px] text-[var(--foreground)]",children:e.condition})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-[10px] font-bold uppercase tracking-[0.12em] text-[var(--muted-foreground)] mb-1.5",children:"Instructions"}),(0,r.jsx)("div",{className:"text-[11px] leading-[1.5] text-[var(--muted-foreground)] whitespace-pre-wrap break-words",children:e.prompt.length>200?e.prompt.slice(0,200)+"...":e.prompt})]}),(0,r.jsx)("div",{className:"space-y-1.5",children:[..."skip"!==e.overlapPolicy?[{l:"Overlap",v:e.overlapPolicy}]:[],...e.cliArgs?[{l:"CLI args",v:e.cliArgs}]:[],{l:"Next run",v:y(e.nextRunAt,e.state)},{l:"Last run",v:e.lastRunAt?N(new Date(e.lastRunAt).toISOString())+` (${e.lastOutcome??"—"})`:"Never"}].map(e=>(0,r.jsxs)("div",{className:"flex items-center justify-between rounded-md border border-[var(--card-border)] bg-[var(--muted)]/50 px-2.5 py-1.5 text-[11px]",children:[(0,r.jsx)("span",{className:"text-[var(--muted-foreground)]",children:e.l}),(0,r.jsx)("span",{className:"font-medium text-[var(--foreground)]",children:e.v})]},e.l))})]})}),(0,r.jsxs)("div",{className:"flex w-[240px] shrink-0 flex-col border-r border-[var(--card-border)] overflow-hidden",children:[(0,r.jsx)("div",{className:"border-b border-[var(--card-border)] px-3 py-2",children:(0,r.jsxs)("div",{className:"text-[10px] font-bold uppercase tracking-[0.12em] text-[var(--muted-foreground)]",children:["Run History"," ",(0,r.jsx)("span",{className:"text-[var(--muted-foreground)]/50",children:v.length})]})}),(0,r.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto",children:0===v.length?(0,r.jsx)("div",{className:"p-4 text-center text-[11px] text-[var(--muted-foreground)]",children:"No runs yet"}):(0,r.jsx)("div",{className:"flex flex-col",children:v.map(e=>{let t=f===e.id;return(0,r.jsxs)("button",{type:"button",onClick:()=>j(e.id),className:`flex items-start gap-2.5 px-3 py-2.5 text-left transition-colors border-l-2 ${t?"bg-[var(--foreground)]/5 border-l-[var(--foreground)]":"border-l-transparent hover:bg-[var(--muted)]/30"}`,children:[(0,r.jsx)("span",{className:`mt-1 inline-block size-2 shrink-0 rounded-full ${C[e.status]??"bg-zinc-500"}`}),(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsxs)("div",{className:"text-[11px] font-medium text-[var(--foreground)] truncate",children:["running"===e.status?"Running...":e.status.charAt(0).toUpperCase()+e.status.slice(1),null!=e.durationMs&&` \xb7 ${(e.durationMs/1e3).toFixed(1)}s`]}),(0,r.jsx)("div",{className:"mt-0.5 flex items-center gap-2 text-[10px] text-[var(--muted-foreground)]",children:(0,r.jsx)("span",{children:N(e.startedAt??e.createdAt)})})]})]},e.id)})})})]}),(0,r.jsx)("div",{className:"flex min-w-0 flex-1 flex-col overflow-hidden",children:P?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{className:"flex items-center justify-between border-b border-[var(--card-border)] px-4 py-2",children:(0,r.jsxs)("div",{className:"min-w-0",children:[(0,r.jsxs)("div",{className:"text-[12px] font-semibold text-[var(--foreground)] truncate",children:["Run ",P.id.slice(0,8)]}),(0,r.jsxs)("div",{className:"text-[10px] text-[var(--muted-foreground)]",children:[P.status," ",null!=P.durationMs&&`\xb7 ${(P.durationMs/1e3).toFixed(1)}s`]})]})}),(0,r.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto px-4 py-3",children:P.output?(0,r.jsxs)("div",{className:"space-y-3",children:[(0,r.jsxs)("div",{className:"flex gap-2.5",children:[(0,r.jsx)("div",{className:"shrink-0 mt-0.5",children:e.agentId&&a[e.agentId]?(0,r.jsx)("img",{src:I(e.agentId,a[e.agentId].color,28),alt:"",className:"size-7 rounded-full"}):(0,r.jsx)("div",{className:"flex size-7 items-center justify-center rounded-full bg-[var(--muted)] text-[10px] text-[var(--muted-foreground)]",children:(0,r.jsx)(i.Terminal,{size:12})})}),(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsx)("div",{className:"mb-1",children:(0,r.jsx)("span",{className:"text-[11px] font-semibold text-[var(--foreground)]",children:S??e.provider})}),(0,r.jsx)("div",{className:"rounded-lg px-3 py-2 text-[12px] leading-[1.55] bg-[var(--muted)] text-[var(--foreground)]",children:(0,r.jsx)("div",{className:"whitespace-pre-wrap break-words",children:P.output})})]})]}),P.error&&(0,r.jsxs)("div",{className:"flex gap-2.5",children:[(0,r.jsx)("div",{className:"shrink-0 mt-0.5",children:(0,r.jsx)("div",{className:"flex size-7 items-center justify-center rounded-full bg-red-500/10 text-[10px] text-red-400",children:"!"})}),(0,r.jsx)("div",{className:"min-w-0 flex-1",children:(0,r.jsx)("div",{className:"rounded-lg px-3 py-2 text-[12px] leading-[1.55] bg-red-500/10 text-red-400",children:(0,r.jsx)("div",{className:"whitespace-pre-wrap break-words",children:P.error})})})]})]}):(0,r.jsx)("div",{className:"text-center py-12 text-[var(--muted-foreground)] text-sm",children:"queued"===P.status?"Waiting to start...":"running"===P.status?"Running...":"No output captured"})})]}):(0,r.jsx)("div",{className:"flex-1 flex items-center justify-center text-[var(--muted-foreground)] text-sm",children:0===v.length?'No runs yet. Click "Run now" to trigger one.':"Select a run to view its output"})})]})]})}function A({projectId:e}={}){let{jobs:a,loading:d,refresh:u,createJob:x,updateJob:m,deleteJob:p,toggleJob:v,runNow:h,cancelRun:f,fetchRuns:g}=function(e){let[r,a]=(0,t.useState)([]),[s,n]=(0,t.useState)(!0),[o,d]=(0,t.useState)(null),l=(0,t.useRef)(!1),i=(0,t.useCallback)(async()=>{try{l.current||n(!0);let r=e?`?projectId=${encodeURIComponent(e)}`:"",t=await fetch(`/api/prompt-jobs${r}`);if(!t.ok)throw Error(`Failed to fetch: ${t.status}`);let s=await t.json();a(s.jobs??[]),d(null)}catch(e){d(e instanceof Error?e.message:String(e))}finally{n(!1),l.current=!0}},[e]);(0,t.useEffect)(()=>{l.current=!1,i();let e=setInterval(i,1e4);return()=>clearInterval(e)},[i]);let c=(0,t.useCallback)(async e=>{let r=await fetch("/api/prompt-jobs",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});return r.ok&&await i(),r.ok},[i]),u=(0,t.useCallback)(async(e,r)=>{let t=await fetch(`/api/prompt-jobs/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)});return t.ok&&await i(),t.ok},[i]),x=(0,t.useCallback)(async e=>{let r=await fetch(`/api/prompt-jobs/${e}`,{method:"DELETE"});return r.ok&&await i(),r.ok},[i]),m=(0,t.useCallback)(async e=>{let r="active"===e.state?"paused":"active",t=await fetch(`/api/prompt-jobs/${e.id}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({state:r})});return t.ok&&await i(),t.ok},[i]),p=(0,t.useCallback)(async e=>{let r=await fetch("/api/prompt-jobs/poll",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({jobId:e})});return r.ok&&await i(),r.ok},[i]),v=(0,t.useCallback)(async e=>{let r=await fetch(`/api/prompt-jobs/${e}/cancel`,{method:"POST"});return r.ok&&await i(),r.ok},[i]);return{jobs:r,loading:s,error:o,refresh:i,createJob:c,updateJob:u,deleteJob:x,toggleJob:m,runNow:p,cancelRun:v,fetchRuns:(0,t.useCallback)(async e=>{let r=await fetch(`/api/prompt-jobs/${e}/runs`);return r.ok?(await r.json()).runs??[]:[]},[])}}(e),[j,N]=(0,t.useState)("all"),[w,C]=(0,t.useState)(null),[S,$]=(0,t.useState)(!1),[P,M]=(0,t.useState)(null),[z,T]=(0,t.useState)({}),[R,_]=(0,t.useState)(null),[D,F]=(0,t.useState)({});(0,t.useEffect)(()=>{fetch("/api/prompt-jobs/agents").then(e=>e.json()).then(e=>{let r={};for(let t of e.agents??[])r[t.id]=t;F(r)}).catch(()=>{})},[]);let U=e=>{_(e),setTimeout(()=>_(null),2500)},L=a.filter(e=>"all"===j||e.state===j),J=a.find(e=>e.id===w)??null,B={all:a.length,active:a.filter(e=>"active"===e.state).length,paused:a.filter(e=>"paused"===e.state).length,stopped:a.filter(e=>"stopped"===e.state).length},H=async e=>{await v(e)&&U(`${e.name} ${"active"===e.state?"paused":"resumed"}`)},W=async(e,r)=>{if(r?.stopPropagation(),z[e])return;T(r=>({...r,[e]:!0}));let t=await h(e);T(r=>{let t={...r};return delete t[e],t}),t&&U("Run triggered")},q=async e=>{await p(e)&&(w===e&&C(null),U("Job deleted"))},G=async e=>{await f(e)&&U("Run cancelled")},K=async r=>{P?await m(P.id,r)&&U(`Job "${r.name}" updated`):await x({...r,projectId:e??""})&&U(`Job "${r.name}" created`)},Q=R&&(0,r.jsx)("div",{className:"fixed bottom-8 left-1/2 -translate-x-1/2 z-50 animate-in fade-in slide-in-from-bottom-2 duration-200",children:(0,r.jsx)("div",{className:"bg-[var(--card-bg)] border border-[var(--card-border)] px-4 py-2.5 rounded-xl shadow-lg flex items-center gap-2.5 text-sm font-medium",children:R})});return S?(0,r.jsxs)(r.Fragment,{children:[Q,(0,r.jsx)(E,{onClose:()=>{$(!1),M(null)},onSubmit:K,editingJob:P})]}):J?(0,r.jsxs)(r.Fragment,{children:[Q,(0,r.jsx)(O,{job:J,agentMap:D,onBack:()=>C(null),onEdit:()=>{M(J),$(!0)},onToggle:()=>H(J),onDelete:()=>q(J.id),onRunNow:()=>W(J.id),onCancelRun:()=>G(J.id),onUpdateAgent:async e=>{let r=D[e];await m(J.id,{agentId:e,provider:r?.provider??"claude",model:r?.model??""})},fetchRuns:g})]}):(0,r.jsxs)("div",{className:"h-full flex flex-col text-[var(--foreground)]",children:[Q,(0,r.jsxs)("div",{className:"px-6 md:px-10 pt-6 pb-0",children:[(0,r.jsxs)("div",{className:"flex flex-col sm:flex-row justify-between items-start sm:items-end gap-4 mb-6",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("h1",{className:"text-2xl font-bold tracking-tight mb-1",children:"Scheduled Tasks"}),(0,r.jsxs)("p",{className:"text-sm text-[var(--muted-foreground)]",children:[B.active," active job",1!==B.active?"s":""," ","· ",a.length," total"]})]}),(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)("button",{onClick:()=>u(),className:"p-2 rounded-lg border border-[var(--card-border)] text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:border-[var(--foreground)] transition-colors",children:(0,r.jsx)(c.RefreshCw,{size:16})}),(0,r.jsxs)("button",{onClick:()=>{M(null),$(!0)},className:"bg-[var(--foreground)] text-[var(--background)] px-4 py-2 rounded-lg text-sm font-medium flex items-center gap-2 hover:opacity-90 transition-opacity",children:[(0,r.jsx)(o.Plus,{size:16})," New Job"]})]})]}),(0,r.jsx)("div",{className:"flex gap-4 border-b border-[var(--card-border)] pb-3",children:["all","active","paused","stopped"].map(e=>(0,r.jsxs)("button",{onClick:()=>N(e),className:`text-xs font-medium pb-1 transition-colors border-b-2 capitalize ${j===e?"border-[var(--foreground)] text-[var(--foreground)]":"border-transparent text-[var(--muted-foreground)] hover:text-[var(--foreground)]"}`,children:[e,(0,r.jsx)("span",{className:"ml-1.5 text-[10px] text-[var(--muted-foreground)] font-mono",children:B[e]})]},e))})]}),(0,r.jsx)("div",{className:"flex-1 min-h-0 px-6 md:px-10 py-6 overflow-y-auto",children:d&&0===a.length?(0,r.jsx)("div",{className:"text-center py-12 text-[var(--muted-foreground)] text-sm",children:"Loading jobs..."}):(0,r.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-3",children:[L.map(e=>{let t=z[e.id];return(0,r.jsxs)("div",{onClick:()=>C(e.id),className:"p-5 rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] hover:border-[var(--muted-foreground)] transition-all cursor-pointer",children:[(0,r.jsxs)("div",{className:"flex justify-between items-start gap-3 mb-3",children:[(0,r.jsxs)("div",{className:"min-w-0",children:[(0,r.jsx)("h3",{className:"text-sm font-semibold truncate mb-1",children:e.name}),(0,r.jsx)(k,{state:e.state})]}),(0,r.jsxs)("div",{className:"flex items-center gap-1.5 shrink-0",onClick:e=>e.stopPropagation(),children:[(0,r.jsx)("button",{onClick:r=>{r.stopPropagation(),H(e)},type:"button",role:"switch","aria-checked":"active"===e.state,title:"active"===e.state?"Pause":"Resume",className:`relative inline-flex h-[14px] w-[24px] shrink-0 cursor-pointer rounded-full border transition-colors ${"active"===e.state?"border-emerald-400/30 bg-emerald-500/40":"border-[var(--card-border)] bg-[var(--muted)]"}`,children:(0,r.jsx)("span",{className:`pointer-events-none absolute top-[1.5px] size-[9px] rounded-full bg-white/90 shadow-sm transition-transform ${"active"===e.state?"translate-x-[11px]":"translate-x-[1.5px]"}`})}),(0,r.jsx)("button",{onClick:r=>{r.stopPropagation(),M(e),$(!0)},title:"Edit",className:"p-1.5 rounded-md border border-[var(--card-border)] text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:border-[var(--muted-foreground)] transition-colors",children:(0,r.jsx)(b.Pencil,{size:12})}),(0,r.jsx)("button",{onClick:r=>W(e.id,r),disabled:t,title:"Run now",className:`p-1.5 rounded-md border text-[var(--muted-foreground)] transition-colors ${t?"border-[var(--card-border)] opacity-50 cursor-wait":"border-[var(--card-border)] hover:text-[var(--foreground)] hover:border-[var(--muted-foreground)]"}`,children:(0,r.jsx)(s.Play,{size:12,className:t?"animate-pulse":"fill-current"})}),(0,r.jsx)("button",{onClick:r=>{r.stopPropagation(),q(e.id)},title:"Delete",className:"p-1.5 rounded-md border border-[var(--card-border)] text-[var(--muted-foreground)] hover:text-red-500 hover:border-red-500/30 transition-colors",children:(0,r.jsx)(n.Trash2,{size:12})})]})]}),(0,r.jsx)("p",{className:"text-[12px] text-[var(--muted-foreground)] leading-relaxed line-clamp-2 mb-3",children:e.prompt}),(0,r.jsxs)("div",{className:"pt-3 border-t border-[var(--card-border)]/50 flex items-center gap-4 text-[11px] text-[var(--muted-foreground)]",children:[(0,r.jsx)("span",{className:"flex items-center gap-1",children:e.agentId&&D[e.agentId]?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("img",{src:I(e.agentId,D[e.agentId].color,16),alt:"",className:"size-4 rounded-full"}),D[e.agentId].name]}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(i.Terminal,{size:11}),e.provider]})}),"condition"===e.triggerType&&(0,r.jsx)("span",{className:"text-[10px] px-1.5 py-0.5 rounded bg-purple-500/10 text-purple-400 border border-purple-400/20",children:"condition"}),(0,r.jsxs)("span",{className:"flex items-center gap-1",children:[(0,r.jsx)(l.Clock,{size:11}),y(e.nextRunAt,e.state)]}),(0,r.jsx)("span",{className:"ml-auto font-mono truncate max-w-[120px]",title:e.cadence||e.cronExpr,children:"condition"===e.triggerType?`every ${Math.round(e.checkEveryMs/6e4)}m`:e.cadence||e.cronExpr})]})]},e.id)}),0===L.length&&(0,r.jsx)("div",{className:"md:col-span-2 xl:col-span-3 text-center py-12 text-[var(--muted-foreground)] text-sm border border-dashed border-[var(--card-border)] rounded-xl",children:0===a.length?"No prompt jobs yet. Create one to get started.":"No jobs match the selected filter."})]})})]})}e.s(["default",()=>A],40212)}]);