@mndrk/agx 2.4.5 → 2.4.7

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 (360) hide show
  1. package/cloud-runtime/standalone/apps/local/.next/BUILD_ID +1 -1
  2. package/cloud-runtime/standalone/apps/local/.next/app-path-routes-manifest.json +4 -0
  3. package/cloud-runtime/standalone/apps/local/.next/build-manifest.json +2 -2
  4. package/cloud-runtime/standalone/apps/local/.next/prerender-manifest.json +3 -3
  5. package/cloud-runtime/standalone/apps/local/.next/routes-manifest.json +33 -0
  6. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.html +2 -2
  7. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.rsc +1 -1
  8. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  9. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  10. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  11. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  12. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  13. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  14. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.html +2 -2
  15. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.rsc +2 -2
  16. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  17. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  18. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  19. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  20. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  21. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  22. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js.nft.json +1 -1
  23. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
  24. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js.nft.json +1 -1
  25. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  26. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.html +2 -2
  27. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.rsc +3 -3
  28. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_full.segment.rsc +3 -3
  29. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  30. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_index.segment.rsc +2 -2
  31. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
  32. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +2 -2
  33. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents.segment.rsc +1 -1
  34. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
  35. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
  36. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/export/route.js.nft.json +1 -1
  37. package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat/route.js.nft.json +1 -1
  38. package/cloud-runtime/standalone/apps/local/.next/server/app/api/file-search/route.js.nft.json +1 -1
  39. package/cloud-runtime/standalone/apps/local/.next/server/app/api/participants/route.js.nft.json +1 -1
  40. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js +1 -1
  41. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js.nft.json +1 -1
  42. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/[noteId]/route.js.nft.json +1 -1
  43. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/route.js.nft.json +1 -1
  44. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route/app-paths-manifest.json +3 -0
  45. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route/build-manifest.json +11 -0
  46. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route/server-reference-manifest.json +4 -0
  47. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route.js +13 -0
  48. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route.js.map +5 -0
  49. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route.js.nft.json +1 -0
  50. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route_client-reference-manifest.js +2 -0
  51. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/route.js.nft.json +1 -1
  52. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.js.nft.json +1 -1
  53. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/validate/route.js.nft.json +1 -1
  54. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js.nft.json +1 -1
  55. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
  56. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/search/route.js.nft.json +1 -1
  57. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/route.js.nft.json +1 -1
  58. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route/app-paths-manifest.json +3 -0
  59. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route/build-manifest.json +11 -0
  60. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route/server-reference-manifest.json +4 -0
  61. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route.js +11 -0
  62. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route.js.map +5 -0
  63. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route.js.nft.json +1 -0
  64. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route_client-reference-manifest.js +2 -0
  65. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route/app-paths-manifest.json +3 -0
  66. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route/build-manifest.json +11 -0
  67. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route/server-reference-manifest.json +4 -0
  68. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route.js +11 -0
  69. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route.js.map +5 -0
  70. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route.js.nft.json +1 -0
  71. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route_client-reference-manifest.js +2 -0
  72. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/route.js.nft.json +1 -1
  73. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/poll/route.js.nft.json +1 -1
  74. package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/check/[id]/route.js.nft.json +1 -1
  75. package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/route.js.nft.json +1 -1
  76. package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/route.js.nft.json +1 -1
  77. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
  78. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
  79. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/assign/route.js.nft.json +1 -1
  80. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/available/route.js.nft.json +1 -1
  81. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
  82. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/history/route.js.nft.json +1 -1
  83. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/learn/route.js.nft.json +1 -1
  84. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/route.js.nft.json +1 -1
  85. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/unlearn/route.js.nft.json +1 -1
  86. package/cloud-runtime/standalone/apps/local/.next/server/app/api/status/route.js.nft.json +1 -1
  87. package/cloud-runtime/standalone/apps/local/.next/server/app/api/summarize/route.js.nft.json +1 -1
  88. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
  89. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
  90. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
  91. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
  92. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/route.js.nft.json +1 -1
  93. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -1
  94. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/route.js.nft.json +1 -1
  95. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/recap/route.js.nft.json +1 -1
  96. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/scripted/route.js.nft.json +1 -1
  97. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/status/route.js.nft.json +1 -1
  98. package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route.js.nft.json +1 -1
  99. package/cloud-runtime/standalone/apps/local/.next/server/app/index.html +2 -2
  100. package/cloud-runtime/standalone/apps/local/.next/server/app/index.rsc +3 -3
  101. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  102. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_full.segment.rsc +3 -3
  103. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_head.segment.rsc +1 -1
  104. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_index.segment.rsc +2 -2
  105. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  106. package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos/page_client-reference-manifest.js +1 -1
  107. package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.html +2 -2
  108. package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.rsc +2 -2
  109. package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_full.segment.rsc +2 -2
  110. package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_head.segment.rsc +1 -1
  111. package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_index.segment.rsc +2 -2
  112. package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_tree.segment.rsc +2 -2
  113. package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations/github/select-repos/__PAGE__.segment.rsc +1 -1
  114. package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations/github/select-repos.segment.rsc +1 -1
  115. package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations/github.segment.rsc +1 -1
  116. package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations.segment.rsc +1 -1
  117. package/cloud-runtime/standalone/apps/local/.next/server/app/page_client-reference-manifest.js +1 -1
  118. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js.nft.json +1 -1
  119. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page_client-reference-manifest.js +1 -1
  120. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js.nft.json +1 -1
  121. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page_client-reference-manifest.js +1 -1
  122. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js.nft.json +1 -1
  123. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page_client-reference-manifest.js +1 -1
  124. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
  125. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
  126. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/notifications/page.js.nft.json +1 -1
  127. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/notifications/page_client-reference-manifest.js +1 -1
  128. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js.nft.json +1 -1
  129. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page_client-reference-manifest.js +1 -1
  130. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js.nft.json +1 -1
  131. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page_client-reference-manifest.js +1 -1
  132. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
  133. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  134. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/page.js.nft.json +1 -1
  135. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/page_client-reference-manifest.js +1 -1
  136. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js.nft.json +1 -1
  137. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page_client-reference-manifest.js +1 -1
  138. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js.nft.json +1 -1
  139. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page_client-reference-manifest.js +1 -1
  140. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js.nft.json +1 -1
  141. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page_client-reference-manifest.js +1 -1
  142. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js.nft.json +1 -1
  143. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page_client-reference-manifest.js +1 -1
  144. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js.nft.json +1 -1
  145. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page_client-reference-manifest.js +1 -1
  146. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js.nft.json +1 -1
  147. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page_client-reference-manifest.js +1 -1
  148. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js.nft.json +1 -1
  149. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page_client-reference-manifest.js +1 -1
  150. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -1
  151. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +1 -1
  152. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/app-paths-manifest.json +3 -0
  153. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/build-manifest.json +18 -0
  154. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/next-font-manifest.json +11 -0
  155. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/react-loadable-manifest.json +1 -0
  156. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/server-reference-manifest.json +4 -0
  157. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page.js +16 -0
  158. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page.js.map +5 -0
  159. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page.js.nft.json +1 -0
  160. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page_client-reference-manifest.js +2 -0
  161. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page.js.nft.json +1 -1
  162. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page_client-reference-manifest.js +1 -1
  163. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page.js.nft.json +1 -1
  164. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page_client-reference-manifest.js +1 -1
  165. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page.js.nft.json +1 -1
  166. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page_client-reference-manifest.js +1 -1
  167. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page.js.nft.json +1 -1
  168. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  169. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.html +2 -2
  170. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.rsc +3 -3
  171. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_full.segment.rsc +3 -3
  172. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_head.segment.rsc +1 -1
  173. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_index.segment.rsc +2 -2
  174. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
  175. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +2 -2
  176. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects.segment.rsc +1 -1
  177. package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page.js.nft.json +1 -1
  178. package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  179. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.html +2 -2
  180. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.rsc +3 -3
  181. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_full.segment.rsc +3 -3
  182. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_head.segment.rsc +1 -1
  183. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_index.segment.rsc +2 -2
  184. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
  185. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +2 -2
  186. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup.segment.rsc +1 -1
  187. package/cloud-runtime/standalone/apps/local/.next/server/app/status/page_client-reference-manifest.js +1 -1
  188. package/cloud-runtime/standalone/apps/local/.next/server/app/status.html +2 -2
  189. package/cloud-runtime/standalone/apps/local/.next/server/app/status.rsc +2 -2
  190. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_full.segment.rsc +2 -2
  191. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_head.segment.rsc +1 -1
  192. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_index.segment.rsc +2 -2
  193. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_tree.segment.rsc +2 -2
  194. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status/__PAGE__.segment.rsc +1 -1
  195. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status.segment.rsc +1 -1
  196. package/cloud-runtime/standalone/apps/local/.next/server/app-paths-manifest.json +4 -0
  197. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_projects_[id]_workspace_export_route_actions_e161f108.js +3 -0
  198. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_projects_[id]_workspace_import_route_actions_10d2bce2.js +3 -0
  199. package/cloud-runtime/standalone/apps/local/.next/server/chunks/7255d_app_api_projects_[id]_objectives_[objectiveId]_program_route_actions_e6cdbc76.js +3 -0
  200. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__1563ebff._.js +2 -2
  201. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__3fdd57cb._.js +1 -1
  202. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__45af4365._.js +1 -1
  203. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__683b7ad7._.js +1 -1
  204. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__736d5859._.js +1 -1
  205. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__96b5ea56._.js +3 -0
  206. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__ba72d342._.js +5 -5
  207. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__c3188470._.js +1 -1
  208. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__eb69343e._.js +3 -0
  209. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_1d99e7a5._.js +1 -1
  210. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_4d88e4dc._.js +91 -0
  211. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_4dec65a2._.js +1 -1
  212. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_50e3a6e3._.js +1 -1
  213. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_56a2544c._.js +1 -1
  214. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_5843a1a1._.js +1 -1
  215. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_a15e73a6._.js +1 -1
  216. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_bd72806a._.js +1 -1
  217. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_c101ba9e._.js +1 -1
  218. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_c530bd77._.js +11 -0
  219. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_d69937f2._.js +91 -0
  220. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_e2867b32._.js +3 -0
  221. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_e32b0cab._.js +91 -0
  222. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_5ab8f104._.js +1 -1
  223. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_db_ts_77c23d6c._.js +1 -1
  224. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0da96_local__next-internal_server_app_projects_[slug]_thread_page_actions_3ceeb59b.js +3 -0
  225. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__1e0fd816._.js +3 -0
  226. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__42499ecf._.js +3 -0
  227. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__5f31e40b._.js +3 -0
  228. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__636799fb._.js +3 -0
  229. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__4bf7d5b9._.js → [root-of-the-server]__74436f61._.js} +2 -2
  230. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__9434d6d7._.js +3 -0
  231. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__bd339da0._.js +3 -0
  232. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__d08d7899._.js +3 -0
  233. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__e02a457c._.js +3 -0
  234. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__e3a1fef0._.js +3 -0
  235. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__f802e7d1._.js +3 -0
  236. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__ff96bb77._.js +3 -0
  237. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_6a2ba8f0._.js +3 -0
  238. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_7cb6b08a._.js +3 -0
  239. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_a0f42923._.js +7 -0
  240. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_a93c1059._.js +3 -0
  241. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{apps_local_components_PromptJobBoard_tsx_281b2873._.js → apps_local_04cb9fd5._.js} +3 -3
  242. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_15502af8._.js +3 -0
  243. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_16eaf7ae._.js +3 -0
  244. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_3c11c068._.js +8 -0
  245. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_89b49aad._.js +7 -0
  246. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_988d29c0._.js +1 -1
  247. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_ae1a134f._.js +7 -0
  248. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_agents_page_tsx_2a02508d._.js +1 -1
  249. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_folders_page_tsx_72fb68e5._.js +1 -1
  250. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_layout_tsx_3bb31889._.js +1 -1
  251. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_page_tsx_76330306._.js +1 -1
  252. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_teams_[teamId]_page_tsx_6dcfdd52._.js +1 -1
  253. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_b8e580cc._.js +4 -0
  254. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_TrackerBoard_tsx_98970bab._.js +2 -2
  255. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{apps_local_app_projects_[slug]_thread_[threadId]_page_tsx_2a1d1d5e._.js → apps_local_components_chat-ui_ChatContainer_tsx_47371955._.js} +2 -2
  256. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_projects_ProjectObjectivesWorkspace_tsx_751ab3d3._.js +3 -3
  257. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_eb223411._.js +18 -0
  258. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{apps_local_7d1abfbf._.js → apps_local_f1c9872a._.js} +2 -2
  259. package/cloud-runtime/standalone/apps/local/.next/server/functions-config-manifest.json +3 -0
  260. package/cloud-runtime/standalone/apps/local/.next/server/middleware-manifest.json +5 -5
  261. package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.js +1 -1
  262. package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.json +4 -0
  263. package/cloud-runtime/standalone/apps/local/.next/server/pages/404.html +2 -2
  264. package/cloud-runtime/standalone/apps/local/.next/server/pages/500.html +2 -2
  265. package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.js +1 -1
  266. package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.json +1 -1
  267. package/cloud-runtime/standalone/apps/local/.next/static/chunks/08e75b35d6c52269.js +1 -0
  268. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0d22a723b9b96e65.js +1 -0
  269. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{cb19d71dd7ffb935.js → 1585dd5f9ec4866a.js} +1 -1
  270. package/cloud-runtime/standalone/apps/local/.next/static/chunks/1bc8cc9cbb99c1ed.js +1 -0
  271. package/cloud-runtime/standalone/apps/local/.next/static/chunks/2586c0baa16e9a0d.js +16 -0
  272. package/cloud-runtime/standalone/apps/local/.next/static/chunks/2aa24a251622fd06.js +5 -0
  273. package/cloud-runtime/standalone/apps/local/.next/static/chunks/39513207112d6828.js +1 -0
  274. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{74e3a3e93be78db8.js → 40857295bb9226c4.js} +7 -7
  275. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{8b5d6f5bade8c4ea.js → 41ae15220fc19bf7.js} +2 -2
  276. package/cloud-runtime/standalone/apps/local/.next/static/chunks/5092f14c2bf43204.js +16 -0
  277. package/cloud-runtime/standalone/apps/local/.next/static/chunks/5159169343ce6d2f.css +1 -0
  278. package/cloud-runtime/standalone/apps/local/.next/static/chunks/67b36c70b72e0e10.js +1 -0
  279. package/cloud-runtime/standalone/apps/local/.next/static/chunks/7bfbfcd072f8d61e.js +20 -0
  280. package/cloud-runtime/standalone/apps/local/.next/static/chunks/7cf26dd04166f32f.js +6 -0
  281. package/cloud-runtime/standalone/apps/local/.next/static/chunks/90dcb743d23feeca.js +16 -0
  282. package/cloud-runtime/standalone/apps/local/.next/static/chunks/93749b45e2700808.js +16 -0
  283. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{48feca51cf97c8a7.js → 9bb8f1406365af81.js} +1 -1
  284. package/cloud-runtime/standalone/apps/local/.next/static/chunks/b4aa71020acae46f.js +16 -0
  285. package/cloud-runtime/standalone/apps/local/.next/static/chunks/c352706a0ad7e35d.js +1 -0
  286. package/cloud-runtime/standalone/apps/local/.next/static/chunks/c5436b2b7e8f0ca9.js +16 -0
  287. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{1600dd6ff8607d8f.js → c9a2c4b55bb76f4f.js} +6 -6
  288. package/cloud-runtime/standalone/apps/local/.next/static/chunks/d6a9cc66254693b8.js +1 -0
  289. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{9e703dd5d95e9557.js → e3bdd1e0f385114e.js} +1 -1
  290. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{93b2b6aa0c9593f6.js → e6d4118b7c32d11c.js} +1 -1
  291. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{6ffcd12eabd7c65e.js → f71d73895d228547.js} +1 -1
  292. package/cloud-runtime/standalone/apps/local/.next/static/chunks/f750d2f1882d31a8.js +5 -0
  293. package/cloud-runtime/standalone/apps/local/app/api/automations/route.ts +2 -10
  294. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/objectives/[objectiveId]/program/route.ts +77 -0
  295. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/workspace/export/route.ts +35 -0
  296. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/workspace/import/route.ts +91 -0
  297. package/cloud-runtime/standalone/apps/local/app/api/prompt-jobs/route.ts +1 -8
  298. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/layout.tsx +1 -1
  299. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/teams/[teamId]/page.tsx +58 -2
  300. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/thread/page.tsx +14 -0
  301. package/cloud-runtime/standalone/apps/local/components/AutomationsBoard.tsx +15 -15
  302. package/cloud-runtime/standalone/apps/local/components/PromptJobBoard.tsx +80 -45
  303. package/cloud-runtime/standalone/apps/local/components/projects/FoldersSummaryCard.tsx +51 -196
  304. package/cloud-runtime/standalone/apps/local/components/projects/FoldersView.tsx +662 -784
  305. package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveScheduledTasksPanel.tsx +85 -249
  306. package/cloud-runtime/standalone/apps/local/components/projects/ProjectHome.tsx +4 -4
  307. package/cloud-runtime/standalone/apps/local/components/projects/ProjectObjectivesWorkspace.tsx +118 -0
  308. package/cloud-runtime/standalone/apps/local/components/projects/ProjectSettings.tsx +81 -7
  309. package/cloud-runtime/standalone/apps/local/components/thread/WorkspaceSidebar.tsx +15 -5
  310. package/cloud-runtime/standalone/apps/local/hooks/useProjectWorkspace.ts +117 -0
  311. package/cloud-runtime/standalone/apps/local/lib/db/projects.ts +14 -10
  312. package/cloud-runtime/standalone/apps/local/lib/project-workspace.ts +80 -0
  313. package/cloud-runtime/standalone/apps/local/lib/task-context.ts +39 -4
  314. package/cloud-runtime/standalone/apps/local/lib/workspace-yaml.ts +164 -0
  315. package/cloud-runtime/standalone/apps/local/src/objectives/program/index.ts +7 -0
  316. package/cloud-runtime/standalone/apps/local/src/objectives/program/repository.ts +60 -0
  317. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/objective-worker.ts +12 -0
  318. package/cloud-runtime/standalone/apps/local/src/scheduling/status.ts +42 -0
  319. package/cloud-runtime/standalone/apps/local/worker/index.js +15 -10
  320. package/lib/commands/workspace.js +145 -7
  321. package/package.json +1 -1
  322. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_09d85861._.js +0 -91
  323. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_25136564._.js +0 -11
  324. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_2caf4398._.js +0 -91
  325. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_31ca7a35._.js +0 -91
  326. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/9fb8c_lucide-react_dist_esm_icons_8c8ee1bc._.js +0 -3
  327. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__3b4708d5._.js +0 -3
  328. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__49cbf624._.js +0 -3
  329. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__49cdd178._.js +0 -3
  330. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__55ed4ff9._.js +0 -3
  331. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__7a31a76d._.js +0 -3
  332. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__7e3c2ea1._.js +0 -7
  333. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__bb42490f._.js +0 -3
  334. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__dbda910b._.js +0 -7
  335. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__ee9351f9._.js +0 -3
  336. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_347d036d._.js +0 -7
  337. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_917d90b4._.js +0 -3
  338. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_f99c22fd._.js +0 -3
  339. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_3b90cb76._.js +0 -18
  340. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_9f36c765._.js +0 -3
  341. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_a2835b49._.js +0 -3
  342. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_8cc1a335._.js +0 -3
  343. package/cloud-runtime/standalone/apps/local/.next/static/chunks/1d8b2726979134e5.js +0 -16
  344. package/cloud-runtime/standalone/apps/local/.next/static/chunks/55a31773f8c2833f.js +0 -20
  345. package/cloud-runtime/standalone/apps/local/.next/static/chunks/6952b44e247d594a.js +0 -16
  346. package/cloud-runtime/standalone/apps/local/.next/static/chunks/6bfdc40a24e65ca2.js +0 -1
  347. package/cloud-runtime/standalone/apps/local/.next/static/chunks/7c8515a24aeea102.js +0 -1
  348. package/cloud-runtime/standalone/apps/local/.next/static/chunks/7ff071e8a33d2fd8.js +0 -16
  349. package/cloud-runtime/standalone/apps/local/.next/static/chunks/80446e085a3aad56.css +0 -1
  350. package/cloud-runtime/standalone/apps/local/.next/static/chunks/87e4fb11329a358d.js +0 -1
  351. package/cloud-runtime/standalone/apps/local/.next/static/chunks/941f7f3626ec442c.js +0 -16
  352. package/cloud-runtime/standalone/apps/local/.next/static/chunks/94a66d2d19268d25.js +0 -5
  353. package/cloud-runtime/standalone/apps/local/.next/static/chunks/9c29ef447bef1576.js +0 -5
  354. package/cloud-runtime/standalone/apps/local/.next/static/chunks/a9111ccc979d4933.js +0 -5
  355. package/cloud-runtime/standalone/apps/local/.next/static/chunks/b35865f64b56d6f4.js +0 -1
  356. package/cloud-runtime/standalone/apps/local/.next/static/chunks/d2b34ade19d9d8da.js +0 -1
  357. package/cloud-runtime/standalone/apps/local/.next/static/chunks/f154e2ed7753f8ee.js +0 -16
  358. /package/cloud-runtime/standalone/apps/local/.next/static/{C3-tP4djbU34_g7VoIFac → xVMVGrzDjtD1H0bGL76NJ}/_buildManifest.js +0 -0
  359. /package/cloud-runtime/standalone/apps/local/.next/static/{C3-tP4djbU34_g7VoIFac → xVMVGrzDjtD1H0bGL76NJ}/_clientMiddlewareManifest.json +0 -0
  360. /package/cloud-runtime/standalone/apps/local/.next/static/{C3-tP4djbU34_g7VoIFac → xVMVGrzDjtD1H0bGL76NJ}/_ssgManifest.js +0 -0
@@ -1,5 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,292135,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return a}});let a=e=>{}},640481,e=>{"use strict";let t=(0,e.i(363732).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);e.s(["Pencil",()=>t],640481)},506420,(e,t,r)=>{t.exports=e.r(27944)},363732,e=>{"use strict";var t=e.i(935851);let r=(...e)=>e.filter((e,t,r)=>!!e&&""!==e.trim()&&r.indexOf(e)===t).join(" ").trim(),a=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,r)=>r?r.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var s={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let n=(0,t.forwardRef)(({color:e="currentColor",size:a=24,strokeWidth:n=2,absoluteStrokeWidth:l,className:i="",children:o,iconNode:d,...c},u)=>(0,t.createElement)("svg",{ref:u,...s,width:a,height:a,stroke:e,strokeWidth:l?24*Number(n)/Number(a):n,className:r("lucide",i),...!o&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(c)&&{"aria-hidden":"true"},...c},[...d.map(([e,r])=>(0,t.createElement)(e,r)),...Array.isArray(o)?o:[o]])),l=(e,s)=>{let l=(0,t.forwardRef)(({className:l,...i},o)=>(0,t.createElement)(n,{ref:o,iconNode:s,className:r(`lucide-${a(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,l),...i}));return l.displayName=a(e),l};e.s(["default",()=>l],363732)},524123,e=>{"use strict";var t=e.i(935851);function r(){let[e,r]=(0,t.useState)([]),[a,s]=(0,t.useState)(!1),[n,l]=(0,t.useState)(null),i=(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??[]),l(null)}catch(e){l(e instanceof Error?e:Error("Unknown error"))}finally{s(!1)}},[]);(0,t.useEffect)(()=>{i()},[i]);let o=(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:i,createProject:o,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 l=(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(),l=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...a,name:s,slug:n})});if(!l.ok)return null;let{project:i}=await l.json(),o=Array.isArray(t)?t:t?[t]:[];for(let e of o)await fetch(`/api/projects/${i.id}/threads`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:e})}).catch(e=>console.warn("[useProjects] link thread failed:",e));let d={...i,repos:i.repos??[],agents:[],thread_ids:o,workspace_ids:o};return r(e=>[...e,d].sort((e,t)=>e.name.localeCompare(t.name))),d}catch{return null}},[]),i=(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{}},[]),o=(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{}},[]),d=(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}},[]),c=(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:l,updateProject:d,renameProject:i,deleteProject:o,addAgent:c,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])},797167,e=>{"use strict";let t=(0,e.i(363732).default)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);e.s(["X",()=>t],797167)},929870,e=>{"use strict";let t=(0,e.i(363732).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);e.s(["Plus",()=>t],929870)},203096,e=>{"use strict";let t=(0,e.i(363732).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",()=>t],203096)},580873,e=>{"use strict";let t=(0,e.i(363732).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);e.s(["Clock",()=>t],580873)},597628,e=>{"use strict";let t=(0,e.i(363732).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],597628)},716436,e=>{"use strict";let t=(0,e.i(363732).default)("activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]);e.s(["Activity",()=>t],716436)},429056,e=>{"use strict";let t=(0,e.i(363732).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",()=>t],429056)},571278,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={assign:function(){return o},searchParamsToUrlQuery:function(){return n},urlQueryToSearchParams:function(){return i}};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 l(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function i(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,l(e));else t.set(r,l(a));return t}function o(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}},13168,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={formatUrl:function(){return i},formatWithValidation:function(){return d},urlObjectKeys:function(){return o}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=e.r(190809)._(e.r(571278)),l=/https?|ftp|gopher|file/;function i(e){let{auth:t,hostname:r}=e,a=e.protocol||"",s=e.pathname||"",i=e.hash||"",o=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)),o&&"object"==typeof o&&(o=String(n.urlQueryToSearchParams(o)));let c=e.search||o&&`?${o}`||"";return a&&!a.endsWith(":")&&(a+=":"),e.slashes||(!a||l.test(a))&&!1!==d?(d="//"+(d||""),s&&"/"!==s[0]&&(s="/"+s)):d||(d=""),i&&"#"!==i[0]&&(i="#"+i),c&&"?"!==c[0]&&(c="?"+c),s=s.replace(/[?#]/g,encodeURIComponent),c=c.replace("#","%23"),`${a}${d}${s}${c}${i}`}let o=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function d(e){return i(e)}},950581,(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(935851);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)},692942,(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 v},PageNotFoundError:function(){return b},SP:function(){return h},ST:function(){return f},WEB_VITALS:function(){return n},execOnce:function(){return l},getDisplayName:function(){return u},getLocationOrigin:function(){return d},getURL:function(){return c},isAbsoluteUrl:function(){return o},isResSent:function(){return m},loadGetInitialProps:function(){return p},normalizeRepeatedSlashes:function(){return x},stringifyError:function(){return N}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=["CLS","FCP","FID","INP","LCP","TTFB"];function l(e){let t,r=!1;return(...a)=>(r||(r=!0,t=e(...a)),t)}let i=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,o=e=>i.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 m(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 p(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await p(t.Component,t.ctx)}:{};let a=await e.getInitialProps(t);if(r&&m(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,f=h&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class g extends Error{}class v extends Error{}class b 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})}},299242,(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(692942),s=e.r(756972);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}}},405374,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return a}});let a=e=>{}},307241,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={default:function(){return g},useLinkStatus:function(){return b}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=e.r(190809),l=e.r(762281),i=n._(e.r(935851)),o=e.r(13168),d=e.r(543665),c=e.r(950581),u=e.r(692942),m=e.r(212591);e.r(292135);let x=e.r(53101),p=e.r(299242),h=e.r(979945);function f(e){return"string"==typeof e?e:(0,o.formatUrl)(e)}function g(t){var r;let a,s,n,[o,g]=(0,i.useOptimistic)(x.IDLE_LINK_STATUS),b=(0,i.useRef)(null),{href:j,as:y,children:N,prefetch:w=null,passHref:k,replace:S,shallow:C,scroll:M,onClick:E,onMouseEnter:_,onTouchStart:P,legacyBehavior:T=!1,onNavigate:O,ref:A,unstable_dynamicOnHover:$,...L}=t;a=N,T&&("string"==typeof a||"number"==typeof a)&&(a=(0,l.jsx)("a",{children:a}));let I=i.default.useContext(d.AppRouterContext),R=!1!==w,D=!1!==w?null===(r=w)||"auto"===r?h.FetchStrategy.PPR:h.FetchStrategy.Full:h.FetchStrategy.PPR,{href:U,as:z}=i.default.useMemo(()=>{let e=f(j);return{href:e,as:y?f(y):e}},[j,y]);if(T){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=i.default.Children.only(a)}let B=T?s&&"object"==typeof s&&s.ref:A,H=i.default.useCallback(e=>(null!==I&&(b.current=(0,x.mountLinkInstance)(e,U,I,D,R,g)),()=>{b.current&&((0,x.unmountLinkForCurrentNavigation)(b.current),b.current=null),(0,x.unmountPrefetchableInstance)(e)}),[R,U,I,D,g]),F={ref:(0,c.useMergedRef)(H,B),onClick(t){T||"function"!=typeof E||E(t),T&&s.props&&"function"==typeof s.props.onClick&&s.props.onClick(t),!I||t.defaultPrevented||function(t,r,a,s,n,l,o){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,p.isLocalURL)(r)){n&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),o){let e=!1;if(o({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:u}=e.r(977803);i.default.startTransition(()=>{u(a||r,n?"replace":"push",l??!0,s.current)})}}(t,U,z,b,S,M,O)},onMouseEnter(e){T||"function"!=typeof _||_(e),T&&s.props&&"function"==typeof s.props.onMouseEnter&&s.props.onMouseEnter(e),I&&R&&(0,x.onNavigationIntent)(e.currentTarget,!0===$)},onTouchStart:function(e){T||"function"!=typeof P||P(e),T&&s.props&&"function"==typeof s.props.onTouchStart&&s.props.onTouchStart(e),I&&R&&(0,x.onNavigationIntent)(e.currentTarget,!0===$)}};return(0,u.isAbsoluteUrl)(z)?F.href=z:T&&!k&&("a"!==s.type||"href"in s.props)||(F.href=(0,m.addBasePath)(z)),n=T?i.default.cloneElement(s,F):(0,l.jsx)("a",{...L,...F,children:a}),(0,l.jsx)(v.Provider,{value:o,children:n})}e.r(405374);let v=(0,i.createContext)(x.IDLE_LINK_STATUS),b=()=>(0,i.useContext)(v);("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)},367859,e=>{"use strict";let t=(0,e.i(363732).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["ChevronRight",()=>t],367859)},8707,e=>{"use strict";let t=(0,e.i(363732).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);e.s(["Search",()=>t],8707)},498027,e=>{"use strict";let t=(0,e.i(363732).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["ChevronDown",()=>t],498027)},529471,e=>{"use strict";let t=(0,e.i(363732).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["Check",()=>t],529471)},44054,e=>{"use strict";var t=e.i(935851);let r="(pointer: coarse)",a="(hover: hover)",s="(max-width: 767px)",n="(min-width: 768px)";function l(){if("function"!=typeof window.matchMedia)return{isCoarsePointer:!1,canHover:!0,isPhone:!1,isTablet:!1,isTouchLayout:!1};let e=window.matchMedia(r).matches,t=window.matchMedia(a).matches,l=window.matchMedia(s).matches,i=!l&&window.matchMedia(n).matches,o=e||!t;return{isCoarsePointer:e,canHover:t,isPhone:o&&l,isTablet:o&&i,isTouchLayout:o}}function i(){let[e,i]=(0,t.useState)(l);return(0,t.useEffect)(()=>{if("function"!=typeof window.matchMedia)return;let e=[window.matchMedia(r),window.matchMedia(a),window.matchMedia(s),window.matchMedia(n)],t=()=>{i(l())};return e.forEach(e=>e.addEventListener("change",t)),window.addEventListener("resize",t),t(),()=>{e.forEach(e=>e.removeEventListener("change",t)),window.removeEventListener("resize",t)}},[]),e}e.s(["useInputCapabilities",()=>i])},169610,e=>{"use strict";let t=(0,e.i(363732).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],169610)},755838,(e,t,r)=>{"use strict";var a=e.r(935851),s="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},n=a.useState,l=a.useEffect,i=a.useLayoutEffect,o=a.useDebugValue;function d(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!s(e,r)}catch(e){return!0}}var c="u"<typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var r=t(),a=n({inst:{value:r,getSnapshot:t}}),s=a[0].inst,c=a[1];return i(function(){s.value=r,s.getSnapshot=t,d(s)&&c({inst:s})},[e,r,t]),l(function(){return d(s)&&c({inst:s}),e(function(){d(s)&&c({inst:s})})},[e]),o(r),r};r.useSyncExternalStore=void 0!==a.useSyncExternalStore?a.useSyncExternalStore:c},802239,(e,t,r)=>{"use strict";t.exports=e.r(755838)},752822,(e,t,r)=>{"use strict";var a=e.r(935851),s=e.r(802239),n="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},l=s.useSyncExternalStore,i=a.useRef,o=a.useEffect,d=a.useMemo,c=a.useDebugValue;r.useSyncExternalStoreWithSelector=function(e,t,r,a,s){var u=i(null);if(null===u.current){var m={hasValue:!1,value:null};u.current=m}else m=u.current;var x=l(e,(u=d(function(){function e(e){if(!o){if(o=!0,l=e,e=a(e),void 0!==s&&m.hasValue){var t=m.value;if(s(t,e))return i=t}return i=e}if(t=i,n(l,e))return t;var r=a(e);return void 0!==s&&s(t,r)?(l=e,t):(l=e,i=r)}var l,i,o=!1,d=void 0===r?null:r;return[function(){return e(t())},null===d?void 0:function(){return e(d())}]},[t,r,a,s]))[0],u[1]);return o(function(){m.hasValue=!0,m.value=x},[x]),c(x),x}},430224,(e,t,r)=>{"use strict";t.exports=e.r(752822)},538292,e=>{"use strict";let t=(0,e.i(363732).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],538292)},19035,e=>{"use strict";let t=(0,e.i(363732).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],19035)},519132,e=>{"use strict";let t=(0,e.i(363732).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",()=>t],519132)},572665,e=>{"use strict";let t=(0,e.i(363732).default)("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]]);e.s(["Users",()=>t],572665)},378764,e=>{"use strict";var t=e.i(762281),r=e.i(935851),a=e.i(498027),s=e.i(8707),n=e.i(529471),l=e.i(797167);function i({options:e,value:i,onChange:o,placeholder:d,disabled:c}){let[u,m]=(0,r.useState)(!1),[x,p]=(0,r.useState)(""),h=(0,r.useRef)(null),f=(0,r.useRef)(null),g=(0,r.useMemo)(()=>{if(!x)return e;let t=x.toLowerCase();return e.filter(e=>e.label.toLowerCase().includes(t)||e.description?.toLowerCase().includes(t)||e.meta?.toLowerCase().includes(t))},[e,x]),v=(0,r.useMemo)(()=>e.find(e=>e.id===i),[e,i]),b=(0,r.useCallback)(e=>{h.current&&!h.current.contains(e.target)&&m(!1)},[]);return(0,r.useEffect)(()=>(document.addEventListener("pointerdown",b),()=>document.removeEventListener("pointerdown",b)),[b]),(0,t.jsxs)("div",{ref:h,className:"relative",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>{c||(m(!u),p(""),setTimeout(()=>f.current?.focus(),0))},disabled:c,className:"input w-full flex items-center justify-between gap-2 text-left cursor-pointer",children:[v?(0,t.jsx)("span",{className:"truncate",children:v.label}):(0,t.jsx)("span",{className:"text-[var(--muted-foreground)] truncate",children:d}),(0,t.jsx)(a.ChevronDown,{className:`w-4 h-4 text-[var(--muted-foreground)] flex-shrink-0 transition-transform ${u?"rotate-180":""}`})]}),u&&(0,t.jsxs)("div",{className:"absolute z-50 mt-2 min-w-full w-max max-w-[28rem] rounded-2xl overflow-hidden right-0",style:{background:"var(--card-bg)",border:"1px solid var(--border)",boxShadow:"0 8px 30px rgba(0,0,0,0.35), 0 0 0 1px rgba(255,255,255,0.05)"},children:[(0,t.jsxs)("div",{className:"flex items-center gap-2.5 px-3.5 py-3 border-b",style:{borderColor:"var(--border)"},children:[(0,t.jsx)(s.Search,{className:"w-4 h-4 text-[var(--muted-foreground)] flex-shrink-0"}),(0,t.jsx)("input",{ref:f,value:x,onChange:e=>p(e.target.value),placeholder:"Search...",className:"flex-1 bg-transparent text-sm outline-none placeholder:text-[var(--muted-foreground)]"}),x&&(0,t.jsx)("button",{onClick:()=>p(""),className:"text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:(0,t.jsx)(l.X,{className:"w-3.5 h-3.5"})})]}),(0,t.jsxs)("div",{className:"max-h-72 overflow-y-auto py-1",children:[0===g.length&&(0,t.jsx)("div",{className:"px-4 py-6 text-xs text-[var(--muted-foreground)] text-center",children:"No matches"}),g.map(e=>{let r=e.id===i;return(0,t.jsxs)("button",{onClick:()=>{e.disabled||(o(e.id),m(!1),p(""))},disabled:e.disabled,className:`
2
- w-full text-left px-3.5 py-2.5 flex items-center gap-3 transition-colors
3
- ${e.disabled?"opacity-35 cursor-not-allowed":""}
4
- ${r?"bg-[var(--primary)]/10":"hover:bg-[var(--muted)]/40"}
5
- `,children:[(0,t.jsx)("div",{className:`w-5 h-5 rounded-md flex items-center justify-center flex-shrink-0 border ${r?"bg-[var(--primary)] border-[var(--primary)]":"border-[var(--border)]"}`,children:r&&(0,t.jsx)(n.Check,{className:"w-3 h-3 text-white"})}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-sm font-medium",children:e.label}),e.meta&&(0,t.jsx)("span",{className:"text-[10px] px-1.5 py-0.5 rounded-full bg-[var(--muted)]/50 text-[var(--muted-foreground)]",children:e.meta})]}),e.description&&(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-0.5 line-clamp-1",children:e.description})]})]},e.id)})]})]})]})}e.s(["default",()=>i])},629155,e=>{"use strict";let t=(0,e.i(363732).default)("hash",[["line",{x1:"4",x2:"20",y1:"9",y2:"9",key:"4lhtct"}],["line",{x1:"4",x2:"20",y1:"15",y2:"15",key:"vyu0kd"}],["line",{x1:"10",x2:"8",y1:"3",y2:"21",key:"1ggp8o"}],["line",{x1:"16",x2:"14",y1:"3",y2:"21",key:"weycgp"}]]);e.s(["Hash",()=>t],629155)},80673,e=>{"use strict";let t=(0,e.i(363732).default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);e.s(["Download",()=>t],80673)},938201,e=>{"use strict";let t=(0,e.i(363732).default)("target",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"6",key:"1vlfrh"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]]);e.s(["Target",()=>t],938201)},997626,e=>{"use strict";let t=(0,e.i(363732).default)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);e.s(["Zap",()=>t],997626)},564957,e=>{"use strict";let t=(0,e.i(363732).default)("brain-circuit",[["path",{d:"M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z",key:"l5xja"}],["path",{d:"M9 13a4.5 4.5 0 0 0 3-4",key:"10igwf"}],["path",{d:"M6.003 5.125A3 3 0 0 0 6.401 6.5",key:"105sqy"}],["path",{d:"M3.477 10.896a4 4 0 0 1 .585-.396",key:"ql3yin"}],["path",{d:"M6 18a4 4 0 0 1-1.967-.516",key:"2e4loj"}],["path",{d:"M12 13h4",key:"1ku699"}],["path",{d:"M12 18h6a2 2 0 0 1 2 2v1",key:"105ag5"}],["path",{d:"M12 8h8",key:"1lhi5i"}],["path",{d:"M16 8V5a2 2 0 0 1 2-2",key:"u6izg6"}],["circle",{cx:"16",cy:"13",r:".5",key:"ry7gng"}],["circle",{cx:"18",cy:"3",r:".5",key:"1aiba7"}],["circle",{cx:"20",cy:"21",r:".5",key:"yhc1fs"}],["circle",{cx:"20",cy:"8",r:".5",key:"1e43v0"}]]);e.s(["BrainCircuit",()=>t],564957)},906772,e=>{"use strict";let t=(0,e.i(363732).default)("shield-check",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["ShieldCheck",()=>t],906772)},791210,e=>{"use strict";let t=(0,e.i(363732).default)("corner-down-right",[["path",{d:"m15 10 5 5-5 5",key:"qqa56n"}],["path",{d:"M4 4v7a4 4 0 0 0 4 4h12",key:"z08zvw"}]]);e.s(["CornerDownRight",()=>t],791210)},416865,e=>{"use strict";var t=e.i(762281),r=e.i(935851),a=e.i(506420),s=e.i(307241),n=e.i(716436),l=e.i(997626),i=e.i(564957),o=e.i(429056),d=e.i(572665),c=e.i(629155),u=e.i(597628),m=e.i(837958),x=e.i(519132),p=e.i(203096),h=e.i(367859),f=e.i(580873),g=e.i(938201),v=e.i(812549),b=e.i(906772),j=e.i(791210),y=e.i(80673),N=e.i(640481),w=e.i(884564),k=e.i(524123),S=e.i(423709),C=e.i(208343);function M(){let{id:e}=(0,a.useParams)(),[M,E]=(0,r.useState)(null),[_,P]=(0,r.useState)([]),[T,O]=(0,r.useState)(null),[A,$]=(0,r.useState)([]),[L,I]=(0,r.useState)({total_messages:0,threads_participated:0}),[R,D]=(0,r.useState)(!0),[U,z]=(0,r.useState)("feed"),[B,H]=(0,r.useState)(!1),[F,V]=(0,r.useState)([]),{projects:q}=(0,k.useProjectsWithAgents)();if((0,r.useEffect)(()=>{e&&Promise.all([fetch("/api/participants").then(e=>e.json()),fetch(`/api/agents/${e}/profile`).then(e=>e.ok?e.json():null),fetch(`/api/agents/${e}/messages`).then(e=>e.ok?e.json():null)]).then(([t,r,a])=>{let s=Array.isArray(t)?t:[];P(s),E(s.find(t=>t.id===e)??null),O(r),$(a?.messages??[]),I(a?.stats??{total_messages:0,threads_participated:0}),D(!1)})},[e]),(0,r.useEffect)(()=>{if(!e)return;let t=async()=>{try{let t=await fetch("/api/processes?enrich=1");if(!t.ok)return;let r=await t.json();V(r.filter(t=>t.agentId===e&&("spawning"===t.state||"running"===t.state)))}catch{}};t();let r=setInterval(t,3e3);return()=>clearInterval(r)},[e]),R)return(0,t.jsx)("div",{className:"min-h-screen bg-[var(--background)] flex items-center justify-center",children:(0,t.jsx)("div",{className:"animate-pulse text-[var(--muted-foreground)] text-sm",children:"Loading agent…"})});if(!M)return(0,t.jsxs)("div",{className:"min-h-screen bg-[var(--background)] flex flex-col items-center justify-center gap-4",children:[(0,t.jsx)("p",{className:"text-[var(--muted-foreground)]",children:"Agent not found"}),(0,t.jsx)(s.default,{href:"/agents",className:"text-sm text-blue-600 hover:underline",children:"Back to agents"})]});let J=M.color||"#D97706",K=q.filter(e=>e.agents.some(e=>e.agent_id===M.id)),W=T?.self||"",Z=(0,S.stripMarkers)(W),X=M.identity||"",Q=(0,S.stripMarkers)(X),G=T?.journal??[],Y=G.filter(e=>"reflection"===e.type),ee=T?.inspectability,et=ee?.knowledge.agent.portableSkills??[],er=ee?.knowledge.agent.skillBindings??[],ea=ee?.knowledge.agent.learnedMemories??[],es=ee?.evidence,en=A.map(e=>({...e,content:(0,S.stripMarkers)(e.content)})).filter(e=>e.content.length>0),el=new Map;for(let e of _)el.set(e.id,e);let ei=e=>{let t=new Date(e),r=Math.floor((Date.now()-t.getTime())/6e4);if(r<1)return"just now";if(r<60)return`${r}m ago`;let a=Math.floor(r/60);if(a<24)return`${a}h ago`;let s=Math.floor(a/24);return s<7?`${s}d ago`:new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric"}).format(t)},eo=e=>{let t=new Date(e);return new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"}).format(t)},ed=[{label:"Messages",value:L.total_messages.toLocaleString(),icon:u.MessageSquare},{label:"Threads",value:String(L.threads_participated),icon:c.Hash},{label:"Journal Entries",value:String(G.length),icon:m.BookOpen},{label:"Projects",value:String(K.length),icon:d.Users}];return(0,t.jsxs)("div",{className:"min-h-screen bg-[var(--background)] text-[var(--foreground)] font-sans selection:bg-amber-100/30",children:[(0,t.jsxs)("nav",{className:"desktop-titlebar sticky top-0 z-50 bg-[var(--card-bg)]/80 backdrop-blur-md border-b border-[var(--border)] px-4 md:px-8 h-14 flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-4",children:[(0,t.jsx)(s.default,{href:"/agents",className:"p-2 hover:bg-[var(--muted)] rounded-lg transition-colors group",children:(0,t.jsx)(o.ArrowLeft,{className:"w-5 h-5 text-[var(--muted-foreground)] group-hover:text-[var(--foreground)]"})}),(0,t.jsx)("div",{className:"h-4 w-[1px] bg-[var(--muted)] hidden md:block"}),(0,t.jsxs)("div",{className:"hidden md:flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(d.Users,{className:"w-4 h-4"}),(0,t.jsx)(s.default,{href:"/agents",className:"hover:text-[var(--foreground)] transition-colors",children:"Agents"}),(0,t.jsx)(h.ChevronRight,{className:"w-4 h-4 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-[var(--foreground)] font-semibold",children:M.name})]})]}),(0,t.jsx)("div",{className:"flex items-center gap-3",children:T?.selfVersion&&(0,t.jsxs)("span",{className:"text-xs font-mono text-[var(--muted-foreground)] bg-[var(--muted)] px-2 py-1 rounded",children:["v",T.selfVersion]})})]}),(0,t.jsxs)("main",{className:"max-w-7xl mx-auto p-4 md:p-8 grid grid-cols-1 lg:grid-cols-12 gap-8",children:[(0,t.jsxs)("div",{className:"lg:col-span-4 space-y-6",children:[(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] shadow-xl shadow-black/5 overflow-hidden",children:[(0,t.jsx)("div",{className:"h-32 w-full relative",style:{background:`linear-gradient(135deg, ${J} 0%, ${J}99 100%)`},children:(0,t.jsx)("div",{className:"absolute inset-0 opacity-20 bg-[radial-gradient(#fff_1px,transparent_1px)] [background-size:16px_16px]"})}),(0,t.jsxs)("div",{className:"px-6 pb-6 text-center -mt-16 relative",children:[(0,t.jsxs)("div",{className:"inline-block relative",children:[(0,t.jsx)("img",{alt:M.name,className:"w-32 h-32 rounded-3xl bg-[var(--card-bg)] p-2 border-4 border-[var(--card-bg)] shadow-xl",src:(0,w.agentAvatarUrl)(M.id,128,M.color)}),(0,t.jsx)("div",{className:"absolute bottom-2 right-2 w-6 h-6 bg-green-500 border-4 border-[var(--card-bg)] rounded-full"})]}),(0,t.jsxs)("div",{className:"mt-4 space-y-1",children:[(0,t.jsxs)("div",{className:"flex items-center justify-center gap-2",children:[(0,t.jsx)("h1",{className:"text-2xl font-black tracking-tight",children:M.name}),(0,t.jsx)("span",{className:"px-2 py-0.5 rounded-full text-[10px] font-bold uppercase tracking-wider",style:{backgroundColor:`${J}20`,color:J},children:M.provider})]}),(0,t.jsx)("p",{className:"text-[var(--muted-foreground)] font-mono text-xs",children:M.model})]}),(0,t.jsxs)("div",{className:"flex flex-wrap justify-center gap-2 mt-6",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 px-3 py-1.5 rounded-full bg-[var(--app-shell-subtle)] border border-[var(--border)] text-xs font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(v.Cpu,{className:"w-3.5 h-3.5"}),M.model]}),(0,t.jsxs)("div",{className:`flex items-center gap-1.5 px-3 py-1.5 rounded-full border text-xs font-medium ${F.length>0?"bg-green-50 border-green-200 text-green-700":"bg-[var(--app-shell-subtle)] border-[var(--border)] text-[var(--muted-foreground)]"}`,children:[(0,t.jsx)(n.Activity,{className:`w-3.5 h-3.5 ${F.length>0?"animate-pulse":""}`}),F.length>0?"Working":"Idle"]})]}),(0,t.jsx)("div",{className:"grid grid-cols-2 gap-3 mt-8",children:ed.map((e,r)=>(0,t.jsxs)("div",{className:"bg-[var(--app-shell-subtle)] p-3 rounded-2xl border border-[var(--border)] text-left hover:border-[var(--border)] transition-colors cursor-default",children:[(0,t.jsx)(e.icon,{className:"w-4 h-4 text-[var(--muted-foreground)] mb-1"}),(0,t.jsx)("div",{className:"text-lg font-bold text-[var(--foreground)]",children:e.value}),(0,t.jsx)("div",{className:"text-[10px] uppercase font-bold text-[var(--muted-foreground)] tracking-wider",children:e.label})]},r))})]})]}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-2xl border border-[var(--border)] p-5",children:[(0,t.jsxs)("h3",{className:"text-[11px] font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] mb-4 flex items-center gap-2",children:[(0,t.jsx)(l.Zap,{className:"w-3.5 h-3.5"})," Actions"]}),(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>H(!0),className:"flex-1 flex items-center justify-center gap-2 px-3 py-2.5 text-sm font-medium text-[var(--foreground)] bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl hover:bg-[var(--muted)] hover:border-[var(--border)] transition-all",children:[(0,t.jsx)(N.Pencil,{className:"w-3.5 h-3.5"}),"Edit"]}),(0,t.jsxs)("button",{type:"button",onClick:async()=>{let e=await fetch("/api/agents/export",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentIds:[M.id]})});if(!e.ok)return;let t=await e.json(),r=new Blob([JSON.stringify({version:1,exportedAt:new Date().toISOString(),agents:t.agents,projects:[]},null,2)],{type:"application/json"}),a=URL.createObjectURL(r),s=document.createElement("a");s.href=a,s.download=`${M.name.toLowerCase().replace(/\s+/g,"-")}.agent.json`,s.click(),URL.revokeObjectURL(a)},className:"flex-1 flex items-center justify-center gap-2 px-3 py-2.5 text-sm font-medium text-[var(--foreground)] bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl hover:bg-[var(--muted)] hover:border-[var(--border)] transition-all",children:[(0,t.jsx)(y.Download,{className:"w-3.5 h-3.5"}),"Export"]})]})]}),F.length>0&&(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-2xl border border-green-200 ring-1 ring-green-100 p-5",children:[(0,t.jsxs)("h3",{className:"text-[11px] font-black text-green-600 uppercase tracking-[0.2em] mb-4 flex items-center gap-2",children:[(0,t.jsx)(n.Activity,{className:"w-3.5 h-3.5 animate-pulse"})," Working Now"]}),(0,t.jsx)("div",{className:"flex flex-col gap-2",children:F.map(e=>(0,t.jsxs)(s.default,{href:e.threadId?`/thread/${e.threadId}`:"#",className:"flex items-center gap-3 p-2.5 rounded-xl bg-green-50 border border-green-100 hover:border-green-300 hover:bg-green-100 transition-all group/work",children:[(0,t.jsx)("div",{className:"relative shrink-0",children:(0,t.jsx)("div",{className:"w-2 h-2 rounded-full bg-green-500 animate-pulse"})}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsx)("div",{className:"text-xs font-medium text-[var(--foreground)] truncate",children:e.threadId?(0,t.jsxs)("span",{className:"flex items-center gap-1",children:[(0,t.jsx)(c.Hash,{className:"w-3 h-3 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"truncate",children:e.threadTitle||e.threadId.substring(0,12)+"..."})]}):(0,t.jsx)("span",{children:"Main thread"})}),(0,t.jsx)("div",{className:"text-[10px] text-[var(--muted-foreground)] capitalize",children:e.state})]}),(0,t.jsx)(h.ChevronRight,{className:"w-3.5 h-3.5 text-[var(--muted-foreground)] group-hover/work:text-[var(--muted-foreground)]"})]},`${e.workspaceId}-${e.threadId}`))})]}),(M.skills&&M.skills.length>0||M.skillBindings&&M.skillBindings.length>0)&&(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-2xl border border-[var(--border)] p-5",children:[(0,t.jsxs)("h3",{className:"text-[11px] font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] mb-4 flex items-center gap-2",children:[(0,t.jsx)(i.BrainCircuit,{className:"w-3.5 h-3.5"})," Portable Knowledge"]}),(0,t.jsxs)("div",{className:"flex flex-col gap-2",children:[M.skills?.map((e,r)=>(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs p-2 hover:bg-[var(--app-shell-subtle)] rounded-lg transition-colors",children:[(0,t.jsx)(l.Zap,{size:10,className:"text-blue-500 shrink-0"}),(0,t.jsx)("span",{className:"text-blue-600 font-mono truncate",title:e.file,children:e.file.split("/").pop()}),e.condition&&(0,t.jsx)("span",{className:"text-[var(--muted-foreground)] text-[10px] ml-auto shrink-0",children:e.condition})]},`skill-${r}`)),M.skillBindings?.map((e,r)=>(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs p-2 hover:bg-[var(--app-shell-subtle)] rounded-lg transition-colors",children:[(0,t.jsx)(m.BookOpen,{size:10,className:"text-emerald-500 shrink-0"}),(0,t.jsx)("span",{className:"text-emerald-600 font-mono truncate",title:`${e.repo}/${e.skillId}`,children:e.skillId}),e.condition&&(0,t.jsx)("span",{className:"text-[var(--muted-foreground)] text-[10px] ml-auto shrink-0",children:e.condition})]},`binding-${r}`))]})]}),(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-2xl border border-[var(--border)] p-5",children:[(0,t.jsxs)("h3",{className:"text-[11px] font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] mb-4 flex items-center gap-2",children:[(0,t.jsx)(b.ShieldCheck,{className:"w-3.5 h-3.5"})," Details"]}),(0,t.jsxs)("div",{className:"space-y-3 text-xs",children:[(0,t.jsxs)("div",{className:"flex justify-between",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"ID"}),(0,t.jsx)("span",{className:"font-mono bg-[var(--app-shell-subtle)] px-1.5 py-0.5 rounded",children:M.id})]}),(0,t.jsxs)("div",{className:"flex justify-between",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Provider"}),(0,t.jsx)("span",{className:"font-medium capitalize",children:M.provider})]}),(0,t.jsxs)("div",{className:"flex justify-between",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Model"}),(0,t.jsx)("span",{className:"font-mono",children:M.model})]}),T?.identity?.voice?(0,t.jsxs)("div",{className:"flex justify-between",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Voice"}),(0,t.jsx)("span",{className:"font-medium",children:String(T.identity.voice)})]}):null,(0,t.jsxs)("div",{className:"flex justify-between items-center",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Color"}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("div",{className:"w-3 h-3 rounded-full border border-[var(--border)]",style:{backgroundColor:M.color}}),(0,t.jsx)("span",{className:"font-mono",children:M.color})]})]}),T?.selfDerivedAt&&(0,t.jsxs)("div",{className:"flex justify-between",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"Last Evolved"}),(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:ei(T.selfDerivedAt)})]})]})]}),K.length>0&&(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-2xl border border-[var(--border)] p-5",children:[(0,t.jsxs)("h3",{className:"text-[11px] font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] mb-4 flex items-center gap-2",children:[(0,t.jsx)(d.Users,{className:"w-3.5 h-3.5"})," Active Projects"]}),(0,t.jsx)("div",{className:"space-y-2",children:K.map(e=>(0,t.jsxs)("div",{className:"flex items-center justify-between p-2 hover:bg-[var(--app-shell-subtle)] rounded-lg transition-colors group cursor-pointer",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("div",{className:"w-8 h-8 rounded-lg bg-[var(--muted)] flex items-center justify-center text-xs font-bold text-[var(--muted-foreground)] group-hover:bg-[var(--card-bg)] group-hover:shadow-sm",children:e.name[0]}),(0,t.jsx)("span",{className:"text-sm font-medium text-[var(--foreground)]",children:e.name})]}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:[e.agents.length," agent",1!==e.agents.length?"s":""]})]},e.id))})]})]})]}),(0,t.jsxs)("div",{className:"lg:col-span-8 space-y-6",children:[(0,t.jsx)("div",{className:"bg-[var(--card-bg)] p-1 rounded-2xl border border-[var(--border)] flex shadow-sm",children:[{key:"inspect",label:"Inspect",icon:b.ShieldCheck},{key:"feed",label:"Feed",icon:u.MessageSquare},{key:"reflections",label:"Reflections",icon:x.Sparkles}].map(e=>(0,t.jsxs)("button",{onClick:()=>z(e.key),className:`flex-1 flex items-center justify-center gap-2 py-3 rounded-xl text-sm font-bold transition-all ${U===e.key?"bg-[var(--foreground)] text-[var(--background)] shadow-lg shadow-black/5":"text-[var(--muted-foreground)] hover:text-[var(--foreground)]"}`,children:[(0,t.jsx)(e.icon,{className:"w-4 h-4"}),e.label]},e.key))}),(0,t.jsxs)("div",{className:"min-h-[600px]",children:["inspect"===U&&(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"grid grid-cols-1 xl:grid-cols-2 gap-4",children:[(0,t.jsxs)("section",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-6 shadow-sm",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(m.BookOpen,{className:"w-4 h-4"})," Identity"]}),(0,t.jsx)("span",{className:"text-[10px] font-black uppercase px-2 py-0.5 rounded bg-emerald-50 text-emerald-700",children:"Human-authored"})]}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)] leading-relaxed",children:"Canonical self-definition. The system can read this, but should not edit it."}),(0,t.jsxs)("div",{className:"mt-4 grid grid-cols-1 md:grid-cols-2 gap-3 text-xs",children:[(0,t.jsxs)("div",{className:"rounded-2xl bg-[var(--app-shell-subtle)] border border-[var(--border)] p-3",children:[(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:"Voice"}),(0,t.jsx)("p",{className:"mt-1 text-[var(--foreground)]",children:String(T?.identity?.voice??"Not set")})]}),(0,t.jsxs)("div",{className:"rounded-2xl bg-[var(--app-shell-subtle)] border border-[var(--border)] p-3",children:[(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:"Seed"}),(0,t.jsx)("p",{className:"mt-1 text-[var(--foreground)]",children:String(T?.identity?.seed??"Not set")})]})]}),ee?.identity.sources?.length?(0,t.jsxs)("div",{className:"mt-4",children:[(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)] mb-2",children:"Sources"}),(0,t.jsx)("div",{className:"flex flex-wrap gap-2",children:ee.identity.sources.map(e=>(0,t.jsx)("span",{className:"px-2 py-1 rounded-full bg-[var(--muted)] text-[11px] font-medium text-[var(--muted-foreground)]",children:e},e))})]}):null]}),(0,t.jsxs)("section",{className:"bg-[var(--card-bg)] rounded-3xl border border-amber-100 ring-1 ring-amber-200 p-6 shadow-sm",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(x.Sparkles,{className:"w-4 h-4"})," Self-Model"]}),(0,t.jsx)("span",{className:"text-[10px] font-black uppercase px-2 py-0.5 rounded bg-amber-100 text-amber-700",children:"System-derived"})]}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)] leading-relaxed",children:"Reflective specialization model: how this agent currently understands its fit, strengths, and direction."}),Z?(0,t.jsx)("div",{className:"mt-4 text-sm text-[var(--foreground)] leading-relaxed prose prose-sm prose-slate max-w-none",children:(0,t.jsx)(C.Markdown,{content:Z})}):(0,t.jsx)("p",{className:"mt-4 text-sm text-[var(--muted-foreground)]",children:"No self-model yet."}),(0,t.jsxs)("div",{className:"mt-4 flex flex-wrap gap-2",children:[T?.selfVersion?(0,t.jsxs)("span",{className:"px-2 py-1 rounded-full bg-amber-50 text-[11px] font-medium text-amber-700",children:["v",T.selfVersion]}):null,T?.selfDerivedAt?(0,t.jsx)("span",{className:"px-2 py-1 rounded-full bg-[var(--muted)] text-[11px] font-medium text-[var(--muted-foreground)]",children:ei(T.selfDerivedAt)}):null,ee?.selfModel.sources?.map(e=>(0,t.jsx)("span",{className:"px-2 py-1 rounded-full bg-[var(--muted)] text-[11px] font-medium text-[var(--muted-foreground)]",children:e},e))]})]})]}),(0,t.jsxs)("section",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-6 shadow-sm",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(i.BrainCircuit,{className:"w-4 h-4"})," Agent Knowledge"]}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:[et.length+er.length+ea.length," items"]})]}),(0,t.jsxs)("div",{className:"grid grid-cols-1 xl:grid-cols-2 gap-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:"Portable Knowledge"}),(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:"Human-authored"})]}),0===et.length&&0===er.length?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No portable knowledge attached."}):(0,t.jsxs)("div",{className:"space-y-2",children:[et.map(e=>(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--border)] bg-[var(--app-shell-subtle)] p-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)("span",{className:"font-mono text-xs text-[var(--foreground)] truncate",title:e.file,children:e.file}),(0,t.jsx)("span",{className:"text-[10px] font-medium text-[var(--muted-foreground)] shrink-0",children:e.form})]}),e.condition?(0,t.jsxs)("p",{className:"mt-2 text-xs text-[var(--muted-foreground)]",children:["Use when: ",e.condition]}):null]},`${e.file}:${e.condition}`)),er.map(e=>(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--border)] bg-[var(--app-shell-subtle)] p-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)("span",{className:"font-mono text-xs text-[var(--foreground)] truncate",title:`${e.repo}/${e.skillId}`,children:e.skillId}),(0,t.jsx)("span",{className:"text-[10px] font-medium text-[var(--muted-foreground)] shrink-0",children:e.form})]}),(0,t.jsx)("p",{className:"mt-1 text-[10px] text-[var(--muted-foreground)] font-mono truncate",title:e.repo,children:e.repo}),e.condition?(0,t.jsxs)("p",{className:"mt-1 text-xs text-[var(--muted-foreground)]",children:["Use when: ",e.condition]}):null]},`${e.repo}:${e.skillId}`))]})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:"Derived Knowledge Candidates"}),(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:"System-derived"})]}),0===ea.length?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No extracted learnings yet."}):(0,t.jsx)("div",{className:"space-y-2",children:ea.map(e=>(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--border)] bg-[var(--app-shell-subtle)] p-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)("span",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:e.type}),(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:ei(e.createdAt)})]}),(0,t.jsx)("p",{className:"mt-2 text-sm text-[var(--foreground)] leading-relaxed",children:e.content}),(0,t.jsxs)("div",{className:"mt-2 text-[10px] text-[var(--muted-foreground)] font-mono",children:["task ",e.taskId]})]},e.id))})]})]})]}),(0,t.jsxs)("section",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-6 shadow-sm",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(n.Activity,{className:"w-4 h-4"})," Evidence"]}),(0,t.jsx)("span",{className:"text-[10px] font-black uppercase px-2 py-0.5 rounded bg-[var(--muted)] text-[var(--muted-foreground)]",children:"Non-canonical"})]}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)] leading-relaxed mb-4",children:"Raw and semi-structured traces that support reflection and learning. These should be inspectable, but not treated as canonical truth."}),(0,t.jsx)("div",{className:"grid grid-cols-2 xl:grid-cols-4 gap-3",children:[{label:"Journal",value:es?.journalEntries??G.length},{label:"Activity",value:es?.activityEvents??T?.activity?.length??0},{label:"Reactions",value:es?.reactions??0},{label:"Comments",value:es?.comments??0}].map(e=>(0,t.jsxs)("div",{className:"rounded-2xl bg-[var(--app-shell-subtle)] border border-[var(--border)] p-4",children:[(0,t.jsx)("div",{className:"text-lg font-bold text-[var(--foreground)]",children:e.value}),(0,t.jsx)("div",{className:"text-[10px] font-black uppercase tracking-wider text-[var(--muted-foreground)]",children:e.label})]},e.label))})]})]}),"feed"===U&&(0,t.jsxs)("div",{className:"space-y-4",children:[Z||Q||T?.identity?.seed?(0,t.jsx)("div",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-6 shadow-sm",children:Z?(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(g.Target,{className:"w-4 h-4"})," Self-Model"]}),T?.selfDerivedAt&&(0,t.jsxs)("span",{className:"text-[10px] text-[var(--muted-foreground)] flex items-center gap-1",children:[(0,t.jsx)(p.RefreshCw,{className:"w-3 h-3"}),"v",T.selfVersion," — ",ei(T.selfDerivedAt)]})]}),(0,t.jsx)("div",{className:"text-sm text-[var(--foreground)] leading-relaxed prose prose-sm prose-slate max-w-none",children:(0,t.jsx)(C.Markdown,{content:Z})})]}):Q?(0,t.jsxs)("div",{children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2 mb-4",children:[(0,t.jsx)(g.Target,{className:"w-4 h-4"})," Identity"]}),(0,t.jsx)("div",{className:"text-sm text-[var(--foreground)] leading-relaxed prose prose-sm prose-slate max-w-none",children:(0,t.jsx)(C.Markdown,{content:Q})})]}):T?.identity?.seed?(0,t.jsxs)("div",{children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2 mb-4",children:[(0,t.jsx)(g.Target,{className:"w-4 h-4"})," Identity Seed"]}),(0,t.jsxs)("p",{className:"text-sm text-[var(--muted-foreground)] italic border-l-4 pl-4",style:{borderColor:J},children:["“",String(T.identity.seed),"”"]})]}):null}):null,(0,t.jsxs)("div",{className:"flex items-center justify-between px-2",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(u.MessageSquare,{className:"w-4 h-4"})," Messages"]}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:[en.length," messages"]})]}),0===en.length?(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-12 text-center",children:[(0,t.jsx)(u.MessageSquare,{size:32,className:"mx-auto mb-3 text-[var(--muted-foreground)]"}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No messages yet"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-1",children:"Messages will appear here as this agent participates in threads"})]}):en.map(e=>{var r;let a=e.prevContent?(0,S.stripMarkers)(e.prevContent):null,n=(e=>{if(!e)return"You";let t=el.get(e);return t?.name??e})(e.prevParticipantId),l=(r=e.prevParticipantId)?el.get(r)?.color??"#94a3b8":"#6366f1",i=e.threadTitle?(0,S.stripMarkers)(e.threadTitle):null;return(0,t.jsx)("article",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-6 hover:shadow-xl hover:shadow-black/5 transition-all group",children:(0,t.jsxs)("div",{className:"flex items-start gap-4",children:[(0,t.jsx)("img",{src:(0,w.agentAvatarUrl)(M.id,40,M.color),alt:"",className:"w-10 h-10 rounded-2xl shrink-0 mt-0.5 shadow-sm"}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsx)("div",{className:"flex items-center justify-between mb-1",children:(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"font-bold text-[var(--foreground)]",children:M.name}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:["• ",ei(e.timestamp)]})]})}),e.rootMessageId&&i&&(0,t.jsxs)(s.default,{href:`/thread/${e.threadId}`,className:"inline-flex items-center gap-1.5 mb-3 px-2.5 py-1 rounded-lg bg-[var(--app-shell-subtle)] border border-[var(--border)] hover:border-[var(--border)] hover:bg-[var(--muted)] transition-colors text-[11px] font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] group/thread",children:[(0,t.jsx)(c.Hash,{className:"w-3 h-3 text-[var(--muted-foreground)] group-hover/thread:text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"truncate max-w-[300px]",children:i}),(0,t.jsx)(h.ChevronRight,{className:"w-3 h-3 text-[var(--muted-foreground)] group-hover/thread:text-[var(--muted-foreground)]"})]}),a&&(0,t.jsxs)("div",{className:"mb-3 flex items-start gap-2 pl-1",children:[(0,t.jsx)(j.CornerDownRight,{className:"w-3.5 h-3.5 text-[var(--muted-foreground)] shrink-0 mt-1"}),(0,t.jsxs)("div",{className:"flex-1 min-w-0 p-2.5 rounded-xl bg-[var(--app-shell-subtle)] border border-[var(--border)]",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 mb-1",children:[e.prevParticipantId&&(0,t.jsx)("img",{src:(0,w.agentAvatarUrl)(e.prevParticipantId,16,l),alt:"",className:"w-4 h-4 rounded"}),(0,t.jsx)("span",{className:"text-[10px] font-bold",style:{color:l},children:n})]}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] leading-relaxed line-clamp-2",children:a})]})]}),(0,t.jsx)("div",{className:"text-sm text-[var(--foreground)]",children:(0,t.jsx)(C.Markdown,{content:e.content})}),(0,t.jsxs)("div",{className:"mt-3 flex items-center gap-1.5 text-[10px] text-[var(--muted-foreground)] font-medium",children:[(0,t.jsx)(f.Clock,{className:"w-3 h-3"}),eo(e.timestamp)]})]})]})},e.id)})]}),"reflections"===U&&(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-2",children:[(0,t.jsxs)("h2",{className:"text-xs font-black text-[var(--muted-foreground)] uppercase tracking-[0.2em] flex items-center gap-2",children:[(0,t.jsx)(m.BookOpen,{className:"w-4 h-4"})," Journal Reflections"]}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:[Y.length," reflections"]})]}),0===Y.length?(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-3xl border border-[var(--border)] p-12 text-center",children:[(0,t.jsx)(x.Sparkles,{size:32,className:"mx-auto mb-3 text-[var(--muted-foreground)]"}),(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No reflections yet"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-1",children:"Reflections will appear as this agent evolves its self-model"})]}):Y.map((e,r)=>{let a=e.body?(0,S.stripMarkers)(e.body):"";return(0,t.jsx)("article",{className:"bg-[var(--card-bg)] rounded-3xl border border-amber-100 ring-1 ring-amber-200 p-6 hover:shadow-xl hover:shadow-black/5 transition-all group",children:(0,t.jsxs)("div",{className:"flex items-start gap-4",children:[(0,t.jsxs)("div",{className:"relative shrink-0",children:[(0,t.jsx)("img",{alt:"",className:"w-10 h-10 rounded-2xl shadow-sm",src:(0,w.agentAvatarUrl)(M.id,40,M.color)}),(0,t.jsx)("div",{className:"absolute -top-1 -right-1 w-4 h-4 rounded-full flex items-center justify-center border-2 border-[var(--card-bg)]",style:{backgroundColor:J},children:(0,t.jsx)(x.Sparkles,{className:"w-2 h-2 text-white"})})]}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"font-bold text-[var(--foreground)]",children:M.name}),(0,t.jsx)("span",{className:"text-[10px] font-black uppercase px-2 py-0.5 rounded bg-amber-100 text-amber-700",children:"reflection"}),(0,t.jsxs)("span",{className:"text-xs text-[var(--muted-foreground)]",children:["• ",ei(e.t)]})]}),e.selfVersion&&(0,t.jsxs)("span",{className:"text-[10px] text-[var(--muted-foreground)] font-mono",children:["v",e.selfVersion]})]}),e.observation&&(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mb-3",children:e.observation}),a&&(0,t.jsx)("div",{className:"text-sm text-[var(--foreground)] leading-relaxed prose prose-sm prose-slate max-w-none",children:(0,t.jsx)(C.Markdown,{content:a})}),(e.judgement||e.delta||e.intent)&&(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3 mt-4 pt-4 border-t border-[var(--border)] group-hover:border-[var(--border)] transition-colors",children:[e.judgement&&(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)("div",{className:"text-[10px] font-black text-[var(--muted-foreground)] uppercase tracking-wider",children:"Judgment"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] leading-relaxed",children:e.judgement})]}),e.delta&&(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)("div",{className:"text-[10px] font-black text-[var(--muted-foreground)] uppercase tracking-wider",children:"Delta"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] leading-relaxed",children:e.delta})]}),e.intent&&(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)("div",{className:"text-[10px] font-black text-[var(--muted-foreground)] uppercase tracking-wider",children:"Intent"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] leading-relaxed",children:e.intent})]})]}),(0,t.jsxs)("div",{className:"mt-4 flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 text-[10px] text-[var(--muted-foreground)] font-medium",children:[(0,t.jsx)(f.Clock,{className:"w-3 h-3"}),eo(e.t)]}),e.thread&&(0,t.jsxs)("span",{className:"text-[10px] text-[var(--muted-foreground)] font-mono flex items-center gap-1",children:[(0,t.jsx)(c.Hash,{className:"w-3 h-3"}),e.thread.substring(0,12),"..."]})]})]})]})},e.id??r)})]})]})]})]}),B&&(0,t.jsx)(w.AgentForm,{title:"Edit agent",initial:{name:M.name,role:M.role||"",provider:M.provider,model:M.model||"",identity:M.identity||"",color:M.color,skills:M.skills||[],skillBindings:M.skillBindings||[]},agentId:M.id,submitLabel:"Save",onSubmit:async e=>{await fetch("/api/participants",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:M.id,name:e.name,role:e.role||null,provider:e.provider,model:e.model,color:e.color,...e.identity?{identity:e.identity}:{},skills:e.skills??[],skillBindings:e.skillBindings??[]})}),E({...M,name:e.name,role:e.role||void 0,provider:e.provider,model:e.model,identity:e.identity,color:e.color??M.color,skills:e.skills??[],skillBindings:e.skillBindings??[]}),H(!1)},onCancel:()=>H(!1)})]})}e.s(["default",()=>M])}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,794731,e=>{"use strict";let t=(0,e.i(363732).default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);e.s(["Trash2",()=>t],794731)},640481,e=>{"use strict";let t=(0,e.i(363732).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);e.s(["Pencil",()=>t],640481)},580873,e=>{"use strict";let t=(0,e.i(363732).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);e.s(["Clock",()=>t],580873)},417442,e=>{"use strict";let t=(0,e.i(363732).default)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);e.s(["ArrowRight",()=>t],417442)},807087,e=>{"use strict";let t=(0,e.i(363732).default)("circle-check",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["CheckCircle2",()=>t],807087)},287472,e=>{"use strict";var t=e.i(935851);let r=new Map;function s(e){let t=r.get(e);return t?Date.now()-t.ts>3e5?(r.delete(e),null):t:null}function a(e){r.delete(e)}function n(e,n){let[l,i]=(0,t.useState)(!1),[o,d]=(0,t.useState)(!0),[c,u]=(0,t.useState)(null),[m,p]=(0,t.useState)({claude:!1,codex:!1,gemini:!1}),[x,h]=(0,t.useState)({}),g=(0,t.useRef)(null),f=`/api/trackers/${encodeURIComponent(e)}`,v=`${e}:${n}`,j=(0,t.useCallback)(async()=>{try{let e=await fetch(`${f}/mcp-setup`),t=await e.json();h(t.configured??{})}catch{}},[f]),b=(0,t.useCallback)(async()=>{if(!n)return i(!1),!1;let e=s(v);if(e)return i(e.connected),u(e.user),p(e.clis),h(e.mcpConfigured),d(!1),e.connected;try{var t;let e=`?projectId=${encodeURIComponent(n)}`,[s,a]=await Promise.all([fetch(`${f}/status${e}`),fetch(`${f}/mcp-setup`)]),l=await s.json(),o=await a.json(),d=l.clis??{claude:!1,codex:!1,gemini:!1},c=o.configured??{},m=l.user??null;return i(l.connected),u(m),p(d),h(c),t={connected:l.connected,user:m,clis:d,mcpConfigured:c},r.set(v,{...t,ts:Date.now()}),l.connected}catch{return i(!1),!1}finally{d(!1)}},[n,f,v]);(0,t.useEffect)(()=>{let e=s(v);e?(i(e.connected),u(e.user),p(e.clis),h(e.mcpConfigured),d(!1)):(d(!0),i(!1),u(null))},[e,n,v]),(0,t.useEffect)(()=>(b(),()=>{g.current&&clearInterval(g.current)}),[b]);let y=(0,t.useCallback)(()=>{n&&(a(v),window.open(`${f}/auth?projectId=${encodeURIComponent(n)}`,"_blank","noopener"),g.current&&clearInterval(g.current),g.current=setInterval(async()=>{a(v),await b()&&g.current&&(clearInterval(g.current),g.current=null)},2e3))},[n,f,v,b]),N=(0,t.useCallback)(async e=>{if(!n)return{ok:!1,error:"Missing projectId"};try{let t=await fetch(`${f}/token`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectId:n,accessToken:e})});if(!t.ok){let e=await t.json().catch(()=>({}));return{ok:!1,error:e.error||"Failed to save token"}}return a(v),await b(),{ok:!0}}catch{return{ok:!1,error:"Failed to connect"}}},[n,f,v,b]);return{connected:l,loading:o,user:c,clis:m,mcpConfigured:x,connect:y,connectWithKey:N,disconnect:(0,t.useCallback)(async()=>{n&&(a(v),await fetch(`${f}/status?projectId=${encodeURIComponent(n)}`,{method:"DELETE"}),"github"===e&&Object.keys(sessionStorage).filter(e=>e.startsWith("github_")).forEach(e=>sessionStorage.removeItem(e)),i(!1),u(null))},[n,f,v,e]),configureMcp:(0,t.useCallback)(async e=>{try{let t=await fetch(`${f}/mcp-setup`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cli:e})});if(!t.ok){let e=await t.json().catch(()=>({}));return{ok:!1,error:e.error||"Failed to configure MCP"}}return await j(),{ok:!0}}catch{return{ok:!1,error:"Failed to configure MCP"}}},[f,j]),refresh:b}}e.s(["useTrackerConnection",()=>n])},378562,e=>{"use strict";var t=e.i(762281),r=e.i(307241);function s({icon:e,title:s,description:a,ctaLabel:n,ctaHref:l}){return(0,t.jsx)("div",{className:"h-full w-full flex items-center justify-center bg-[var(--background)] px-6 py-12",children:(0,t.jsxs)("div",{className:"max-w-md w-full text-center space-y-6",children:[(0,t.jsx)("div",{className:"mx-auto w-14 h-14 rounded-2xl bg-[var(--secondary)] flex items-center justify-center",children:e}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("h1",{className:"text-[22px] font-bold text-[var(--foreground)] tracking-tight",children:s}),(0,t.jsx)("p",{className:"text-[14px] text-[var(--muted-foreground)] leading-relaxed",children:a})]}),(0,t.jsx)(r.default,{href:l,className:"inline-flex items-center gap-2 px-6 py-2.5 bg-[var(--foreground)] text-[var(--background)] text-[14px] font-semibold rounded-lg hover:opacity-90 transition-all",children:n})]})})}e.s(["EmptyStateCard",()=>s])},768834,e=>{"use strict";var t=e.i(935851);let r=e=>{let t,r=new Set,s=(e,s)=>{let a="function"==typeof e?e(t):e;if(!Object.is(a,t)){let e=t;t=(null!=s?s:"object"!=typeof a||null===a)?a:Object.assign({},t,a),r.forEach(r=>r(t,e))}},a=()=>t,n={setState:s,getState:a,getInitialState:()=>l,subscribe:e=>(r.add(e),()=>r.delete(e))},l=t=e(s,a,n);return n},s=e=>{let s=e?r(e):r,a=e=>(function(e,r=e=>e){let s=t.default.useSyncExternalStore(e.subscribe,t.default.useCallback(()=>r(e.getState()),[e,r]),t.default.useCallback(()=>r(e.getInitialState()),[e,r]));return t.default.useDebugValue(s),s})(s,e);return Object.assign(a,s),a},a=e=>e?s(e):s;e.s(["create",()=>a],768834)},50778,e=>{"use strict";let t,r;var s=e.i(768834);let a=e=>t=>{try{let r=e(t);if(r instanceof Promise)return r;return{then:e=>a(e)(r),catch(e){return this}}}catch(e){return{then(e){return this},catch:t=>a(t)(e)}}};function n(e){let t=e.map(e=>{let t=e.title.match(/^Terminal (\d+)$/);return t?Number(t[1]):0}).filter(e=>e>0),r=t.length>0?Math.max(...t)+1:1;return`Terminal ${r}`}function l(e,t,r){return Math.max(t,Math.min(r,e))}function i(e){let t=e.map(e=>{let t=e.title.match(/^Terminal (\d+)$/);return t?Number(t[1]):0}).filter(e=>e>0),r=t.length>0?Math.max(...t)+1:1;return`Terminal ${r}`}function o(e,t,r=crypto.randomUUID()){return{id:r,title:i(e),cwd:t,createdAt:Date.now(),status:"connecting",colSpan:1,rowSpan:1}}function d(e,t,r,s,a){return{id:e?.id||t,title:"string"==typeof e?.title&&e.title.trim().length>0?e.title:i([]),cwd:e?.cwd??s,createdAt:e?.createdAt??r,sessionId:void 0,status:"connecting",command:e?.command??a,colSpan:l(e?.colSpan??1,1,2),rowSpan:l(e?.rowSpan??1,1,4)}}function c(e=[]){return e.map((e,t)=>{let r="number"==typeof e.createdAt?e.createdAt:Date.now()+t,s=[];if(Array.isArray(e.terminals)&&e.terminals.length>0)for(let[t,a]of e.terminals.entries()){let n=d(a,`${e.id||crypto.randomUUID()}-terminal-${t+1}`,"number"==typeof a?.createdAt?a.createdAt:r);a?.title&&0!==a.title.trim().length||(n.title=i(s)),s.push(n)}else{let t=d(e,String(e.id||crypto.randomUUID()),r,e.cwd,e.command);e.title&&0!==e.title.trim().length||(t.title=i(s)),s.push(t)}return{id:String(e.id||crypto.randomUUID()),title:"string"==typeof e.title?e.title:n([]),createdAt:r,terminals:s}})}function u(e,t,r){let s=r(e[t]??[]);return{...e,[t]:s}}let m=(0,s.create)()((t=(e,t)=>({sessions:{},getProjectSessions:e=>t().sessions[e]??[],createSession(r,s){let a=crypto.randomUUID(),l={id:a,title:n(t().sessions[r]??[]),createdAt:Date.now(),terminals:[o([],s)]};return e(e=>({sessions:u(e.sessions,r,e=>[...e,l])})),a},closeSession(t,r){e(e=>({sessions:u(e.sessions,t,e=>e.filter(e=>e.id!==r))}))},renameSession(t,r,s){e(e=>({sessions:u(e.sessions,t,e=>e.map(e=>e.id===r?{...e,title:s}:e))}))},addTerminal(t,r,s){let a=crypto.randomUUID(),n=!1;return e(e=>({sessions:u(e.sessions,t,e=>e.map(e=>e.id!==r?e:(n=!0,{...e,terminals:[...e.terminals,o(e.terminals,s,a)]})))})),n?a:null},closeTerminal(t,r,s){e(e=>({sessions:u(e.sessions,t,e=>e.map(e=>e.id!==r?e:{...e,terminals:e.terminals.filter(e=>e.id!==s)}).filter(e=>e.terminals.length>0))}))},renameTerminal(t,r,s,a){e(e=>({sessions:u(e.sessions,t,e=>e.map(e=>e.id===r?{...e,terminals:e.terminals.map(e=>e.id===s?{...e,title:a}:e)}:e))}))},updateTerminalLayout(t,r,s,a){e(e=>({sessions:u(e.sessions,t,e=>e.map(e=>e.id===r?{...e,terminals:e.terminals.map(e=>e.id===s?{...e,colSpan:l(a.colSpan??e.colSpan,1,2),rowSpan:l(a.rowSpan??e.rowSpan,1,4)}:e)}:e))}))},setTerminalSessionId(t,r,s,a){e(e=>({sessions:u(e.sessions,t,e=>e.map(e=>e.id===r?{...e,terminals:e.terminals.map(e=>e.id===s?{...e,sessionId:a}:e)}:e))}))},updateTerminalStatus(t,r,s,a){e(e=>({sessions:u(e.sessions,t,e=>e.map(e=>e.id===r?{...e,terminals:e.terminals.map(e=>e.id===s?{...e,status:a}:e)}:e))}))}}),r={name:"agx-terminal-tabs",merge(e,t){let r=e??{};return{...t,...r,sessions:function(e){if(e&&"object"==typeof e&&!Array.isArray(e)){let t={};for(let[r,s]of Object.entries(e))t[r]=c(Array.isArray(s)?s:[]);return t}return Array.isArray(e)?{__global__:c(e)}:{}}(r.sessions)}}},(e,s,n)=>{let l,i={storage:function(e,t){let r;try{r=e()}catch(e){return}return{getItem:e=>{var t;let s=e=>null===e?null:JSON.parse(e,void 0),a=null!=(t=r.getItem(e))?t:null;return a instanceof Promise?a.then(s):s(a)},setItem:(e,t)=>r.setItem(e,JSON.stringify(t,void 0)),removeItem:e=>r.removeItem(e)}}(()=>window.localStorage),partialize:e=>e,version:0,merge:(e,t)=>({...t,...e}),...r},o=!1,d=0,c=new Set,u=new Set,m=i.storage;if(!m)return t((...t)=>{console.warn(`[zustand persist middleware] Unable to update item '${i.name}', the given storage is currently unavailable.`),e(...t)},s,n);let p=()=>{let e=i.partialize({...s()});return m.setItem(i.name,{state:e,version:i.version})},x=n.setState;n.setState=(e,t)=>(x(e,t),p());let h=t((...t)=>(e(...t),p()),s,n);n.getInitialState=()=>h;let g=()=>{var t,r;if(!m)return;let n=++d;o=!1,c.forEach(e=>{var t;return e(null!=(t=s())?t:h)});let x=(null==(r=i.onRehydrateStorage)?void 0:r.call(i,null!=(t=s())?t:h))||void 0;return a(m.getItem.bind(m))(i.name).then(e=>{if(e)if("number"!=typeof e.version||e.version===i.version)return[!1,e.state];else{if(i.migrate){let t=i.migrate(e.state,e.version);return t instanceof Promise?t.then(e=>[!0,e]):[!0,t]}console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}return[!1,void 0]}).then(t=>{var r;if(n!==d)return;let[a,o]=t;if(e(l=i.merge(o,null!=(r=s())?r:h),!0),a)return p()}).then(()=>{n===d&&(null==x||x(s(),void 0),l=s(),o=!0,u.forEach(e=>e(l)))}).catch(e=>{n===d&&(null==x||x(void 0,e))})};return n.persist={setOptions:e=>{i={...i,...e},e.storage&&(m=e.storage)},clearStorage:()=>{null==m||m.removeItem(i.name)},getOptions:()=>i,rehydrate:()=>g(),hasHydrated:()=>o,onHydrate:e=>(c.add(e),()=>{c.delete(e)}),onFinishHydration:e=>(u.add(e),()=>{u.delete(e)})},i.skipHydration||g(),l||h}));e.s(["useTerminalTabsStore",0,m],50778)},317389,e=>{"use strict";var t=e.i(762281),r=e.i(935851),s=e.i(572665),a=e.i(506420),n=e.i(716436);function l({projectSlug:e,projectThreadIds:s=[]}){let l=(0,a.useRouter)(),[i,o]=(0,r.useState)([]),[d,c]=(0,r.useState)([]),u=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/participants");if(!e.ok)return;let t=await e.json();c(Array.isArray(t)?t:t.participants??[])}catch{}},[]);(0,r.useEffect)(()=>{u()},[u]),(0,r.useEffect)(()=>{let t=!1,r=e.trim().toLowerCase(),a=new Set(s.map(e=>e.trim()).filter(Boolean)),n=async()=>{try{let e=await fetch("/api/processes?enrich=1");if(!e.ok||t)return;let s=await e.json();if(t)return;let n=s.filter(e=>"spawning"===e.state||"running"===e.state).filter(e=>{let t=e.projectSlug.trim().toLowerCase();return!!t&&t===r||a.has(e.workspaceId)||a.has(e.threadId)}).sort((e,t)=>t.lastActivity-e.lastActivity);o(n)}catch{}};n();let l=setInterval(n,3e3);return()=>{t=!0,clearInterval(l)}},[e,s]);let m=new Map(d.map(e=>[e.id,e.name])),p=e=>m.get(e)||e.slice(0,8),x=[],h=new Map;for(let e of i){let t=h.get(e.agentId);t||(t={agentId:e.agentId,agentName:p(e.agentId),activities:[]},h.set(e.agentId,t),x.push(t)),t.activities.push({key:`${e.workspaceId}-${e.threadId}-${e.agentId}`,workspaceId:e.workspaceId,threadId:e.threadId,state:e.state,threadLabel:e.threadTitle?.trim()?e.threadTitle.trim():e.threadId?.trim()?`Thread ${e.threadId.slice(0,12)}...`:"Main thread",lastActiveLabel:function(e){let t=Math.max(0,Math.floor((Date.now()-e)/1e3));if(t<5)return"Just now";if(t<60)return`${t}s ago`;let r=Math.floor(t/60);if(r<60)return`${r}m ago`;let s=Math.floor(r/60);if(s<24)return`${s}h ago`;let a=Math.floor(s/24);return`${a}d ago`}(e.lastActivity),lastActivity:e.lastActivity,linearIssueId:e.linearIssueId,linearRunId:e.linearRunId,trackerType:e.trackerType,responseMessageId:e.responseMessageId})}if(0===x.length)return null;let g=i.length;return(0,t.jsxs)("section",{className:"col-span-full overflow-hidden rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)]",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3 border-b border-[var(--border)] px-4 py-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:[(0,t.jsx)(n.Activity,{className:"h-3.5 w-3.5"}),"Working Now"]}),(0,t.jsxs)("p",{className:"mt-1 text-xs text-[var(--muted-foreground)]",children:[x.length," ",1===x.length?"agent":"agents"," active across"," ",g," ",1===g?"thread":"threads","."]})]}),(0,t.jsxs)("span",{className:"rounded-full border border-[var(--status-completed-border)] bg-[var(--status-completed-bg)] px-2.5 py-1 text-[10px] font-medium uppercase tracking-wider text-[var(--status-completed-text)]",children:[g," live ",1===g?"entry":"entries"]})]}),(0,t.jsx)("div",{className:"divide-y divide-[var(--border)]",children:x.map(r=>(0,t.jsxs)("div",{className:"px-4 py-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-sm font-medium text-[var(--foreground)]",children:[(0,t.jsx)("span",{className:"h-2 w-2 rounded-full bg-emerald-400 animate-pulse"}),r.agentName]}),r.activities.length>1&&(0,t.jsxs)("span",{className:"rounded-full bg-[var(--secondary)] px-2 py-0.5 text-[10px] text-[var(--muted-foreground)]",children:[r.activities.length," threads"]})]}),(0,t.jsx)("div",{className:"space-y-1 ml-4",children:r.activities.map(r=>(0,t.jsxs)("div",{className:"mx-[-0.5rem] flex cursor-pointer items-center gap-3 rounded-lg px-2 py-1.5 text-sm transition-colors hover:bg-[var(--secondary)]",onClick:()=>l.push(function(e,t){if(t.linearIssueId&&t.linearRunId){let r=`/projects/${e}/tracking/${t.trackerType??"linear"}?issue=${encodeURIComponent(t.linearIssueId)}&run=${encodeURIComponent(t.linearRunId)}`;return t.responseMessageId?`${r}&message=${encodeURIComponent(t.responseMessageId)}`:r}let r=t.workspaceId??"",s=t.threadId??"",a="objective-chat:",n=r.startsWith(a)?r:s.startsWith(a)?s:null;if(n){let l=n.slice(a.length),i=new URLSearchParams;s&&s!==r&&i.set("session",s),t.responseMessageId&&i.set("message",t.responseMessageId);let o=i.toString();return`/projects/${e}/objectives/${encodeURIComponent(l)}${o?`?${o}`:""}`}let l="tracker-run:";if(r.startsWith(l)){let s=t.linearRunId??r.slice(l.length),a=new URLSearchParams;return t.linearIssueId&&a.set("issue",t.linearIssueId),a.set("run",s),t.responseMessageId&&a.set("message",t.responseMessageId),`/projects/${e}/tracking/${t.trackerType??"linear"}?${a.toString()}`}let i=new URLSearchParams;s&&i.set("open",s),t.responseMessageId&&i.set("message",t.responseMessageId);let o=i.toString();return`/projects/${e}/thread/${encodeURIComponent(r)}${o?`?${o}`:""}`}(e,r)),children:[(0,t.jsxs)("span",{className:"inline-flex shrink-0 items-center gap-1.5 rounded-full border border-[var(--status-completed-border)] bg-[var(--status-completed-bg)] px-2 py-0.5 text-[11px] font-medium text-[var(--status-completed-text)]",children:[(0,t.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-emerald-400"}),"spawning"===r.state?"Starting":"Working"]}),(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate text-[var(--foreground)]",children:r.threadLabel}),(0,t.jsx)("span",{className:"shrink-0 text-xs text-[var(--muted-foreground)]",children:r.lastActiveLabel})]},r.key))})]},r.agentId))})]})}var i=e.i(807087);function o({projectId:e,projectSlug:s,projectThreadIds:n=[]}){let l=(0,a.useRouter)(),[o,d]=(0,r.useState)([]),[c,u]=(0,r.useState)([]),[m,p]=(0,r.useState)([]),x=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/participants");if(!e.ok)return;let t=await e.json();u(Array.isArray(t)?t:t.participants??[])}catch{}},[]),h=(0,r.useCallback)(async()=>{try{let t=await fetch(`/api/projects/${e}/teams`);if(!t.ok)return;let r=await t.json();p(Array.isArray(r)?r:[])}catch{}},[e]);(0,r.useEffect)(()=>{x(),h()},[x,h]),(0,r.useEffect)(()=>{let e=!1,t=s.trim().toLowerCase(),r=new Set(n.map(e=>e.trim()).filter(Boolean)),a=async()=>{try{let s=await fetch("/api/processes?enrich=1");if(!s.ok||e)return;let a=await s.json();if(e)return;let n=a.filter(e=>"done"===e.state).filter(e=>{let s=e.projectSlug.trim().toLowerCase();return!!s&&s===t||r.has(e.workspaceId)||r.has(e.threadId)}).sort((e,t)=>t.lastActivity-e.lastActivity).slice(0,10);d(n)}catch{}};a();let l=setInterval(a,1e4);return()=>{e=!0,clearInterval(l)}},[s,n]);let g=new Map(c.map(e=>[e.id,e.name])),f=new Map;for(let e of m)for(let t of e.agents)f.set(t.agent_id,{id:e.id,name:e.name});return 0===o.length?null:(0,t.jsxs)("section",{className:"col-span-full overflow-hidden rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)]",children:[(0,t.jsx)("div",{className:"flex items-center justify-between gap-3 border-b border-[var(--border)] px-4 py-3",children:(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:[(0,t.jsx)(i.CheckCircle2,{className:"h-3.5 w-3.5"}),"Recently Completed"]}),(0,t.jsxs)("p",{className:"mt-1 text-xs text-[var(--muted-foreground)]",children:["Last ",o.length," completed"," ",1===o.length?"task":"tasks","."]})]})}),(0,t.jsx)("div",{className:"overflow-x-auto",children:(0,t.jsxs)("table",{className:"min-w-full text-sm",children:[(0,t.jsx)("thead",{className:"bg-[var(--secondary)]",children:(0,t.jsxs)("tr",{className:"text-left text-[11px] uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:[(0,t.jsx)("th",{className:"px-4 py-3 font-medium",children:"Agent"}),(0,t.jsx)("th",{className:"px-4 py-3 font-medium",children:"Status"}),(0,t.jsx)("th",{className:"px-4 py-3 font-medium",children:"Thread"}),(0,t.jsx)("th",{className:"px-4 py-3 font-medium",children:"Last active"})]})}),(0,t.jsx)("tbody",{children:o.map(e=>{let r;return(0,t.jsxs)("tr",{className:"cursor-pointer border-t border-[var(--border)] text-[var(--foreground)] transition-colors hover:bg-[var(--secondary)]",onClick:()=>l.push(function(e,t){if(t.linearIssueId&&t.linearRunId){let r=`/projects/${e}/tracking/${t.trackerType??"linear"}?issue=${encodeURIComponent(t.linearIssueId)}&run=${encodeURIComponent(t.linearRunId)}`;return t.responseMessageId?`${r}&message=${encodeURIComponent(t.responseMessageId)}`:r}let r=t.workspaceId??"",s=t.threadId??"",a="objective-chat:",n=r.startsWith(a)?r:s.startsWith(a)?s:null;if(n){let l=n.slice(a.length),i=new URLSearchParams;s&&s!==r&&i.set("session",s),t.responseMessageId&&i.set("message",t.responseMessageId);let o=i.toString();return`/projects/${e}/objectives/${encodeURIComponent(l)}${o?`?${o}`:""}`}let l="tracker-run:";if(r.startsWith(l)){let s=t.linearRunId??r.slice(l.length),a=new URLSearchParams;return t.linearIssueId&&a.set("issue",t.linearIssueId),a.set("run",s),t.responseMessageId&&a.set("message",t.responseMessageId),`/projects/${e}/tracking/${t.trackerType??"linear"}?${a.toString()}`}let i=new URLSearchParams;s&&i.set("open",s),t.responseMessageId&&i.set("message",t.responseMessageId);let o=i.toString();return`/projects/${e}/thread/${encodeURIComponent(r)}${o?`?${o}`:""}`}(s,e)),children:[(0,t.jsx)("td",{className:"px-4 py-3 text-[var(--foreground)]",children:(r=e.agentId,g.get(r)||r.slice(0,8))}),(0,t.jsx)("td",{className:"px-4 py-3",children:(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-full border border-[var(--border)] bg-[var(--secondary)] px-2 py-0.5 text-[11px] font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(i.CheckCircle2,{className:"h-3 w-3"}),"Done"]})}),(0,t.jsx)("td",{className:"max-w-[24rem] px-4 py-3 text-[var(--muted-foreground)]",children:(0,t.jsx)("span",{className:"block truncate",children:e.threadTitle?.trim()?e.threadTitle.trim():e.threadId?.trim()?`Thread ${e.threadId.slice(0,12)}...`:"Main thread"})}),(0,t.jsx)("td",{className:"px-4 py-3 text-[var(--muted-foreground)]",children:function(e){let t=Math.max(0,Math.floor((Date.now()-e)/1e3));if(t<5)return"Just now";if(t<60)return`${t}s ago`;let r=Math.floor(t/60);if(r<60)return`${r}m ago`;let s=Math.floor(r/60);if(s<24)return`${s}h ago`;let a=Math.floor(s/24);return`${a}d ago`}(e.lastActivity)})]},`${e.workspaceId}-${e.threadId}-${e.agentId}`)})})]})})]})}var d=e.i(417442);function c({projectId:e,onViewAll:a}){let[n,l]=(0,r.useState)([]),[i,o]=(0,r.useState)(!0);return(0,r.useEffect)(()=>{fetch(`/api/projects/${e}/teams`).then(e=>e.ok?e.json():{teams:[]}).then(e=>l(e.teams??[])).catch(()=>l([])).finally(()=>o(!1))},[e]),(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)] p-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(s.Users,{className:"h-4 w-4 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-sm font-medium text-[var(--foreground)]",children:"Teams"}),!i&&n.length>0&&(0,t.jsx)("span",{className:"rounded-full bg-[var(--secondary)] px-2 py-0.5 text-xs text-[var(--muted-foreground)]",children:n.length})]}),a&&(0,t.jsxs)("button",{onClick:a,className:"flex items-center gap-1 text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:["View all ",(0,t.jsx)(d.ArrowRight,{className:"w-3 h-3"})]})]}),i?(0,t.jsx)("div",{className:"space-y-2",children:[1,2,3].map(e=>(0,t.jsx)("div",{className:"h-5 animate-pulse rounded bg-[var(--muted)]"},e))}):0===n.length?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No teams yet"}):(0,t.jsx)("div",{className:"space-y-2",children:n.slice(0,5).map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm",children:[(0,t.jsx)(s.Users,{className:"h-4 w-4 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-[var(--foreground)]",children:e.name}),(0,t.jsxs)("span",{className:"text-[var(--muted-foreground)]",children:[e.agents.length," agents"]})]},e.id))})]})}var u=e.i(580873);function m({projectId:e,projectSlug:s,onViewAll:n}){let l=(0,a.useRouter)(),[i,o]=(0,r.useState)([]),[c,m]=(0,r.useState)([]),[p,x]=(0,r.useState)({}),[h,g]=(0,r.useState)(!0),[f,v]=(0,r.useState)(()=>Date.now());(0,r.useEffect)(()=>{let e=window.setInterval(()=>{v(Date.now())},3e4);return()=>{window.clearInterval(e)}},[]),(0,r.useEffect)(()=>{let t=!1,r=async()=>{try{let[r,s]=await Promise.all([fetch("/api/automations"),fetch(`/api/prompt-jobs?projectId=${encodeURIComponent(e)}`)]),a=r.ok?await r.json():{automations:[]},n=s.ok?await s.json():{jobs:[]};if(t)return;let l=(a.automations??[]).filter(t=>t.projectId===e).slice(0,20),i=(n.jobs??[]).filter(t=>t.projectId===e).slice(0,20);o(l),m(i);let d=Object.fromEntries(await Promise.all(i.map(async e=>{try{let t=await fetch(`/api/prompt-jobs/${encodeURIComponent(e.id)}/runs`);if(!t.ok)return[e.id,null];let r=((await t.json()).runs??[])[0]??null;return[e.id,r]}catch{return[e.id,null]}})));if(t)return;x(d)}catch{if(t)return;o([]),m([]),x({})}finally{t||g(!1)}};return g(!0),r(),()=>{t=!0}},[e]);let j=e=>{if(!s||"prompt"!==e.kind)return;let t=new URLSearchParams({job:e.jobId});e.runId&&t.set("run",e.runId),l.push(`/projects/${s}/automations?${t.toString()}`)},b=[...c.filter(e=>{let t=p[e.id];return t?.status==="queued"||t?.status==="running"}).map(e=>({id:`prompt:${e.id}`,title:e.name,kind:"prompt",jobId:e.id,runId:p[e.id]?.id??null,updatedAt:p[e.id]?.createdAt??e.updatedAt})),...i.filter(e=>"running"===e.executionState||e.schedule?.tickInProgress).map(e=>({id:`automation:${e.graphId}`,title:e.title,kind:"automation",updatedAt:e.updatedAt}))].sort((e,t)=>Date.parse(t.updatedAt)-Date.parse(e.updatedAt)),y=new Set(b.map(e=>e.id)),N=[...c.filter(e=>"active"===e.state&&"number"==typeof e.nextRunAt).map(e=>({id:`prompt:${e.id}`,title:e.name,kind:"prompt",jobId:e.id,runId:null,nextRunAt:e.nextRunAt})),...i.filter(e=>e.schedule?.state==="active"&&"number"==typeof e.schedule?.nextTickAt).map(e=>({id:`automation:${e.graphId}`,title:e.title,kind:"automation",nextRunAt:e.schedule.nextTickAt}))].filter(e=>!y.has(e.id)).sort((e,t)=>e.nextRunAt-t.nextRunAt),w=c.length+i.length;return(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)] p-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(u.Clock,{className:"h-4 w-4 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-sm font-medium text-[var(--foreground)]",children:"Scheduled Jobs"}),!h&&w>0&&(0,t.jsx)("span",{className:"rounded-full bg-[var(--secondary)] px-2 py-0.5 text-xs text-[var(--muted-foreground)]",children:w})]}),n&&(0,t.jsxs)("button",{onClick:n,className:"flex items-center gap-1 text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:["View all ",(0,t.jsx)(d.ArrowRight,{className:"w-3 h-3"})]})]}),h?(0,t.jsx)("div",{className:"space-y-2",children:[1,2,3].map(e=>(0,t.jsx)("div",{className:"h-5 animate-pulse rounded bg-[var(--muted)]"},e))}):0===w?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No scheduled tasks"}):(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between text-xs uppercase tracking-wide text-[var(--muted-foreground)]",children:[(0,t.jsx)("span",{children:"Currently running"}),(0,t.jsx)("span",{children:b.length})]}),0===b.length?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"Nothing running right now"}):(0,t.jsx)("div",{className:"space-y-2",children:b.slice(0,3).map(e=>(0,t.jsxs)("button",{type:"button",onClick:()=>j(e),disabled:"prompt"!==e.kind||!s,className:`flex w-full items-center gap-2 rounded-md px-1 py-1 text-left text-sm transition-colors ${"prompt"===e.kind&&s?"cursor-pointer hover:bg-[var(--secondary)]":"cursor-default"}`,children:[(0,t.jsx)("span",{className:"h-2 w-2 shrink-0 rounded-full bg-emerald-400"}),(0,t.jsx)("span",{className:"truncate text-[var(--foreground)]",children:e.title}),(0,t.jsx)("span",{className:"ml-auto shrink-0 text-xs text-[var(--status-completed-text)]",children:"running"})]},e.id))})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between text-xs uppercase tracking-wide text-[var(--muted-foreground)]",children:[(0,t.jsx)("span",{children:"Upcoming runs"}),(0,t.jsx)("span",{children:N.length})]}),0===N.length?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No upcoming runs"}):(0,t.jsx)("div",{className:"space-y-2",children:N.slice(0,3).map(e=>{var r;return(0,t.jsxs)("button",{type:"button",onClick:()=>j(e),disabled:"prompt"!==e.kind||!s,className:`flex w-full items-center gap-2 rounded-md px-1 py-1 text-left text-sm transition-colors ${"prompt"===e.kind&&s?"cursor-pointer hover:bg-[var(--secondary)]":"cursor-default"}`,children:[(0,t.jsx)(u.Clock,{className:"h-3.5 w-3.5 shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("div",{className:"truncate text-[var(--foreground)]",children:e.title}),(0,t.jsxs)("div",{className:"text-xs text-[var(--muted-foreground)]",children:["number"!=typeof(r=e.nextRunAt)?"No next run":new Intl.DateTimeFormat(void 0,{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"}).format(new Date(r))," ",(0,t.jsxs)("span",{className:"text-[var(--app-shell-soft-text)]",children:["• ",(e=>{if("number"!=typeof e)return"";let t=e-f;if(t<=0)return"now";let r=Math.ceil(t/6e4);if(r<60)return`in ${r}m`;let s=Math.floor(r/60),a=r%60;if(s<24)return 0===a?`in ${s}h`:`in ${s}h ${a}m`;let n=Math.floor(s/24),l=s%24;return 0===l?`in ${n}d`:`in ${n}d ${l}h`})(e.nextRunAt)]})]})]})]},e.id)})})]})]})]})}var p=e.i(196630),x=e.i(640481),h=e.i(929870),g=e.i(794731),f=e.i(797167),v=e.i(524123);function j({projectId:e,repos:s,onViewAll:a}){let{updateProject:n}=(0,v.useProjects)(),[l,i]=(0,r.useState)(s),[o,c]=(0,r.useState)(!1),[u,m]=(0,r.useState)(null),[j,b]=(0,r.useState)(""),[y,N]=(0,r.useState)(""),[w,k]=(0,r.useState)(null);(0,r.useEffect)(()=>{i(s)},[s]);let I=e=>{k(e),window.setTimeout(()=>k(null),2500)},$=e=>e.map(e=>({id:e.id,name:e.name,path:e.path,git_url:e.git_url})),S=()=>{b(""),N(""),m(null),c(!1)},C=async()=>{let t=j.trim(),r=y.trim();if(t&&r){i([...l,{id:`tmp-${Date.now()}`,name:t,path:r}]),S();try{await n(e,{repos:[...$(l),{name:t,path:r}]}),I("Folder added")}catch{i(l),I("Failed to add folder")}}},A=async t=>{let r=j.trim(),s=y.trim();if(!r||!s)return;let a=l.map(e=>e.id===t?{...e,name:r,path:s}:e);i(a),S();try{await n(e,{repos:$(a)}),I("Folder updated")}catch{i(l),I("Failed to update folder")}},T=async t=>{let r=l.filter(e=>e.id!==t);i(r),u===t&&S();try{await n(e,{repos:$(r)}),I("Folder deleted")}catch{i(l),I("Failed to delete folder")}};return(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)] p-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(p.FolderGit2,{className:"h-4 w-4 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-sm font-medium text-[var(--foreground)]",children:"Folders"}),l.length>0&&(0,t.jsx)("span",{className:"rounded-full bg-[var(--secondary)] px-2 py-0.5 text-xs text-[var(--muted-foreground)]",children:l.length})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>{m(null),b(""),N(""),c(!0)},className:"flex items-center gap-1 text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:[(0,t.jsx)(h.Plus,{className:"w-3 h-3"}),"Add"]}),a&&(0,t.jsxs)("button",{onClick:a,className:"flex items-center gap-1 text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:["View all ",(0,t.jsx)(d.ArrowRight,{className:"w-3 h-3"})]})]})]}),w&&(0,t.jsx)("p",{className:"mb-3 text-xs text-[var(--muted-foreground)]",children:w}),(o||u)&&(0,t.jsxs)("div",{className:"mb-3 space-y-2 rounded-xl border border-[var(--border)] bg-[var(--secondary)] p-3",children:[(0,t.jsx)("input",{value:j,onChange:e=>b(e.target.value),className:"input w-full text-sm",placeholder:"Folder name",autoFocus:!0}),(0,t.jsx)("input",{value:y,onChange:e=>N(e.target.value),className:"input w-full text-sm",placeholder:"Local path"}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("button",{type:"button",onClick:()=>{u?A(u):C()},disabled:!j.trim()||!y.trim(),className:"rounded-lg bg-[var(--foreground)] px-3 py-1.5 text-xs font-medium text-[var(--background)] disabled:opacity-40",children:"Save"}),(0,t.jsxs)("button",{type:"button",onClick:S,className:"flex items-center gap-1 rounded-lg px-2 py-1.5 text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:[(0,t.jsx)(f.X,{className:"w-3 h-3"}),"Cancel"]})]})]}),0===l.length?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"No folders linked"}):(0,t.jsx)("div",{className:"space-y-2",children:l.slice(0,5).map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm",children:[(0,t.jsx)(p.FolderGit2,{className:"h-4 w-4 shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("div",{className:"truncate text-[var(--foreground)]",children:e.name}),e.path&&(0,t.jsx)("div",{className:"truncate text-xs text-[var(--muted-foreground)]",children:e.path})]}),(0,t.jsx)("button",{type:"button",onClick:()=>{c(!1),m(e.id),b(e.name),N(e.path??"")},className:"p-1 text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]","aria-label":`Edit ${e.name}`,children:(0,t.jsx)(x.Pencil,{className:"w-3 h-3"})}),(0,t.jsx)("button",{type:"button",onClick:()=>void T(e.id),className:"p-1 text-[var(--muted-foreground)] transition-colors hover:text-[var(--destructive)]","aria-label":`Delete ${e.name}`,children:(0,t.jsx)(g.Trash2,{className:"w-3 h-3"})})]},e.id))})]})}var b=e.i(938201),y=e.i(902572),N=e.i(958164);let w={on_track:{label:"On Track",dot:"bg-[var(--status-completed)]",badge:"border-[var(--status-completed-border)] bg-[var(--status-completed-bg)] text-[var(--status-completed-text)]"},at_risk:{label:"At Risk",dot:"bg-[var(--status-blocked)]",badge:"border-[var(--status-blocked-border)] bg-[var(--status-blocked-bg)] text-[var(--status-blocked-text)]"},off_track:{label:"Off Track",dot:"bg-[var(--status-failed)]",badge:"border-[var(--status-failed-border)] bg-[var(--status-failed-bg)] text-[var(--status-failed-text)]"},done:{label:"Done",dot:"bg-[var(--muted-foreground)]",badge:"border-[var(--border)] bg-[var(--secondary)] text-[var(--muted-foreground)]"}};function k({objective:e,teamName:r,onClick:s}){let a=w[e.status]??w.on_track,n="done"===e.status;return(0,t.jsxs)("button",{type:"button",onClick:s,className:`w-full rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)] p-4 text-left transition-colors hover:bg-[var(--secondary)] ${n?"opacity-60":""}`,children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-2 mb-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,t.jsx)("span",{className:`h-2 w-2 shrink-0 rounded-full ${a.dot}`}),(0,t.jsx)("span",{className:"truncate text-sm font-medium text-[var(--foreground)]",children:e.title})]}),(0,t.jsx)("span",{className:`shrink-0 rounded-full border px-2 py-0.5 text-[11px] font-medium ${a.badge}`,children:a.label})]}),(0,t.jsx)("div",{className:"mb-2",children:(0,t.jsx)("div",{className:"h-1.5 overflow-hidden rounded-full bg-[var(--muted)]",children:(0,t.jsx)("div",{className:"h-full rounded-full bg-emerald-500/70 transition-all",style:{width:`${Math.min(e.progress,100)}%`}})})}),(0,t.jsxs)("div",{className:"flex items-center justify-between text-xs text-[var(--muted-foreground)]",children:[(0,t.jsxs)("span",{className:r?"":"flex items-center gap-1 text-[var(--status-blocked-text)]",children:[!r&&(0,t.jsx)(N.AlertTriangle,{className:"h-3 w-3"}),r??"No team"]}),(0,t.jsxs)("span",{children:[e.progress,"%"]})]})]})}function I({projectId:e,projectSlug:s}){let n=(0,a.useRouter)(),{projects:l,isLoading:i}=(0,v.useProjects)(),o=(0,r.useMemo)(()=>l.find(e=>e.slug===s),[l,s]),c=(0,r.useMemo)(()=>(0,y.readProjectObjectivesWorkspace)(o?.metadata).objectives,[o?.metadata]),[u,m]=(0,r.useState)([]);(0,r.useEffect)(()=>{fetch(`/api/projects/${e}/teams`).then(e=>e.ok?e.json():{teams:[]}).then(e=>m(e.teams??[])).catch(()=>m([]))},[e]);let p=(0,r.useMemo)(()=>new Map(u.map(e=>[e.id,e.name])),[u]),x=c.filter(e=>e.progress>=100).length;return i?(0,t.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[1,2].map(e=>(0,t.jsx)("div",{className:"h-28 animate-pulse rounded-2xl bg-[var(--muted)]"},e))}):0===c.length?(0,t.jsxs)("button",{type:"button",onClick:()=>n.push(`/projects/${s}/objectives`),className:"w-full rounded-2xl border border-dashed border-[var(--border)] bg-[var(--card-bg)] p-6 text-center transition-colors hover:border-[var(--card-hover-border)] hover:bg-[var(--secondary)]",children:[(0,t.jsx)(b.Target,{className:"mx-auto mb-2 h-5 w-5 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"Add your first objective"})]}):(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 text-xs text-[var(--muted-foreground)]",children:[(0,t.jsxs)("span",{children:[c.length," ",1===c.length?"objective":"objectives"]}),(0,t.jsx)("span",{className:"text-[var(--border)]",children:"|"}),(0,t.jsxs)("span",{children:[x,"/",c.length," complete"]})]}),(0,t.jsxs)("button",{onClick:()=>n.push(`/projects/${s}/objectives`),className:"flex items-center gap-1 text-xs text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:["View all ",(0,t.jsx)(d.ArrowRight,{className:"w-3 h-3"})]})]}),(0,t.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:c.map(e=>(0,t.jsx)(k,{objective:e,teamName:p.get(e.teamId)??null,onClick:()=>n.push(`/projects/${s}/objectives/${encodeURIComponent(e.id)}`)},e.id))})]})}var $=e.i(597628),S=e.i(99296),C=e.i(287472),A=e.i(681619),T=e.i(50778);function M({icon:e,title:r,accentClass:s,onClick:a,badge:n,children:l}){return(0,t.jsxs)("button",{type:"button",onClick:a,className:"w-full rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)] p-4 text-left transition-colors hover:bg-[var(--secondary)]",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:s,children:e}),(0,t.jsx)("span",{className:"text-sm font-medium text-[var(--foreground)]",children:r})]}),n]}),l&&(0,t.jsx)("div",{className:"text-sm",children:l})]})}function R({projectId:e,projectSlug:s,primaryThreadId:n}){var l;let i=(0,a.useRouter)(),{connected:o,loading:d}=(0,C.useTrackerConnection)("linear",e),[c,u]=(0,r.useState)(null),[m,p]=(0,r.useState)(0),x=(0,T.useTerminalTabsStore)(e=>e.sessions[s])??[],[h,g]=(0,r.useState)(()=>T.useTerminalTabsStore.persist.hasHydrated()),f=(0,r.useMemo)(()=>0===x.length?null:x.reduce((e,t)=>t.createdAt>e.createdAt?t:e),[x]);return(0,r.useEffect)(()=>{let t=!1;return fetch(`/api/threads?projectId=${encodeURIComponent(e)}&limit=3&format=json`).then(e=>e.ok?e.json():{threads:{},total:0}).then(e=>{if(t)return;let r=Object.values(e.threads??{}).flatMap(e=>e.threads??[]).slice(0,3);u(r),p("number"==typeof e.total?e.total:r.length)}).catch(()=>{t||(u([]),p(0))}),()=>{t=!0}},[e]),(0,r.useEffect)(()=>(g(T.useTerminalTabsStore.persist.hasHydrated()),T.useTerminalTabsStore.persist.onFinishHydration(()=>{g(!0)})),[]),(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:[(0,t.jsx)(M,{icon:(0,t.jsx)($.MessageSquare,{className:"w-4 h-4"}),title:"Chat",accentClass:"text-indigo-400",onClick:()=>{n&&i.push(`/projects/${s}/thread/${encodeURIComponent(n)}`)},badge:m>0?(0,t.jsx)("span",{className:"rounded-full bg-[var(--secondary)] px-2 py-0.5 text-xs text-[var(--muted-foreground)]",children:m}):void 0,children:null===c?(0,t.jsx)("div",{className:"space-y-1.5",children:[1,2].map(e=>(0,t.jsx)("div",{className:"h-5 animate-pulse rounded bg-[var(--muted)]"},e))}):0===c.length?(0,t.jsx)("p",{className:"text-[var(--muted-foreground)]",children:"No threads yet"}):(0,t.jsx)("div",{className:"space-y-1",children:c.map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 truncate text-[var(--foreground)]",children:[(0,t.jsx)($.MessageSquare,{className:"h-3 w-3 shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"truncate",children:e.title})]},e.id))})}),(0,t.jsx)(M,{icon:(0,t.jsx)(S.TerminalSquare,{className:"w-4 h-4"}),title:"Terminal",accentClass:"text-emerald-400",onClick:()=>i.push(`/projects/${s}/terminal`),badge:h&&x.length>0?(0,t.jsx)("span",{className:"rounded-full bg-[var(--secondary)] px-2 py-0.5 text-xs text-[var(--muted-foreground)]",children:x.length}):void 0,children:h?0===x.length?(0,t.jsx)("p",{className:"text-[var(--muted-foreground)]",children:"No sessions yet"}):(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)("p",{className:"text-[var(--foreground)]",children:(l=x.length,`${l} saved session${1===l?"":"s"}`)}),(0,t.jsxs)("p",{className:"truncate text-[var(--muted-foreground)]",children:["Latest: ",f?.title??"Untitled terminal"]})]}):(0,t.jsx)("div",{className:"space-y-1.5",children:[1,2].map(e=>(0,t.jsx)("div",{className:"h-5 animate-pulse rounded bg-[var(--muted)]"},e))})}),(0,t.jsx)(M,{icon:(0,t.jsx)(A.TrackerIcon,{trackerType:"linear",className:"w-4 h-4"}),title:"Tasks",accentClass:"text-blue-400",onClick:()=>i.push(`/projects/${s}/tracking`),badge:d?void 0:o?(0,t.jsx)("span",{className:"rounded-full border border-[var(--status-completed-border)] bg-[var(--status-completed-bg)] px-2 py-0.5 text-[11px] text-[var(--status-completed-text)]",children:"Connected"}):(0,t.jsx)("span",{className:"rounded-full border border-[var(--border)] bg-[var(--secondary)] px-2 py-0.5 text-[11px] text-[var(--muted-foreground)]",children:"Connect"}),children:!d&&!o&&(0,t.jsx)("p",{className:"text-[var(--muted-foreground)]",children:"Connect to see issues"})})]})}function U({projectId:e,projectSlug:r,projectName:s,projectDescription:n,projectMetadata:i,repos:d,threadIds:u}){let p=(0,a.useRouter)(),x=u[0]??null;return(0,t.jsx)("div",{className:"h-full overflow-y-auto",children:(0,t.jsxs)("div",{className:"max-w-5xl mx-auto px-6 py-8 space-y-8",children:[n&&(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:n}),(0,t.jsxs)("section",{children:[(0,t.jsx)("h2",{className:"mb-3 text-sm text-[var(--muted-foreground)]",children:"What you're working toward"}),(0,t.jsx)(I,{projectId:e,projectSlug:r})]}),(0,t.jsxs)("section",{children:[(0,t.jsx)("h2",{className:"mb-3 text-sm text-[var(--muted-foreground)]",children:"Start working"}),(0,t.jsx)(R,{projectId:e,projectSlug:r,primaryThreadId:x})]}),(0,t.jsxs)("section",{children:[(0,t.jsx)("h2",{className:"mb-3 text-sm text-[var(--muted-foreground)]",children:"What's happening now"}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsx)(m,{projectId:e,projectSlug:r,onViewAll:()=>p.push(`/projects/${r}/automations`)}),(0,t.jsx)(l,{projectSlug:r,projectThreadIds:u}),(0,t.jsx)(o,{projectId:e,projectSlug:r,projectThreadIds:u})]})]}),(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[(0,t.jsx)(j,{projectId:e,repos:d}),(0,t.jsx)(c,{projectId:e,onViewAll:()=>p.push(`/projects/${r}/teams`)})]})]})})}var P=e.i(378562);function D({params:e}){let{slug:a}=(0,r.use)(e),{projects:n}=(0,v.useProjectsWithAgents)(),l=n.find(e=>e.slug===a),[i,o]=(0,r.useState)("loading");return((0,r.useEffect)(()=>{if(!l)return;let e=!1;return(async()=>{try{let t=await fetch(`/api/projects/${l.id}/teams`,{cache:"no-store"});if(e)return;let r=t.ok?await t.json():{teams:[]},s=Array.isArray(r?.teams)?r.teams:[];o(0===s.length?"empty":"has-teams")}catch{e||o("has-teams")}})(),()=>{e=!0}},[l]),l)?"empty"===i?(0,t.jsx)(P.EmptyStateCard,{icon:(0,t.jsx)(s.Users,{className:"w-6 h-6 text-[var(--foreground)]"}),title:`Add a team to ${l.name}`,description:"Teams give your project the agents that will actually do the work. Add one to get started.",ctaLabel:"Add a team",ctaHref:`/projects/${l.slug}/teams/new`}):(0,t.jsx)(U,{projectId:l.id,projectSlug:l.slug,projectName:l.name,projectDescription:l.description,projectMetadata:l.metadata,repos:l.repos,threadIds:l.thread_ids}):(0,t.jsx)("div",{className:"flex items-center justify-center h-full text-sm text-zinc-500",children:"Loading project..."})}e.s(["default",()=>D],317389)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,169729,e=>{"use strict";let t=(0,e.i(363732).default)("panel-left-open",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m14 9 3 3-3 3",key:"8010ee"}]]);e.s(["PanelLeftOpen",()=>t],169729)},468947,e=>{"use strict";let t=(0,e.i(363732).default)("sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]);e.s(["Sun",()=>t],468947)},721571,e=>{"use strict";let t=(0,e.i(363732).default)("moon",[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]]);e.s(["Moon",()=>t],721571)},524780,e=>{"use strict";var t=e.i(762281),r=e.i(935851),a=e.i(307241),s=e.i(810605);function i(){let[e,i]=(0,r.useState)("unknown"),[l,o]=(0,r.useState)([]),[n,d]=(0,r.useState)(""),[c,u]=(0,r.useState)(!1),p=(0,r.useCallback)(async()=>{try{let e=await fetch("/api/status");if(!e.ok)return void i("unknown");let t=await e.json();i("ok"===t.status?"ok":"degraded");let r=t.services.filter(e=>"agx-chat"===e.name||"agx-cloud"===e.name);o(r),d(new Date().toLocaleTimeString())}catch{i("unknown"),o([])}},[]);return(0,r.useEffect)(()=>{p();let e=setInterval(p,s.UI_POLL_SYSTEM_STATUS_MS);return()=>clearInterval(e)},[p]),(0,t.jsxs)("div",{className:"relative",onMouseEnter:()=>u(!0),onMouseLeave:()=>u(!1),children:[(0,t.jsx)(a.default,{href:"/status",className:"inline-flex h-8 w-8 items-center justify-center rounded-md border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] transition-all hover:bg-[var(--app-shell-subtle)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--ring)]",title:"System status",children:(0,t.jsx)("span",{className:`h-2.5 w-2.5 rounded-full ${"ok"===e?"bg-emerald-400":"degraded"===e?"bg-amber-400":"bg-[var(--app-shell-muted)]"} ${"degraded"===e?"animate-pulse":""}`})}),c&&(0,t.jsxs)("div",{className:"absolute top-full right-0 z-50 mt-1.5 w-52 rounded-lg border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] p-3 text-xs shadow-lg",children:[l.length>0?(0,t.jsx)("ul",{className:"space-y-1.5",children:l.map(e=>(0,t.jsxs)("li",{className:"flex items-center justify-between",children:[(0,t.jsx)("span",{className:"font-medium text-[var(--foreground)]",children:e.name}),(0,t.jsx)("span",{className:"ok"===e.status?"text-emerald-600":"error"===e.status?"text-red-500":"text-[var(--muted-foreground)]",children:"ok"===e.status?"Healthy":"error"===e.status?e.detail||"Error":"Unavailable"})]},e.name))}):(0,t.jsx)("p",{className:"text-[var(--app-shell-soft-text)]",children:"Checking..."}),n&&(0,t.jsxs)("p",{className:"mt-2 border-t border-[var(--app-shell-border)] pt-1.5 text-[var(--app-shell-soft-text)]",children:["Last check: ",n]})]})]})}e.s(["StatusIndicator",()=>i])},749410,e=>{"use strict";var t=e.i(762281),r=e.i(935851),a=e.i(866389),s=e.i(498027),i=e.i(997626),l=e.i(55236),o=e.i(196630),n=e.i(363732);let d=(0,n.default)("panel-left-close",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m16 15-3-3 3-3",key:"14y99z"}]]);var c=e.i(929870),u=e.i(8707),p=e.i(797167),m=e.i(938201),h=e.i(202641),x=e.i(572665);let f=(0,n.default)("house",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"r6nss1"}]]);var v=e.i(597628),b=e.i(99296);let g=(0,n.default)("key-round",[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]]),j=(0,n.default)("circle-arrow-up",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m16 12-4-4-4 4",key:"177agl"}],["path",{d:"M12 16V8",key:"1sbj14"}]]),k=(0,n.default)("git-pull-request",[["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M13 6h3a2 2 0 0 1 2 2v7",key:"1yeb86"}],["line",{x1:"6",x2:"6",y1:"9",y2:"21",key:"rroup"}]]);var w=e.i(307241),y=e.i(44054),N=e.i(810605),_=e.i(884564),S=e.i(535208),C=e.i(902572),I=e.i(958164),$=e.i(367859);let z=(0,n.default)("book",[["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20",key:"k3hazp"}]]),T=(0,n.default)("lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]]);var F=e.i(681619);let E={linear:"Linear",jira:"Jira",intercom:"Intercom",freshdesk:"Freshdesk",github:"GitHub"};function A(e){return E[e]??e.charAt(0).toUpperCase()+e.slice(1)}function M({projectSlug:e,trackerConnections:a,activeTrackerType:s,isTrackingActive:i,onLinkClick:l}){let o=[...a].sort((e,t)=>new Date(e.connectedAt).getTime()-new Date(t.connectedAt).getTime()),n=o.filter(e=>e.connected),d=o.filter(e=>!e.connected),u=n.some(e=>"github"===e.type),[p,m]=(0,r.useState)([]),[h,x]=(0,r.useState)(!0);return(0,r.useEffect)(()=>{if(!u)return void m([]);let e=!1;return fetch("/api/github/repos",{cache:"no-store"}).then(e=>e.ok?e.json():{repos:[]}).then(t=>{e||m(t.repos??[])}).catch(()=>{e||m([])}),()=>{e=!0}},[u]),(0,t.jsxs)(t.Fragment,{children:[0===n.length&&0===d.length&&(0,t.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,t.jsxs)(w.default,{href:`/projects/${e}/tracking/connect`,onClick:l,className:`workspace-sidebar__nav-item ${i?"workspace-sidebar__nav-item--active":""}`,children:[(0,t.jsx)(c.Plus,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm text-[var(--muted-foreground)]",children:"Connect Tracker"})]})}),n.map(r=>{let a=i&&s===r.type;return(0,t.jsxs)("div",{className:"workspace-sidebar__workspace-item",children:[(0,t.jsxs)("div",{className:"flex items-center",children:[(0,t.jsxs)(w.default,{href:`/projects/${e}/tracking/${r.type}`,onClick:l,className:`workspace-sidebar__nav-item flex-1 ${a?"workspace-sidebar__nav-item--active":""}`,"aria-current":a?"page":void 0,children:[(0,t.jsx)(F.TrackerIcon,{trackerType:r.type,className:"flex-shrink-0 h-3.5 w-3.5 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:A(r.type)})]}),"github"===r.type&&p.length>0&&(0,t.jsx)("button",{type:"button","aria-label":h?"Collapse GitHub repos":"Expand GitHub repos","aria-expanded":h,onClick:()=>x(e=>!e),className:"p-1 rounded hover:bg-[var(--item-hover-bg)] text-[var(--muted-foreground)]",children:(0,t.jsx)($.ChevronRight,{size:12,className:`transition-transform ${h?"rotate-90":""}`})})]}),"github"===r.type&&h&&p.length>0&&(0,t.jsx)("div",{className:"flex flex-col gap-0.5 mt-0.5 pl-5",children:p.map(r=>(0,t.jsxs)(w.default,{href:`/projects/${e}/tracking/github?repo=${encodeURIComponent(r.id)}`,onClick:l,className:"workspace-sidebar__nav-item",title:r.id,children:[r.private?(0,t.jsx)(T,{size:12,className:"flex-shrink-0 text-[var(--muted-foreground)]"}):(0,t.jsx)(z,{size:12,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-xs text-[var(--muted-foreground)] truncate",children:r.name})]},r.id))})]},r.type)}),d.map(r=>(0,t.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,t.jsxs)(w.default,{href:`/projects/${e}/tracking/${r.type}`,onClick:l,className:"workspace-sidebar__nav-item",children:[(0,t.jsx)(F.TrackerIcon,{trackerType:r.type,className:"flex-shrink-0 h-3.5 w-3.5 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:A(r.type)}),(0,t.jsx)("span",{className:"ml-auto shrink-0",title:"Connection issue — click to reconnect",children:(0,t.jsx)(I.AlertTriangle,{size:12,className:"text-yellow-500"})})]})},r.type)),(n.length>0||d.length>0)&&(0,t.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,t.jsxs)(w.default,{href:`/projects/${e}/tracking/connect`,onClick:l,className:"workspace-sidebar__nav-item",children:[(0,t.jsx)(c.Plus,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm text-[var(--muted-foreground)]",children:"Connect"})]})})]})}var P=e.i(594643),L=e.i(235136);function R({compact:e=!1}){return(0,t.jsxs)("span",{className:`workspace-sidebar__brand-logo${e?" workspace-sidebar__brand-logo--compact":""}`,"aria-hidden":"true",children:[(0,t.jsx)("img",{src:"/logo_dark.png",alt:"AGX",className:"block dark:hidden",style:{height:28}}),(0,t.jsx)("img",{src:"/logo_light.png",alt:"AGX",className:"hidden dark:block",style:{height:28}})]})}function V({label:e,children:s}){let i=(0,r.useRef)(null),[l,o]=(0,r.useState)(null);return(0,t.jsxs)("div",{ref:i,onMouseEnter:()=>{let e=i.current?.firstElementChild??i.current;if(!e)return;let t=e.getBoundingClientRect();o({top:t.top+t.height/2,left:t.right+8})},onMouseLeave:()=>o(null),style:{display:"contents"},children:[s,l&&(0,a.createPortal)((0,t.jsx)("div",{className:"workspace-sidebar__rail-tooltip",style:{top:l.top,left:l.left,transform:"translateY(-50%)"},children:e}),document.body)]})}function U({projects:e,activeProjectId:a,onSelectProject:i,onCreateProject:o}){let[n,d]=(0,r.useState)(!1),[m,h]=(0,r.useState)(""),x=(0,r.useRef)(null),f=(0,r.useRef)(null),v=e.find(e=>e.id===a)??e[0],b=m.trim()?e.filter(e=>e.name.toLowerCase().includes(m.toLowerCase())):e;return(0,r.useEffect)(()=>{if(!n)return;let e=e=>{x.current&&!x.current.contains(e.target)&&(d(!1),h(""))};return document.addEventListener("pointerdown",e),()=>document.removeEventListener("pointerdown",e)},[n]),(0,r.useEffect)(()=>{n&&f.current&&f.current.focus()},[n]),(0,t.jsxs)("div",{className:"relative px-3 pt-3 pb-2",ref:x,children:[(0,t.jsxs)("button",{type:"button",onClick:()=>d(!n),className:"flex w-full items-center gap-2 rounded-lg border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] px-2.5 py-2 text-sm text-[var(--foreground)] transition-all hover:border-[var(--app-shell-border-strong)]",children:[(0,t.jsx)(l.Folder,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"flex-1 truncate text-left font-medium",children:v?.name??"Select project"}),(0,t.jsx)(s.ChevronDown,{size:14,className:`flex-shrink-0 text-[var(--muted-foreground)] transition-transform ${n?"rotate-180":""}`})]}),n&&(0,t.jsxs)("div",{className:"absolute left-3 right-3 z-50 mt-1 rounded-lg 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(--app-shell-border)]",children:(0,t.jsxs)("div",{className:"flex items-center gap-2 rounded-md border border-[var(--app-shell-border)] bg-[var(--app-shell-subtle)] px-2 py-1.5",children:[(0,t.jsx)(u.Search,{size:12,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsx)("input",{ref:f,type:"text",value:m,onChange:e=>h(e.target.value),placeholder:"Search projects...",className:"flex-1 bg-transparent text-xs text-[var(--foreground)] placeholder:text-[var(--muted-foreground)] outline-none"}),m&&(0,t.jsx)("button",{type:"button",onClick:()=>h(""),className:"text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:(0,t.jsx)(p.X,{size:10})})]})}),(0,t.jsxs)("div",{className:"max-h-52 overflow-y-auto py-1",children:[b.map(e=>(0,t.jsxs)("button",{type:"button",onClick:()=>{i?.(e.id),d(!1),h("")},className:`flex w-full items-center gap-2 px-3 py-1.5 text-sm transition-colors hover:bg-[var(--app-shell-subtle)] ${e.id===v?.id?"text-[var(--foreground)] font-medium":"text-[var(--muted-foreground)]"}`,children:[(0,t.jsx)(l.Folder,{size:12,className:"flex-shrink-0"}),(0,t.jsx)("span",{className:"truncate",children:e.name})]},e.id)),0===b.length&&(0,t.jsx)("p",{className:"px-3 py-2 text-xs text-[var(--muted-foreground)]",children:"No projects found"})]}),(0,t.jsx)("div",{className:"border-t border-[var(--app-shell-border)] p-1",children:(0,t.jsxs)("button",{type:"button",onClick:()=>{d(!1),h(""),o()},className:"flex w-full items-center gap-2 rounded-md px-2.5 py-1.5 text-xs text-[var(--muted-foreground)] transition-colors hover:bg-[var(--app-shell-subtle)] hover:text-[var(--foreground)]",children:[(0,t.jsx)(c.Plus,{size:12}),(0,t.jsx)("span",{children:"New project"})]})})]})]})}function B({threads:e,participants:s=[],activeThreadId:l,isLoading:n,isCreating:u,onSelectThread:I,onCreateThread:$,onRenameThread:z,onDeleteThread:T,deletingThreadId:F=null,renamingThreadId:E=null,activeParticipantIds:A=[],onToggleParticipantActive:B,visible:D=!1,isRestoringActiveThread:O=!1,onToggle:W,onSearch:q,projects:H=[],onCreateProject:K,onUpdateProject:G,onDeleteProject:J,onAddAgentToProject:X,onRemoveAgentFromProject:Y,onAddAgentViaForm:Z,onReorderProjectAgents:Q,onUpdateParticipant:ee,onSelectProject:et,activeProjectId:er=null,activeProjectView:ea=null,width:es,onWidthChange:ei,onAddTeam:el,stageShow:eo,trackerConnections:en=[]}){let ed,ec,{isTouchLayout:eu,isPhone:ep}=(0,y.useInputCapabilities)(),{updateAvailable:em}=function(){let[e,t]=(0,r.useState)({updateAvailable:!1,latestVersion:null});return(0,r.useEffect)(()=>{async function e(){try{let e=await fetch("/api/update-check");if(!e.ok)return;let r=await e.json(),a=r?.updateAvailable===!0,s="string"==typeof r?.latestVersion?r.latestVersion:null;t({updateAvailable:a,latestVersion:s})}catch{}}e();let r=setInterval(()=>{e()},N.UI_POLL_UPDATE_CHECK_MS);return()=>clearInterval(r)},[]),e}(),eh=(0,r.useRef)(!1);(0,r.useRef)(0);let ex=(0,r.useRef)(null),[ef,ev]=(0,r.useState)(!1),[eb,eg]=(0,r.useState)(new Set);(0,r.useEffect)(()=>{if(eb.size>0||!H?.length)return;let e=H.find(e=>window.location.pathname.includes(`/projects/${e.slug}`));eg(new Set([e?.id??H[0].id]))},[H]);let[ej,ek]=(0,r.useState)(null),[ew,ey]=(0,r.useState)(new Set),[eN,e_]=(0,r.useState)(!1),[eS,eC]=(0,r.useState)(null),[eI,e$]=(0,r.useState)(null),ez=(0,S.useProjectFormState)(),[eT,eF]=(0,r.useState)(null),eE=(0,r.useCallback)(e=>{e&&(e.focus(),e.select())},[]),[eA,eM]=(0,r.useState)(null),[eP,eL]=(0,r.useState)(null),eR=eP?s.find(e=>e.id===eP)??null:null,[eV,eU]=(0,r.useState)(null),[eB,eD]=(0,r.useState)({});(0,r.useEffect)(()=>{if(!H?.length)return;let e=!1,t=async()=>{try{let t=await fetch("/api/processes?enrich=1");if(!t.ok||e)return;let r=await t.json();if(e)return;let a=r.filter(e=>"spawning"===e.state||"running"===e.state),i={};for(let e of H){let t=e.slug.trim().toLowerCase(),r=new Set((e.thread_ids??[]).map(e=>e.trim()).filter(Boolean)),l=[],o=[],n=[],d=new Set,c=new Set,u=new Set;for(let e of a){let a=e.projectSlug?.trim().toLowerCase();if(!(a&&a===t||r.has(e.workspaceId)||r.has(e.threadId)))continue;let i=s.find(t=>t.id===e.agentId),p={agentId:e.agentId,color:i?.color??"#10b981"};e.linearIssueId?c.has(e.agentId)||(c.add(e.agentId),o.push(p)):e.threadId?.startsWith("objective-chat:")||e.workspaceId?.startsWith("objective-chat:")?d.has(e.agentId)||(d.add(e.agentId),l.push(p)):u.has(e.agentId)||(u.add(e.agentId),n.push(p))}(l.length||o.length||n.length)&&(i[e.id]={objectives:l,linear:o,chat:n})}eD(i)}catch{}};t();let r=setInterval(t,3e3);return()=>{e=!0,clearInterval(r)}},[H,s]);let[eO,eW]=(0,r.useState)({}),[eq,eH]=(0,r.useState)(new Set),[eK,eG]=(0,r.useState)(new Set),eJ=(0,r.useRef)(new Set);(0,r.useEffect)(()=>{Array.from(eb).forEach(e=>{eK.has(e)||(eG(t=>new Set(t).add(e)),(async()=>{try{let t=await fetch(`/api/projects/${e}/teams`);if(!t.ok)return;let r=await t.json();eW(t=>({...t,[e]:r.teams??[]}))}catch{}})())})},[eb,eK]);let[eX,eY]=(0,r.useState)(null),eZ=async()=>{if(!eS&&!eI)return;if(!ez.form.name.trim())return void ez.setFormError("Project name is required");let e=ez.repos.find(e=>e.name.trim()&&!e.path.trim());if(e)return void ez.setFormError(`Local path is required for folder "${e.name}"`);ez.setFormError(null),ez.setIsSubmitting(!0);let t=(0,S.createProjectPayload)(ez.form,ez.repos);eI?await G?.(eI.id,t):await K?.(t,eS?.threadId),ez.setIsSubmitting(!1),eC(null),e$(null)};(0,r.useEffect)(()=>{ev(!0)},[]),(0,r.useEffect)(()=>{let e=!1;async function t(){if(eV?.repoId)try{let t=await fetch(`/api/knowledge-notes?scope=repo&subjectId=${encodeURIComponent(eV.repoId)}`),r=(t.ok?await t.json():{note:null}).note;e||eU(e=>e&&e.repoId===eV.repoId?{...e,generatedKnowledge:r?.content?[{id:r.id,content:r.content,created_at:r.updatedAt??r.createdAt}]:[],isLoadingKnowledge:!1}:e)}catch{e||eU(e=>e&&e.repoId===eV.repoId?{...e,generatedKnowledge:[],isLoadingKnowledge:!1}:e)}}return eV?.repoId&&t(),()=>{e=!0}},[eV?.repoId]);let eQ=ej?H.find(e=>e.id===ej.projectId):null,e0=new Set(eQ?.agents.map(e=>e.agent_id)??[]),e1=ej?s.filter(e=>!e0.has(e.id)):[],e2=e.length>0,e3=!!D,e5=(0,r.useCallback)(()=>{eu&&W?.()},[eu,W]),e4=[...e].sort((e,t)=>(e.title??"").localeCompare(t.title??"")),e6=new Map(e.map(e=>[e.id,e])),e8=H.filter(e=>!e.is_default),e7=e8.find(e=>e.id===er)??e8[0]??null,{connections:e9}=(0,L.useTrackerConnections)(e7?.id??null),te=eo??{home:!0,threads:!0,terminal:!0,objectives:!1,objectivesIsNew:!1,tracking:!1,teams:!1,folders:!1,scheduledTasks:!1,envVars:!1,notifications:!1};if((0,r.useEffect)(()=>{if(0===e8.length)return;let t=new Map,r=new Set,a=new Map;for(let e of e8){for(let t of e.thread_ids??[])"string"==typeof t&&t.trim()&&r.add(t);for(let r of(0,C.readProjectObjectivesWorkspace)(e.metadata).objectives){let a=r.id.trim();a&&t.set(a,{projectId:e.id,canonicalThreadId:r.threadId?.trim()||`objective-chat:${a}`})}}for(let t of e){let e=t.metadata&&"object"==typeof t.metadata?t.metadata:null,r="objective"===("string"==typeof e?.scope?e.scope:"")||t.id.startsWith("objective-chat:"),s=t.title?.trim().toLowerCase()??"";if(!r||!s)continue;let i=a.get(s)??[];i.push(t),a.set(s,i)}for(let[e,t]of a)a.set(e,[...t].sort((e,t)=>t.updatedAt-e.updatedAt));for(let s of e){let e=s.metadata&&"object"==typeof s.metadata?s.metadata:null,i="string"==typeof e?.scope?e.scope:"",l="string"==typeof e?.objectiveId?e.objectiveId.trim():"",o=s.id.startsWith("objective-chat:")?s.id.slice(15).trim():"",n=l||o,d="objective"===i||!!o,c=s.title?.trim().toLowerCase()??"",u=0===s.messages.length&&s.updatedAt<Date.now()-3e5;if(!d)continue;let p=n?t.get(n):void 0;if(p){if(s.id!==p.canonicalThreadId&&u){let e=`delete:${s.id}`;if(eJ.current.has(e))continue;eJ.current.add(e),Promise.resolve(T(s.id)).catch(t=>{eJ.current.delete(e),console.warn("Failed to delete legacy objective thread",t)});continue}if(!r.has(s.id)){let e=`link:${s.id}`;if(eJ.current.has(e))continue;eJ.current.add(e),fetch(`/api/projects/${p.projectId}/threads`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:s.id})}).then(e=>{if(!e.ok)throw Error(`Request failed with status ${e.status}`)}).catch(t=>{eJ.current.delete(e),console.warn("Failed to re-link objective thread",t)})}continue}if(!u)continue;let m=c?a.get(c)??[]:[];if(m.length<2||m[0]?.id===s.id)continue;let h=`delete:${s.id}`;eJ.current.has(h)||(eJ.current.add(h),Promise.resolve(T(s.id)).catch(e=>{eJ.current.delete(h),console.warn("Failed to delete orphan objective thread",e)}))}},[e8,T,e]),!function({focusTarget:e,shouldFocus:t}){(0,r.useEffect)(()=>{if(!t||"u"<typeof document)return;let r=e.current;if(!r||r instanceof HTMLButtonElement&&r.disabled)return;let a=document.activeElement;if(!(a&&(r===a||r.contains(a))))try{r.focus({preventScroll:!0})}catch{r.focus()}},[e,t])}({focusTarget:ex,shouldFocus:e3&&!(n&&!e2||O&&e2)&&!e2&&!u}),!e3){if(eu)return null;let r=e7?.slug;return(0,t.jsxs)("aside",{id:"workspace-sidebar",className:"workspace-sidebar workspace-sidebar--collapsed","aria-label":"Workspace sidebar",children:[(0,t.jsx)("div",{className:"workspace-sidebar__brand",children:(0,t.jsx)("button",{type:"button",onClick:W,className:"workspace-sidebar__brand-trigger border-none outline-none cursor-pointer","aria-label":"Show chats",title:"Show chats",children:(0,t.jsx)(R,{compact:!0})})}),r&&(0,t.jsxs)("nav",{className:"workspace-sidebar__collapsed-rail",children:[(0,t.jsx)(V,{label:"Home",children:(0,t.jsx)(w.default,{href:`/projects/${r}`,className:`workspace-sidebar__rail-icon${"home"===ea?" workspace-sidebar__rail-icon--active":""}`,children:(0,t.jsx)(f,{size:16})})}),(te.objectives||te.tracking||te.scheduledTasks)&&(0,t.jsx)("div",{className:"workspace-sidebar__rail-separator"}),te.objectives&&(0,t.jsx)(V,{label:"Objectives",children:(0,t.jsx)(w.default,{href:`/projects/${r}/objectives`,className:`workspace-sidebar__rail-icon${"objectives"===ea?" workspace-sidebar__rail-icon--active":""}`,children:(0,t.jsx)(m.Target,{size:16})})}),te.tracking&&(0,t.jsx)(V,{label:"Task Tracking",children:(0,t.jsx)(w.default,{href:`/projects/${r}/tracking`,className:`workspace-sidebar__rail-icon${"linear"===ea||"tracking"===ea?" workspace-sidebar__rail-icon--active":""}`,children:(0,t.jsx)(P.LinearIcon,{className:"h-4 w-4"})})}),te.tracking&&(0,t.jsx)(V,{label:"Pull Requests",children:(0,t.jsx)(w.default,{href:`/projects/${r}/prs`,className:"workspace-sidebar__rail-icon",children:(0,t.jsx)(k,{size:16})})}),te.scheduledTasks&&(0,t.jsx)(V,{label:"Scheduled Jobs",children:(0,t.jsx)(w.default,{href:`/projects/${r}/automations`,className:`workspace-sidebar__rail-icon${"automations"===ea?" workspace-sidebar__rail-icon--active":""}`,children:(0,t.jsx)(i.Zap,{size:16})})}),(0,t.jsx)("div",{className:"workspace-sidebar__rail-separator"}),(0,t.jsx)(V,{label:"Terminal",children:(0,t.jsx)(w.default,{href:`/projects/${r}/terminal`,className:`workspace-sidebar__rail-icon${"terminal"===ea?" workspace-sidebar__rail-icon--active":""}`,children:(0,t.jsx)(b.TerminalSquare,{size:16})})}),(0,t.jsx)(V,{label:"Chat",children:(0,t.jsx)("button",{type:"button",className:`workspace-sidebar__rail-icon${"thread"===ea?" workspace-sidebar__rail-icon--active":""}`,onClick:()=>{let t=e4.filter(e=>e7?.thread_ids?.includes(e.id)),r=e7?.thread_ids?.find(t=>e.some(e=>e.id===t))??t[0]?.id;r&&I(r)},children:(0,t.jsx)(v.MessageSquare,{size:16})})}),(te.teams||te.folders||te.envVars||te.notifications)&&(0,t.jsx)("div",{className:"workspace-sidebar__rail-separator"}),te.teams&&(0,t.jsx)(V,{label:"Teams",children:(0,t.jsx)(w.default,{href:`/projects/${r}/teams`,className:`workspace-sidebar__rail-icon${"teams"===ea?" workspace-sidebar__rail-icon--active":""}`,children:(0,t.jsx)(x.Users,{size:16})})}),te.folders&&(0,t.jsx)(V,{label:"Folders",children:(0,t.jsx)(w.default,{href:`/projects/${r}/folders`,className:`workspace-sidebar__rail-icon${"folders"===ea?" workspace-sidebar__rail-icon--active":""}`,children:(0,t.jsx)(o.FolderGit2,{size:16})})}),te.envVars&&(0,t.jsx)(V,{label:"Env Variables",children:(0,t.jsx)(w.default,{href:`/projects/${r}/env-vars`,className:`workspace-sidebar__rail-icon${"env-vars"===ea?" workspace-sidebar__rail-icon--active":""}`,children:(0,t.jsx)(g,{size:16})})}),te.notifications&&(0,t.jsx)(V,{label:"Notifications",children:(0,t.jsx)(w.default,{href:`/projects/${r}/notifications`,className:`workspace-sidebar__rail-icon${"notifications"===ea?" workspace-sidebar__rail-icon--active":""}`,children:(0,t.jsx)(h.Bell,{size:16})})})]}),(0,t.jsxs)("div",{className:"mt-auto p-2 flex flex-col gap-2",children:[em&&r&&(0,t.jsx)(V,{label:"Update available",children:(0,t.jsx)(w.default,{href:`/projects/${r}/terminal?cmd=${encodeURIComponent("agx update && agx chat start")}`,className:"workspace-sidebar__rail-icon",children:(0,t.jsx)(j,{size:16})})}),(0,t.jsx)(V,{label:"Join Discord",children:(0,t.jsx)("a",{href:"https://discord.gg/G9afUYKKY3",target:"_blank",rel:"noopener noreferrer",className:"workspace-sidebar__rail-icon",style:{backgroundColor:"#5865F2",color:"white"},onMouseEnter:e=>e.currentTarget.style.backgroundColor="#4752C4",onMouseLeave:e=>e.currentTarget.style.backgroundColor="#5865F2",children:(0,t.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 71 55",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",children:(0,t.jsx)("path",{d:"M60.1 4.9A58.5 58.5 0 0045.4.2a.2.2 0 00-.2.1 40.8 40.8 0 00-1.8 3.7 54 54 0 00-16.2 0A37.4 37.4 0 0025.4.3a.2.2 0 00-.2-.1A58.4 58.4 0 0010.5 4.9a.2.2 0 00-.1.1C1.5 18.7-.9 32.2.3 45.5v.1a58.8 58.8 0 0017.7 9a.2.2 0 00.3-.1 42 42 0 003.6-5.9.2.2 0 00-.1-.3 38.8 38.8 0 01-5.5-2.6.2.2 0 01 0-.4l1.1-.9a.2.2 0 01.2 0 42 42 0 0035.6 0 .2.2 0 01.2 0l1.1.9a.2.2 0 010 .4 36.4 36.4 0 01-5.5 2.6.2.2 0 00-.1.3 47.2 47.2 0 003.6 5.9.2.2 0 00.3.1 58.6 58.6 0 0017.7-9v-.1c1.4-15.2-2.4-28.4-10-40.1a.2.2 0 00-.1-.1zM23.7 37.3c-3.5 0-6.3-3.2-6.3-7s2.8-7 6.3-7 6.4 3.2 6.3 7-2.8 7-6.3 7zm23.3 0c-3.5 0-6.3-3.2-6.3-7s2.8-7 6.3-7 6.4 3.2 6.3 7-2.8 7-6.3 7z"})})})})]})]})}return(0,t.jsxs)(t.Fragment,{children:[eu?(0,t.jsx)("button",{type:"button",className:"workspace-sidebar__backdrop",onClick:W,"aria-label":"Close sidebar"}):null,(0,t.jsxs)("aside",{id:"workspace-sidebar",className:`workspace-sidebar${eu?" workspace-sidebar--drawer":""}${eu&&ep?" workspace-sidebar--drawer-phone":""}`,"aria-label":"Workspace sidebar","aria-busy":n?"true":void 0,"aria-modal":eu?"true":void 0,role:eu?"dialog":void 0,style:!eu&&es?{width:`${es}px`,minWidth:`${es}px`}:void 0,children:[(0,t.jsxs)("div",{className:"workspace-sidebar__brand",children:[(0,t.jsx)("div",{className:"workspace-sidebar__brand-content",children:(0,t.jsx)(R,{})}),W&&(0,t.jsx)("button",{type:"button",onClick:W,"aria-label":"Hide chats",title:"Hide chats",className:"workspace-sidebar__brand-toggle ml-auto inline-flex h-7 w-7 items-center justify-center rounded-md text-[var(--app-shell-soft-text)] transition-all hover:bg-[var(--app-shell-subtle)] hover:text-[var(--foreground)]",children:(0,t.jsx)(d,{className:"h-4 w-4",strokeWidth:1.75})})]}),(0,t.jsxs)("div",{className:"workspace-sidebar__content",children:[(0,t.jsx)(U,{projects:e8,activeProjectId:er,onSelectProject:e=>{et?.(e),e5()},onCreateProject:()=>{ez.resetForm(),e$(null),eC({})}}),(()=>{if(!e7)return null;let e=e4.filter(e=>e7.thread_ids?.includes(e.id)),r=e7.thread_ids?.find(e=>e6.has(e))??e7.thread_ids?.[0]??e[0]?.id??null,a=e7.id===er,n=a&&"home"===ea,d=a&&"objectives"===ea,c=window.location.pathname.match(/\/tracking\/([^/]+)/)?.[1]??null,u=a&&"automations"===ea,p=a&&"terminal"===ea,j=a&&"thread"===ea&&r===l,k=a&&"teams"===ea,y=a&&"folders"===ea,N=a&&"env-vars"===ea,S=a&&"notifications"===ea,C=eB[e7.id],$=te.objectives||te.scheduledTasks,z=te.teams||te.folders||te.envVars||te.notifications;return(0,t.jsxs)("nav",{className:"workspace-sidebar__section",children:[(0,t.jsx)("div",{className:"px-2 mt-2 mb-3",children:(0,t.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,t.jsxs)(w.default,{href:`/projects/${e7.slug}`,onClick:e5,className:`workspace-sidebar__nav-item ${n?"workspace-sidebar__nav-item--active":""}`,"aria-current":n?"page":void 0,children:[(0,t.jsx)(f,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Home"})]})})}),$&&(0,t.jsxs)("div",{className:"mb-3",children:[(0,t.jsx)("div",{className:"workspace-sidebar__section-header",children:(0,t.jsx)("p",{className:"workspace-sidebar__section-label",children:"Work"})}),(0,t.jsxs)("div",{className:"px-2 flex flex-col gap-0.5",children:[te.objectives&&(0,t.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,t.jsxs)(w.default,{href:`/projects/${e7.slug}/objectives`,onClick:e5,className:`workspace-sidebar__nav-item ${d?"workspace-sidebar__nav-item--active":""}`,"aria-current":d?"page":void 0,children:[(0,t.jsx)(m.Target,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Objectives"}),te.objectivesIsNew&&(0,t.jsx)("span",{className:"ml-auto inline-flex items-center rounded-full bg-indigo-500/15 px-1.5 py-0.5 text-[9px] font-bold uppercase tracking-wider text-indigo-500 animate-pulse",children:"NEW"}),!te.objectivesIsNew&&C?.objectives.length>0&&(0,t.jsx)("span",{className:"inline-flex items-center -space-x-1 ml-auto shrink-0",children:C.objectives.slice(0,3).map(e=>{let r=s.find(t=>t.id===e.agentId);return(0,t.jsxs)("span",{className:"relative inline-block",title:r?.name,children:[(0,t.jsx)("img",{src:(0,_.agentAvatarUrl)(r?.id??e.agentId,16,e.color),alt:r?.name??"",className:"h-3.5 w-3.5 rounded-full ring-[1.5px] ring-[var(--app-shell-pane)]"}),(0,t.jsx)("span",{className:"absolute -bottom-px -right-px h-1.5 w-1.5 rounded-full bg-green-500 ring-[1px] ring-[var(--app-shell-pane)]"})]},e.agentId)})})]})}),te.scheduledTasks&&(0,t.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,t.jsxs)(w.default,{href:`/projects/${e7.slug}/automations`,onClick:e5,className:`workspace-sidebar__nav-item ${u?"workspace-sidebar__nav-item--active":""}`,"aria-current":u?"page":void 0,children:[(0,t.jsx)(i.Zap,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Scheduled Jobs"})]})})]})]}),te.tracking&&(0,t.jsxs)("div",{className:"mb-3",children:[(0,t.jsx)("div",{className:"workspace-sidebar__section-header",children:(0,t.jsx)("p",{className:"workspace-sidebar__section-label",children:"Task Tracking"})}),(0,t.jsx)("div",{className:"px-2 flex flex-col gap-0.5",children:(0,t.jsx)(M,{projectSlug:e7.slug,trackerConnections:en,activeTrackerType:c,isTrackingActive:a&&("linear"===ea||"tracking"===ea),onLinkClick:e5})})]}),(0,t.jsxs)("div",{className:"mb-3",children:[(0,t.jsx)("div",{className:"workspace-sidebar__section-header",children:(0,t.jsx)("p",{className:"workspace-sidebar__section-label",children:"Tools"})}),(0,t.jsxs)("div",{className:"px-2 flex flex-col gap-0.5",children:[(0,t.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,t.jsxs)(w.default,{href:`/projects/${e7.slug}/terminal`,onClick:e5,className:`workspace-sidebar__nav-item ${p?"workspace-sidebar__nav-item--active":""}`,"aria-current":p?"page":void 0,children:[(0,t.jsx)(b.TerminalSquare,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Terminal"})]})}),(0,t.jsx)("div",{className:"workspace-sidebar__workspace-item",children:r?(0,t.jsxs)("button",{type:"button",className:`workspace-sidebar__nav-item ${j?"workspace-sidebar__nav-item--active":""}`,onClick:()=>{I(r),e5()},"aria-current":j?"page":void 0,children:[(0,t.jsx)(v.MessageSquare,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Chat"}),C?.chat.length>0&&(0,t.jsx)("span",{className:"inline-flex items-center -space-x-1 ml-auto shrink-0",children:C.chat.slice(0,3).map(e=>{let r=s.find(t=>t.id===e.agentId);return(0,t.jsxs)("span",{className:"relative inline-block",title:r?.name,children:[(0,t.jsx)("img",{src:(0,_.agentAvatarUrl)(r?.id??e.agentId,16,e.color),alt:r?.name??"",className:"h-3.5 w-3.5 rounded-full ring-[1.5px] ring-[var(--app-shell-pane)]"}),(0,t.jsx)("span",{className:"absolute -bottom-px -right-px h-1.5 w-1.5 rounded-full bg-green-500 ring-[1px] ring-[var(--app-shell-pane)]"})]},e.agentId)})})]}):null})]})]}),z&&(0,t.jsxs)("div",{className:"mb-3",children:[(0,t.jsx)("div",{className:"workspace-sidebar__section-header",children:(0,t.jsx)("p",{className:"workspace-sidebar__section-label",children:"Settings"})}),(0,t.jsxs)("div",{className:"px-2 flex flex-col gap-0.5",children:[te.teams&&(0,t.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,t.jsxs)(w.default,{href:`/projects/${e7.slug}/teams`,onClick:e5,className:`workspace-sidebar__nav-item ${k?"workspace-sidebar__nav-item--active":""}`,"aria-current":k?"page":void 0,children:[(0,t.jsx)(x.Users,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Teams"})]})}),te.folders&&(0,t.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,t.jsxs)(w.default,{href:`/projects/${e7.slug}/folders`,onClick:e5,className:`workspace-sidebar__nav-item ${y?"workspace-sidebar__nav-item--active":""}`,"aria-current":y?"page":void 0,children:[(0,t.jsx)(o.FolderGit2,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Folders"})]})}),te.envVars&&(0,t.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,t.jsxs)(w.default,{href:`/projects/${e7.slug}/env-vars`,onClick:e5,className:`workspace-sidebar__nav-item ${N?"workspace-sidebar__nav-item--active":""}`,"aria-current":N?"page":void 0,children:[(0,t.jsx)(g,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Environment Variables"})]})}),te.notifications&&(0,t.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,t.jsxs)(w.default,{href:`/projects/${e7.slug}/notifications`,onClick:e5,className:`workspace-sidebar__nav-item ${S?"workspace-sidebar__nav-item--active":""}`,"aria-current":S?"page":void 0,children:[(0,t.jsx)(h.Bell,{size:14,className:"flex-shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-sm",children:"Notifications"})]})})]})]})]})})()]}),(0,t.jsxs)("div",{className:"mt-auto px-3 pb-3 flex flex-col gap-2",children:[em&&e7&&(0,t.jsxs)(w.default,{href:`/projects/${e7.slug}/terminal?cmd=${encodeURIComponent("agx update && agx chat start")}`,className:"flex items-center justify-center gap-2 w-full py-2 rounded-lg text-sm font-medium transition-colors text-[var(--foreground)] bg-[var(--app-shell-subtle)] hover:bg-[var(--app-shell-border)]",children:[(0,t.jsx)(j,{size:14}),"Update available"]}),(0,t.jsxs)("a",{href:"https://discord.gg/G9afUYKKY3",target:"_blank",rel:"noopener noreferrer",className:"flex items-center justify-center gap-2 w-full py-2 rounded-lg text-white text-sm font-medium transition-colors",style:{backgroundColor:"#5865F2"},onMouseEnter:e=>e.currentTarget.style.backgroundColor="#4752C4",onMouseLeave:e=>e.currentTarget.style.backgroundColor="#5865F2",children:[(0,t.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 71 55",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",children:(0,t.jsx)("path",{d:"M60.1 4.9A58.5 58.5 0 0045.4.2a.2.2 0 00-.2.1 40.8 40.8 0 00-1.8 3.7 54 54 0 00-16.2 0A37.4 37.4 0 0025.4.3a.2.2 0 00-.2-.1A58.4 58.4 0 0010.5 4.9a.2.2 0 00-.1.1C1.5 18.7-.9 32.2.3 45.5v.1a58.8 58.8 0 0017.7 9a.2.2 0 00.3-.1 42 42 0 003.6-5.9.2.2 0 00-.1-.3 38.8 38.8 0 01-5.5-2.6.2.2 0 01 0-.4l1.1-.9a.2.2 0 01.2 0 42 42 0 0035.6 0 .2.2 0 01.2 0l1.1.9a.2.2 0 010 .4 36.4 36.4 0 01-5.5 2.6.2.2 0 00-.1.3 47.2 47.2 0 003.6 5.9.2.2 0 00.3.1 58.6 58.6 0 0017.7-9v-.1c1.4-15.2-2.4-28.4-10-40.1a.2.2 0 00-.1-.1zM23.7 37.3c-3.5 0-6.3-3.2-6.3-7s2.8-7 6.3-7 6.4 3.2 6.3 7-2.8 7-6.3 7zm23.3 0c-3.5 0-6.3-3.2-6.3-7s2.8-7 6.3-7 6.4 3.2 6.3 7-2.8 7-6.3 7z"})}),"Join Discord"]})]}),ef&&eV&&(0,a.createPortal)((0,t.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/30 p-4",onClick:()=>{eV.isSaving||eU(null)},children:(0,t.jsxs)("div",{className:"w-full max-w-lg rounded-2xl border border-[var(--border)] bg-[var(--card-bg)] shadow-2xl",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-4 border-b border-[var(--border)] px-5 py-4",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:eV.projectName}),(0,t.jsx)("h3",{className:"truncate text-base font-semibold text-[var(--foreground)]",children:eV.repoId?eV.name||"Folder":"Add Folder"})]}),(0,t.jsx)("button",{type:"button",className:"rounded-md p-1 text-[var(--muted-foreground)] transition-colors hover:bg-[var(--muted)] hover:text-[var(--muted-foreground)]",onClick:()=>{eV.isSaving||eU(null)},"aria-label":"Close folder details",disabled:eV.isSaving,children:(0,t.jsx)(p.X,{size:16})})]}),(0,t.jsxs)("div",{className:"space-y-4 px-5 py-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"mb-1 text-[11px] font-semibold uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:"Name"}),(0,t.jsx)("input",{value:eV.name,onChange:e=>eU(t=>t?{...t,name:e.target.value,error:null}:t),className:"w-full rounded-lg border border-[var(--border)] bg-[var(--app-shell-subtle)] px-3 py-2 text-sm text-[var(--foreground)]",disabled:eV.isSaving,placeholder:"e.g. Frontend, API Docs, Design System"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"mb-1 text-[11px] font-semibold uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:"Path"}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("input",{value:eV.path,onChange:e=>eU(t=>t?{...t,path:e.target.value,error:null}:t),className:"flex-1 rounded-lg border border-[var(--border)] bg-[var(--app-shell-subtle)] px-3 py-2 font-mono text-xs text-[var(--foreground)]",disabled:eV.isSaving,placeholder:"Local path to folder"}),(0,t.jsx)("button",{type:"button",className:"rounded-lg border border-[var(--border)] bg-[var(--app-shell-subtle)] px-3 py-2 text-xs font-medium text-[var(--muted-foreground)] transition-colors hover:bg-[var(--muted)]",disabled:eV.isSaving,onClick:async()=>{try{let e=await fetch("/api/filesystem/pick-folder",{method:"POST"}),t=await e.json();t.path&&eU(e=>e?{...e,path:t.path,error:null}:e)}catch{}},children:"Browse"})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"mb-1 text-[11px] font-semibold uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:"Notes"}),(0,t.jsx)("textarea",{value:eV.notes,onChange:e=>eU(t=>t?{...t,notes:e.target.value,error:null}:t),className:"min-h-28 w-full rounded-lg border border-[var(--border)] bg-[var(--app-shell-subtle)] px-3 py-3 text-sm text-[var(--foreground)] whitespace-pre-wrap",disabled:eV.isSaving,placeholder:"Coding conventions, deploy steps, doc standards, ownership rules..."})]}),eV.repoId?(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"mb-1 text-[11px] font-semibold uppercase tracking-[0.18em] text-[var(--muted-foreground)]",children:"Living Note"}),eV.isLoadingKnowledge?(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:"Loading note…"}):eV.generatedKnowledge.length>0?(0,t.jsx)("div",{className:"space-y-2",children:eV.generatedKnowledge.slice(0,5).map(e=>(0,t.jsxs)("div",{className:"rounded-lg border border-[var(--border)] bg-[var(--app-shell-subtle)] 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:"text-sm text-[var(--muted-foreground)]",children:"No note yet."})]}):null,eV.error?(0,t.jsx)("p",{className:"text-xs text-red-600",children:eV.error}):null,(0,t.jsxs)("div",{className:"flex justify-end gap-2 border-t border-[var(--border)] pt-4",children:[(0,t.jsx)("button",{type:"button",className:"rounded-lg px-3 py-2 text-sm text-[var(--muted-foreground)] transition-colors hover:bg-[var(--muted)]",onClick:()=>eU(null),disabled:eV.isSaving,children:"Cancel"}),(0,t.jsx)("button",{type:"button",className:"rounded-lg bg-[var(--foreground)] px-3 py-2 text-sm font-medium text-[var(--card-bg)] transition-colors hover:bg-[var(--foreground)] disabled:cursor-not-allowed disabled:opacity-60",disabled:eV.isSaving||!G,onClick:async()=>{let e=H.find(e=>e.id===eV.projectId);if(!e)return void eU(e=>e?{...e,error:"Project not found."}:e);let t=eV.name.trim(),r=eV.path.trim();if(!t)return void eU(e=>e?{...e,error:"Folder name is required."}:e);if(!r)return void eU(e=>e?{...e,error:"Folder path is required."}:e);eU(e=>e?{...e,isSaving:!0,error:null}:e);try{let a=eV.repoId?e.repos.map(e=>e.id===eV.repoId?{id:e.id,name:t,path:r,git_url:eV.gitUrl.trim()||void 0,notes:eV.notes.trim()||void 0}:{id:e.id,name:e.name,path:e.path,git_url:e.git_url,notes:e.notes}):[...e.repos.map(e=>({id:e.id,name:e.name,path:e.path,git_url:e.git_url,notes:e.notes})),{name:t,path:r,git_url:eV.gitUrl.trim()||void 0,notes:eV.notes.trim()||void 0}];await G?.(e.id,{repos:a}),eU(null)}catch(e){eU(t=>t?{...t,isSaving:!1,error:e instanceof Error?e.message:"Failed to save folder details."}:t)}},children:eV.isSaving?"Saving...":eV.repoId?"Save":"Add Folder"})]})]})]})}),document.body),ef&&ej&&!eN&&(0,a.createPortal)((0,t.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/30",onClick:()=>ek(null),children:(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-xl shadow-xl border border-[var(--border)] w-80 max-h-[70vh] flex flex-col",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-3 border-b border-[var(--border)]",children:[(0,t.jsxs)("h3",{className:"text-sm font-medium text-[var(--foreground)]",children:["Add to ",eQ?.name??"project"]}),(0,t.jsx)("button",{type:"button",className:"text-[var(--muted-foreground)] hover:text-[var(--muted-foreground)]",onClick:()=>ek(null),children:(0,t.jsx)(p.X,{size:16})})]}),(0,t.jsxs)("div",{className:"overflow-y-auto py-1 flex-1",children:[(0,t.jsxs)("button",{type:"button",className:"w-full flex items-center gap-3 px-4 py-2.5 text-sm text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)] transition-colors border-b border-[var(--border)]",onClick:()=>e_(!0),children:[(0,t.jsx)(c.Plus,{size:14,className:"text-[var(--muted-foreground)]"}),(0,t.jsx)("span",{className:"text-xs font-medium",children:"Create new agent"})]}),0===e1.length?(0,t.jsx)("p",{className:"px-4 py-6 text-xs text-[var(--muted-foreground)] text-center",children:"All agents are already in this project"}):e1.map(e=>{let r=ew.has(e.id);return(0,t.jsxs)("button",{type:"button",className:`w-full flex items-center gap-3 px-4 py-2.5 text-sm transition-colors ${r?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onClick:()=>{ey(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:`w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center ${r?"bg-[var(--foreground)] border-[var(--foreground)]":"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)("img",{src:(0,_.agentAvatarUrl)(e.id,24,e.color),alt:"",className:"w-6 h-6 rounded-full flex-shrink-0"}),(0,t.jsxs)("div",{className:"min-w-0 flex-1 text-left",children:[(0,t.jsx)("div",{className:"truncate font-medium text-xs",children:e.name}),(0,t.jsx)("div",{className:"truncate text-[11px] text-[var(--muted-foreground)]",children:e.model})]})]},e.id)})]}),e1.length>0&&(0,t.jsxs)("div",{className:"px-4 py-3 border-t border-[var(--border)] flex justify-end gap-2",children:[(0,t.jsx)("button",{type:"button",className:"px-3 py-1.5 text-xs text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",onClick:()=>ek(null),children:"Cancel"}),(0,t.jsxs)("button",{type:"button",disabled:0===ew.size,className:"px-3 py-1.5 text-xs font-medium text-[var(--card-bg)] bg-[var(--foreground)] rounded-lg hover:bg-[var(--foreground)] disabled:opacity-40 disabled:cursor-not-allowed transition-colors",onClick:()=>{for(let e of ew)X?.(ej.projectId,e);ek(null)},children:["Add ",ew.size>0?`(${ew.size})`:""]})]})]})}),document.body),ef&&eN&&(0,a.createPortal)((0,t.jsx)(_.AgentForm,{title:"Create new agent",initial:{name:"",provider:"claude",model:"",identity:"",skills:[],skillBindings:[]},submitLabel:"Create & Add",projects:H?.filter(e=>!e.is_default).map(t=>{let r=(t.thread_ids??[]).map(t=>e.find(e=>e.id===t)?.title?.trim()).filter(Boolean).join(", ")||"No chat";return{id:t.id,name:t.name,label:`${r} › ${t.name}`}}),initialProjectIds:ej?[ej.projectId]:[],onSubmit:async(e,t)=>{let r=["#D97706","#2563EB","#059669","#DC2626","#7C3AED","#DB2777","#0891B2"],a=r[s.length%r.length],i=e.name.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,""),l=t?.[0],o=await fetch("/api/participants",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:i,name:e.name,provider:e.provider,model:e.model,color:e.color??a,...e.role?{role:e.role}:{},...e.identity?{identity:e.identity}:{},skills:e.skills??[],skillBindings:e.skillBindings??[],...l?{projectId:l}:{}})});if(o.ok){let e=await o.json().catch(()=>({})),r="string"==typeof e?.id&&e.id.trim()?e.id.trim():i;for(let e of(t??[]).slice(1))X?.(e,r);e_(!1),ek(null)}},onCancel:()=>{e_(!1)}}),document.body),ef&&eT&&(0,a.createPortal)((0,t.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/30",onClick:()=>eF(null),children:(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-xl shadow-xl border border-[var(--border)] w-80 flex flex-col",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-3 border-b border-[var(--border)]",children:[(0,t.jsx)("h3",{className:"text-sm font-medium text-[var(--foreground)]",children:eT.title}),(0,t.jsx)("button",{type:"button",className:"text-[var(--muted-foreground)] hover:text-[var(--muted-foreground)]",onClick:()=>eF(null),children:(0,t.jsx)(p.X,{size:16})})]}),(0,t.jsxs)("form",{className:"px-4 py-4 flex flex-col gap-3",onSubmit:e=>{e.preventDefault();let t=new FormData(e.currentTarget),r=t.get("value")?.trim();r&&(eT.onSubmit(r),eF(null))},children:[(0,t.jsx)("input",{ref:eE,name:"value",type:"text",defaultValue:eT.defaultValue,placeholder:eT.placeholder,className:"w-full px-3 py-2 text-sm border border-[var(--border)] rounded-lg outline-none focus:border-[var(--border)] focus:ring-1 focus:ring-[var(--border)] transition-all"}),(0,t.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,t.jsx)("button",{type:"button",className:"px-3 py-1.5 text-xs text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",onClick:()=>eF(null),children:"Cancel"}),(0,t.jsx)("button",{type:"submit",className:"px-3 py-1.5 text-xs font-medium text-[var(--card-bg)] bg-[var(--foreground)] rounded-lg hover:bg-[var(--foreground)] transition-colors",children:eT.defaultValue?"Save":"Create"})]})]})]})}),document.body),ef&&eA&&(0,a.createPortal)((0,t.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/30",onClick:()=>eM(null),children:(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-xl shadow-xl border border-[var(--border)] w-80 flex flex-col",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-3 border-b border-[var(--border)]",children:[(0,t.jsx)("h3",{className:"text-sm font-medium text-[var(--foreground)]",children:eA.title}),(0,t.jsx)("button",{type:"button",className:"text-[var(--muted-foreground)] hover:text-[var(--muted-foreground)]",onClick:()=>eM(null),children:(0,t.jsx)(p.X,{size:16})})]}),(0,t.jsxs)("div",{className:"px-4 py-4 flex flex-col gap-4",children:[(0,t.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:eA.message}),(0,t.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,t.jsx)("button",{type:"button",className:"px-3 py-1.5 text-xs text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",onClick:()=>eM(null),children:"Cancel"}),(0,t.jsx)("button",{type:"button",className:"px-3 py-1.5 text-xs font-medium text-white bg-red-600 rounded-lg hover:bg-red-700 transition-colors",onClick:()=>{eA.onConfirm(),eM(null)},children:"Delete"})]})]})]})}),document.body),ef&&(eS||eI)&&(0,a.createPortal)((0,t.jsx)(S.default,{isOpen:!0,onClose:()=>{ez.resetForm(),eC(null),e$(null)},onSubmit:()=>void eZ(),editingProject:eI,form:ez.form,repos:ez.repos,isSubmitting:ez.isSubmitting,formError:ez.formError,onFieldChange:(e,t)=>ez.setForm(r=>({...r,[e]:t})),onRepoChange:ez.handleRepoChange,onAddRepo:ez.addRepo,onRemoveRepo:ez.removeRepo}),document.body),ef&&eR&&(0,a.createPortal)((ed=H.filter(e=>e.agents.some(e=>e.agent_id===eR.id)),ec=H.filter(e=>!e.agents.some(e=>e.agent_id===eR.id)),(0,t.jsx)(_.AgentForm,{title:"Edit agent",initial:{name:eR.name,role:eR.role||"",provider:eR.provider,model:eR.model||"",identity:eR.identity||"",color:eR.color,skills:eR.skills||[],skillBindings:eR.skillBindings||[]},agentId:eR.id,submitLabel:"Save",projectMemberships:{current:ed.map(e=>({id:e.id,name:e.name,is_default:!!e.is_default})),available:ec.map(e=>({id:e.id,name:e.name}))},onAddToProject:X?e=>X(e,eR.id):void 0,onRemoveFromProject:Y?e=>Y(e,eR.id):void 0,onSubmit:async e=>{ee&&await ee({...eR,name:e.name,role:e.role||void 0,provider:e.provider,model:e.model,color:e.color??eR.color,...e.identity?{identity:e.identity}:{},skills:e.skills??[],skillBindings:e.skillBindings??[]}),eL(null)},onCancel:()=>eL(null)})),document.body),ei&&!eu&&(0,t.jsx)("div",{className:"absolute right-0 top-0 bottom-0 z-20 w-1 cursor-col-resize group",onMouseDown:e=>{e.preventDefault(),eh.current=!0;let t=e.clientX,r=es??368;document.body.style.cursor="col-resize",document.body.style.userSelect="none";let a=e=>{ei(Math.max(200,Math.min(600,r+e.clientX-t)))},s=()=>{eh.current=!1,document.body.style.cursor="",document.body.style.userSelect="",window.removeEventListener("mousemove",a),window.removeEventListener("mouseup",s)};window.addEventListener("mousemove",a),window.addEventListener("mouseup",s)},children:(0,t.jsx)("div",{className:"absolute inset-y-0 right-0 w-1 transition-colors hover:bg-[var(--primary)]/40 group-hover:bg-[var(--primary)]/40"})})]})]})}e.s(["WorkspaceSidebar",()=>B],749410)},969039,e=>{"use strict";var t=e.i(935851),r=e.i(506420),a=e.i(434405);let s="agx-chat:last-thread";function i(){return void 0!==window.localStorage}function l(){if(i())try{window.localStorage.removeItem(s)}catch{}}let o=e=>[...e].sort((e,t)=>t.createdAt-e.createdAt);function n(e){let n=(0,r.useSearchParams)(),d=(e||n.get("thread")||"").trim()||null,c=(0,t.useRef)(!0),[u,p]=(0,t.useState)([]),[m,h]=(0,t.useState)(null),[x,f]=(0,t.useState)(!0),[v,b]=(0,t.useState)(!0),[g,j]=(0,t.useState)(!1),[k,w]=(0,t.useState)(null),[y,N]=(0,t.useState)(null),_=(0,t.useRef)(!1),S=(0,t.useCallback)(e=>{h(e)},[]);(0,t.useEffect)(()=>(c.current=!0,()=>{c.current=!1}),[]),(0,t.useEffect)(()=>{let e=!1;return(async()=>{try{var t;let r,n=await a.threadService.listThreads();if(d&&!n.some(e=>e.id===d)){let e=await a.threadService.createThread({id:d});n=o([...n.filter(t=>t.id!==e.id),e])}if(e||!c.current)return;p(n);let u=d||function(){if(!i())return null;try{return window.localStorage.getItem(s)}catch{return null}}(),{threadId:m,shouldClearSavedId:x,restoredFromStorage:f}=(t=n,r=t[0]?.id??null,u?t.some(e=>e.id===u)?{threadId:u,shouldClearSavedId:!1,restoredFromStorage:!0}:{threadId:r,shouldClearSavedId:!0,restoredFromStorage:!1}:{threadId:r,shouldClearSavedId:!1,restoredFromStorage:!1});x&&l(),_.current||(_.current=!0),f&&m?S(m):m?h(e=>e??m):h(null)}catch(e){console.error("Failed to load threads",e)}finally{c.current&&(f(!1),b(!1))}})(),()=>{e=!0}},[d,S]),(0,t.useEffect)(()=>{if(_.current)if(m){if(i())try{window.localStorage.setItem(s,m)}catch{}}else l()},[m]);let C=(0,t.useCallback)(async e=>{j(!0);try{let t=await a.threadService.createThread(e);if(!c.current)return t;return p(e=>o([...e.filter(e=>e.id!==t.id),t])),h(t.id),t}catch(e){throw console.error("Failed to create thread",e),e}finally{c.current&&j(!1)}},[]),I=(0,t.useCallback)(async e=>{if(e){w(e);try{if(await a.threadService.deleteThread(e),!c.current)return;let t=[];p(r=>t=o(r.filter(t=>t.id!==e))),h(r=>r===e?t[0]?.id??null:r)}catch(e){throw console.error("Failed to delete thread",e),e}finally{c.current&&w(null)}}},[]),$=(0,t.useCallback)(async(e,t)=>{let r=e.trim(),s=t.trim();if(r&&s){N(r);try{let e=await a.threadService.renameThread(r,s);if(!e||!c.current)return;p(t=>o(t.map(t=>t.id===e.id?e:t)))}catch(e){throw console.error("Failed to rename thread",e),e}finally{c.current&&N(e=>e===r?null:e)}}},[]),z=(0,t.useCallback)(async(e,t)=>{if(e)try{let r=await a.threadService.saveThreadMessages(e,t);if(!r||!c.current)return;p(e=>o(e.map(e=>e.id===r.id?r:e)))}catch(e){console.error("Failed to update thread messages",e)}},[]),T=(0,t.useCallback)(async(e,t)=>{if(e)try{let r=await a.threadService.updateThreadStatus(e,t);if(!r||!c.current)return;p(e=>o(e.map(e=>e.id===r.id?r:e)))}catch(e){console.error("Failed to update thread status",e)}},[]),F=(0,t.useCallback)(async(e,t)=>{if(e)try{let r=await a.threadService.updateThreadOutcomeNote(e,t);if(!r||!c.current)return;p(e=>o(e.map(e=>e.id===r.id?r:e)))}catch(e){console.error("Failed to update thread outcome note",e)}},[]),E=(0,t.useCallback)(async(e,t,r)=>{if(e&&t)try{let s=await a.threadService.updateMessageThreadStatus(e,t,r);if(!s||!c.current)return;p(e=>o(e.map(e=>e.id===s.id?s:e)))}catch(e){console.error("Failed to update message thread status",e)}},[]),A=(0,t.useCallback)(async(e,t,r)=>{if(e&&t)try{let s=await a.threadService.updateMessageOutcomeNote(e,t,r);if(!s||!c.current)return;p(e=>o(e.map(e=>e.id===s.id?s:e)))}catch(e){console.error("Failed to update message outcome note",e)}},[]),M=null!==m&&k===m;return{threads:u,activeThreadId:m,selectThread:S,createThread:C,deleteThread:I,isLoading:x,isRestoringActiveThread:v,isCreating:g,deletingThreadId:k,renamingThreadId:y,isDeletingActiveThread:M,updateThreadMessages:z,renameThread:$,updateThreadStatus:T,updateThreadOutcomeNote:F,updateMessageThreadStatus:E,updateMessageOutcomeNote:A}}e.s(["useThreadState",()=>n],969039)},481248,e=>{"use strict";let t="agx-chat:uiSettings",r={threadSidebarVisible:!1};function a(){return void 0!==window.localStorage}function s(){if(!a())return{...r};let e=window.localStorage.getItem(t);if(!e)return{...r};try{let t=JSON.parse(e);return{...r,threadSidebarVisible:"boolean"==typeof t.threadSidebarVisible&&t.threadSidebarVisible}}catch{return{...r}}}function i(){return s().threadSidebarVisible}function l(e){var r={...s(),threadSidebarVisible:e};if(a())try{window.localStorage.setItem(t,JSON.stringify(r))}catch{}}e.s(["loadWorkspaceSidebarVisible",()=>i,"persistWorkspaceSidebarVisible",()=>l])}]);
@@ -1,16 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,437307,e=>{"use strict";let t=(0,e.i(363732).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);e.s(["XCircle",()=>t],437307)},640481,e=>{"use strict";let t=(0,e.i(363732).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);e.s(["Pencil",()=>t],640481)},794731,e=>{"use strict";let t=(0,e.i(363732).default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);e.s(["Trash2",()=>t],794731)},417442,e=>{"use strict";let t=(0,e.i(363732).default)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);e.s(["ArrowRight",()=>t],417442)},276013,e=>{"use strict";var t=e.i(762281),r=e.i(935851);function n({onResize:e,className:n,ariaLabel:a}){let s=(0,r.useRef)(0),i=(0,r.useRef)(e);i.current=e;let l=(0,r.useCallback)(e=>{e.preventDefault(),s.current=e.clientX,document.body.style.cursor="col-resize",document.body.style.userSelect="none";let t=e=>{let t=e.clientX-s.current;s.current=e.clientX,i.current(t)},r=()=>{document.body.style.cursor="",document.body.style.userSelect="",window.removeEventListener("mousemove",t),window.removeEventListener("mouseup",r)};window.addEventListener("mousemove",t),window.addEventListener("mouseup",r)},[]);return(0,t.jsx)("div",{role:"separator","aria-orientation":"vertical","aria-label":a,className:`group relative z-10 w-0 shrink-0 cursor-col-resize ${n??""}`,onMouseDown:l,children:(0,t.jsx)("div",{className:"absolute inset-y-0 -left-1 w-2 transition-colors group-hover:bg-[var(--primary)]/40"})})}e.s(["ResizeHandle",()=>n])},982141,e=>{"use strict";let t="agx:lastRun",r="agx:lastSession";function n(){return void 0!==window.localStorage}function a(e){if(!n())return{};try{let t=window.localStorage.getItem(e);if(!t)return{};return JSON.parse(t)}catch{return{}}}function s(e,t){if(n())try{window.localStorage.setItem(e,JSON.stringify(t))}catch{}}function i(e){return a(t)[e]??null}function l(e,r){let n=a(t);n[e]=r,s(t,n)}function o(e){return a(r)[e]??null}function u(e,t){let n=a(r);n[e]=t,s(r,n)}e.s(["loadLastRunForIssue",()=>i,"loadLastSessionForEntity",()=>o,"persistLastRunForIssue",()=>l,"persistLastSessionForEntity",()=>u])},558201,e=>{"use strict";let t=(0,e.i(363732).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",()=>t],558201)},781873,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"BailoutToCSR",{enumerable:!0,get:function(){return a}});let n=e.r(804984);function a({reason:e,children:t}){if("u"<typeof window)throw Object.defineProperty(new n.BailoutToCSRError(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return t}},373512,(e,t,r)=>{"use strict";function n(e){return e.split("/").map(e=>encodeURIComponent(e)).join("/")}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"encodeURIPath",{enumerable:!0,get:function(){return n}})},974052,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"PreloadChunks",{enumerable:!0,get:function(){return o}});let n=e.r(762281),a=e.r(866389),s=e.r(721014),i=e.r(373512),l=e.r(162998);function o({moduleIds:e}){if("u">typeof window)return null;let t=s.workAsyncStorage.getStore();if(void 0===t)return null;let r=[];if(t.reactLoadableManifest&&e){let n=t.reactLoadableManifest;for(let t of e){if(!n[t])continue;let e=n[t].files;r.push(...e)}}if(0===r.length)return null;let o=(0,l.getDeploymentIdQueryOrEmptyString)();return(0,n.jsx)(n.Fragment,{children:r.map(e=>{let r=`${t.assetPrefix}/_next/${(0,i.encodeURIPath)(e)}${o}`;return e.endsWith(".css")?(0,n.jsx)("link",{precedence:"dynamic",href:r,rel:"stylesheet",as:"style",nonce:t.nonce},e):((0,a.preload)(r,{as:"script",fetchPriority:"low",nonce:t.nonce}),null)})})}},184790,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return u}});let n=e.r(762281),a=e.r(935851),s=e.r(781873),i=e.r(974052);function l(e){return{default:e&&"default"in e?e.default:e}}let o={loader:()=>Promise.resolve(l(()=>null)),loading:null,ssr:!0},u=function(e){let t={...o,...e},r=(0,a.lazy)(()=>t.loader().then(l)),u=t.loading;function c(e){let l=u?(0,n.jsx)(u,{isLoading:!0,pastDelay:!0,error:null}):null,o=!t.ssr||!!t.loading,c=o?a.Suspense:a.Fragment,d=t.ssr?(0,n.jsxs)(n.Fragment,{children:["u"<typeof window?(0,n.jsx)(i.PreloadChunks,{moduleIds:t.modules}):null,(0,n.jsx)(r,{...e})]}):(0,n.jsx)(s.BailoutToCSR,{reason:"next/dynamic",children:(0,n.jsx)(r,{...e})});return(0,n.jsx)(c,{...o?{fallback:l}:{},children:d})}return c.displayName="LoadableComponent",c}},353899,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return a}});let n=e.r(555682)._(e.r(184790));function a(e,t){let r={};"function"==typeof e&&(r.loader=e);let a={...r,...t};return(0,n.default)({...a,modules:a.loadableGenerated?.modules})}("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)},638703,e=>{"use strict";var t=e.i(762281),r=e.i(498027);let n=(0,e.i(363732).default)("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]);function a({visible:e,onClick:a,direction:s="bottom",label:i,offsetClassName:l}){if(!e)return null;let o="top"===s?n:r.ChevronDown;return(0,t.jsx)("div",{className:`pointer-events-none absolute inset-x-0 ${l??("top"===s?"top-3":"bottom-3")} z-10 flex justify-center`,children:(0,t.jsxs)("button",{type:"button",onClick:a,className:`pointer-events-auto inline-flex items-center gap-1.5 px-3 py-1.5 rounded-full border border-[var(--app-shell-border)] bg-[var(--app-shell-surface)] text-[var(--foreground)] text-xs font-medium shadow-md hover:bg-[var(--app-shell-elevated)] transition-colors animate-in fade-in ${"top"===s?"slide-in-from-top-1":"slide-in-from-bottom-1"} duration-200`,children:[(0,t.jsx)(o,{className:"w-3.5 h-3.5"}),i??("top"===s?"Back to top":"Jump to latest")]})})}e.s(["JumpToLatestButton",()=>a],638703)},741746,e=>{"use strict";let t=(0,e.i(363732).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);e.s(["AlertCircle",()=>t],741746)},889016,e=>{"use strict";let t=(0,e.i(363732).default)("tag",[["path",{d:"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",key:"vktsd0"}],["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}]]);e.s(["Tag",()=>t],889016)},66386,e=>{"use strict";var t=e.i(935851),r=e.i(506420);function n(e){return"string"!=typeof e?null:e.trim()||null}function a(e,t){return(e.get(t)?.trim()??"")||null}function s(){let e=(0,r.useRouter)(),s=(0,r.usePathname)(),i=(0,r.useSearchParams)(),l=(0,t.useCallback)(e=>a(i,e),[i]),o=(0,t.useCallback)((e,t)=>(function(e,t,r){let s=function(e,t){let r={...t},s=e=>Object.prototype.hasOwnProperty.call(t,e);if(s("issue")&&!s("run")){let s=a(e,"issue");n(t.issue)!==s&&(r.run=null)}if(s("job")&&!s("run")){let s=a(e,"job");n(t.job)!==s&&(r.run=null)}if(s("open")&&!s("message")){let s=a(e,"open");n(t.open)!==s&&(r.message=null)}if(s("group")&&!s("issue")){let s=a(e,"group");n(t.group)!==s&&(r.issue=null,r.run=null)}if(s("issue")&&!s("group")){let s=a(e,"issue");n(t.issue)!==s&&(r.group=null)}return r}(t,r),i=new URLSearchParams(t.toString());for(let[e,t]of Object.entries(s)){let r=n(t);r?i.set(e,r):i.delete(e)}let l=i.toString();return l?`${e}?${l}`:e})(t??s,i,e),[s,i]),u=(0,t.useCallback)((t,r)=>{e.push(o(t,r))},[o,e]),c=(0,t.useCallback)((t,r)=>{e.replace(o(t,r))},[o,e]);return{pathname:s,searchParams:i,getSelection:l,buildHref:o,pushSelection:u,replaceSelection:c}}e.s(["useUrlSelection",()=>s])},203096,e=>{"use strict";let t=(0,e.i(363732).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",()=>t],203096)},580873,e=>{"use strict";let t=(0,e.i(363732).default)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]]);e.s(["Clock",()=>t],580873)},990933,e=>{"use strict";function t(e){if("string"==typeof e)return e.trim()||void 0}function r(e,r){let n=new Set,a=new Set;!function e(t,r){if(t)for(let n of t)r(n),e(n.content,r)}(e.content,e=>{if("participantMention"!==e.type)return;let t=e.attrs??{},r="string"==typeof t.id?t.id.trim():"",s="string"==typeof t.kind?t.kind:"agent";r&&"agent"===s&&(n.add(r),"parallel"===t.mode&&a.add(r))});let s=t(r);return{...s?{pinnedParticipantId:s}:{},mentionedParticipantIds:Array.from(n),parallelParticipantIds:Array.from(a)}}function n(e,r){let n=function(e){if(!Array.isArray(e))return[];let t=new Set,r=[];for(let n of e){if("string"!=typeof n)continue;let e=n.trim();!e||t.has(e)||(t.add(e),r.push(e))}return r}(e),a=t(r);return a&&n.includes(a)?[a,...n.filter(e=>e!==a)]:n}e.s(["extractComposerRouting",()=>r,"orderParticipantIds",()=>n])},352687,e=>{"use strict";var t=e.i(762281),r=e.i(935851);function n({isOpen:e,title:n,message:a,preview:s,confirmLabel:i="Confirm",cancelLabel:l="Cancel",variant:o="default",onConfirm:u,onCancel:c}){let d=(0,r.useRef)(null),p=(0,r.useRef)(null);(0,r.useEffect)(()=>{if(e){let e=setTimeout(()=>d.current?.focus(),50);return()=>clearTimeout(e)}},[e]);let f=(0,r.useCallback)(e=>{"Escape"===e.key&&c()},[c]);if(!e)return null;let m="danger"===o;return(0,t.jsxs)("div",{className:"fixed inset-0 z-[100] flex items-center justify-center bg-black/50 backdrop-blur-md",style:{animation:"confirm-overlay-in 200ms ease-out"},onClick:e=>e.target===e.currentTarget&&c(),onKeyDown:f,children:[(0,t.jsxs)("div",{ref:p,className:"w-full max-w-md mx-4 bg-[var(--card-bg)] rounded-2xl border border-[var(--card-border)] shadow-2xl overflow-hidden",style:{animation:"confirm-dialog-in 250ms cubic-bezier(0.34, 1.56, 0.64, 1)"},children:[(0,t.jsx)("div",{className:"px-6 pt-6 pb-3",children:(0,t.jsxs)("div",{className:"flex items-start gap-4",children:[m&&(0,t.jsx)("div",{className:"flex-shrink-0 w-11 h-11 rounded-full bg-red-500/10 border border-red-500/20 flex items-center justify-center",children:(0,t.jsx)("svg",{className:"w-5 h-5 text-red-500",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:1.5,children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M14.74 9l-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 01-2.244 2.077H8.084a2.25 2.25 0 01-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 00-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 013.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 00-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 00-7.5 0"})})}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsx)("h3",{className:"text-[15px] font-semibold text-[var(--foreground)]",children:n}),(0,t.jsx)("p",{className:"mt-1 text-[13px] text-[var(--muted-foreground)] leading-relaxed",children:a})]})]})}),s&&(0,t.jsx)("div",{className:"mx-6 mb-3 px-3 py-2.5 rounded-lg bg-[var(--muted)]/40 border border-[var(--card-border)]",children:(0,t.jsxs)("p",{className:"text-[12px] text-[var(--muted-foreground)] line-clamp-3 leading-relaxed italic",children:["“",s,"”"]})}),(0,t.jsx)("div",{className:"mx-6 border-t border-[var(--card-border)]"}),(0,t.jsxs)("div",{className:"px-6 py-4 flex items-center justify-end gap-2.5",children:[(0,t.jsx)("button",{onClick:c,className:"px-4 py-2 rounded-lg text-[13px] font-medium text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)]/60 transition-all duration-150",children:l}),(0,t.jsx)("button",{ref:d,onClick:u,className:`px-4 py-2 rounded-lg text-[13px] font-medium transition-all duration-150 ${m?"bg-red-500 text-white hover:bg-red-600 active:scale-[0.97]":"btn-primary active:scale-[0.97]"}`,children:i})]})]}),(0,t.jsx)("style",{children:`
2
- @keyframes confirm-overlay-in {
3
- from { opacity: 0; }
4
- to { opacity: 1; }
5
- }
6
- @keyframes confirm-dialog-in {
7
- from {
8
- opacity: 0;
9
- transform: scale(0.9) translateY(10px);
10
- }
11
- to {
12
- opacity: 1;
13
- transform: scale(1) translateY(0);
14
- }
15
- }
16
- `})]})}e.s(["default",()=>n])},945028,490011,e=>{"use strict";var t=e.i(935851);function r(e){return`threadId=${encodeURIComponent(e)}`}function n(e){return`workspaceId=${encodeURIComponent(e)}`}function a(e){let[a,s]=(0,t.useState)([]),[i,l]=(0,t.useState)([]),[o,u]=(0,t.useState)([]),c=(0,t.useRef)(e),d=(0,t.useRef)(e);c.current=e,d.current!==e&&(d.current=e,s([]),l([]),u([]));let p=(0,t.useCallback)(async e=>{let t=e?.trim()||c.current?.trim();if(!t){s([]),l([]);return}let a=r(t);try{let[e,r]=await Promise.all([fetch(`/api/history?${a}`),fetch(`/api/logs?${n(t)}`)]);if(c.current!==t)return;e.ok&&s(await e.json()),r.ok&&l(await r.json())}catch{}},[]),f=(0,t.useCallback)(async e=>{let t=e?.trim()||c.current?.trim();if(!t){s([]),l([]);return}let a=r(t);await Promise.all([fetch(`/api/history?${a}`,{method:"DELETE"}),fetch(`/api/logs?${n(t)}`,{method:"DELETE"})]),c.current===t&&(s([]),l([]))},[]),m=(0,t.useCallback)(async(e,t=10,r,n,a,i,l,o,d,p)=>{let f=r?.trim()||c.current?.trim();if(!f)return;let m=Date.now(),h=crypto.randomUUID(),y={id:h,role:"user",participantId:null,content:e,timestamp:m,rootMessageId:n||null,parentMessageId:n||null,depth:+!!n,...i&&i.length>0?{attachments:i}:{}};s(e=>[...e,y]);try{let r=await fetch("/api/chat",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:f,prompt:e,promptPrefix:d||void 0,maxRounds:t,userMessageId:h,rootMessageId:n||void 0,attachmentIds:a?.length?a:void 0,activeParticipantIds:Array.isArray(l)?l:void 0,projectSlug:o?.trim()||void 0,routing:p})}),i=await r.json().catch(e=>(console.warn("[useGroupChat] failed to parse run response:",e),null));r.ok&&i?.chatRunId?u(e=>[{chatRunId:i.chatRunId,threadId:f,rootMessageId:n||h,status:"queued",optimistic:!0,enqueuedAt:Date.now()},...e.filter(e=>e.chatRunId!==i.chatRunId)]):r.ok||(console.error(`[useGroupChat] POST /api/chat failed (${r.status}):`,i?.error||r.statusText),s(e=>e.map(e=>e.id===h?{...e,sendFailed:!0}:e)))}catch(e){console.error("[useGroupChat] network error sending message:",e),s(e=>e.map(e=>e.id===h?{...e,sendFailed:!0}:e))}return h},[]),h=(0,t.useCallback)(async()=>{let e=c.current?.trim();if(e)try{await fetch(`/api/processes?workspaceId=${encodeURIComponent(e)}`,{method:"DELETE"})}catch{}},[]),y=(0,t.useCallback)(async e=>{let t=c.current?.trim();if(t)try{await fetch(`/api/processes?workspaceId=${encodeURIComponent(t)}&threadId=${encodeURIComponent(e)}`,{method:"DELETE"})}catch{}},[]);return{messages:a,setMessages:s,logs:i,sendMessage:m,loadHistory:p,clearHistory:f,clearLogs:(0,t.useCallback)(async e=>{let t=e?.trim()||c.current?.trim();t?(await fetch(`/api/logs?${n(t)}`,{method:"DELETE"}).catch(e=>console.warn("[useGroupChat] delete logs failed:",e)),c.current===t&&l([])):l([])},[]),chatRuns:o,setChatRuns:u,stop:h,stopThread:y}}e.s(["useGroupChat",()=>a],945028);let s=new Set(["spawning","running"]);function i(e,r){let n=r?.intervalMs??1500,a=r?.idleIntervalMs??1e4,[i,l]=(0,t.useState)(new Set),[o,u]=(0,t.useState)([]),[c,d]=(0,t.useState)({}),[p,f]=(0,t.useState)([]),m=(0,t.useRef)(e);m.current=e,(0,t.useRef)(r?.messages??[]).current=r?.messages??[];let h=(0,t.useRef)(r?.setMessages);h.current=r?.setMessages;let y=(0,t.useRef)(0),g=(0,t.useRef)(new Map),x=(0,t.useRef)(new Map);(0,t.useEffect)(()=>{let e=r?.messages??[];if(e.length>0){let t=Math.max(...e.map(e=>e.timestamp));t>y.current&&(y.current=t)}},[r?.messages]),(0,t.useEffect)(()=>()=>{for(let e of g.current.values())e.close();g.current.clear()},[]);let v=(0,t.useCallback)(async()=>{let e=m.current;if(!e){l(new Set),u([]),d({}),f([]);return}let t=null;if(e.threadId?t=`/api/processes?threadId=${encodeURIComponent(e.threadId)}`:e.workspaceId&&(t=`/api/processes?workspaceId=${encodeURIComponent(e.workspaceId)}`),!t){l(new Set),u([]),d({}),f([]);return}try{let n=e.workspaceId||e.threadId,a=n?`/api/history?threadId=${encodeURIComponent(n)}&since=${y.current}`:null,i=n?`/api/chat-runs?threadId=${encodeURIComponent(n)}&limit=20`:null,o=[fetch(t)];a&&o.push(fetch(a)),i&&o.push(fetch(i));let[c,d,p]=await Promise.all(o),g=m.current;if(g?.threadId!==e.threadId||g?.workspaceId!==e.workspaceId)return;if(c.ok){let e=await c.json();u(e);let t=new Set(e.filter(e=>s.has(e.state)).map(e=>e.agentId));l(t)}if(p?.ok){var r;let e=(r=await p.json(),Array.isArray(r)?r.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,n="string"==typeof e.status?e.status:null,a="string"==typeof e.rootMessageId?e.rootMessageId:(e.rootMessageId,null);return t&&r&&n&&("queued"===n||"running"===n||"awaiting_user"===n||"blocked"===n||"completed"===n||"failed"===n||"cancelled"===n)?{chatRunId:t,threadId:r,rootMessageId:a,status:n,optimistic:!1}:null}).filter(e=>!!e):[]);f(e)}if(d?.ok&&h.current){let e=await d.json();if(e.length>0){let t=Math.max(...e.map(e=>e.timestamp));t>y.current&&(y.current=t),h.current(t=>{let r=new Set(t.map(e=>e.id)),n=e.filter(e=>!r.has(e.id)),a=t.map(t=>e.find(e=>e.id===t.id)??t);return 0===n.length?a:[...a,...n].sort((e,t)=>e.timestamp-t.timestamp)})}}}catch{}},[]);(0,t.useEffect)(()=>{let e=p.filter(e=>"queued"===e.status||"running"===e.status),t=new Set(e.map(e=>e.chatRunId));for(let[e,r]of g.current.entries())t.has(e)||(r.close(),g.current.delete(e),x.current.delete(e));for(let t of e){if(g.current.has(t.chatRunId))continue;let e=new EventSource(`/api/chat-runs/${encodeURIComponent(t.chatRunId)}/events`);g.current.set(t.chatRunId,e);let r=new Map;x.current.set(t.chatRunId,r);let n=new Set;e.addEventListener("chat",a=>{let s;try{s=JSON.parse(a.data)}catch{return}switch(s.type){case"participant-start":case"participant-thinking":n.add(s.participantId),r.has(s.participantId)||r.set(s.participantId,{text:"",thoughts:[]}),d(e=>e[s.participantId]?e:{...e,[s.participantId]:{content:"",rootMessageId:t.rootMessageId??null}});break;case"text-delta":{r.has(s.participantId)||r.set(s.participantId,{text:"",thoughts:[]});let e=r.get(s.participantId);e&&(e.text+=s.delta,d(r=>{let n={...r},a=t.rootMessageId??null;return n[s.participantId]={content:e.text,rootMessageId:a},n}));break}case"participant-thought":{let e=r.get(s.participantId);e&&(e.thoughts.push(s.content),d(t=>{let r=t[s.participantId];return r?{...t,[s.participantId]:{...r,thoughts:[...e.thoughts]}}:t}));break}case"participant-end":n.delete(s.participantId),v().then(()=>{d(e=>{let t={...e};return delete t[s.participantId],t})});break;case"participant-error":n.delete(s.participantId),v().then(()=>{d(e=>{let t={...e};return delete t[s.participantId],t})});break;case"done":e.close(),g.current.delete(t.chatRunId),x.current.delete(t.chatRunId)}}),e.onerror=()=>{e.close(),g.current.delete(t.chatRunId),x.current.delete(t.chatRunId)}}},[p]);let b=e?.threadId||e?.workspaceId||null,k=p.some(e=>"queued"===e.status||"running"===e.status),w=o.some(e=>s.has(e.state)),I=k||w?n:a;return(0,t.useEffect)(()=>{if(!b){l(new Set),u([]),d({}),f([]);return}v();let e=setInterval(v,I);return()=>clearInterval(e)},[b,I,v]),{activeAgents:i,processes:o,streaming:c,chatRuns:p,poll:v}}e.s(["useProcessPolling",()=>i],490011)},133232,e=>{"use strict";var t=e.i(762281),r=e.i(935851),n=e.i(208343),a=e.i(423709),s=e.i(498027),i=e.i(367859),l=e.i(906724);let o=(0,e.i(363732).default)("brain",[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]]);function u({content:e,thoughts:r}){let s=(0,a.parseStreamSegments)(e);return(0,t.jsxs)("div",{className:"space-y-1",children:[r&&r.length>0&&r.map((e,r)=>(0,t.jsx)(c,{content:e},`thought-${r}`)),s.map((e,r)=>"text"===e.type?(0,t.jsx)("div",{className:"text-[15px] leading-relaxed",children:(0,t.jsx)(n.Markdown,{content:e.content,isUser:!1})},r):(0,t.jsx)(d,{name:e.name,input:e.input,pending:e.pending},r))]})}function c({content:e}){let[a,l]=(0,r.useState)(!1);return(0,t.jsxs)("div",{className:"text-xs text-[var(--muted-foreground)]",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>l(!a),className:"flex items-center gap-1.5 hover:text-[var(--foreground)] transition-colors py-1 font-medium",children:[a?(0,t.jsx)(s.ChevronDown,{className:"w-3 h-3"}):(0,t.jsx)(i.ChevronRight,{className:"w-3 h-3"}),(0,t.jsx)(o,{className:"w-3 h-3"}),(0,t.jsx)("span",{children:"Thinking"})]}),a&&(0,t.jsx)("div",{className:"ml-4 pl-3 border-l border-[var(--app-shell-border)] py-1 text-[var(--muted-foreground)] text-[13px] leading-relaxed",children:(0,t.jsx)(n.Markdown,{content:e,isUser:!1})})]})}function d({name:e,input:n,pending:a}){let[o,u]=(0,r.useState)(!1);return(0,t.jsxs)("div",{className:"text-xs text-[var(--muted-foreground)] font-medium",children:[(0,t.jsxs)("button",{type:"button",onClick:()=>u(!o),className:"flex items-center gap-1.5 hover:text-[var(--foreground)] transition-colors py-1",children:[a?(0,t.jsx)(l.Loader2,{className:"w-3 h-3 animate-spin"}):o?(0,t.jsx)(s.ChevronDown,{className:"w-3 h-3"}):(0,t.jsx)(i.ChevronRight,{className:"w-3 h-3"}),(0,t.jsx)("span",{children:e}),a&&(0,t.jsx)("span",{className:"opacity-60",children:"running..."})]}),o&&n&&(0,t.jsx)("div",{className:"ml-4 pl-3 border-l border-[var(--app-shell-border)] py-1 text-[var(--muted-foreground)] whitespace-pre-wrap break-all max-h-40 overflow-y-auto font-mono text-[11px]",children:n})]})}e.s(["StreamingSegments",()=>u],133232)},74636,e=>{"use strict";var t=e.i(762281),r=e.i(935851),n=e.i(568656);function a({params:e}){let{slug:a}=(0,r.use)(e);return(0,t.jsx)(n.ProjectObjectivesOverview,{projectSlug:a})}e.s(["default",()=>a])},501223,e=>{e.v(t=>Promise.all(["static/chunks/5591af73db0a3aee.js"].map(t=>e.l(t))).then(()=>t(844118)))},469612,e=>{e.v(t=>Promise.all(["static/chunks/256961ed1522219b.js"].map(t=>e.l(t))).then(()=>t(668610)))}]);