@mndrk/agx 2.3.3 → 2.4.2

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 (1038) hide show
  1. package/README.md +1 -1
  2. package/cloud-runtime/standalone/apps/local/.next/BUILD_ID +1 -1
  3. package/cloud-runtime/standalone/apps/local/.next/app-path-routes-manifest.json +27 -19
  4. package/cloud-runtime/standalone/apps/local/.next/build-manifest.json +2 -2
  5. package/cloud-runtime/standalone/apps/local/.next/prerender-manifest.json +3 -3
  6. package/cloud-runtime/standalone/apps/local/.next/routes-manifest.json +213 -125
  7. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page.js.nft.json +1 -1
  8. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  9. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.html +2 -2
  10. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.rsc +1 -1
  11. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  12. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  13. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  14. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  15. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  16. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page.js.nft.json +1 -1
  17. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  18. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.html +2 -2
  19. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.rsc +2 -2
  20. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  21. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  22. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  23. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  24. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  25. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  26. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js.nft.json +1 -1
  27. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
  28. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js.nft.json +1 -1
  29. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  30. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.html +2 -2
  31. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.rsc +3 -3
  32. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_full.segment.rsc +3 -3
  33. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  34. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_index.segment.rsc +2 -2
  35. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
  36. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +2 -2
  37. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents.segment.rsc +1 -1
  38. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agent-specs/route.js +1 -1
  39. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
  40. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/profile/route.js +1 -1
  41. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
  42. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/skills/route.js +1 -1
  43. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/skills/route.js.nft.json +1 -1
  44. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/export/route.js +1 -1
  45. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/export/route.js.nft.json +1 -1
  46. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/create/route.js +2 -2
  47. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/create/route.js.nft.json +1 -1
  48. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/route.js +1 -1
  49. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/route.js.nft.json +1 -1
  50. package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat/route.js +10 -10
  51. package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat/route.js.nft.json +1 -1
  52. package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat-runs/[id]/events/route/app-paths-manifest.json +3 -0
  53. package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat-runs/[id]/events/route.js +7 -0
  54. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/activity → chat-runs/[id]/events}/route.js.nft.json +1 -1
  55. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/context → chat-runs/[id]/events}/route_client-reference-manifest.js +1 -1
  56. package/cloud-runtime/standalone/apps/local/.next/server/app/api/daemon/route.js +1 -1
  57. package/cloud-runtime/standalone/apps/local/.next/server/app/api/daemon/route.js.nft.json +1 -1
  58. package/cloud-runtime/standalone/apps/local/.next/server/app/api/file-search/route.js.nft.json +1 -1
  59. package/cloud-runtime/standalone/apps/local/.next/server/app/api/filesystem/analyze/route.js +1 -1
  60. package/cloud-runtime/standalone/apps/local/.next/server/app/api/filesystem/analyze/route.js.nft.json +1 -1
  61. package/cloud-runtime/standalone/apps/local/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js +2 -3
  62. package/cloud-runtime/standalone/apps/local/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js.nft.json +1 -1
  63. package/cloud-runtime/standalone/apps/local/.next/server/app/api/health/route.js +1 -1
  64. package/cloud-runtime/standalone/apps/local/.next/server/app/api/health/route.js.nft.json +1 -1
  65. package/cloud-runtime/standalone/apps/local/.next/server/app/api/learnings/route.js +1 -1
  66. package/cloud-runtime/standalone/apps/local/.next/server/app/api/learnings/route.js.nft.json +1 -1
  67. package/cloud-runtime/standalone/apps/local/.next/server/app/api/memories/route.js +1 -1
  68. package/cloud-runtime/standalone/apps/local/.next/server/app/api/memories/route.js.nft.json +1 -1
  69. package/cloud-runtime/standalone/apps/local/.next/server/app/api/orchestrator/tasks/[taskId]/cancel/route.js +1 -1
  70. package/cloud-runtime/standalone/apps/local/.next/server/app/api/orchestrator/tasks/[taskId]/cancel/route.js.nft.json +1 -1
  71. package/cloud-runtime/standalone/apps/local/.next/server/app/api/orchestrator/tasks/[taskId]/signal/route.js +1 -1
  72. package/cloud-runtime/standalone/apps/local/.next/server/app/api/orchestrator/tasks/[taskId]/signal/route.js.nft.json +1 -1
  73. package/cloud-runtime/standalone/apps/local/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js +1 -1
  74. package/cloud-runtime/standalone/apps/local/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js.nft.json +1 -1
  75. package/cloud-runtime/standalone/apps/local/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js +1 -1
  76. package/cloud-runtime/standalone/apps/local/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js.nft.json +1 -1
  77. package/cloud-runtime/standalone/apps/local/.next/server/app/api/participants/route.js +1 -1
  78. package/cloud-runtime/standalone/apps/local/.next/server/app/api/participants/route.js.nft.json +1 -1
  79. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/agents/route.js +1 -1
  80. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/agents/route.js.nft.json +1 -1
  81. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/agents/unassigned/route.js +1 -1
  82. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/agents/unassigned/route.js.nft.json +1 -1
  83. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/migrate-v1/route.js +1 -1
  84. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/migrate-v1/route.js.nft.json +1 -1
  85. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/migrate-v2/route.js +1 -1
  86. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/migrate-v2/route.js.nft.json +1 -1
  87. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js +2 -2
  88. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js.nft.json +1 -1
  89. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/[noteId]/route.js +1 -1
  90. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/[noteId]/route.js.nft.json +1 -1
  91. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/route.js +1 -1
  92. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/route.js.nft.json +1 -1
  93. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/route.js +1 -1
  94. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/route.js.nft.json +1 -1
  95. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.js +13 -13
  96. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.js.nft.json +1 -1
  97. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/validate/route.js +1 -1
  98. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/validate/route.js.nft.json +1 -1
  99. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js +14 -14
  100. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js.nft.json +1 -1
  101. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/route.js +1 -1
  102. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
  103. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/search/route.js +8 -8
  104. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/search/route.js.nft.json +1 -1
  105. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/skills/route.js +1 -1
  106. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/skills/route.js.nft.json +1 -1
  107. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/[teamId]/agents/route.js +1 -1
  108. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/[teamId]/agents/route.js.nft.json +1 -1
  109. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/[teamId]/route.js +1 -1
  110. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/[teamId]/route.js.nft.json +1 -1
  111. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/export/route.js +1 -1
  112. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/export/route.js.nft.json +1 -1
  113. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/import/route.js +1 -1
  114. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/import/route.js.nft.json +1 -1
  115. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/route.js +1 -1
  116. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/route.js.nft.json +1 -1
  117. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/threads/route.js +1 -1
  118. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/threads/route.js.nft.json +1 -1
  119. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/variables/[key]/route.js +1 -1
  120. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/variables/[key]/route.js.nft.json +1 -1
  121. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/variables/route.js +1 -1
  122. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/variables/route.js.nft.json +1 -1
  123. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/route.js +1 -1
  124. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/route.js.nft.json +1 -1
  125. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/cancel/route.js +1 -1
  126. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/cancel/route.js.nft.json +1 -1
  127. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/route.js +1 -1
  128. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/route.js.nft.json +1 -1
  129. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/runs/route.js +1 -1
  130. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/runs/route.js.nft.json +1 -1
  131. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/agents/route.js +1 -1
  132. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/agents/route.js.nft.json +1 -1
  133. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/poll/route.js +15 -15
  134. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/poll/route.js.nft.json +1 -1
  135. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/route.js +1 -1
  136. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/route.js.nft.json +1 -1
  137. package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/check/[id]/route.js.nft.json +1 -1
  138. package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/route.js.nft.json +1 -1
  139. package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/complete/route.js +1 -1
  140. package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/complete/route.js.nft.json +1 -1
  141. package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/route.js +2 -2
  142. package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/route.js.nft.json +1 -1
  143. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/debug/route.js +9 -9
  144. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
  145. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/poll/route.js +12 -12
  146. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
  147. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/route.js +2 -2
  148. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/route.js.nft.json +1 -1
  149. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/assign/route.js.nft.json +1 -1
  150. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/available/route.js.nft.json +1 -1
  151. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
  152. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/history/route.js.nft.json +1 -1
  153. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/learn/route.js.nft.json +1 -1
  154. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/route.js.nft.json +1 -1
  155. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/unlearn/route.js.nft.json +1 -1
  156. package/cloud-runtime/standalone/apps/local/.next/server/app/api/status/route.js +1 -1
  157. package/cloud-runtime/standalone/apps/local/.next/server/app/api/status/route.js.nft.json +1 -1
  158. package/cloud-runtime/standalone/apps/local/.next/server/app/api/summarize/route.js +1 -1
  159. package/cloud-runtime/standalone/apps/local/.next/server/app/api/summarize/route.js.nft.json +1 -1
  160. package/cloud-runtime/standalone/apps/local/.next/server/app/api/task-groups/[id]/route/app-paths-manifest.json +3 -0
  161. package/cloud-runtime/standalone/apps/local/.next/server/app/api/task-groups/[id]/route.js +8 -0
  162. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/mcp-setup → task-groups/[id]}/route.js.nft.json +1 -1
  163. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/mcp-setup → task-groups/[id]}/route_client-reference-manifest.js +1 -1
  164. package/cloud-runtime/standalone/apps/local/.next/server/app/api/task-groups/[id]/tasks/route/app-paths-manifest.json +3 -0
  165. package/cloud-runtime/standalone/apps/local/.next/server/app/api/task-groups/[id]/tasks/route.js +8 -0
  166. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/active-agents → task-groups/[id]/tasks}/route.js.nft.json +1 -1
  167. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/activity → task-groups/[id]/tasks}/route_client-reference-manifest.js +1 -1
  168. package/cloud-runtime/standalone/apps/local/.next/server/app/api/task-groups/route/app-paths-manifest.json +3 -0
  169. package/cloud-runtime/standalone/apps/local/.next/server/app/api/task-groups/route.js +8 -0
  170. package/cloud-runtime/standalone/apps/local/.next/server/app/api/task-groups/route.js.nft.json +1 -0
  171. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/auth → task-groups}/route_client-reference-manifest.js +1 -1
  172. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js +1 -1
  173. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
  174. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/route.js +1 -1
  175. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
  176. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/costs/route.js +1 -1
  177. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/costs/route.js.nft.json +1 -1
  178. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/dependencies/route.js +1 -1
  179. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/dependencies/route.js.nft.json +1 -1
  180. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/events/route.js +1 -1
  181. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/events/route.js.nft.json +1 -1
  182. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/history/route.js +1 -1
  183. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/history/route.js.nft.json +1 -1
  184. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/metrics/route.js +1 -1
  185. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/metrics/route.js.nft.json +1 -1
  186. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/replan/route.js +1 -1
  187. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/replan/route.js.nft.json +1 -1
  188. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/restart/route.js +1 -1
  189. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/restart/route.js.nft.json +1 -1
  190. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/resume/route.js +1 -1
  191. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/resume/route.js.nft.json +1 -1
  192. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/rollback/route.js +1 -1
  193. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/rollback/route.js.nft.json +1 -1
  194. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/route.js +1 -1
  195. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/route.js.nft.json +1 -1
  196. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/schedule/route.js +1 -1
  197. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/schedule/route.js.nft.json +1 -1
  198. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/start/route.js +1 -1
  199. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/start/route.js.nft.json +1 -1
  200. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/history/route.js +1 -1
  201. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/history/route.js.nft.json +1 -1
  202. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/logs/route.js +1 -1
  203. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/logs/route.js.nft.json +1 -1
  204. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js +1 -1
  205. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js.nft.json +1 -1
  206. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js +1 -1
  207. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js.nft.json +1 -1
  208. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js +1 -1
  209. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js.nft.json +1 -1
  210. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js +1 -1
  211. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js.nft.json +1 -1
  212. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js +1 -1
  213. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js.nft.json +1 -1
  214. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js +1 -1
  215. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js.nft.json +1 -1
  216. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js +1 -1
  217. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
  218. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/route.js +1 -1
  219. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
  220. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/assign-orphans/route.js +1 -1
  221. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/assign-orphans/route.js.nft.json +1 -1
  222. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/route.js +2 -2
  223. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/route.js.nft.json +1 -1
  224. package/cloud-runtime/standalone/apps/local/.next/server/app/api/terminal/sessions/[id]/route.js +1 -1
  225. package/cloud-runtime/standalone/apps/local/.next/server/app/api/terminal/sessions/[id]/route.js.nft.json +1 -1
  226. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js +1 -1
  227. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -1
  228. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/route.js +1 -1
  229. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/route.js.nft.json +1 -1
  230. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tracker/notes/route/app-paths-manifest.json +3 -0
  231. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tracker/notes/route.js +6 -0
  232. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/auth → tracker/notes}/route.js.nft.json +1 -1
  233. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/status → tracker/notes}/route_client-reference-manifest.js +1 -1
  234. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/active-agents/route/app-paths-manifest.json +3 -0
  235. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/active-agents/route.js +7 -0
  236. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs/[id] → trackers/[tracker]/active-agents}/route.js.nft.json +1 -1
  237. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/active-agents/route_client-reference-manifest.js +2 -0
  238. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/auth/route/app-paths-manifest.json +3 -0
  239. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/[id] → trackers/[tracker]/auth}/route.js +8 -7
  240. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/auth/route.js.nft.json +1 -0
  241. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/auth/route_client-reference-manifest.js +2 -0
  242. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/callback/route/app-paths-manifest.json +3 -0
  243. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/callback/route.js +12 -0
  244. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/callback/route.js.nft.json +1 -0
  245. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/active-agents → trackers/[tracker]/callback}/route_client-reference-manifest.js +1 -1
  246. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/groups/route/app-paths-manifest.json +3 -0
  247. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/groups/route.js +12 -0
  248. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/groups/route.js.nft.json +1 -0
  249. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/groups/route_client-reference-manifest.js +2 -0
  250. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/activity/route/app-paths-manifest.json +3 -0
  251. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/activity/route.js +12 -0
  252. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/activity/route.js.nft.json +1 -0
  253. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/activity/route_client-reference-manifest.js +2 -0
  254. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/recap/route/app-paths-manifest.json +3 -0
  255. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/recap/route.js +13 -0
  256. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/recap/route.js.nft.json +1 -0
  257. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/recap/route_client-reference-manifest.js +2 -0
  258. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/route/app-paths-manifest.json +3 -0
  259. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/route.js +12 -0
  260. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/route.js.nft.json +1 -0
  261. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/route_client-reference-manifest.js +2 -0
  262. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/route/app-paths-manifest.json +3 -0
  263. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/route.js +12 -0
  264. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/route.js.nft.json +1 -0
  265. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/[id]/recap → trackers/[tracker]/items}/route_client-reference-manifest.js +1 -1
  266. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/mcp-setup/route/app-paths-manifest.json +3 -0
  267. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/mcp-setup/route.js +13 -0
  268. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/mcp-setup/route.js.nft.json +1 -0
  269. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/mcp-setup/route_client-reference-manifest.js +2 -0
  270. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/options/route/app-paths-manifest.json +3 -0
  271. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/options/route.js +12 -0
  272. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/options/route.js.nft.json +1 -0
  273. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/options/route_client-reference-manifest.js +2 -0
  274. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/[id]/route/app-paths-manifest.json +3 -0
  275. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/[id]/route.js +12 -0
  276. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/[id]/route.js.nft.json +1 -0
  277. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/[id]/route_client-reference-manifest.js +2 -0
  278. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/route/app-paths-manifest.json +3 -0
  279. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/context → trackers/[tracker]/runs}/route.js +8 -7
  280. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/route.js.nft.json +1 -0
  281. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/route_client-reference-manifest.js +2 -0
  282. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/scripted/route/app-paths-manifest.json +3 -0
  283. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/scripted/route.js +12 -0
  284. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/scripted/route.js.nft.json +1 -0
  285. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/scripted/route_client-reference-manifest.js +2 -0
  286. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/status/route/app-paths-manifest.json +3 -0
  287. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/status/route/build-manifest.json +11 -0
  288. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/status/route.js +12 -0
  289. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/status/route.js.nft.json +1 -0
  290. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/status/route_client-reference-manifest.js +2 -0
  291. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token/route/app-paths-manifest.json +3 -0
  292. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token/route/build-manifest.json +11 -0
  293. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token/route/server-reference-manifest.json +4 -0
  294. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token/route.js +12 -0
  295. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token/route.js.map +5 -0
  296. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token/route.js.nft.json +1 -0
  297. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token/route_client-reference-manifest.js +2 -0
  298. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token-receive/route/app-paths-manifest.json +3 -0
  299. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token-receive/route/build-manifest.json +11 -0
  300. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token-receive/route/server-reference-manifest.json +4 -0
  301. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token-receive/route.js +12 -0
  302. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token-receive/route.js.map +5 -0
  303. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token-receive/route.js.nft.json +1 -0
  304. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token-receive/route_client-reference-manifest.js +2 -0
  305. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/worker/route/app-paths-manifest.json +3 -0
  306. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/worker/route/build-manifest.json +11 -0
  307. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/worker/route/server-reference-manifest.json +4 -0
  308. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/worker/route.js +16 -0
  309. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/worker/route.js.map +5 -0
  310. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/worker/route.js.nft.json +1 -0
  311. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/worker/route_client-reference-manifest.js +2 -0
  312. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/connections/route/app-paths-manifest.json +3 -0
  313. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/connections/route/build-manifest.json +11 -0
  314. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/connections/route/server-reference-manifest.json +4 -0
  315. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/connections/route.js +7 -0
  316. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/connections/route.js.map +5 -0
  317. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/callback → trackers/connections}/route.js.nft.json +1 -1
  318. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs/scripted → trackers/connections}/route_client-reference-manifest.js +1 -1
  319. package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route/app-paths-manifest.json +3 -0
  320. package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route/build-manifest.json +11 -0
  321. package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route/server-reference-manifest.json +4 -0
  322. package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route.js +7 -0
  323. package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route.js.map +5 -0
  324. package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route.js.nft.json +1 -0
  325. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/token → update-check}/route_client-reference-manifest.js +1 -1
  326. package/cloud-runtime/standalone/apps/local/.next/server/app/api/user-settings/route.js +1 -1
  327. package/cloud-runtime/standalone/apps/local/.next/server/app/api/user-settings/route.js.nft.json +1 -1
  328. package/cloud-runtime/standalone/apps/local/.next/server/app/index.html +2 -2
  329. package/cloud-runtime/standalone/apps/local/.next/server/app/index.rsc +3 -3
  330. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  331. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_full.segment.rsc +3 -3
  332. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_head.segment.rsc +1 -1
  333. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_index.segment.rsc +2 -2
  334. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  335. package/cloud-runtime/standalone/apps/local/.next/server/app/page.js.nft.json +1 -1
  336. package/cloud-runtime/standalone/apps/local/.next/server/app/page_client-reference-manifest.js +1 -1
  337. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page/react-loadable-manifest.json +1 -1
  338. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js.nft.json +1 -1
  339. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page_client-reference-manifest.js +1 -1
  340. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js.nft.json +1 -1
  341. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page_client-reference-manifest.js +1 -1
  342. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js.nft.json +1 -1
  343. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page_client-reference-manifest.js +1 -1
  344. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
  345. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
  346. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js.nft.json +1 -1
  347. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page_client-reference-manifest.js +1 -1
  348. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js.nft.json +1 -1
  349. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page_client-reference-manifest.js +1 -1
  350. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
  351. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  352. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js.nft.json +1 -1
  353. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page_client-reference-manifest.js +1 -1
  354. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js.nft.json +1 -1
  355. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page_client-reference-manifest.js +1 -1
  356. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js.nft.json +1 -1
  357. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page_client-reference-manifest.js +1 -1
  358. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js.nft.json +1 -1
  359. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page_client-reference-manifest.js +1 -1
  360. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js.nft.json +1 -1
  361. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page_client-reference-manifest.js +1 -1
  362. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js.nft.json +1 -1
  363. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page_client-reference-manifest.js +1 -1
  364. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js.nft.json +1 -1
  365. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page_client-reference-manifest.js +1 -1
  366. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -1
  367. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +1 -1
  368. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page/app-paths-manifest.json +3 -0
  369. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page/next-font-manifest.json +11 -0
  370. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/{linear → tracking/[tracker]}/page/react-loadable-manifest.json +3 -3
  371. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page/server-reference-manifest.json +4 -0
  372. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page.js +16 -0
  373. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page.js.map +5 -0
  374. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page.js.nft.json +1 -0
  375. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page_client-reference-manifest.js +2 -0
  376. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page/app-paths-manifest.json +3 -0
  377. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page/build-manifest.json +18 -0
  378. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page/next-font-manifest.json +11 -0
  379. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page/react-loadable-manifest.json +1 -0
  380. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page/server-reference-manifest.json +4 -0
  381. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page.js +16 -0
  382. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page.js.map +5 -0
  383. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page.js.nft.json +1 -0
  384. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page_client-reference-manifest.js +2 -0
  385. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page/app-paths-manifest.json +3 -0
  386. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page/build-manifest.json +18 -0
  387. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/{linear → tracking}/page/next-font-manifest.json +1 -1
  388. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page/react-loadable-manifest.json +16 -0
  389. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page/server-reference-manifest.json +4 -0
  390. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/{linear → tracking}/page.js +6 -6
  391. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page.js.map +5 -0
  392. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/{linear → tracking}/page.js.nft.json +1 -1
  393. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page_client-reference-manifest.js +2 -0
  394. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page.js.nft.json +1 -1
  395. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  396. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.html +2 -2
  397. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.rsc +3 -3
  398. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_full.segment.rsc +3 -3
  399. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_head.segment.rsc +1 -1
  400. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_index.segment.rsc +2 -2
  401. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
  402. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +2 -2
  403. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects.segment.rsc +1 -1
  404. package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page.js.nft.json +1 -1
  405. package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  406. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.html +2 -2
  407. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.rsc +2 -2
  408. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_full.segment.rsc +2 -2
  409. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_head.segment.rsc +1 -1
  410. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_index.segment.rsc +2 -2
  411. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
  412. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +1 -1
  413. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup.segment.rsc +1 -1
  414. package/cloud-runtime/standalone/apps/local/.next/server/app/status/page.js.nft.json +1 -1
  415. package/cloud-runtime/standalone/apps/local/.next/server/app/status/page_client-reference-manifest.js +1 -1
  416. package/cloud-runtime/standalone/apps/local/.next/server/app/status.html +2 -2
  417. package/cloud-runtime/standalone/apps/local/.next/server/app/status.rsc +3 -3
  418. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_full.segment.rsc +3 -3
  419. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_head.segment.rsc +1 -1
  420. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_index.segment.rsc +2 -2
  421. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_tree.segment.rsc +2 -2
  422. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status/__PAGE__.segment.rsc +2 -2
  423. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status.segment.rsc +1 -1
  424. package/cloud-runtime/standalone/apps/local/.next/server/app-paths-manifest.json +27 -19
  425. package/cloud-runtime/standalone/apps/local/.next/server/chunks/083c9_next-internal_server_app_api_trackers_[tracker]_callback_route_actions_e1d8c3e4.js +3 -0
  426. package/cloud-runtime/standalone/apps/local/.next/server/chunks/0da96_local__next-internal_server_app_api_trackers_connections_route_actions_35145606.js +3 -0
  427. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_active-agents_route_actions_e9c27b60.js +3 -0
  428. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_items_[id]_activity_route_actions_bb364795.js +3 -0
  429. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_items_[id]_recap_route_actions_aaed4138.js +3 -0
  430. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_items_[id]_route_actions_6382f424.js +3 -0
  431. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_mcp-setup_route_actions_1279e3c1.js +3 -0
  432. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_runs_[id]_route_actions_4c32ff23.js +3 -0
  433. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_runs_scripted_route_actions_3c16062e.js +3 -0
  434. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_token-receive_route_actions_f831c68f.js +3 -0
  435. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[externals]__cb7264ab._.js +3 -0
  436. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[externals]_fs_promises_0bfe4114._.js +3 -0
  437. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__8ea8c1b9._.js → [root-of-the-server]__03585144._.js} +2 -2
  438. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__9a457fa6._.js → [root-of-the-server]__04ee9637._.js} +2 -2
  439. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__079c42ac._.js +3 -0
  440. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__08a40fc7._.js +3 -0
  441. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__bad0734e._.js → [root-of-the-server]__0a528fae._.js} +2 -2
  442. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__29ef193f._.js → [root-of-the-server]__0b317b6d._.js} +2 -2
  443. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0fbbaf2d._.js +95 -0
  444. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__101fe653._.js +3 -0
  445. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__10a90219._.js +69 -0
  446. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__305e10a8._.js → [root-of-the-server]__10bfac8f._.js} +2 -2
  447. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__121d8e45._.js +3 -0
  448. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__1629da24._.js +9 -0
  449. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__9a4dd378._.js → [root-of-the-server]__19d0fac1._.js} +2 -2
  450. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__1d3e684e._.js +70 -0
  451. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__203428c1._.js +6 -0
  452. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__21721841._.js +3 -0
  453. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__240d98b0._.js +3 -0
  454. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__a7163d7b._.js → [root-of-the-server]__2ab23e45._.js} +2 -2
  455. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__2bb933c7._.js +3 -0
  456. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__2c148e2b._.js +3 -0
  457. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__2ff70366._.js +3 -0
  458. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__17474404._.js → [root-of-the-server]__368f5ffd._.js} +2 -2
  459. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__80be3fd0._.js → [root-of-the-server]__39baf5f6._.js} +1 -1
  460. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__3a038592._.js +10 -8
  461. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__3b27260f._.js +114 -0
  462. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__f99bf39d._.js → [root-of-the-server]__41534d9e._.js} +2 -2
  463. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__9f7dc3d5._.js → [root-of-the-server]__4641ba3f._.js} +2 -2
  464. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0408eb2d._.js → [root-of-the-server]__4b167927._.js} +2 -2
  465. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0e11afc3._.js → [root-of-the-server]__4b9d4f5c._.js} +2 -2
  466. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__45988247._.js → [root-of-the-server]__4e296e1f._.js} +2 -2
  467. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__3a639150._.js → [root-of-the-server]__4fbf7baa._.js} +2 -2
  468. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__cf874bd3._.js → [root-of-the-server]__5184da61._.js} +3 -3
  469. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__5859156d._.js +8 -0
  470. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__6062bf0a._.js +3 -0
  471. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__68b692c4._.js +131 -0
  472. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__92dfd9af._.js → [root-of-the-server]__6b0b354d._.js} +2 -2
  473. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__8363ba26._.js → [root-of-the-server]__6e0ef488._.js} +2 -2
  474. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__68c85bdd._.js → [root-of-the-server]__6e73b6e1._.js} +2 -2
  475. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__a8861f5b._.js → [root-of-the-server]__6ead08b8._.js} +2 -2
  476. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__fd3e97e7._.js → [root-of-the-server]__6f6afa0f._.js} +20 -20
  477. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__73f80c8c._.js +3 -0
  478. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__7be142e5._.js → [root-of-the-server]__7b7b4601._.js} +2 -2
  479. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__7cd28ae0._.js +3 -0
  480. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__7db7c421._.js +119 -0
  481. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__1888961f._.js → [root-of-the-server]__7fcbb0c2._.js} +96 -94
  482. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__83baa76e._.js → [root-of-the-server]__80aea589._.js} +1 -1
  483. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__8269cb17._.js +3 -0
  484. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__847236fb._.js +3 -0
  485. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__847ab7ae._.js +3 -0
  486. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__91dd4b59._.js → [root-of-the-server]__8dd3b8c5._.js} +2 -2
  487. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__268327fe._.js → [root-of-the-server]__905a5b44._.js} +2 -2
  488. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__8c1f1ac0._.js → [root-of-the-server]__90dd5edd._.js} +2 -2
  489. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__97b5dbf7._.js +3 -0
  490. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__bb6304da._.js → [root-of-the-server]__97e51964._.js} +2 -2
  491. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0ce28b4a._.js → [root-of-the-server]__97e7a600._.js} +2 -2
  492. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__9e4c0741._.js +8 -0
  493. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__9e9149cd._.js +3 -0
  494. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__cea6728f._.js → [root-of-the-server]__a74338e8._.js} +2 -2
  495. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__816926cc._.js → [root-of-the-server]__aa4e5942._.js} +2 -2
  496. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__ab9b38d8._.js +3 -0
  497. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__4c4892ef._.js → [root-of-the-server]__ac854687._.js} +2 -2
  498. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__c18c59db._.js → [root-of-the-server]__ae54e5ab._.js} +2 -2
  499. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__b0a94c41._.js +70 -0
  500. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__b1357960._.js +3 -0
  501. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__53af378f._.js → [root-of-the-server]__b810670d._.js} +2 -2
  502. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__ba72d342._.js +91 -0
  503. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__da39c8a8._.js → [root-of-the-server]__bb757af8._.js} +2 -2
  504. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__c07d22ff._.js +3 -0
  505. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__c3408141._.js +3 -0
  506. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__c4a986f6._.js +3 -0
  507. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__6e876a97._.js → [root-of-the-server]__c614c26c._.js} +2 -2
  508. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__c936d679._.js +17 -0
  509. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__caa79472._.js +3 -0
  510. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__dc146f58._.js → [root-of-the-server]__cbd45246._.js} +2 -2
  511. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__8316aa3e._.js → [root-of-the-server]__d402ed75._.js} +2 -2
  512. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__d8cc43c7._.js +114 -0
  513. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__e9ff8266._.js → [root-of-the-server]__d8efbb6c._.js} +2 -2
  514. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__e679695d._.js → [root-of-the-server]__dd538d32._.js} +2 -2
  515. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__c16e8d2d._.js → [root-of-the-server]__df0f00fd._.js} +2 -2
  516. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__131f801a._.js → [root-of-the-server]__e237981c._.js} +2 -2
  517. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__7d454180._.js → [root-of-the-server]__e583235c._.js} +2 -2
  518. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__ccd1a823._.js → [root-of-the-server]__ece576c1._.js} +2 -2
  519. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__ef1c393e._.js +70 -0
  520. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__c97ac79d._.js → [root-of-the-server]__f21be9eb._.js} +2 -2
  521. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__f598d976._.js +3 -0
  522. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__f7a936d9._.js +114 -0
  523. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__d7e4a538._.js → [root-of-the-server]__fb5944d3._.js} +1 -1
  524. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__fb694089._.js +3 -0
  525. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__fbe43c0a._.js +3 -0
  526. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{_3a4bfa8b._.js → _08b93004._.js} +2 -2
  527. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_1a4cb196._.js +95 -0
  528. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_2124f905._.js +25 -0
  529. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_21812330._.js +23 -23
  530. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_25136564._.js +11 -0
  531. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_520e6344._.js +25 -0
  532. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_5b3f1f41._.js +1 -1
  533. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_5e5f36c4._.js +91 -0
  534. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_80b34b78._.js +3 -0
  535. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_8f9f647d._.js +128 -0
  536. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_task-groups_[id]_route_actions_b10cc67c.js +3 -0
  537. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_task-groups_route_actions_0079ff4a.js +3 -0
  538. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_tracker_notes_route_actions_b8a47be9.js +3 -0
  539. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_update-check_route_actions_29ba83b6.js +3 -0
  540. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{apps_local_3e0a6a05._.js → apps_local_a15e73a6._.js} +3 -3
  541. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_aac0e4cb._.js +109 -0
  542. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_b8cc7add._.js +23 -23
  543. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{apps_local_2c8c923a._.js → apps_local_c101ba9e._.js} +2 -2
  544. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_d256aa32._.js +286 -0
  545. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_e12b284f._.js +23 -23
  546. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_e1f4d9ad._.js +91 -0
  547. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_e55f28ef._.js +296 -0
  548. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_ea2bca7e._.js +109 -0
  549. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_f8b3abae._.js +91 -0
  550. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_3ddc6591._.js +4 -0
  551. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_6bd3d8a2._.js +15 -15
  552. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_cli-runner_ts_ead5489c._.js +18 -18
  553. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_d268503a._.js +15 -15
  554. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_history-store_ts_e4ff7678._.js +19 -12
  555. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_history-store_ts_e98db4de._.js +19 -12
  556. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{apps_local_58f0d34e._.js → apps_local_lib_linear-issues_ts_50093d17._.js} +15 -20
  557. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_orchestrator_chat-processor_ts_46384f36._.js +14 -13
  558. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_sqlite-query-adapter_ts_7b90c71f._.js +49 -23
  559. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_sqlite-query-adapter_ts_7ee03cea._.js +3 -0
  560. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_sqlite-query-adapter_ts_a3d4d8f4._.js +48 -22
  561. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_tracker_tracker-run-store_ts_5aa9592e._.js +114 -0
  562. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_chat-runs_[id]_events_route_actions_2099e8ec.js +3 -0
  563. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_task-groups_[id]_tasks_route_actions_9a8b437b.js +3 -0
  564. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_auth_route_actions_93e51026.js +3 -0
  565. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_groups_route_actions_950eeaf7.js +3 -0
  566. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_items_route_actions_41ec2af7.js +3 -0
  567. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_options_route_actions_19b0ffef.js +3 -0
  568. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_runs_route_actions_54d24a56.js +3 -0
  569. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_status_route_actions_1f8ce507.js +3 -0
  570. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_token_route_actions_93eeb2d1.js +3 -0
  571. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_worker_route_actions_22ced26f.js +3 -0
  572. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/083c9_next-internal_server_app_projects_[slug]_tracking_connect_page_actions_72d4a587.js +3 -0
  573. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0da96_local__next-internal_server_app_projects_[slug]_tracking_page_actions_ad982907.js +3 -0
  574. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/30bdd_server_app_projects_[slug]_tracking_[tracker]_page_actions_c27c0fcc.js +3 -0
  575. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/9fb8c_lucide-react_dist_esm_icons_5e38c2ed._.js +3 -0
  576. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__6e4038bb._.js → [root-of-the-server]__2c4531d0._.js} +2 -2
  577. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__30bf097e._.js +3 -0
  578. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__46ae9d33._.js +3 -0
  579. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__50fd8680._.js +3 -0
  580. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__64cb5d93._.js → [root-of-the-server]__51edc9b6._.js} +2 -2
  581. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__5aa35736._.js +3 -0
  582. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__5c817ed1._.js +3 -0
  583. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__799f4d13._.js +3 -0
  584. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__8059a285._.js +3 -0
  585. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__886953ec._.js +7 -0
  586. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__97160565._.js +3 -0
  587. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__b8a00d09._.js +3 -0
  588. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__bc60b3cf._.js +3 -0
  589. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__bce1fbf7._.js +1 -1
  590. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__c2c07c79._.js +3 -0
  591. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__c7e1ea27._.js +1 -1
  592. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__24007358._.js → [root-of-the-server]__ce586680._.js} +2 -2
  593. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__fdfb2d96._.js +3 -0
  594. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_55671310._.js +13 -13
  595. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_ba2abc47._.js +7 -0
  596. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_e00b6c25._.js +3 -0
  597. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_e485f527._.js +3 -0
  598. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_064c7b93._.js +18 -0
  599. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_16902bc1._.js +1 -1
  600. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_1e4a0236._.js +1 -1
  601. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_35d90b5d._.js +3 -0
  602. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_3e5712aa._.js +3 -0
  603. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_3f9f6417._.js +1 -1
  604. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_5d6a3ce2._.js +3 -0
  605. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_5eebb5cb._.js +3 -0
  606. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_7395ab20._.js +18 -0
  607. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_86f59be8._.js +3 -0
  608. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_988d29c0._.js +1 -1
  609. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_layout_tsx_3bb31889._.js +1 -1
  610. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_page_tsx_76330306._.js +1 -1
  611. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_terminal_page_tsx_0933eeaf._.js +1 -1
  612. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_thread_[threadId]_page_tsx_2a1d1d5e._.js +1 -1
  613. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_c5e75cc1._.js +18 -0
  614. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_TrackerBoard_tsx_98970bab._.js +48 -0
  615. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_chat-ui_f0554cb4._.js +11 -0
  616. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_projects_ProjectObjectivesWorkspace_tsx_751ab3d3._.js +3 -3
  617. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_d9a0fd57._.js +4 -0
  618. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_da1774f7._.js +4 -0
  619. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{apps_local_5b388b71._.js → apps_local_e46807f8._.js} +3 -3
  620. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_e7a823e9._.js +3 -0
  621. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_f67bb291._.js +18 -0
  622. package/cloud-runtime/standalone/apps/local/.next/server/functions-config-manifest.json +20 -17
  623. package/cloud-runtime/standalone/apps/local/.next/server/middleware-manifest.json +5 -5
  624. package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.js +1 -1
  625. package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.json +12 -4
  626. package/cloud-runtime/standalone/apps/local/.next/server/pages/404.html +2 -2
  627. package/cloud-runtime/standalone/apps/local/.next/server/pages/500.html +2 -2
  628. package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.js +1 -1
  629. package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.json +1 -1
  630. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0876dfd6ce07abaf.js +9 -0
  631. package/cloud-runtime/standalone/apps/local/.next/static/chunks/114ea1bfd6907330.js +1 -0
  632. package/cloud-runtime/standalone/apps/local/.next/static/chunks/1533a70763aff97d.js +1 -0
  633. package/cloud-runtime/standalone/apps/local/.next/static/chunks/1ec83777a9abd420.js +16 -0
  634. package/cloud-runtime/standalone/apps/local/.next/static/chunks/1fef9364e8667e88.js +1 -0
  635. package/cloud-runtime/standalone/apps/local/.next/static/chunks/286758b0fd546c68.js +16 -0
  636. package/cloud-runtime/standalone/apps/local/.next/static/chunks/31eb3dfbf34049d2.js +1 -0
  637. package/cloud-runtime/standalone/apps/local/.next/static/chunks/31fa61ac9eccd69e.js +1 -0
  638. package/cloud-runtime/standalone/apps/local/.next/static/chunks/37f4e8258ca4d3fb.js +1 -0
  639. package/cloud-runtime/standalone/apps/local/.next/static/chunks/416f4124364c7ec8.js +1 -0
  640. package/cloud-runtime/standalone/apps/local/.next/static/chunks/4eaf7bca1be5edfa.js +1 -0
  641. package/cloud-runtime/standalone/apps/local/.next/static/chunks/6c278ae4535b6d5c.js +1 -0
  642. package/cloud-runtime/standalone/apps/local/.next/static/chunks/6c777fe66e042eec.js +16 -0
  643. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{2b946f9d53da482e.js → 77cea126364aab3c.js} +1 -1
  644. package/cloud-runtime/standalone/apps/local/.next/static/chunks/85b0b6ed57b5df52.js +1 -0
  645. package/cloud-runtime/standalone/apps/local/.next/static/chunks/87e4fb11329a358d.js +1 -0
  646. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{4bc34bec0c539bb8.js → 8a9626e4d7c259ee.js} +6 -6
  647. package/cloud-runtime/standalone/apps/local/.next/static/chunks/a72ed5cb3feb0d51.js +5 -0
  648. package/cloud-runtime/standalone/apps/local/.next/static/chunks/b02c180ad1d968eb.js +16 -0
  649. package/cloud-runtime/standalone/apps/local/.next/static/chunks/b048a4812b51f97a.js +1 -0
  650. package/cloud-runtime/standalone/apps/local/.next/static/chunks/be9022a471666b85.js +1 -0
  651. package/cloud-runtime/standalone/apps/local/.next/static/chunks/c63d97c917d96f47.js +46 -0
  652. package/cloud-runtime/standalone/apps/local/.next/static/chunks/cb19d71dd7ffb935.js +1 -0
  653. package/cloud-runtime/standalone/apps/local/.next/static/chunks/cbb4dbdc63177701.js +1 -0
  654. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{bf4057d9deff2a78.js → cd19b123505dd26c.js} +2 -2
  655. package/cloud-runtime/standalone/apps/local/.next/static/chunks/d3bf70e2fbdc0ae5.js +5 -0
  656. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{592bca7fe1fc1455.js → d500a3f5d15b31d5.js} +1 -1
  657. package/cloud-runtime/standalone/apps/local/.next/static/chunks/d5b14e14665024a9.js +5 -0
  658. package/cloud-runtime/standalone/apps/local/.next/static/chunks/dd5a56eea2d4c067.js +16 -0
  659. package/cloud-runtime/standalone/apps/local/.next/static/chunks/dd7d7c382389b8b9.js +16 -0
  660. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{571e45336377eb45.js → e72724fd8225ec39.js} +3 -3
  661. package/cloud-runtime/standalone/apps/local/.next/static/chunks/ec92e3bd6c2db6e6.css +1 -0
  662. package/cloud-runtime/standalone/apps/local/.next/static/chunks/f3c1b6295b9442c6.js +1 -0
  663. package/cloud-runtime/standalone/apps/local/app/api/chat-runs/[id]/events/route.ts +98 -0
  664. package/cloud-runtime/standalone/apps/local/app/api/prompt-jobs/route.ts +1 -1
  665. package/cloud-runtime/standalone/apps/local/app/api/task-groups/[id]/route.ts +38 -0
  666. package/cloud-runtime/standalone/apps/local/app/api/task-groups/[id]/tasks/route.ts +42 -0
  667. package/cloud-runtime/standalone/apps/local/app/api/task-groups/route.ts +38 -0
  668. package/cloud-runtime/standalone/apps/local/app/api/tracker/notes/route.ts +65 -0
  669. package/cloud-runtime/standalone/apps/local/app/api/{linear/issues → trackers/[tracker]}/active-agents/route.ts +3 -2
  670. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/auth/route.ts +29 -0
  671. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/callback/route.ts +58 -0
  672. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/groups/route.ts +24 -0
  673. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/items/[id]/activity/route.ts +24 -0
  674. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/items/[id]/recap/route.ts +125 -0
  675. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/items/[id]/route.ts +60 -0
  676. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/items/route.ts +44 -0
  677. package/cloud-runtime/standalone/apps/local/app/api/{linear → trackers/[tracker]}/mcp-setup/route.ts +90 -33
  678. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/options/route.ts +33 -0
  679. package/cloud-runtime/standalone/apps/local/app/api/{linear → trackers/[tracker]}/runs/[id]/route.ts +24 -16
  680. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/runs/route.ts +87 -0
  681. package/cloud-runtime/standalone/apps/local/app/api/{linear → trackers/[tracker]}/runs/scripted/route.ts +13 -6
  682. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/status/route.ts +48 -0
  683. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/token/route.ts +49 -0
  684. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/token-receive/route.ts +52 -0
  685. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/worker/route.ts +163 -0
  686. package/cloud-runtime/standalone/apps/local/app/api/trackers/connections/route.ts +96 -0
  687. package/cloud-runtime/standalone/apps/local/app/api/update-check/route.ts +50 -0
  688. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/layout.tsx +2 -1
  689. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/terminal/page.tsx +4 -1
  690. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/{linear → tracking/[tracker]}/page.tsx +11 -6
  691. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/tracking/connect/page.tsx +180 -0
  692. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/tracking/page.tsx +36 -0
  693. package/cloud-runtime/standalone/apps/local/components/PromptJobBoard.tsx +3 -3
  694. package/cloud-runtime/standalone/apps/local/components/{LinearBoard.tsx → TrackerBoard.tsx} +654 -302
  695. package/cloud-runtime/standalone/apps/local/components/chat-ui/Composer.tsx +18 -75
  696. package/cloud-runtime/standalone/apps/local/components/chat-ui/MessageBubble.tsx +6 -1
  697. package/cloud-runtime/standalone/apps/local/components/chat-ui/MessageList.tsx +34 -8
  698. package/cloud-runtime/standalone/apps/local/components/chat-ui/StreamingSegments.tsx +88 -0
  699. package/cloud-runtime/standalone/apps/local/components/chat-ui/ThreadView.tsx +23 -13
  700. package/cloud-runtime/standalone/apps/local/components/projects/ProjectObjectivesWorkspace.tsx +18 -2
  701. package/cloud-runtime/standalone/apps/local/components/projects/home/ToolPathsSection.tsx +7 -7
  702. package/cloud-runtime/standalone/apps/local/components/terminal/ProjectTerminal.tsx +28 -5
  703. package/cloud-runtime/standalone/apps/local/components/thread/WorkspaceSidebar.tsx +61 -46
  704. package/cloud-runtime/standalone/apps/local/components/tracker/FolderRow.tsx +161 -0
  705. package/cloud-runtime/standalone/apps/local/components/tracker/GroupNamePrompt.tsx +110 -0
  706. package/cloud-runtime/standalone/apps/local/components/tracker/GroupPanel.tsx +306 -0
  707. package/cloud-runtime/standalone/apps/local/components/tracker/NoteSticker.tsx +161 -0
  708. package/cloud-runtime/standalone/apps/local/components/{linear → tracker}/RunScriptManager.tsx +7 -7
  709. package/cloud-runtime/standalone/apps/local/components/tracker/SelectionBar.tsx +38 -0
  710. package/cloud-runtime/standalone/apps/local/components/{linear → tracker}/TicketPanel.tsx +39 -37
  711. package/cloud-runtime/standalone/apps/local/components/{linear → tracker}/TicketRecapSection.tsx +9 -5
  712. package/cloud-runtime/standalone/apps/local/components/tracker/TicketRow.tsx +279 -0
  713. package/cloud-runtime/standalone/apps/local/components/{linear → tracker}/TicketSessionList.tsx +3 -3
  714. package/cloud-runtime/standalone/apps/local/components/{linear/LinearSettingsModal.tsx → tracker/TrackerSettingsModal.tsx} +26 -22
  715. package/cloud-runtime/standalone/apps/local/components/{linear/LinearWorkerConfig.tsx → tracker/TrackerWorkerConfig.tsx} +12 -12
  716. package/cloud-runtime/standalone/apps/local/components/{linear/LinearWorkerRunLog.tsx → tracker/TrackerWorkerRunLog.tsx} +4 -4
  717. package/cloud-runtime/standalone/apps/local/components/tracking/TaskTrackingNav.tsx +125 -0
  718. package/cloud-runtime/standalone/apps/local/components/tracking/TrackerIcon.tsx +58 -0
  719. package/cloud-runtime/standalone/apps/local/components/tracking/TrackerSetup.tsx +264 -0
  720. package/cloud-runtime/standalone/apps/local/hooks/useGroupChat.ts +1 -0
  721. package/cloud-runtime/standalone/apps/local/hooks/useProcessPolling.ts +155 -12
  722. package/cloud-runtime/standalone/apps/local/hooks/useSidebarStage.ts +54 -18
  723. package/cloud-runtime/standalone/apps/local/hooks/useTaskGroups.ts +133 -0
  724. package/cloud-runtime/standalone/apps/local/hooks/{useLinearActiveAgents.ts → useTrackerActiveAgents.ts} +19 -6
  725. package/cloud-runtime/standalone/apps/local/hooks/{useLinearConnection.ts → useTrackerConnection.ts} +107 -26
  726. package/cloud-runtime/standalone/apps/local/hooks/useTrackerConnections.ts +99 -0
  727. package/cloud-runtime/standalone/apps/local/hooks/{useLinearIssueMentions.ts → useTrackerItemMentions.ts} +15 -8
  728. package/cloud-runtime/standalone/apps/local/hooks/useTrackerItems.ts +120 -0
  729. package/cloud-runtime/standalone/apps/local/hooks/{useLinearParticipants.ts → useTrackerParticipants.ts} +4 -4
  730. package/cloud-runtime/standalone/apps/local/hooks/{useLinearRunScripts.ts → useTrackerRunScripts.ts} +15 -15
  731. package/cloud-runtime/standalone/apps/local/hooks/{useLinearRuns.ts → useTrackerRuns.ts} +33 -55
  732. package/cloud-runtime/standalone/apps/local/hooks/useUpdateCheck.ts +37 -0
  733. package/cloud-runtime/standalone/apps/local/hooks/useUrlSelection.ts +19 -0
  734. package/cloud-runtime/standalone/apps/local/lib/agent-process-registry.ts +29 -6
  735. package/cloud-runtime/standalone/apps/local/lib/chat/tracker-issue-context.ts +11 -0
  736. package/cloud-runtime/standalone/apps/local/lib/chat/{linear-issue-context.ts → tracker-item-context.ts} +19 -10
  737. package/cloud-runtime/standalone/apps/local/lib/chat-event-bus.ts +84 -0
  738. package/cloud-runtime/standalone/apps/local/lib/chat-utils.ts +68 -0
  739. package/cloud-runtime/standalone/apps/local/lib/cli-runner.ts +46 -21
  740. package/cloud-runtime/standalone/apps/local/lib/constants/timing.ts +1 -0
  741. package/cloud-runtime/standalone/apps/local/lib/history-store.ts +14 -0
  742. package/cloud-runtime/standalone/apps/local/lib/linear-run-status.ts +3 -1
  743. package/cloud-runtime/standalone/apps/local/lib/{objective-linear-issues.ts → objective-tracker-issues.ts} +12 -6
  744. package/cloud-runtime/standalone/apps/local/lib/orchestrator/chat-processor.ts +35 -1
  745. package/cloud-runtime/standalone/apps/local/lib/sqlite-query-adapter.ts +32 -0
  746. package/cloud-runtime/standalone/apps/local/lib/stream-multiplexer.ts +5 -0
  747. package/cloud-runtime/standalone/apps/local/lib/task-groups-db.ts +130 -0
  748. package/cloud-runtime/standalone/apps/local/lib/tiptap/composer-mentions.ts +5 -5
  749. package/cloud-runtime/standalone/apps/local/lib/tiptap/editor-utils.ts +1 -1
  750. package/cloud-runtime/standalone/apps/local/lib/tiptap/serialize-composer.ts +2 -2
  751. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/jira/adapter.tsx +324 -0
  752. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/jira/client.ts +517 -0
  753. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/jira/index.ts +18 -0
  754. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/jira/issues.ts +268 -0
  755. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/jira/jira-icon.tsx +22 -0
  756. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/linear/adapter.tsx +307 -0
  757. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/linear/client.ts +907 -0
  758. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/linear/index.ts +9 -0
  759. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/linear/issues.ts +376 -0
  760. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/linear/linear-icon.tsx +14 -0
  761. package/cloud-runtime/standalone/apps/local/lib/tracker/connections.ts +67 -0
  762. package/cloud-runtime/standalone/apps/local/lib/tracker/index.ts +44 -0
  763. package/cloud-runtime/standalone/apps/local/lib/tracker/recap.ts +246 -0
  764. package/cloud-runtime/standalone/apps/local/lib/tracker/registry.ts +32 -0
  765. package/cloud-runtime/standalone/apps/local/lib/tracker/route-helpers.ts +27 -0
  766. package/cloud-runtime/standalone/apps/local/lib/{linear-scripted-session.ts → tracker/scripted-session.ts} +28 -23
  767. package/cloud-runtime/standalone/apps/local/lib/tracker/tracker-adapter.ts +64 -0
  768. package/cloud-runtime/standalone/apps/local/lib/{linear-execution-prompt.ts → tracker/tracker-execution-prompt.ts} +27 -23
  769. package/cloud-runtime/standalone/apps/local/lib/tracker/tracker-item-store.ts +804 -0
  770. package/cloud-runtime/standalone/apps/local/lib/tracker/tracker-run-store.ts +560 -0
  771. package/cloud-runtime/standalone/apps/local/lib/tracker/types.ts +119 -0
  772. package/cloud-runtime/standalone/apps/local/lib/tracker-board-utils.ts +4 -0
  773. package/cloud-runtime/standalone/apps/local/lib/tracker-run-status.ts +88 -0
  774. package/cloud-runtime/standalone/apps/local/lib/types.ts +1 -0
  775. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/objective-worker.ts +4 -4
  776. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/processor.ts +7 -6
  777. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/{linear-worker-constants.ts → task-worker-constants.ts} +11 -11
  778. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/task-worker-job.ts +49 -0
  779. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/{linear-worker.ts → task-worker.ts} +47 -31
  780. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/types.ts +5 -3
  781. package/cloud-runtime/standalone/apps/local/state/lastSession.test.ts +83 -0
  782. package/cloud-runtime/standalone/apps/local/state/lastSession.ts +46 -0
  783. package/cloud-runtime/standalone/apps/local/state/trackerBoardFilters.ts +112 -0
  784. package/cloud-runtime/standalone/apps/local/state/{linearBoardPins.ts → trackerBoardPins.ts} +14 -9
  785. package/cloud-runtime/standalone/apps/local/state/{linearRunScripts.ts → trackerRunScripts.ts} +32 -24
  786. package/cloud-runtime/standalone/apps/local/worker/index.js +194 -14
  787. package/lib/commands/chat.js +0 -4
  788. package/lib/logger.ts +72 -0
  789. package/package.json +1 -1
  790. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/auth/route/app-paths-manifest.json +0 -3
  791. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/auth/route.js +0 -7
  792. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/callback/route/app-paths-manifest.json +0 -3
  793. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/callback/route.js +0 -7
  794. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/callback/route_client-reference-manifest.js +0 -2
  795. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/cycles/route/app-paths-manifest.json +0 -3
  796. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/cycles/route.js +0 -7
  797. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/cycles/route.js.nft.json +0 -1
  798. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/cycles/route_client-reference-manifest.js +0 -2
  799. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/[id]/recap/route/app-paths-manifest.json +0 -3
  800. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/[id]/recap/route.js +0 -12
  801. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/[id]/recap/route.js.nft.json +0 -1
  802. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/[id]/route/app-paths-manifest.json +0 -3
  803. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/[id]/route.js.nft.json +0 -1
  804. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/[id]/route_client-reference-manifest.js +0 -2
  805. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/active-agents/route/app-paths-manifest.json +0 -3
  806. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/active-agents/route.js +0 -7
  807. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/activity/route/app-paths-manifest.json +0 -3
  808. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/activity/route.js +0 -7
  809. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/context/route/app-paths-manifest.json +0 -3
  810. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/context/route.js.nft.json +0 -1
  811. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/route/app-paths-manifest.json +0 -3
  812. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/route.js +0 -11
  813. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/route.js.nft.json +0 -1
  814. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/route_client-reference-manifest.js +0 -2
  815. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/mcp-setup/route/app-paths-manifest.json +0 -3
  816. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/mcp-setup/route.js +0 -8
  817. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/options/route/app-paths-manifest.json +0 -3
  818. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/options/route.js +0 -11
  819. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/options/route.js.nft.json +0 -1
  820. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/options/route_client-reference-manifest.js +0 -2
  821. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/[id]/route/app-paths-manifest.json +0 -3
  822. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/[id]/route.js +0 -7
  823. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/[id]/route_client-reference-manifest.js +0 -2
  824. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/route/app-paths-manifest.json +0 -3
  825. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/route.js +0 -7
  826. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/route.js.nft.json +0 -1
  827. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/route_client-reference-manifest.js +0 -2
  828. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/scripted/route/app-paths-manifest.json +0 -3
  829. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/scripted/route.js +0 -24
  830. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/scripted/route.js.nft.json +0 -1
  831. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/status/route/app-paths-manifest.json +0 -3
  832. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/status/route.js +0 -7
  833. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/status/route.js.nft.json +0 -1
  834. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/token/route/app-paths-manifest.json +0 -3
  835. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/token/route.js +0 -7
  836. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/token/route.js.nft.json +0 -1
  837. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route/app-paths-manifest.json +0 -3
  838. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route.js +0 -13
  839. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route.js.nft.json +0 -1
  840. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route_client-reference-manifest.js +0 -2
  841. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route/app-paths-manifest.json +0 -3
  842. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route.js +0 -14
  843. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route.js.nft.json +0 -1
  844. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route_client-reference-manifest.js +0 -2
  845. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page/app-paths-manifest.json +0 -3
  846. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page_client-reference-manifest.js +0 -2
  847. package/cloud-runtime/standalone/apps/local/.next/server/chunks/083c9_next-internal_server_app_api_linear_issues_active-agents_route_actions_e49a4900.js +0 -3
  848. package/cloud-runtime/standalone/apps/local/.next/server/chunks/0da96_local__next-internal_server_app_api_linear_issues_[id]_route_actions_8966da68.js +0 -3
  849. package/cloud-runtime/standalone/apps/local/.next/server/chunks/0da96_local__next-internal_server_app_api_linear_runs_scripted_route_actions_65d0c32b.js +0 -3
  850. package/cloud-runtime/standalone/apps/local/.next/server/chunks/9fb8c_next_dist_esm_build_templates_app-route_4a0d9040.js +0 -3
  851. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[externals]__c397277f._.js +0 -3
  852. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[externals]__ec108b52._.js +0 -3
  853. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0e80a97a._.js +0 -3
  854. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0fc11060._.js +0 -3
  855. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__1926415e._.js +0 -3
  856. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__1a87c857._.js +0 -3
  857. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__1d278aeb._.js +0 -8
  858. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__1ee65b64._.js +0 -3
  859. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__2f038740._.js +0 -8
  860. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__4b05c44d._.js +0 -141
  861. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__4c070f04._.js +0 -165
  862. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__6183b682._.js +0 -67
  863. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__63752370._.js +0 -3
  864. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__713ff4cf._.js +0 -145
  865. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__7ce30f24._.js +0 -3
  866. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__87abf03f._.js +0 -141
  867. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__a22e30c6._.js +0 -22
  868. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__b176d4d9._.js +0 -160
  869. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__c84eafe2._.js +0 -141
  870. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__d28ace89._.js +0 -3
  871. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__d7e18064._.js +0 -160
  872. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__d9bbc1a6._.js +0 -141
  873. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__dfd77ac4._.js +0 -31
  874. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__ef75c5b6._.js +0 -4
  875. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__f66666f9._.js +0 -141
  876. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__f844df91._.js +0 -3
  877. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__ff6a99f0._.js +0 -160
  878. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_00ea3122._.js +0 -415
  879. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_022eee16._.js +0 -3
  880. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_08d3c605._.js +0 -25
  881. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_671682cc._.js +0 -3
  882. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_7222e528._.js +0 -9
  883. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_755b8689._.js +0 -415
  884. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_auth_route_actions_845dd997.js +0 -3
  885. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_callback_route_actions_90a636e1.js +0 -3
  886. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_cycles_route_actions_20618fe1.js +0 -3
  887. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_issues_route_actions_f798ab06.js +0 -3
  888. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_mcp-setup_route_actions_9c461973.js +0 -3
  889. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_options_route_actions_3455e6c0.js +0 -3
  890. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_runs_[id]_route_actions_4bd5ad16.js +0 -3
  891. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_runs_route_actions_8613ec29.js +0 -3
  892. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_status_route_actions_746bcaf4.js +0 -3
  893. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_token_route_actions_8fed80a2.js +0 -3
  894. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_worker_route_actions_ef891304.js +0 -3
  895. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_af73c5e8._.js +0 -155
  896. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_b3086d93._.js +0 -25
  897. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_c530bd77._.js +0 -11
  898. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_f13708ae._.js +0 -415
  899. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_077d49c2._.js +0 -8
  900. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_62edff06._.js +0 -4
  901. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_941822a8._.js +0 -4
  902. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_e7ef8bcb._.js +0 -4
  903. package/cloud-runtime/standalone/apps/local/.next/server/chunks/e2f97_api_projects_[id]_objectives_[objectiveId]_linear-issues_route_actions_d506d8a3.js +0 -3
  904. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_linear_issues_[id]_recap_route_actions_7b9ac0ec.js +0 -3
  905. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_linear_issues_activity_route_actions_a25a56a3.js +0 -3
  906. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_linear_issues_context_route_actions_b8ed252b.js +0 -3
  907. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0da96_local__next-internal_server_app_projects_[slug]_linear_page_actions_d3e5c399.js +0 -3
  908. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/9fb8c_lucide-react_dist_esm_icons_c5dc4091._.js +0 -3
  909. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__31c61bac._.js +0 -3
  910. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__364fdd09._.js +0 -3
  911. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__45e37c6d._.js +0 -18
  912. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__7c5959c3._.js +0 -18
  913. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__8666da53._.js +0 -3
  914. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__94ab2a92._.js +0 -18
  915. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__97e9f8c3._.js +0 -18
  916. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__a3cf8479._.js +0 -3
  917. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__d47e7e93._.js +0 -18
  918. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__e9f82952._.js +0 -3
  919. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_480cf274._.js +0 -3
  920. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_4e95976c._.js +0 -3
  921. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_5ec7006b._.js +0 -3
  922. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0ac2a791._.js +0 -3
  923. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0c3f9085._.js +0 -7
  924. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_37d519f7._.js +0 -7
  925. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_96dee4fc._.js +0 -3
  926. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_linear_page_tsx_3fd25408._.js +0 -37
  927. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_d30cc504._.js +0 -11
  928. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_df7bb32d._.js +0 -3
  929. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_f1b23697._.js +0 -11
  930. package/cloud-runtime/standalone/apps/local/.next/static/chunks/09a9b0ff9fedfd4c.js +0 -1
  931. package/cloud-runtime/standalone/apps/local/.next/static/chunks/1d442896a9e6f641.js +0 -1
  932. package/cloud-runtime/standalone/apps/local/.next/static/chunks/26078932a72e240a.js +0 -1
  933. package/cloud-runtime/standalone/apps/local/.next/static/chunks/28f49fb8b0515698.js +0 -1
  934. package/cloud-runtime/standalone/apps/local/.next/static/chunks/2d455dcd9ffde753.js +0 -5
  935. package/cloud-runtime/standalone/apps/local/.next/static/chunks/37015d5c91f9a893.js +0 -1
  936. package/cloud-runtime/standalone/apps/local/.next/static/chunks/5cfcd19e814c5846.js +0 -1
  937. package/cloud-runtime/standalone/apps/local/.next/static/chunks/678144d458893b62.js +0 -1
  938. package/cloud-runtime/standalone/apps/local/.next/static/chunks/79fc27e54d194ae1.css +0 -1
  939. package/cloud-runtime/standalone/apps/local/.next/static/chunks/8c64b8a9eee8e202.js +0 -16
  940. package/cloud-runtime/standalone/apps/local/.next/static/chunks/8f8da5f39011a5fb.js +0 -5
  941. package/cloud-runtime/standalone/apps/local/.next/static/chunks/9a293e4003752b7f.js +0 -1
  942. package/cloud-runtime/standalone/apps/local/.next/static/chunks/9be47f89ded22972.js +0 -16
  943. package/cloud-runtime/standalone/apps/local/.next/static/chunks/a6bfcaae2ac8b716.js +0 -35
  944. package/cloud-runtime/standalone/apps/local/.next/static/chunks/b2bbe7bc1d2e8729.js +0 -16
  945. package/cloud-runtime/standalone/apps/local/.next/static/chunks/b4175ba3d8d2c54a.js +0 -1
  946. package/cloud-runtime/standalone/apps/local/.next/static/chunks/b6ef2665e828eb71.js +0 -9
  947. package/cloud-runtime/standalone/apps/local/.next/static/chunks/be15308d13860246.js +0 -1
  948. package/cloud-runtime/standalone/apps/local/.next/static/chunks/c91eaf8278deda9c.js +0 -1
  949. package/cloud-runtime/standalone/apps/local/.next/static/chunks/d36cc96f4da78fc6.js +0 -1
  950. package/cloud-runtime/standalone/apps/local/.next/static/chunks/d96375ecaaf51dbd.js +0 -1
  951. package/cloud-runtime/standalone/apps/local/.next/static/chunks/e845c01d0cc3b9a2.js +0 -1
  952. package/cloud-runtime/standalone/apps/local/.next/static/chunks/ec699df05370dd42.js +0 -1
  953. package/cloud-runtime/standalone/apps/local/.next/static/chunks/f67c9e5af56eb2d0.js +0 -5
  954. package/cloud-runtime/standalone/apps/local/.next/static/chunks/f693c7ecc12d1d78.js +0 -16
  955. package/cloud-runtime/standalone/apps/local/.next/static/chunks/fa9d7bb55267b173.js +0 -16
  956. package/cloud-runtime/standalone/apps/local/.next/static/chunks/fdebf03746baf784.js +0 -9
  957. package/cloud-runtime/standalone/apps/local/app/api/linear/auth/route.ts +0 -32
  958. package/cloud-runtime/standalone/apps/local/app/api/linear/callback/route.ts +0 -49
  959. package/cloud-runtime/standalone/apps/local/app/api/linear/cycles/route.ts +0 -27
  960. package/cloud-runtime/standalone/apps/local/app/api/linear/issues/[id]/recap/route.ts +0 -30
  961. package/cloud-runtime/standalone/apps/local/app/api/linear/issues/[id]/route.ts +0 -92
  962. package/cloud-runtime/standalone/apps/local/app/api/linear/issues/activity/route.ts +0 -23
  963. package/cloud-runtime/standalone/apps/local/app/api/linear/issues/context/route.ts +0 -26
  964. package/cloud-runtime/standalone/apps/local/app/api/linear/issues/route.ts +0 -96
  965. package/cloud-runtime/standalone/apps/local/app/api/linear/options/route.ts +0 -48
  966. package/cloud-runtime/standalone/apps/local/app/api/linear/runs/route.ts +0 -106
  967. package/cloud-runtime/standalone/apps/local/app/api/linear/status/route.ts +0 -51
  968. package/cloud-runtime/standalone/apps/local/app/api/linear/token/route.ts +0 -72
  969. package/cloud-runtime/standalone/apps/local/app/api/linear/worker/route.ts +0 -151
  970. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route.ts +0 -197
  971. package/cloud-runtime/standalone/apps/local/components/LinearSetup.tsx +0 -239
  972. package/cloud-runtime/standalone/apps/local/components/linear/LinearIcon.tsx +0 -19
  973. package/cloud-runtime/standalone/apps/local/components/linear/TicketRow.tsx +0 -158
  974. package/cloud-runtime/standalone/apps/local/hooks/useLinearIssues.ts +0 -122
  975. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/linear-worker-job.ts +0 -52
  976. package/cloud-runtime/standalone/apps/local/state/linearBoardFilters.ts +0 -108
  977. package/cloud-runtime/standalone/apps/local/state/linearRunScripts.test.ts +0 -99
  978. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/auth → chat-runs/[id]/events}/route/build-manifest.json +0 -0
  979. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/auth → chat-runs/[id]/events}/route/server-reference-manifest.json +0 -0
  980. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/auth → chat-runs/[id]/events}/route.js.map +0 -0
  981. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/callback → task-groups/[id]}/route/build-manifest.json +0 -0
  982. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/callback → task-groups/[id]}/route/server-reference-manifest.json +0 -0
  983. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/callback → task-groups/[id]}/route.js.map +0 -0
  984. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/cycles → task-groups/[id]/tasks}/route/build-manifest.json +0 -0
  985. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/cycles → task-groups/[id]/tasks}/route/server-reference-manifest.json +0 -0
  986. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/cycles → task-groups/[id]/tasks}/route.js.map +0 -0
  987. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/[id]/recap → task-groups}/route/build-manifest.json +0 -0
  988. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/[id]/recap → task-groups}/route/server-reference-manifest.json +0 -0
  989. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/[id]/recap → task-groups}/route.js.map +0 -0
  990. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/[id] → tracker/notes}/route/build-manifest.json +0 -0
  991. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/[id] → tracker/notes}/route/server-reference-manifest.json +0 -0
  992. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/[id] → tracker/notes}/route.js.map +0 -0
  993. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues → trackers/[tracker]}/active-agents/route/build-manifest.json +0 -0
  994. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues → trackers/[tracker]}/active-agents/route/server-reference-manifest.json +0 -0
  995. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues → trackers/[tracker]}/active-agents/route.js.map +0 -0
  996. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/activity → trackers/[tracker]/auth}/route/build-manifest.json +0 -0
  997. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/activity → trackers/[tracker]/auth}/route/server-reference-manifest.json +0 -0
  998. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/activity → trackers/[tracker]/auth}/route.js.map +0 -0
  999. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/context → trackers/[tracker]/callback}/route/build-manifest.json +0 -0
  1000. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/context → trackers/[tracker]/callback}/route/server-reference-manifest.json +0 -0
  1001. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/context → trackers/[tracker]/callback}/route.js.map +0 -0
  1002. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues → trackers/[tracker]/groups}/route/build-manifest.json +0 -0
  1003. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues → trackers/[tracker]/groups}/route/server-reference-manifest.json +0 -0
  1004. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues → trackers/[tracker]/groups}/route.js.map +0 -0
  1005. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/mcp-setup → trackers/[tracker]/items/[id]/activity}/route/build-manifest.json +0 -0
  1006. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/mcp-setup → trackers/[tracker]/items/[id]/activity}/route/server-reference-manifest.json +0 -0
  1007. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/mcp-setup → trackers/[tracker]/items/[id]/activity}/route.js.map +0 -0
  1008. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/options → trackers/[tracker]/items/[id]/recap}/route/build-manifest.json +0 -0
  1009. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/options → trackers/[tracker]/items/[id]/recap}/route/server-reference-manifest.json +0 -0
  1010. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/options → trackers/[tracker]/items/[id]/recap}/route.js.map +0 -0
  1011. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs → trackers/[tracker]/items}/[id]/route/build-manifest.json +0 -0
  1012. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs → trackers/[tracker]/items}/[id]/route/server-reference-manifest.json +0 -0
  1013. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs → trackers/[tracker]/items}/[id]/route.js.map +0 -0
  1014. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs → trackers/[tracker]/items}/route/build-manifest.json +0 -0
  1015. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs → trackers/[tracker]/items}/route/server-reference-manifest.json +0 -0
  1016. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs → trackers/[tracker]/items}/route.js.map +0 -0
  1017. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs/scripted → trackers/[tracker]/mcp-setup}/route/build-manifest.json +0 -0
  1018. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs/scripted → trackers/[tracker]/mcp-setup}/route/server-reference-manifest.json +0 -0
  1019. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs/scripted → trackers/[tracker]/mcp-setup}/route.js.map +0 -0
  1020. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/status → trackers/[tracker]/options}/route/build-manifest.json +0 -0
  1021. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/status → trackers/[tracker]/options}/route/server-reference-manifest.json +0 -0
  1022. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/status → trackers/[tracker]/options}/route.js.map +0 -0
  1023. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/token → trackers/[tracker]/runs/[id]}/route/build-manifest.json +0 -0
  1024. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/token → trackers/[tracker]/runs/[id]}/route/server-reference-manifest.json +0 -0
  1025. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/token → trackers/[tracker]/runs/[id]}/route.js.map +0 -0
  1026. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/worker → trackers/[tracker]/runs}/route/build-manifest.json +0 -0
  1027. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/worker → trackers/[tracker]/runs}/route/server-reference-manifest.json +0 -0
  1028. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/worker → trackers/[tracker]/runs}/route.js.map +0 -0
  1029. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{projects/[id]/objectives/[objectiveId]/linear-issues → trackers/[tracker]/runs/scripted}/route/build-manifest.json +0 -0
  1030. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{projects/[id]/objectives/[objectiveId]/linear-issues → trackers/[tracker]/runs/scripted}/route/server-reference-manifest.json +0 -0
  1031. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{projects/[id]/objectives/[objectiveId]/linear-issues → trackers/[tracker]/runs/scripted}/route.js.map +0 -0
  1032. /package/cloud-runtime/standalone/apps/local/.next/server/app/{projects/[slug]/linear/page → api/trackers/[tracker]/status/route}/server-reference-manifest.json +0 -0
  1033. /package/cloud-runtime/standalone/apps/local/.next/server/app/{projects/[slug]/linear/page.js.map → api/trackers/[tracker]/status/route.js.map} +0 -0
  1034. /package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/{linear → tracking/[tracker]}/page/build-manifest.json +0 -0
  1035. /package/cloud-runtime/standalone/apps/local/.next/static/{a4zqdHSrJMueXhCPqODSx → QEldoF1LdgJqO0PgpmUmx}/_buildManifest.js +0 -0
  1036. /package/cloud-runtime/standalone/apps/local/.next/static/{a4zqdHSrJMueXhCPqODSx → QEldoF1LdgJqO0PgpmUmx}/_clientMiddlewareManifest.json +0 -0
  1037. /package/cloud-runtime/standalone/apps/local/.next/static/{a4zqdHSrJMueXhCPqODSx → QEldoF1LdgJqO0PgpmUmx}/_ssgManifest.js +0 -0
  1038. /package/cloud-runtime/standalone/apps/local/components/{linear/LinearBoardFilters.tsx → tracker/TrackerBoardFilters.tsx} +0 -0
@@ -0,0 +1,7 @@
1
+ module.exports=[804632,a=>{"use strict";let b=(0,a.i(831709).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"}]]);a.s(["Copy",()=>b],804632)},724938,a=>{"use strict";let b=(0,a.i(831709).default)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]]);a.s(["Sparkles",()=>b],724938)},985339,a=>{"use strict";let b=(0,a.i(831709).default)("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]]);a.s(["Users",()=>b],985339)},766412,a=>{"use strict";var b=a.i(308316),c=a.i(786220),d=a.i(811760),e=a.i(542341),f=a.i(627421),g=a.i(824179);function h({options:a,value:h,onChange:i,placeholder:j,disabled:k}){let[l,m]=(0,c.useState)(!1),[n,o]=(0,c.useState)(""),p=(0,c.useRef)(null),q=(0,c.useRef)(null),r=(0,c.useMemo)(()=>{if(!n)return a;let b=n.toLowerCase();return a.filter(a=>a.label.toLowerCase().includes(b)||a.description?.toLowerCase().includes(b)||a.meta?.toLowerCase().includes(b))},[a,n]),s=(0,c.useMemo)(()=>a.find(a=>a.id===h),[a,h]),t=(0,c.useCallback)(a=>{p.current&&!p.current.contains(a.target)&&m(!1)},[]);return(0,c.useEffect)(()=>(document.addEventListener("pointerdown",t),()=>document.removeEventListener("pointerdown",t)),[t]),(0,b.jsxs)("div",{ref:p,className:"relative",children:[(0,b.jsxs)("button",{type:"button",onClick:()=>{k||(m(!l),o(""),setTimeout(()=>q.current?.focus(),0))},disabled:k,className:"input w-full flex items-center justify-between gap-2 text-left cursor-pointer",children:[s?(0,b.jsx)("span",{className:"truncate",children:s.label}):(0,b.jsx)("span",{className:"text-[var(--muted-foreground)] truncate",children:j}),(0,b.jsx)(d.ChevronDown,{className:`w-4 h-4 text-[var(--muted-foreground)] flex-shrink-0 transition-transform ${l?"rotate-180":""}`})]}),l&&(0,b.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,b.jsxs)("div",{className:"flex items-center gap-2.5 px-3.5 py-3 border-b",style:{borderColor:"var(--border)"},children:[(0,b.jsx)(e.Search,{className:"w-4 h-4 text-[var(--muted-foreground)] flex-shrink-0"}),(0,b.jsx)("input",{ref:q,value:n,onChange:a=>o(a.target.value),placeholder:"Search...",className:"flex-1 bg-transparent text-sm outline-none placeholder:text-[var(--muted-foreground)]"}),n&&(0,b.jsx)("button",{onClick:()=>o(""),className:"text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:(0,b.jsx)(g.X,{className:"w-3.5 h-3.5"})})]}),(0,b.jsxs)("div",{className:"max-h-72 overflow-y-auto py-1",children:[0===r.length&&(0,b.jsx)("div",{className:"px-4 py-6 text-xs text-[var(--muted-foreground)] text-center",children:"No matches"}),r.map(a=>{let c=a.id===h;return(0,b.jsxs)("button",{onClick:()=>{a.disabled||(i(a.id),m(!1),o(""))},disabled:a.disabled,className:`
2
+ w-full text-left px-3.5 py-2.5 flex items-center gap-3 transition-colors
3
+ ${a.disabled?"opacity-35 cursor-not-allowed":""}
4
+ ${c?"bg-[var(--primary)]/10":"hover:bg-[var(--muted)]/40"}
5
+ `,children:[(0,b.jsx)("div",{className:`w-5 h-5 rounded-md flex items-center justify-center flex-shrink-0 border ${c?"bg-[var(--primary)] border-[var(--primary)]":"border-[var(--border)]"}`,children:c&&(0,b.jsx)(f.Check,{className:"w-3 h-3 text-white"})}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)("span",{className:"text-sm font-medium",children:a.label}),a.meta&&(0,b.jsx)("span",{className:"text-[10px] px-1.5 py-0.5 rounded-full bg-[var(--muted)]/50 text-[var(--muted-foreground)]",children:a.meta})]}),a.description&&(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-0.5 line-clamp-1",children:a.description})]})]},a.id)})]})]})]})}a.s(["default",()=>h])},756490,a=>{"use strict";let b=(0,a.i(831709).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);a.s(["ChevronRight",()=>b],756490)},252197,a=>{"use strict";let b=(0,a.i(831709).default)("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]);a.s(["User",()=>b],252197)},89613,a=>{"use strict";let b=(0,a.i(831709).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"}]]);a.s(["FolderOpen",()=>b],89613)},542341,a=>{"use strict";let b=(0,a.i(831709).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);a.s(["Search",()=>b],542341)},627421,a=>{"use strict";let b=(0,a.i(831709).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);a.s(["Check",()=>b],627421)},831709,a=>{"use strict";var b=a.i(786220);let c=(...a)=>a.filter((a,b,c)=>!!a&&""!==a.trim()&&c.indexOf(a)===b).join(" ").trim(),d=a=>{let b=a.replace(/^([A-Z])|[\s-_]+(\w)/g,(a,b,c)=>c?c.toUpperCase():b.toLowerCase());return b.charAt(0).toUpperCase()+b.slice(1)};var e={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let f=(0,b.forwardRef)(({color:a="currentColor",size:d=24,strokeWidth:f=2,absoluteStrokeWidth:g,className:h="",children:i,iconNode:j,...k},l)=>(0,b.createElement)("svg",{ref:l,...e,width:d,height:d,stroke:a,strokeWidth:g?24*Number(f)/Number(d):f,className:c("lucide",h),...!i&&!(a=>{for(let b in a)if(b.startsWith("aria-")||"role"===b||"title"===b)return!0;return!1})(k)&&{"aria-hidden":"true"},...k},[...j.map(([a,c])=>(0,b.createElement)(a,c)),...Array.isArray(i)?i:[i]])),g=(a,e)=>{let g=(0,b.forwardRef)(({className:g,...h},i)=>(0,b.createElement)(f,{ref:i,iconNode:e,className:c(`lucide-${d(a).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${a}`,g),...h}));return g.displayName=d(a),g};a.s(["default",()=>g],831709)},204246,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={DEFAULT_SEGMENT_KEY:function(){return l},NOT_FOUND_SEGMENT_KEY:function(){return m},PAGE_SEGMENT_KEY:function(){return k},addSearchParamsIfPageSegment:function(){return i},computeSelectedLayoutSegment:function(){return j},getSegmentValue:function(){return f},getSelectedLayoutSegmentPath:function(){return function a(b,c,d=!0,e=[]){let g;if(d)g=b[1][c];else{let a=b[1];g=a.children??Object.values(a)[0]}if(!g)return e;let h=f(g[0]);return!h||h.startsWith(k)?e:(e.push(h),a(g,c,!1,e))}},isGroupSegment:function(){return g},isParallelRouteSegment:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(a){return Array.isArray(a)?a[1]:a}function g(a){return"("===a[0]&&a.endsWith(")")}function h(a){return a.startsWith("@")&&"@children"!==a}function i(a,b){if(a.includes(k)){let a=JSON.stringify(b);return"{}"!==a?k+"?"+a:k}return a}function j(a,b){if(!a||0===a.length)return null;let c="children"===b?a[0]:a[a.length-1];return c===l?null:c}let k="__PAGE__",l="__DEFAULT__",m="/_not-found"},811760,a=>{"use strict";let b=(0,a.i(831709).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);a.s(["ChevronDown",()=>b],811760)},529889,a=>{"use strict";var b=a.i(786220);function c(){return{isCoarsePointer:!1,canHover:!0,isPhone:!1,isTablet:!1,isTouchLayout:!1}}function d(){let[a,d]=(0,b.useState)(c);return(0,b.useEffect)(()=>{},[]),a}a.s(["useInputCapabilities",()=>d])},47349,(a,b,c)=>{"use strict";var d=a.r(786220);d.useState,d.useEffect,d.useLayoutEffect,d.useDebugValue,c.useSyncExternalStore=void 0!==d.useSyncExternalStore?d.useSyncExternalStore:function(a,b){return b()}},487610,(a,b,c)=>{"use strict";b.exports=a.r(47349)},997514,(a,b,c)=>{"use strict";var d=a.r(786220),e=a.r(487610),f="function"==typeof Object.is?Object.is:function(a,b){return a===b&&(0!==a||1/a==1/b)||a!=a&&b!=b},g=e.useSyncExternalStore,h=d.useRef,i=d.useEffect,j=d.useMemo,k=d.useDebugValue;c.useSyncExternalStoreWithSelector=function(a,b,c,d,e){var l=h(null);if(null===l.current){var m={hasValue:!1,value:null};l.current=m}else m=l.current;var n=g(a,(l=j(function(){function a(a){if(!i){if(i=!0,g=a,a=d(a),void 0!==e&&m.hasValue){var b=m.value;if(e(b,a))return h=b}return h=a}if(b=h,f(g,a))return b;var c=d(a);return void 0!==e&&e(b,c)?(g=a,b):(g=a,h=c)}var g,h,i=!1,j=void 0===c?null:c;return[function(){return a(b())},null===j?void 0:function(){return a(j())}]},[b,c,d,e]))[0],l[1]);return i(function(){m.hasValue=!0,m.value=n},[n]),k(n),n}},864442,(a,b,c)=>{"use strict";b.exports=a.r(997514)}];
6
+
7
+ //# sourceMappingURL=_ba2abc47._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[89613,a=>{"use strict";let b=(0,a.i(831709).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"}]]);a.s(["FolderOpen",()=>b],89613)},252197,a=>{"use strict";let b=(0,a.i(831709).default)("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]);a.s(["User",()=>b],252197)},529889,a=>{"use strict";var b=a.i(786220);function c(){return{isCoarsePointer:!1,canHover:!0,isPhone:!1,isTablet:!1,isTouchLayout:!1}}function d(){let[a,d]=(0,b.useState)(c);return(0,b.useEffect)(()=>{},[]),a}a.s(["useInputCapabilities",()=>d])},47349,(a,b,c)=>{"use strict";var d=a.r(786220);d.useState,d.useEffect,d.useLayoutEffect,d.useDebugValue,c.useSyncExternalStore=void 0!==d.useSyncExternalStore?d.useSyncExternalStore:function(a,b){return b()}},487610,(a,b,c)=>{"use strict";b.exports=a.r(47349)},997514,(a,b,c)=>{"use strict";var d=a.r(786220),e=a.r(487610),f="function"==typeof Object.is?Object.is:function(a,b){return a===b&&(0!==a||1/a==1/b)||a!=a&&b!=b},g=e.useSyncExternalStore,h=d.useRef,i=d.useEffect,j=d.useMemo,k=d.useDebugValue;c.useSyncExternalStoreWithSelector=function(a,b,c,d,e){var l=h(null);if(null===l.current){var m={hasValue:!1,value:null};l.current=m}else m=l.current;var n=g(a,(l=j(function(){function a(a){if(!i){if(i=!0,g=a,a=d(a),void 0!==e&&m.hasValue){var b=m.value;if(e(b,a))return h=b}return h=a}if(b=h,f(g,a))return b;var c=d(a);return void 0!==e&&e(b,c)?(g=a,b):(g=a,h=c)}var g,h,i=!1,j=void 0===c?null:c;return[function(){return a(b())},null===j?void 0:function(){return a(j())}]},[b,c,d,e]))[0],l[1]);return i(function(){m.hasValue=!0,m.value=n},[n]),k(n),n}},864442,(a,b,c)=>{"use strict";b.exports=a.r(997514)},830284,a=>{"use strict";var b=a.i(786220);function c(){let[a,c]=(0,b.useState)([]),[d,e]=(0,b.useState)(!1),[f,g]=(0,b.useState)(null),h=(0,b.useCallback)(async()=>{e(!0);try{let a=await fetch("/api/projects");if(!a.ok)throw Error("Failed to fetch projects");let b=await a.json();c(b.projects??[]),g(null)}catch(a){g(a instanceof Error?a:Error("Unknown error"))}finally{e(!1)}},[]);(0,b.useEffect)(()=>{h()},[h]);let i=(0,b.useCallback)(async a=>{let b=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(!b.ok)throw Error((await b.json().catch(()=>({}))).error||"Failed to create project");let d=(await b.json()).project;return c(a=>[d,...a]),d},[]);return{projects:a,isLoading:d,error:f,refetch:h,createProject:i,updateProject:(0,b.useCallback)(async(a,b)=>{let d=await fetch(`/api/projects/${a}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)});if(!d.ok)throw Error((await d.json().catch(()=>({}))).error||"Failed to update project");let e=(await d.json()).project;return c(b=>b.map(b=>b.id===a?e:b)),e},[]),deleteProject:(0,b.useCallback)(async a=>{let b=await fetch(`/api/projects/${a}`,{method:"DELETE"});if(!b.ok)throw Error((await b.json().catch(()=>({}))).error||"Failed to delete project");c(b=>b.filter(b=>b.id!==a))},[])}}function d(){let[a,c]=(0,b.useState)([]),[d,e]=(0,b.useState)(!0),f=(0,b.useCallback)(async()=>{try{let a=await fetch("/api/projects");if(!a.ok)return;let{projects:b}=await a.json(),d=await Promise.all((b??[]).map(async a=>{let b=[],c=[];try{let[d,e]=await Promise.all([fetch(`/api/projects/${a.id}/agents`),fetch(`/api/projects/${a.id}/threads`)]);d.ok&&(b=(await d.json()).agents??[]),e.ok&&(c=((await e.json()).threads??[]).map(a=>a.thread_id))}catch{}return{...a,repos:a.repos??[],agents:b.map(b=>({project_id:a.id,agent_id:b.agent_id,routing_order:b.routing_order,created_at:b.created_at})),thread_ids:c,workspace_ids:c}}));c(d)}catch{}finally{e(!1)}},[]);(0,b.useEffect)(()=>{f()},[f]);let g=(0,b.useCallback)(async(a,b)=>{try{let d="string"==typeof a?{name:a}:a,e=d.name.trim(),f=(d.slug||e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")).trim(),g=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...d,name:e,slug:f})});if(!g.ok)return null;let{project:h}=await g.json(),i=Array.isArray(b)?b:b?[b]:[];for(let a of i)await fetch(`/api/projects/${h.id}/threads`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:a})}).catch(a=>console.warn("[useProjects] link thread failed:",a));let j={...h,repos:h.repos??[],agents:[],thread_ids:i,workspace_ids:i};return c(a=>[...a,j].sort((a,b)=>a.name.localeCompare(b.name))),j}catch{return null}},[]),h=(0,b.useCallback)(async(a,b)=>{try{if(!(await fetch(`/api/projects/${a}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:b})})).ok)return;c(c=>c.map(c=>c.id===a?{...c,name:b}:c).sort((a,b)=>a.name.localeCompare(b.name)))}catch{}},[]),i=(0,b.useCallback)(async a=>{try{if(!(await fetch(`/api/projects/${a}`,{method:"DELETE"})).ok)return;c(b=>b.filter(b=>b.id!==a))}catch{}},[]),j=(0,b.useCallback)(async(a,b)=>{try{let d=await fetch(`/api/projects/${a}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)});if(!d.ok){let a=await d.json().catch(()=>({}));throw Error(a.error||"Failed to update project")}let e=(await d.json()).project;return c(b=>b.map(b=>b.id===a?{...b,...e,repos:e.repos??b.repos}:b)),e}catch{return null}},[]),k=(0,b.useCallback)(async(a,b)=>{try{let d=await fetch(`/api/projects/${a}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:b})});if(!d.ok)return;let e=((await d.json()).agents??[]).map(b=>({project_id:a,agent_id:b.agent_id,routing_order:b.routing_order,created_at:b.created_at}));c(b=>b.map(b=>b.id===a?{...b,agents:e}:b))}catch{}},[]),l=(0,b.useCallback)(async(a,b)=>{try{let d=await fetch(`/api/projects/${a}/agents?agentId=${b}`,{method:"DELETE"});if(!d.ok)return;let e=((await d.json()).agents??[]).map(b=>({project_id:a,agent_id:b.agent_id,routing_order:b.routing_order,created_at:b.created_at}));c(b=>b.map(b=>b.id===a?{...b,agents:e}:b))}catch{}},[]);return{projects:a,isLoading:d,createProject:g,updateProject:j,renameProject:h,deleteProject:i,addAgent:k,removeAgent:l,reorderAgents:(0,b.useCallback)(async(a,b)=>{try{let d=await fetch(`/api/projects/${a}/agents`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({orderedAgentIds:b})});if(!d.ok)return;let e=((await d.json()).agents??[]).map(b=>({project_id:a,agent_id:b.agent_id,routing_order:b.routing_order,created_at:b.created_at}));c(b=>b.map(b=>b.id===a?{...b,agents:e}:b))}catch{}},[]),moveAgent:(0,b.useCallback)(async(a,b,c)=>{try{await fetch(`/api/projects/${b}/agents?agentId=${a}`,{method:"DELETE"}),await fetch(`/api/projects/${c}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:a})}),await f()}catch{}},[f]),refresh:f}}a.s(["useProjects",()=>c,"useProjectsWithAgents",()=>d])},824179,a=>{"use strict";let b=(0,a.i(831709).default)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);a.s(["X",()=>b],824179)},353532,a=>{"use strict";let b=(0,a.i(831709).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);a.s(["Plus",()=>b],353532)},542341,a=>{"use strict";let b=(0,a.i(831709).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);a.s(["Search",()=>b],542341)},627421,a=>{"use strict";let b=(0,a.i(831709).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);a.s(["Check",()=>b],627421)},831709,a=>{"use strict";var b=a.i(786220);let c=(...a)=>a.filter((a,b,c)=>!!a&&""!==a.trim()&&c.indexOf(a)===b).join(" ").trim(),d=a=>{let b=a.replace(/^([A-Z])|[\s-_]+(\w)/g,(a,b,c)=>c?c.toUpperCase():b.toLowerCase());return b.charAt(0).toUpperCase()+b.slice(1)};var e={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let f=(0,b.forwardRef)(({color:a="currentColor",size:d=24,strokeWidth:f=2,absoluteStrokeWidth:g,className:h="",children:i,iconNode:j,...k},l)=>(0,b.createElement)("svg",{ref:l,...e,width:d,height:d,stroke:a,strokeWidth:g?24*Number(f)/Number(d):f,className:c("lucide",h),...!i&&!(a=>{for(let b in a)if(b.startsWith("aria-")||"role"===b||"title"===b)return!0;return!1})(k)&&{"aria-hidden":"true"},...k},[...j.map(([a,c])=>(0,b.createElement)(a,c)),...Array.isArray(i)?i:[i]])),g=(a,e)=>{let g=(0,b.forwardRef)(({className:g,...h},i)=>(0,b.createElement)(f,{ref:i,iconNode:e,className:c(`lucide-${d(a).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${a}`,g),...h}));return g.displayName=d(a),g};a.s(["default",()=>g],831709)},204246,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={DEFAULT_SEGMENT_KEY:function(){return l},NOT_FOUND_SEGMENT_KEY:function(){return m},PAGE_SEGMENT_KEY:function(){return k},addSearchParamsIfPageSegment:function(){return i},computeSelectedLayoutSegment:function(){return j},getSegmentValue:function(){return f},getSelectedLayoutSegmentPath:function(){return function a(b,c,d=!0,e=[]){let g;if(d)g=b[1][c];else{let a=b[1];g=a.children??Object.values(a)[0]}if(!g)return e;let h=f(g[0]);return!h||h.startsWith(k)?e:(e.push(h),a(g,c,!1,e))}},isGroupSegment:function(){return g},isParallelRouteSegment:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(a){return Array.isArray(a)?a[1]:a}function g(a){return"("===a[0]&&a.endsWith(")")}function h(a){return a.startsWith("@")&&"@children"!==a}function i(a,b){if(a.includes(k)){let a=JSON.stringify(b);return"{}"!==a?k+"?"+a:k}return a}function j(a,b){if(!a||0===a.length)return null;let c="children"===b?a[0]:a[a.length-1];return c===l?null:c}let k="__PAGE__",l="__DEFAULT__",m="/_not-found"},811760,a=>{"use strict";let b=(0,a.i(831709).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);a.s(["ChevronDown",()=>b],811760)}];
2
+
3
+ //# sourceMappingURL=_e00b6c25._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[667597,a=>{"use strict";let b=(0,a.i(831709).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"}]]);a.s(["Pencil",()=>b],667597)},356239,a=>{"use strict";let b=(0,a.i(831709).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);a.s(["Terminal",()=>b],356239)},520612,a=>{"use strict";var b=a.i(786220),c=a.i(516909);function d(a){return"string"!=typeof a?null:a.trim()||null}function e(a,b){return(a.get(b)?.trim()??"")||null}function f(){let a=(0,c.useRouter)(),f=(0,c.usePathname)(),g=(0,c.useSearchParams)(),h=(0,b.useCallback)(a=>e(g,a),[g]),i=(0,b.useCallback)((a,b)=>(function(a,b,c){let f=function(a,b){let c={...b},f=a=>Object.prototype.hasOwnProperty.call(b,a);if(f("issue")&&!f("run")){let f=e(a,"issue");d(b.issue)!==f&&(c.run=null)}if(f("job")&&!f("run")){let f=e(a,"job");d(b.job)!==f&&(c.run=null)}if(f("open")&&!f("message")){let f=e(a,"open");d(b.open)!==f&&(c.message=null)}if(f("group")&&!f("issue")){let f=e(a,"group");d(b.group)!==f&&(c.issue=null,c.run=null)}if(f("issue")&&!f("group")){let f=e(a,"issue");d(b.issue)!==f&&(c.group=null)}return c}(b,c),g=new URLSearchParams(b.toString());for(let[a,b]of Object.entries(f)){let c=d(b);c?g.set(a,c):g.delete(a)}let h=g.toString();return h?`${a}?${h}`:a})(b??f,g,a),[f,g]),j=(0,b.useCallback)((b,c)=>{a.push(i(b,c))},[i,a]),k=(0,b.useCallback)((b,c)=>{a.replace(i(b,c))},[i,a]);return{pathname:f,searchParams:g,getSelection:h,buildHref:i,pushSelection:j,replaceSelection:k}}a.s(["useUrlSelection",()=>f])},920226,a=>{"use strict";var b=a.i(786220);let c=a=>{let b,c=new Set,d=(a,d)=>{let e="function"==typeof a?a(b):a;if(!Object.is(e,b)){let a=b;b=(null!=d?d:"object"!=typeof e||null===e)?e:Object.assign({},b,e),c.forEach(c=>c(b,a))}},e=()=>b,f={setState:d,getState:e,getInitialState:()=>g,subscribe:a=>(c.add(a),()=>c.delete(a))},g=b=a(d,e,f);return f},d=a=>{let d=a?c(a):c,e=a=>(function(a,c=a=>a){let d=b.default.useSyncExternalStore(a.subscribe,b.default.useCallback(()=>c(a.getState()),[a,c]),b.default.useCallback(()=>c(a.getInitialState()),[a,c]));return b.default.useDebugValue(d),d})(d,a);return Object.assign(e,d),e},e=a=>a?d(a):d;a.s(["create",()=>e],920226)}];
2
+
3
+ //# sourceMappingURL=_e485f527._.js.map
@@ -0,0 +1,18 @@
1
+ module.exports=[356239,a=>{"use strict";let b=(0,a.i(831709).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);a.s(["Terminal",()=>b],356239)},520612,a=>{"use strict";var b=a.i(786220),c=a.i(516909);function d(a){return"string"!=typeof a?null:a.trim()||null}function e(a,b){return(a.get(b)?.trim()??"")||null}function f(){let a=(0,c.useRouter)(),f=(0,c.usePathname)(),g=(0,c.useSearchParams)(),h=(0,b.useCallback)(a=>e(g,a),[g]),i=(0,b.useCallback)((a,b)=>(function(a,b,c){let f=function(a,b){let c={...b},f=a=>Object.prototype.hasOwnProperty.call(b,a);if(f("issue")&&!f("run")){let f=e(a,"issue");d(b.issue)!==f&&(c.run=null)}if(f("job")&&!f("run")){let f=e(a,"job");d(b.job)!==f&&(c.run=null)}if(f("open")&&!f("message")){let f=e(a,"open");d(b.open)!==f&&(c.message=null)}if(f("group")&&!f("issue")){let f=e(a,"group");d(b.group)!==f&&(c.issue=null,c.run=null)}if(f("issue")&&!f("group")){let f=e(a,"issue");d(b.issue)!==f&&(c.group=null)}return c}(b,c),g=new URLSearchParams(b.toString());for(let[a,b]of Object.entries(f)){let c=d(b);c?g.set(a,c):g.delete(a)}let h=g.toString();return h?`${a}?${h}`:a})(b??f,g,a),[f,g]),j=(0,b.useCallback)((b,c)=>{a.push(i(b,c))},[i,a]),k=(0,b.useCallback)((b,c)=>{a.replace(i(b,c))},[i,a]);return{pathname:f,searchParams:g,getSelection:h,buildHref:i,pushSelection:j,replaceSelection:k}}a.s(["useUrlSelection",()=>f])},697183,a=>{"use strict";let b=(0,a.i(831709).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"}]]);a.s(["Trash2",()=>b],697183)},155829,496368,a=>{"use strict";var b=a.i(786220);function c(a){return`threadId=${encodeURIComponent(a)}`}function d(a){return`workspaceId=${encodeURIComponent(a)}`}function e(a){let[e,f]=(0,b.useState)([]),[g,h]=(0,b.useState)([]),[i,j]=(0,b.useState)([]),k=(0,b.useRef)(a),l=(0,b.useRef)(a);k.current=a,l.current!==a&&(l.current=a,f([]),h([]),j([]));let m=(0,b.useCallback)(async a=>{let b=a?.trim()||k.current?.trim();if(!b){f([]),h([]);return}let e=c(b);try{let[a,c]=await Promise.all([fetch(`/api/history?${e}`),fetch(`/api/logs?${d(b)}`)]);if(k.current!==b)return;a.ok&&f(await a.json()),c.ok&&h(await c.json())}catch{}},[]),n=(0,b.useCallback)(async a=>{let b=a?.trim()||k.current?.trim();if(!b){f([]),h([]);return}let e=c(b);await Promise.all([fetch(`/api/history?${e}`,{method:"DELETE"}),fetch(`/api/logs?${d(b)}`,{method:"DELETE"})]),k.current===b&&(f([]),h([]))},[]),o=(0,b.useCallback)(async(a,b=10,c,d,e,g,h,i,l,m)=>{let n=c?.trim()||k.current?.trim();if(!n)return;let o=Date.now(),p=crypto.randomUUID(),q={id:p,role:"user",participantId:null,content:a,timestamp:o,rootMessageId:d||null,parentMessageId:d||null,depth:+!!d,...g&&g.length>0?{attachments:g}:{}};f(a=>[...a,q]);try{let c=await fetch("/api/chat",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:n,prompt:a,promptPrefix:l||void 0,maxRounds:b,userMessageId:p,rootMessageId:d||void 0,attachmentIds:e?.length?e:void 0,activeParticipantIds:Array.isArray(h)?h:void 0,projectSlug:i?.trim()||void 0,routing:m})}),g=await c.json().catch(a=>(console.warn("[useGroupChat] failed to parse run response:",a),null));c.ok&&g?.chatRunId?j(a=>[{chatRunId:g.chatRunId,threadId:n,rootMessageId:d||p,status:"queued",optimistic:!0,enqueuedAt:Date.now()},...a.filter(a=>a.chatRunId!==g.chatRunId)]):c.ok||(console.error(`[useGroupChat] POST /api/chat failed (${c.status}):`,g?.error||c.statusText),f(a=>a.map(a=>a.id===p?{...a,sendFailed:!0}:a)))}catch(a){console.error("[useGroupChat] network error sending message:",a),f(a=>a.map(a=>a.id===p?{...a,sendFailed:!0}:a))}return p},[]),p=(0,b.useCallback)(async()=>{let a=k.current?.trim();if(a)try{await fetch(`/api/processes?workspaceId=${encodeURIComponent(a)}`,{method:"DELETE"})}catch{}},[]),q=(0,b.useCallback)(async a=>{let b=k.current?.trim();if(b)try{await fetch(`/api/processes?workspaceId=${encodeURIComponent(b)}&threadId=${encodeURIComponent(a)}`,{method:"DELETE"})}catch{}},[]);return{messages:e,setMessages:f,logs:g,sendMessage:o,loadHistory:m,clearHistory:n,clearLogs:(0,b.useCallback)(async a=>{let b=a?.trim()||k.current?.trim();b?(await fetch(`/api/logs?${d(b)}`,{method:"DELETE"}).catch(a=>console.warn("[useGroupChat] delete logs failed:",a)),k.current===b&&h([])):h([])},[]),chatRuns:i,setChatRuns:j,stop:p,stopThread:q}}a.s(["useGroupChat",()=>e],155829);let f=new Set(["spawning","running"]);function g(a,c){let d=c?.intervalMs??1500,e=c?.idleIntervalMs??1e4,[g,h]=(0,b.useState)(new Set),[i,j]=(0,b.useState)([]),[k,l]=(0,b.useState)({}),[m,n]=(0,b.useState)([]),o=(0,b.useRef)(a);o.current=a,(0,b.useRef)(c?.messages??[]).current=c?.messages??[];let p=(0,b.useRef)(c?.setMessages);p.current=c?.setMessages;let q=(0,b.useRef)(0),r=(0,b.useRef)(new Map),s=(0,b.useRef)(new Map);(0,b.useEffect)(()=>{let a=c?.messages??[];if(a.length>0){let b=Math.max(...a.map(a=>a.timestamp));b>q.current&&(q.current=b)}},[c?.messages]),(0,b.useEffect)(()=>()=>{for(let a of r.current.values())a.close();r.current.clear()},[]);let t=(0,b.useCallback)(async()=>{let a=o.current;if(!a){h(new Set),j([]),l({}),n([]);return}let b=null;if(a.threadId?b=`/api/processes?threadId=${encodeURIComponent(a.threadId)}`:a.workspaceId&&(b=`/api/processes?workspaceId=${encodeURIComponent(a.workspaceId)}`),!b){h(new Set),j([]),l({}),n([]);return}try{let d=a.workspaceId||a.threadId,e=d?`/api/history?threadId=${encodeURIComponent(d)}&since=${q.current}`:null,g=d?`/api/chat-runs?threadId=${encodeURIComponent(d)}&limit=20`:null,i=[fetch(b)];e&&i.push(fetch(e)),g&&i.push(fetch(g));let[k,l,m]=await Promise.all(i),r=o.current;if(r?.threadId!==a.threadId||r?.workspaceId!==a.workspaceId)return;if(k.ok){let a=await k.json();j(a);let b=new Set(a.filter(a=>f.has(a.state)).map(a=>a.agentId));h(b)}if(m?.ok){var c;let a=(c=await m.json(),Array.isArray(c)?c.map(a=>{if(!a||"object"!=typeof a)return null;let b="string"==typeof a.chatRunId?a.chatRunId:"string"==typeof a.id?a.id:null,c="string"==typeof a.threadId?a.threadId:null,d="string"==typeof a.status?a.status:null,e="string"==typeof a.rootMessageId?a.rootMessageId:(a.rootMessageId,null);return b&&c&&d&&("queued"===d||"running"===d||"awaiting_user"===d||"blocked"===d||"completed"===d||"failed"===d||"cancelled"===d)?{chatRunId:b,threadId:c,rootMessageId:e,status:d,optimistic:!1}:null}).filter(a=>!!a):[]);n(a)}if(l?.ok&&p.current){let a=await l.json();if(a.length>0){let b=Math.max(...a.map(a=>a.timestamp));b>q.current&&(q.current=b),p.current(b=>{let c=new Set(b.map(a=>a.id)),d=a.filter(a=>!c.has(a.id)),e=b.map(b=>a.find(a=>a.id===b.id)??b);return 0===d.length?e:[...e,...d].sort((a,b)=>a.timestamp-b.timestamp)})}}}catch{}},[]);(0,b.useEffect)(()=>{let a=m.filter(a=>"queued"===a.status||"running"===a.status),b=new Set(a.map(a=>a.chatRunId));for(let[a,c]of r.current.entries())b.has(a)||(c.close(),r.current.delete(a),s.current.delete(a));for(let b of a){if(r.current.has(b.chatRunId))continue;let a=new EventSource(`/api/chat-runs/${encodeURIComponent(b.chatRunId)}/events`);r.current.set(b.chatRunId,a);let c=new Map;s.current.set(b.chatRunId,c);let d=new Set;a.addEventListener("chat",e=>{let f;try{f=JSON.parse(e.data)}catch{return}switch(f.type){case"participant-start":case"participant-thinking":d.add(f.participantId),c.has(f.participantId)||c.set(f.participantId,{text:"",thoughts:[]}),l(a=>a[f.participantId]?a:{...a,[f.participantId]:{content:"",rootMessageId:b.rootMessageId??null}});break;case"text-delta":{c.has(f.participantId)||c.set(f.participantId,{text:"",thoughts:[]});let a=c.get(f.participantId);a&&(a.text+=f.delta,l(c=>{let d={...c},e=b.rootMessageId??null;return d[f.participantId]={content:a.text,rootMessageId:e},d}));break}case"participant-thought":{let a=c.get(f.participantId);a&&(a.thoughts.push(f.content),l(b=>{let c=b[f.participantId];return c?{...b,[f.participantId]:{...c,thoughts:[...a.thoughts]}}:b}));break}case"participant-end":d.delete(f.participantId),t().then(()=>{l(a=>{let b={...a};return delete b[f.participantId],b})});break;case"participant-error":d.delete(f.participantId),t().then(()=>{l(a=>{let b={...a};return delete b[f.participantId],b})});break;case"done":a.close(),r.current.delete(b.chatRunId),s.current.delete(b.chatRunId)}}),a.onerror=()=>{a.close(),r.current.delete(b.chatRunId),s.current.delete(b.chatRunId)}}},[m]);let u=a?.threadId||a?.workspaceId||null,v=m.some(a=>"queued"===a.status||"running"===a.status),w=i.some(a=>f.has(a.state)),x=v||w?d:e;return(0,b.useEffect)(()=>{if(!u){h(new Set),j([]),l({}),n([]);return}t();let a=setInterval(t,x);return()=>clearInterval(a)},[u,x,t]),{activeAgents:g,processes:i,streaming:k,chatRuns:m,poll:t}}a.s(["useProcessPolling",()=>g],496368)},785061,a=>{"use strict";function b(a){if("string"==typeof a)return a.trim()||void 0}function c(a,c){let d=new Set,e=new Set;!function a(b,c){if(b)for(let d of b)c(d),a(d.content,c)}(a.content,a=>{if("participantMention"!==a.type)return;let b=a.attrs??{},c="string"==typeof b.id?b.id.trim():"",f="string"==typeof b.kind?b.kind:"agent";c&&"agent"===f&&(d.add(c),"parallel"===b.mode&&e.add(c))});let f=b(c);return{...f?{pinnedParticipantId:f}:{},mentionedParticipantIds:Array.from(d),parallelParticipantIds:Array.from(e)}}function d(a,c){let d=function(a){if(!Array.isArray(a))return[];let b=new Set,c=[];for(let d of a){if("string"!=typeof d)continue;let a=d.trim();!a||b.has(a)||(b.add(a),c.push(a))}return c}(a),e=b(c);return e&&d.includes(e)?[e,...d.filter(a=>a!==e)]:d}a.s(["extractComposerRouting",()=>c,"orderParticipantIds",()=>d])},734709,a=>{"use strict";var b=a.i(308316),c=a.i(786220);function d({isOpen:a,title:d,message:e,preview:f,confirmLabel:g="Confirm",cancelLabel:h="Cancel",variant:i="default",onConfirm:j,onCancel:k}){let l=(0,c.useRef)(null),m=(0,c.useRef)(null);(0,c.useEffect)(()=>{if(a){let a=setTimeout(()=>l.current?.focus(),50);return()=>clearTimeout(a)}},[a]);let n=(0,c.useCallback)(a=>{"Escape"===a.key&&k()},[k]);if(!a)return null;let o="danger"===i;return(0,b.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:a=>a.target===a.currentTarget&&k(),onKeyDown:n,children:[(0,b.jsxs)("div",{ref:m,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,b.jsx)("div",{className:"px-6 pt-6 pb-3",children:(0,b.jsxs)("div",{className:"flex items-start gap-4",children:[o&&(0,b.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,b.jsx)("svg",{className:"w-5 h-5 text-red-500",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:1.5,children:(0,b.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,b.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,b.jsx)("h3",{className:"text-[15px] font-semibold text-[var(--foreground)]",children:d}),(0,b.jsx)("p",{className:"mt-1 text-[13px] text-[var(--muted-foreground)] leading-relaxed",children:e})]})]})}),f&&(0,b.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,b.jsxs)("p",{className:"text-[12px] text-[var(--muted-foreground)] line-clamp-3 leading-relaxed italic",children:["“",f,"”"]})}),(0,b.jsx)("div",{className:"mx-6 border-t border-[var(--card-border)]"}),(0,b.jsxs)("div",{className:"px-6 py-4 flex items-center justify-end gap-2.5",children:[(0,b.jsx)("button",{onClick:k,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:h}),(0,b.jsx)("button",{ref:l,onClick:j,className:`px-4 py-2 rounded-lg text-[13px] font-medium transition-all duration-150 ${o?"bg-red-500 text-white hover:bg-red-600 active:scale-[0.97]":"btn-primary active:scale-[0.97]"}`,children:g})]})]}),(0,b.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
+ `})]})}a.s(["default",()=>d])}];
17
+
18
+ //# sourceMappingURL=apps_local_064c7b93._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[517259,562428,a=>{"use strict";var b=a.i(831709);let c=(0,b.default)("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]);a.s(["Cpu",()=>c],517259);let d=(0,b.default)("box",[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]]);a.s(["Box",()=>d],562428)},328400,a=>{"use strict";let b=(0,a.i(831709).default)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);a.s(["BookOpen",()=>b],328400)},8e4,a=>{"use strict";let b;var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v=a.i(308316),w=a.i(786220),x=a.i(824179),y=a.i(252197),z=a.i(517259),A=a.i(562428),B=a.i(328400),C=a.i(724938),D=a.i(353532),E=a.i(89613),F=a.i(811760),G=a.i(804632),H=a.i(627421),I=a.i(86466);function J(a){let b=Object.prototype.toString.call(a);return"[object Window]"===b||"[object global]"===b}function K(a){return"nodeType"in a}function L(a){var b,c;return a?J(a)?a:K(a)&&null!=(b=null==(c=a.ownerDocument)?void 0:c.defaultView)?b:window:window}a.i(197180);w.useEffect;function M(a){return function(b){for(var c=arguments.length,d=Array(c>1?c-1:0),e=1;e<c;e++)d[e-1]=arguments[e];return d.reduce((b,c)=>{for(let[d,e]of Object.entries(c)){let c=b[d];null!=c&&(b[d]=c+a*e)}return b},{...b})}}function N(a){if(!a)return!1;let{KeyboardEvent:b}=L(a.target);return b&&a instanceof b}function O(a){if(function(a){if(!a)return!1;let{TouchEvent:b}=L(a.target);return b&&a instanceof b}(a)){if(a.touches&&a.touches.length){let{clientX:b,clientY:c}=a.touches[0];return{x:b,y:c}}else if(a.changedTouches&&a.changedTouches.length){let{clientX:b,clientY:c}=a.changedTouches[0];return{x:b,y:c}}}return"clientX"in a&&"clientY"in a?{x:a.clientX,y:a.clientY}:null}let P=Object.freeze({Translate:{toString(a){if(!a)return;let{x:b,y:c}=a;return"translate3d("+(b?Math.round(b):0)+"px, "+(c?Math.round(c):0)+"px, 0)"}},Scale:{toString(a){if(!a)return;let{scaleX:b,scaleY:c}=a;return"scaleX("+b+") scaleY("+c+")"}},Transform:{toString(a){if(a)return[P.Translate.toString(a),P.Scale.toString(a)].join(" ")}},Transition:{toString(a){let{property:b,duration:c,easing:d}=a;return b+" "+c+"ms "+d}}});function Q(){}(c=l||(l={})).DragStart="dragStart",c.DragMove="dragMove",c.DragEnd="dragEnd",c.DragCancel="dragCancel",c.DragOver="dragOver",c.RegisterDroppable="registerDroppable",c.SetDroppableDisabled="setDroppableDisabled",c.UnregisterDroppable="unregisterDroppable";let R=Object.freeze({x:0,y:0}),S={ignoreTransform:!1};function T(a,b){void 0===b&&(b=S);let c=a.getBoundingClientRect();if(b.ignoreTransform){let{transform:b,transformOrigin:d}=L(a).getComputedStyle(a);b&&(c=function(a,b,c){let d=function(a){if(a.startsWith("matrix3d(")){let b=a.slice(9,-1).split(/, /);return{x:+b[12],y:+b[13],scaleX:+b[0],scaleY:+b[5]}}if(a.startsWith("matrix(")){let b=a.slice(7,-1).split(/, /);return{x:+b[4],y:+b[5],scaleX:+b[0],scaleY:+b[3]}}return null}(b);if(!d)return a;let{scaleX:e,scaleY:f,x:g,y:h}=d,i=a.left-g-(1-e)*parseFloat(c),j=a.top-h-(1-f)*parseFloat(c.slice(c.indexOf(" ")+1)),k=e?a.width/e:a.width,l=f?a.height/f:a.height;return{width:k,height:l,top:j,right:i+k,bottom:j+l,left:i}}(c,b,d))}let{top:d,left:e,width:f,height:g,bottom:h,right:i}=c;return{top:d,left:e,width:f,height:g,bottom:h,right:i}}function U(a){return T(a,{ignoreTransform:!0})}function V(a){return J(a)?a.scrollX:a.scrollLeft}function W(a){return J(a)?a.scrollY:a.scrollTop}(d=m||(m={}))[d.Forward=1]="Forward",d[d.Backward=-1]="Backward";(e=n||(n={})).Click="click",e.DragStart="dragstart",e.Keydown="keydown",e.ContextMenu="contextmenu",e.Resize="resize",e.SelectionChange="selectionchange",e.VisibilityChange="visibilitychange",(f=o||(o={})).Space="Space",f.Down="ArrowDown",f.Right="ArrowRight",f.Left="ArrowLeft",f.Up="ArrowUp",f.Esc="Escape",f.Enter="Enter",f.Tab="Tab";o.Space,o.Enter,o.Esc,o.Space,o.Enter,o.Tab;(g=p||(p={}))[g.RightClick=2]="RightClick";(h=q||(q={}))[h.Pointer=0]="Pointer",h[h.DraggableRect=1]="DraggableRect",(i=r||(r={}))[i.TreeOrder=0]="TreeOrder",i[i.ReversedTreeOrder=1]="ReversedTreeOrder",m.Backward,m.Forward,m.Backward,m.Forward,(j=s||(s={}))[j.Always=0]="Always",j[j.BeforeDragging=1]="BeforeDragging",j[j.WhileDragging=2]="WhileDragging",(t||(t={})).Optimized="optimized";let X={draggable:{measure:U},droppable:{measure:U,strategy:s.WhileDragging,frequency:t.Optimized},dragOverlay:{measure:T}};class Y extends Map{get(a){var b;return null!=a&&null!=(b=super.get(a))?b:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter(a=>{let{disabled:b}=a;return!b})}getNodeFor(a){var b,c;return null!=(b=null==(c=this.get(a))?void 0:c.node.current)?b:void 0}}let Z={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new Y,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:Q},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:X,measureDroppableContainers:Q,windowRect:null,measuringScheduled:!1},$={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:""},dispatch:Q,draggableNodes:new Map,over:null,measureDroppableContainers:Q},_=(0,w.createContext)($),aa=(0,w.createContext)({...R,scaleX:1,scaleY:1});(k=u||(u={}))[k.Uninitialized=0]="Uninitialized",k[k.Initializing=1]="Initializing",k[k.Initialized=2]="Initialized";let ab={position:"fixed",touchAction:"none"},ac=a=>N(a)?"transform 250ms ease":void 0;b={styles:{active:{opacity:"0"}}},o.Down,o.Right,o.Up,o.Left;var ad=a.i(766412);function ae(a,b=32,c){let d=`https://api.dicebear.com/9.x/bottts-neutral/svg?seed=${encodeURIComponent(a)}&size=${b}`;if(!c)return d;let e=c.replace("#","");return`${d}&backgroundColor=${e}`}a.i(529889);let af=["claude","ollama","gemini","codex","zai"];function ag(a){return(a??[]).map(a=>a.condition?.trim()?`${a.file} | ${a.condition}`:a.file).join("\n")}function ah(a){return a.split("\n").map(a=>a.trim()).filter(Boolean).map(a=>{let[b,...c]=a.split("|");return{file:b.trim(),condition:c.join("|").trim()}}).filter(a=>a.file.length>0)}function ai(a,b){return JSON.stringify({name:a.name,...a.roleId?{roleId:a.roleId}:{},...a.role?{role:a.role}:{},provider:a.provider,model:a.model,identity:a.identity,color:a.color??"#6B7280",skills:a.skills??[],skillBindings:a.skillBindings??[],...b?{projectIds:b}:{}},null,2)}function aj({title:a,initial:b,submitLabel:c,onSubmit:d,onCancel:e,projects:f,initialProjectIds:g,agentId:h,projectMemberships:i,onAddToProject:j,onRemoveFromProject:k,roleOptions:l,roleLabel:m="Role",onRolePresetChange:n}){let[o,p]=(0,w.useState)(b.name),[q,r]=(0,w.useState)(b.roleId??""),[s,t]=(0,w.useState)(b.role??""),[u,J]=(0,w.useState)(b.provider),[K,L]=(0,w.useState)(b.model),[M,N]=(0,w.useState)(b.identity),[O,P]=(0,w.useState)(b.color??"#6B7280"),[Q,R]=(0,w.useState)(ag(b.skills)),[S,T]=(0,w.useState)(new Set(g??[])),[U,V]=(0,w.useState)("form"),[W,X]=(0,w.useState)(()=>ai(b,f?g??[]:void 0)),[Y,Z]=(0,w.useState)(null),[$,_]=(0,w.useState)(!1),[aa,ab]=(0,w.useState)([]),[ac,aj]=(0,w.useState)(""),[ak,al]=(0,w.useState)(!1),[am,an]=(0,w.useState)(b.skillBindings??[]),ao=(0,w.useRef)(null),ap=(0,w.useRef)(null),aq=!!(l&&l.length>0),ar=h||o.trim()||b.name||"agent";(0,w.useEffect)(()=>{let a=a=>{ap.current&&!ap.current.contains(a.target)&&e()},b=setTimeout(()=>document.addEventListener("pointerdown",a),0);return()=>{clearTimeout(b),document.removeEventListener("pointerdown",a)}},[ap,e]),(0,w.useEffect)(()=>{if(!ak)return;let a=a=>{ao.current&&!ao.current.contains(a.target)&&al(!1)};return document.addEventListener("pointerdown",a),()=>document.removeEventListener("pointerdown",a)},[ak]),(0,w.useEffect)(()=>{"form"===U&&X(ai({name:o,...aq&&q?{roleId:q}:{},role:s,provider:u,model:K,identity:M,color:O,skills:ah(Q),skillBindings:am},f?Array.from(S):void 0))},[U,o,q,aq,s,u,K,M,O,Q,am,S,f]),(0,w.useEffect)(()=>{if(!$)return;let a=window.setTimeout(()=>_(!1),1200);return()=>window.clearTimeout(a)},[$]),(0,w.useEffect)(()=>{let a=!1;return async function(){try{let b=await fetch("/api/skills");if(!b.ok)return;let c=await b.json();if(a)return;let d=Array.isArray(c.skills)?c.skills.filter(a=>!!a&&"object"==typeof a).map(a=>({skillId:String(a.skillId??"").trim(),repo:String(a.repo??"").trim(),name:String(a.name??a.skillId??"").trim()})).filter(a=>a.skillId.length>0&&a.repo.length>0):[];ab(d)}catch{a||ab([])}}(),()=>{a=!0}},[]);let as=(a,b)=>{let c=f?(b??[]).filter(a=>f.some(b=>b.id===a)):void 0;return p(a.name),r(a.roleId??""),t(a.role??""),J(a.provider),L(a.model),N(a.identity),P(a.color??"#6B7280"),R(ag(a.skills)),an(a.skillBindings??[]),f&&T(new Set(c??[])),X(ai(a,f?c??[]:void 0)),Z(null),c},at=a=>{let b=function(a,b){let c;try{c=JSON.parse(a)}catch{throw Error("JSON is invalid.")}if(!c||"object"!=typeof c||Array.isArray(c))throw Error("JSON must be an object.");let d=c,e="string"==typeof d.provider?d.provider:b,f=af.includes(e)?e:b,g=(Array.isArray(d.skills)?d.skills:[]).flatMap(a=>{if("string"==typeof a){let[b,...c]=a.split("|"),d=b.trim();return d?[{file:d,condition:c.join("|").trim()}]:[]}if(!a||"object"!=typeof a||Array.isArray(a))return[];let b="string"==typeof a.file?a.file.trim():"";return b?[{file:b,condition:"string"==typeof a.condition?a.condition.trim():""}]:[]}),h=Array.isArray(d.projectIds)?d.projectIds.filter(a=>"string"==typeof a&&a.trim().length>0):void 0,i=(Array.isArray(d.skillBindings)?d.skillBindings:[]).flatMap(a=>{if(!a||"object"!=typeof a||Array.isArray(a))return[];let b="string"==typeof a.repo?a.repo.trim():"",c="string"==typeof a.skillId?a.skillId.trim():"";return b&&c?[{repo:b,skillId:c,condition:"string"==typeof a.condition?a.condition.trim():""}]:[]});return{data:{name:"string"==typeof d.name?d.name:"",roleId:"string"==typeof d.roleId?d.roleId:void 0,role:"string"==typeof d.role?d.role:"",provider:f,model:"string"==typeof d.model?d.model:"",identity:"string"==typeof d.identity?d.identity:"",color:"string"==typeof d.color&&d.color.trim()?d.color:"#6B7280",skills:g,skillBindings:i},projectIds:h}}(a,u),c=as(b.data,b.projectIds);return{...b,projectIds:c}},au=()=>{if("form"!==U)try{at(W),V("form")}catch(a){Z(a instanceof Error?a.message:"Unable to parse JSON.")}},av=async()=>{try{await navigator.clipboard.writeText(W),_(!0)}catch{_(!1)}},aw=(0,w.useMemo)(()=>{let a=ac.trim().toLowerCase();return a?aa.filter(b=>[b.name,b.skillId,b.repo].some(b=>b.toLowerCase().includes(a))).slice(0,50):aa.slice(0,50)},[aa,ac]),ax=(0,w.useMemo)(()=>new Set(am.map(a=>`${a.repo}::${a.skillId}`)),[am]);return(0,v.jsx)("div",{ref:ap,className:"fixed inset-0 z-[100] flex items-center justify-center p-4 bg-black/30 backdrop-blur-sm",onKeyDown:a=>{"Escape"===a.key&&e()},children:(0,v.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-[32px] shadow-2xl overflow-hidden w-full max-w-2xl max-h-[90vh] flex flex-col animate-in fade-in zoom-in duration-300",children:[(0,v.jsxs)("div",{className:"px-8 pt-8 pb-4 shrink-0 flex items-center justify-between",children:[(0,v.jsxs)("div",{className:"flex items-center gap-4",children:[(0,v.jsxs)("div",{className:"flex flex-col items-center gap-1.5",children:[(0,v.jsx)("img",{src:ae(ar,64,O),alt:o,className:"w-14 h-14 rounded-full bg-[var(--muted)]"}),(0,v.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,v.jsx)("label",{className:"text-[10px] text-[var(--muted-foreground)]",children:"Color"}),(0,v.jsx)("input",{type:"color",value:O,onChange:a=>P(a.target.value),className:"w-5 h-5 rounded border border-[var(--border)] cursor-pointer p-0"})]})]}),(0,v.jsxs)("div",{children:[(0,v.jsx)("h2",{className:"text-[10px] font-bold tracking-widest text-[var(--muted-foreground)] uppercase",children:a}),(0,v.jsx)("h1",{className:"text-2xl font-semibold mt-1",children:o||"Configure Agent"})]})]}),(0,v.jsx)("button",{onClick:e,className:"p-2 text-[var(--muted-foreground)] hover:text-[var(--muted-foreground)] hover:bg-[var(--muted)] rounded-full transition-all",children:(0,v.jsx)(x.X,{size:20})})]}),(0,v.jsxs)("div",{className:"px-8 pb-8 space-y-6 overflow-y-auto",children:[(0,v.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,v.jsxs)("div",{className:"inline-flex rounded-xl bg-[var(--muted)] p-1",children:[(0,v.jsx)("button",{type:"button",onClick:au,className:"form"===U?"px-3 py-1.5 text-xs font-semibold rounded-lg bg-[var(--card-bg)] text-[var(--foreground)] shadow-sm":"px-3 py-1.5 text-xs font-semibold rounded-lg text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:"Form"}),(0,v.jsx)("button",{type:"button",onClick:()=>{X(ai({name:o,...aq&&q?{roleId:q}:{},role:s,provider:u,model:K,identity:M,color:O,skills:ah(Q),skillBindings:am},f?Array.from(S):void 0)),Z(null),V("json")},className:"json"===U?"px-3 py-1.5 text-xs font-semibold rounded-lg bg-[var(--card-bg)] text-[var(--foreground)] shadow-sm":"px-3 py-1.5 text-xs font-semibold rounded-lg text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:"JSON"})]}),"json"===U&&(0,v.jsxs)("button",{type:"button",onClick:av,className:"inline-flex items-center gap-1.5 px-3 py-1.5 text-xs font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)] rounded-lg transition-colors",children:[$?(0,v.jsx)(H.Check,{size:14,className:"text-emerald-500"}):(0,v.jsx)(G.Copy,{size:14}),$?"Copied":"Copy"]})]}),"form"===U?(0,v.jsxs)(v.Fragment,{children:[(0,v.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,v.jsxs)("div",{className:"space-y-2",children:[(0,v.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,v.jsx)(y.User,{size:16})," Name"]}),(0,v.jsx)("input",{type:"text",value:o,onChange:a=>p(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. Ada, Kai, Sage...",autoFocus:!0})]}),aq?(0,v.jsxs)("div",{className:"space-y-2",children:[(0,v.jsx)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:m}),(0,v.jsx)(ad.default,{options:l??[],value:q||null,onChange:a=>{if(!aq)return;let b={name:o,roleId:a,role:s,provider:u,model:K,identity:M,color:O,skills:ah(Q),skillBindings:am},c=n?.(a,b);c?as({...c,roleId:a},f?Array.from(S):void 0):r(a)},placeholder:"Select a role preset..."})]}):(0,v.jsxs)("div",{className:"space-y-2",children:[(0,v.jsx)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:"Role"}),(0,v.jsx)("input",{type:"text",value:s,onChange:a=>t(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. Senior Backend Engineer"})]})]}),(0,v.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,v.jsxs)("div",{className:"space-y-2",children:[(0,v.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,v.jsx)(A.Box,{size:16})," Provider"]}),(0,v.jsxs)("div",{className:"relative",children:[(0,v.jsxs)("select",{value:u,onChange:a=>J(a.target.value),className:"w-full appearance-none px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all pr-10 cursor-pointer",children:[(0,v.jsx)("option",{value:"claude",children:"Claude"}),(0,v.jsx)("option",{value:"ollama",children:"Ollama"}),(0,v.jsx)("option",{value:"gemini",children:"Gemini"}),(0,v.jsx)("option",{value:"codex",children:"Codex"}),(0,v.jsx)("option",{value:"zai",children:"Z.AI"})]}),(0,v.jsx)(F.ChevronDown,{className:"absolute right-3 top-1/2 -translate-y-1/2 text-[var(--muted-foreground)] pointer-events-none",size:16})]})]}),(0,v.jsxs)("div",{className:"space-y-2",children:[(0,v.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,v.jsx)(z.Cpu,{size:16})," Model"]}),(0,v.jsx)("input",{type:"text",value:K,onChange:a=>L(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all font-mono text-sm",placeholder:"e.g. claude-sonnet-4-6"})]})]}),(0,v.jsxs)("div",{className:"space-y-2",children:[(0,v.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,v.jsx)(B.BookOpen,{size:16})," Identity"]}),(0,v.jsx)("div",{className:"border border-[var(--border)] rounded-xl overflow-hidden bg-[var(--app-shell-subtle)] focus-within:ring-2 focus-within:ring-indigo-500/20 focus-within:border-indigo-500 transition-all",children:(0,v.jsx)(I.default,{content:M,onChange:a=>N(a),placeholder:"You are a ..."})}),(0,v.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Identity defines who the agent is. Keep portable knowledge separate below; project and repo knowledge belong on their scoped surfaces."})]}),(0,v.jsxs)("div",{className:"space-y-2",children:[(0,v.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,v.jsx)(C.Sparkles,{size:16})," Portable Knowledge"]}),(0,v.jsxs)("div",{className:"rounded-xl border border-[var(--border)] bg-[var(--app-shell-subtle)] p-3 space-y-3",children:[(0,v.jsx)("div",{className:"flex items-center justify-between gap-3",children:(0,v.jsxs)("div",{children:[(0,v.jsx)("p",{className:"text-xs font-semibold text-[var(--foreground)]",children:"Skills Picker"}),(0,v.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)]",children:"Pick a skill here. AGX will install it later only if the run actually needs it."})]})}),aa.length>0?(0,v.jsxs)(v.Fragment,{children:[(0,v.jsxs)("div",{className:"relative",ref:ao,children:[(0,v.jsxs)("button",{type:"button",onClick:()=>al(a=>!a),className:"w-full flex items-center justify-between px-3 py-2 rounded-xl border border-[var(--border)] bg-[var(--card-bg)] text-sm font-medium hover:border-indigo-500",children:[(0,v.jsx)("span",{className:"truncate text-left",children:"Search and add skills"}),(0,v.jsx)(F.ChevronDown,{size:16,className:`shrink-0 text-[var(--muted-foreground)] transition-transform ${ak?"rotate-180":""}`})]}),ak&&(0,v.jsxs)("div",{className:"absolute left-0 right-0 top-full mt-2 z-30 rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] shadow-lg overflow-hidden",children:[(0,v.jsx)("div",{className:"p-2 border-b border-[var(--border)]",children:(0,v.jsx)("input",{type:"text",value:ac,onChange:a=>aj(a.target.value),placeholder:"Search skills",className:"w-full px-3 py-2 bg-[var(--card-bg)] border border-[var(--border)] rounded-lg text-sm focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500",autoFocus:!0})}),(0,v.jsx)("div",{className:"max-h-64 overflow-y-auto",children:aw.length>0?aw.map(a=>{let b=`${a.repo}::${a.skillId}`,c=ax.has(b);return(0,v.jsx)("button",{type:"button",className:`w-full px-3 py-2 text-left text-sm transition-colors ${c?"bg-emerald-50 text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onMouseDown:a=>a.preventDefault(),onClick:()=>{var b,c;return b=a.repo,c=a.skillId,void(an(a=>a.some(a=>a.repo===b&&a.skillId===c)?a.filter(a=>a.repo!==b||a.skillId!==c):[...a,{repo:b,skillId:c}]),aj(""))},children:(0,v.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,v.jsxs)("div",{className:"min-w-0",children:[(0,v.jsx)("div",{className:"font-medium",children:a.name||a.skillId}),(0,v.jsx)("div",{className:"text-[11px] text-[var(--muted-foreground)]",children:a.repo})]}),c&&(0,v.jsx)("span",{className:"shrink-0 rounded-full bg-emerald-100 px-2 py-0.5 text-[10px] font-semibold text-emerald-700",children:"Added"})]})},b)}):(0,v.jsx)("div",{className:"px-3 py-3 text-sm text-[var(--muted-foreground)]",children:"No matching skills."})})]})]}),(0,v.jsxs)("div",{className:"flex flex-wrap gap-2",children:[am.map(a=>(0,v.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-full bg-emerald-50 text-emerald-700 border border-emerald-200 px-2.5 py-1 text-[11px] font-medium",children:[a.skillId,(0,v.jsx)("button",{type:"button",onClick:()=>{var b,c;return b=a.repo,c=a.skillId,void an(a=>a.filter(a=>a.repo!==b||a.skillId!==c))},className:"text-emerald-700/70 hover:text-emerald-900",title:`Remove ${a.skillId}`,children:(0,v.jsx)(x.X,{size:12})})]},`${a.repo}::${a.skillId}`)),0===am.length&&(0,v.jsx)("span",{className:"text-[11px] text-[var(--muted-foreground)]",children:"No library skills selected yet."})]})]}):(0,v.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)]",children:"No catalog skills available right now."})]}),(0,v.jsx)("textarea",{value:Q,onChange:a=>R(a.target.value),rows:5,className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all font-mono text-xs",placeholder:"one/path/to/skill.md\npath/to/skill.md | when coding in TypeScript"}),(0,v.jsxs)("p",{className:"text-xs text-[var(--muted-foreground)]",children:["Portable agent knowledge only. One reference per line. Use ",(0,v.jsx)("code",{children:"|"})," to add an optional condition."]})]}),f&&f.length>0&&(0,v.jsxs)("div",{className:"space-y-3",children:[(0,v.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,v.jsx)(E.FolderOpen,{size:16})," Assign To Projects"]}),(0,v.jsx)("div",{className:"space-y-1 max-h-[160px] overflow-y-auto",children:f.map(a=>{let b=S.has(a.id);return(0,v.jsxs)("button",{type:"button",className:b?"w-full flex items-center gap-3 px-3 py-2 rounded-lg text-sm transition-colors bg-indigo-50 text-indigo-700":"w-full flex items-center gap-3 px-3 py-2 rounded-lg text-sm transition-colors text-[var(--muted-foreground)] hover:bg-[var(--app-shell-subtle)]",onClick:()=>T(b=>{let c=new Set(b);return c.has(a.id)?c.delete(a.id):c.add(a.id),c}),children:[(0,v.jsx)("div",{className:b?"w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center bg-indigo-600 border-indigo-600":"w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center border-[var(--border)]",children:b&&(0,v.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,v.jsx)("path",{d:"M2 5l2 2 4-4",stroke:"white",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,v.jsx)("span",{className:"text-xs font-medium text-left",children:a.label??a.name})]},a.id)})})]}),i&&(0,v.jsxs)("div",{className:"space-y-3",children:[(0,v.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,v.jsx)(E.FolderOpen,{size:16})," Project Memberships"]}),i.current.length>0?(0,v.jsx)("div",{className:"flex flex-col gap-1",children:i.current.map(a=>(0,v.jsxs)("div",{className:"flex items-center gap-2 text-xs bg-[var(--app-shell-subtle)] rounded-lg px-3 py-2",children:[(0,v.jsx)(E.FolderOpen,{size:12,className:"text-[var(--muted-foreground)] shrink-0"}),(0,v.jsx)("span",{className:"truncate flex-1",children:a.name}),k&&!a.is_default&&(0,v.jsx)("button",{type:"button",className:"text-[var(--muted-foreground)] hover:text-red-500 transition-colors",onClick:()=>k(a.id),title:"Remove from project",children:(0,v.jsx)(x.X,{size:12})})]},a.id))}):(0,v.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] italic",children:"Not assigned to any projects"}),i.available.length>0&&j&&(0,v.jsx)("div",{className:"flex flex-wrap gap-1",children:i.available.map(a=>(0,v.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1 text-[10px] px-2 py-1 rounded-lg border border-dashed border-[var(--border)] text-[var(--muted-foreground)] hover:border-[var(--border)] hover:text-[var(--foreground)] transition-colors",onClick:()=>j(a.id),children:[(0,v.jsx)(D.Plus,{size:10}),a.name]},a.id))})]})]}):(0,v.jsxs)("div",{className:"space-y-3",children:[(0,v.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,v.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Paste agent JSON here. Switching back to Form or saving will apply valid JSON to the form state."}),(0,v.jsx)("button",{type:"button",onClick:au,className:"px-3 py-1.5 text-xs font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)] rounded-lg transition-colors",children:"Apply to Form"})]}),(0,v.jsx)("textarea",{value:W,onChange:a=>{X(a.target.value),Y&&Z(null)},rows:22,className:"w-full px-4 py-3 bg-[var(--app-shell-bg)] text-[var(--foreground)] border border-[var(--app-shell-border)] rounded-2xl focus:outline-none focus:ring-2 focus:ring-[var(--ring)] focus:border-[var(--primary)] transition-all font-mono text-xs",spellCheck:!1,autoFocus:!0}),Y&&(0,v.jsx)("p",{className:"text-xs text-red-500",children:Y})]}),(0,v.jsxs)("div",{className:"flex items-center justify-end gap-3 pt-4 border-t border-[var(--border)]",children:[(0,v.jsx)("button",{onClick:e,className:"px-6 py-2.5 text-sm font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)] rounded-xl transition-all",children:"Cancel"}),(0,v.jsx)("button",{onClick:()=>{let a=o.trim(),b=q,c=s.trim(),e=u,g=K.trim(),h=M.trim(),i=O,j=ah(Q),k=am,l=f?Array.from(S):void 0;if("json"===U)try{let d=at(W);a=d.data.name.trim(),b=d.data.roleId??"",c=(d.data.role??"").trim(),e=d.data.provider,g=d.data.model.trim(),h=d.data.identity.trim(),i=d.data.color??"#6B7280",j=d.data.skills??[],k=d.data.skillBindings??[],l=f?d.projectIds??[]:void 0}catch(a){Z(a instanceof Error?a.message:"Unable to parse JSON.");return}a&&g&&d({name:a,...aq&&b?{roleId:b}:{},role:c||void 0,provider:e,model:g,identity:h,color:i,skills:j,skillBindings:k},l)},disabled:"form"===U&&(!o.trim()||!K.trim()),className:"px-8 py-2.5 bg-indigo-600 text-white text-sm font-semibold rounded-xl shadow-[0_4px_12px_rgba(79,70,229,0.3)] hover:bg-indigo-700 active:scale-95 disabled:opacity-50 transition-all font-bold",children:c})]})]})]})})}a.s(["AgentForm",()=>aj,"agentAvatarUrl",()=>ae],8e4)}];
1
+ module.exports=[517259,562428,a=>{"use strict";var b=a.i(831709);let c=(0,b.default)("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]);a.s(["Cpu",()=>c],517259);let d=(0,b.default)("box",[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]]);a.s(["Box",()=>d],562428)},328400,a=>{"use strict";let b=(0,a.i(831709).default)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);a.s(["BookOpen",()=>b],328400)},8e4,a=>{"use strict";var b=a.i(308316),c=a.i(786220),d=a.i(824179),e=a.i(252197),f=a.i(517259),g=a.i(562428),h=a.i(328400),i=a.i(724938),j=a.i(353532),k=a.i(89613),l=a.i(811760),m=a.i(804632),n=a.i(627421),o=a.i(86466),p=a.i(749741);a.i(214512),p.KeyboardCode.Down,p.KeyboardCode.Right,p.KeyboardCode.Up,p.KeyboardCode.Left;var q=a.i(766412);function r(a,b=32,c){let d=`https://api.dicebear.com/9.x/bottts-neutral/svg?seed=${encodeURIComponent(a)}&size=${b}`;if(!c)return d;let e=c.replace("#","");return`${d}&backgroundColor=${e}`}a.i(529889);let s=["claude","ollama","gemini","codex","zai"];function t(a){return(a??[]).map(a=>a.condition?.trim()?`${a.file} | ${a.condition}`:a.file).join("\n")}function u(a){return a.split("\n").map(a=>a.trim()).filter(Boolean).map(a=>{let[b,...c]=a.split("|");return{file:b.trim(),condition:c.join("|").trim()}}).filter(a=>a.file.length>0)}function v(a,b){return JSON.stringify({name:a.name,...a.roleId?{roleId:a.roleId}:{},...a.role?{role:a.role}:{},provider:a.provider,model:a.model,identity:a.identity,color:a.color??"#6B7280",skills:a.skills??[],skillBindings:a.skillBindings??[],...b?{projectIds:b}:{}},null,2)}function w({title:a,initial:p,submitLabel:w,onSubmit:x,onCancel:y,projects:z,initialProjectIds:A,agentId:B,projectMemberships:C,onAddToProject:D,onRemoveFromProject:E,roleOptions:F,roleLabel:G="Role",onRolePresetChange:H}){let[I,J]=(0,c.useState)(p.name),[K,L]=(0,c.useState)(p.roleId??""),[M,N]=(0,c.useState)(p.role??""),[O,P]=(0,c.useState)(p.provider),[Q,R]=(0,c.useState)(p.model),[S,T]=(0,c.useState)(p.identity),[U,V]=(0,c.useState)(p.color??"#6B7280"),[W,X]=(0,c.useState)(t(p.skills)),[Y,Z]=(0,c.useState)(new Set(A??[])),[$,_]=(0,c.useState)("form"),[aa,ab]=(0,c.useState)(()=>v(p,z?A??[]:void 0)),[ac,ad]=(0,c.useState)(null),[ae,af]=(0,c.useState)(!1),[ag,ah]=(0,c.useState)([]),[ai,aj]=(0,c.useState)(""),[ak,al]=(0,c.useState)(!1),[am,an]=(0,c.useState)(p.skillBindings??[]),ao=(0,c.useRef)(null),ap=(0,c.useRef)(null),aq=!!(F&&F.length>0),ar=B||I.trim()||p.name||"agent";(0,c.useEffect)(()=>{let a=a=>{ap.current&&!ap.current.contains(a.target)&&y()},b=setTimeout(()=>document.addEventListener("pointerdown",a),0);return()=>{clearTimeout(b),document.removeEventListener("pointerdown",a)}},[ap,y]),(0,c.useEffect)(()=>{if(!ak)return;let a=a=>{ao.current&&!ao.current.contains(a.target)&&al(!1)};return document.addEventListener("pointerdown",a),()=>document.removeEventListener("pointerdown",a)},[ak]),(0,c.useEffect)(()=>{"form"===$&&ab(v({name:I,...aq&&K?{roleId:K}:{},role:M,provider:O,model:Q,identity:S,color:U,skills:u(W),skillBindings:am},z?Array.from(Y):void 0))},[$,I,K,aq,M,O,Q,S,U,W,am,Y,z]),(0,c.useEffect)(()=>{if(!ae)return;let a=window.setTimeout(()=>af(!1),1200);return()=>window.clearTimeout(a)},[ae]),(0,c.useEffect)(()=>{let a=!1;return async function(){try{let b=await fetch("/api/skills");if(!b.ok)return;let c=await b.json();if(a)return;let d=Array.isArray(c.skills)?c.skills.filter(a=>!!a&&"object"==typeof a).map(a=>({skillId:String(a.skillId??"").trim(),repo:String(a.repo??"").trim(),name:String(a.name??a.skillId??"").trim()})).filter(a=>a.skillId.length>0&&a.repo.length>0):[];ah(d)}catch{a||ah([])}}(),()=>{a=!0}},[]);let as=(a,b)=>{let c=z?(b??[]).filter(a=>z.some(b=>b.id===a)):void 0;return J(a.name),L(a.roleId??""),N(a.role??""),P(a.provider),R(a.model),T(a.identity),V(a.color??"#6B7280"),X(t(a.skills)),an(a.skillBindings??[]),z&&Z(new Set(c??[])),ab(v(a,z?c??[]:void 0)),ad(null),c},at=a=>{let b=function(a,b){let c;try{c=JSON.parse(a)}catch{throw Error("JSON is invalid.")}if(!c||"object"!=typeof c||Array.isArray(c))throw Error("JSON must be an object.");let d=c,e="string"==typeof d.provider?d.provider:b,f=s.includes(e)?e:b,g=(Array.isArray(d.skills)?d.skills:[]).flatMap(a=>{if("string"==typeof a){let[b,...c]=a.split("|"),d=b.trim();return d?[{file:d,condition:c.join("|").trim()}]:[]}if(!a||"object"!=typeof a||Array.isArray(a))return[];let b="string"==typeof a.file?a.file.trim():"";return b?[{file:b,condition:"string"==typeof a.condition?a.condition.trim():""}]:[]}),h=Array.isArray(d.projectIds)?d.projectIds.filter(a=>"string"==typeof a&&a.trim().length>0):void 0,i=(Array.isArray(d.skillBindings)?d.skillBindings:[]).flatMap(a=>{if(!a||"object"!=typeof a||Array.isArray(a))return[];let b="string"==typeof a.repo?a.repo.trim():"",c="string"==typeof a.skillId?a.skillId.trim():"";return b&&c?[{repo:b,skillId:c,condition:"string"==typeof a.condition?a.condition.trim():""}]:[]});return{data:{name:"string"==typeof d.name?d.name:"",roleId:"string"==typeof d.roleId?d.roleId:void 0,role:"string"==typeof d.role?d.role:"",provider:f,model:"string"==typeof d.model?d.model:"",identity:"string"==typeof d.identity?d.identity:"",color:"string"==typeof d.color&&d.color.trim()?d.color:"#6B7280",skills:g,skillBindings:i},projectIds:h}}(a,O),c=as(b.data,b.projectIds);return{...b,projectIds:c}},au=()=>{if("form"!==$)try{at(aa),_("form")}catch(a){ad(a instanceof Error?a.message:"Unable to parse JSON.")}},av=async()=>{try{await navigator.clipboard.writeText(aa),af(!0)}catch{af(!1)}},aw=(0,c.useMemo)(()=>{let a=ai.trim().toLowerCase();return a?ag.filter(b=>[b.name,b.skillId,b.repo].some(b=>b.toLowerCase().includes(a))).slice(0,50):ag.slice(0,50)},[ag,ai]),ax=(0,c.useMemo)(()=>new Set(am.map(a=>`${a.repo}::${a.skillId}`)),[am]);return(0,b.jsx)("div",{ref:ap,className:"fixed inset-0 z-[100] flex items-center justify-center p-4 bg-black/30 backdrop-blur-sm",onKeyDown:a=>{"Escape"===a.key&&y()},children:(0,b.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-[32px] shadow-2xl overflow-hidden w-full max-w-2xl max-h-[90vh] flex flex-col animate-in fade-in zoom-in duration-300",children:[(0,b.jsxs)("div",{className:"px-8 pt-8 pb-4 shrink-0 flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"flex items-center gap-4",children:[(0,b.jsxs)("div",{className:"flex flex-col items-center gap-1.5",children:[(0,b.jsx)("img",{src:r(ar,64,U),alt:I,className:"w-14 h-14 rounded-full bg-[var(--muted)]"}),(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("label",{className:"text-[10px] text-[var(--muted-foreground)]",children:"Color"}),(0,b.jsx)("input",{type:"color",value:U,onChange:a=>V(a.target.value),className:"w-5 h-5 rounded border border-[var(--border)] cursor-pointer p-0"})]})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("h2",{className:"text-[10px] font-bold tracking-widest text-[var(--muted-foreground)] uppercase",children:a}),(0,b.jsx)("h1",{className:"text-2xl font-semibold mt-1",children:I||"Configure Agent"})]})]}),(0,b.jsx)("button",{onClick:y,className:"p-2 text-[var(--muted-foreground)] hover:text-[var(--muted-foreground)] hover:bg-[var(--muted)] rounded-full transition-all",children:(0,b.jsx)(d.X,{size:20})})]}),(0,b.jsxs)("div",{className:"px-8 pb-8 space-y-6 overflow-y-auto",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,b.jsxs)("div",{className:"inline-flex rounded-xl bg-[var(--muted)] p-1",children:[(0,b.jsx)("button",{type:"button",onClick:au,className:"form"===$?"px-3 py-1.5 text-xs font-semibold rounded-lg bg-[var(--card-bg)] text-[var(--foreground)] shadow-sm":"px-3 py-1.5 text-xs font-semibold rounded-lg text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:"Form"}),(0,b.jsx)("button",{type:"button",onClick:()=>{ab(v({name:I,...aq&&K?{roleId:K}:{},role:M,provider:O,model:Q,identity:S,color:U,skills:u(W),skillBindings:am},z?Array.from(Y):void 0)),ad(null),_("json")},className:"json"===$?"px-3 py-1.5 text-xs font-semibold rounded-lg bg-[var(--card-bg)] text-[var(--foreground)] shadow-sm":"px-3 py-1.5 text-xs font-semibold rounded-lg text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:"JSON"})]}),"json"===$&&(0,b.jsxs)("button",{type:"button",onClick:av,className:"inline-flex items-center gap-1.5 px-3 py-1.5 text-xs font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)] rounded-lg transition-colors",children:[ae?(0,b.jsx)(n.Check,{size:14,className:"text-emerald-500"}):(0,b.jsx)(m.Copy,{size:14}),ae?"Copied":"Copy"]})]}),"form"===$?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(e.User,{size:16})," Name"]}),(0,b.jsx)("input",{type:"text",value:I,onChange:a=>J(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. Ada, Kai, Sage...",autoFocus:!0})]}),aq?(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:G}),(0,b.jsx)(q.default,{options:F??[],value:K||null,onChange:a=>{if(!aq)return;let b={name:I,roleId:a,role:M,provider:O,model:Q,identity:S,color:U,skills:u(W),skillBindings:am},c=H?.(a,b);c?as({...c,roleId:a},z?Array.from(Y):void 0):L(a)},placeholder:"Select a role preset..."})]}):(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:"Role"}),(0,b.jsx)("input",{type:"text",value:M,onChange:a=>N(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. Senior Backend Engineer"})]})]}),(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(g.Box,{size:16})," Provider"]}),(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsxs)("select",{value:O,onChange:a=>P(a.target.value),className:"w-full appearance-none px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all pr-10 cursor-pointer",children:[(0,b.jsx)("option",{value:"claude",children:"Claude"}),(0,b.jsx)("option",{value:"ollama",children:"Ollama"}),(0,b.jsx)("option",{value:"gemini",children:"Gemini"}),(0,b.jsx)("option",{value:"codex",children:"Codex"}),(0,b.jsx)("option",{value:"zai",children:"Z.AI"})]}),(0,b.jsx)(l.ChevronDown,{className:"absolute right-3 top-1/2 -translate-y-1/2 text-[var(--muted-foreground)] pointer-events-none",size:16})]})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(f.Cpu,{size:16})," Model"]}),(0,b.jsx)("input",{type:"text",value:Q,onChange:a=>R(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all font-mono text-sm",placeholder:"e.g. claude-sonnet-4-6"})]})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(h.BookOpen,{size:16})," Identity"]}),(0,b.jsx)("div",{className:"border border-[var(--border)] rounded-xl overflow-hidden bg-[var(--app-shell-subtle)] focus-within:ring-2 focus-within:ring-indigo-500/20 focus-within:border-indigo-500 transition-all",children:(0,b.jsx)(o.default,{content:S,onChange:a=>T(a),placeholder:"You are a ..."})}),(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Identity defines who the agent is. Keep portable knowledge separate below; project and repo knowledge belong on their scoped surfaces."})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(i.Sparkles,{size:16})," Portable Knowledge"]}),(0,b.jsxs)("div",{className:"rounded-xl border border-[var(--border)] bg-[var(--app-shell-subtle)] p-3 space-y-3",children:[(0,b.jsx)("div",{className:"flex items-center justify-between gap-3",children:(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"text-xs font-semibold text-[var(--foreground)]",children:"Skills Picker"}),(0,b.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)]",children:"Pick a skill here. AGX will install it later only if the run actually needs it."})]})}),ag.length>0?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"relative",ref:ao,children:[(0,b.jsxs)("button",{type:"button",onClick:()=>al(a=>!a),className:"w-full flex items-center justify-between px-3 py-2 rounded-xl border border-[var(--border)] bg-[var(--card-bg)] text-sm font-medium hover:border-indigo-500",children:[(0,b.jsx)("span",{className:"truncate text-left",children:"Search and add skills"}),(0,b.jsx)(l.ChevronDown,{size:16,className:`shrink-0 text-[var(--muted-foreground)] transition-transform ${ak?"rotate-180":""}`})]}),ak&&(0,b.jsxs)("div",{className:"absolute left-0 right-0 top-full mt-2 z-30 rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] shadow-lg overflow-hidden",children:[(0,b.jsx)("div",{className:"p-2 border-b border-[var(--border)]",children:(0,b.jsx)("input",{type:"text",value:ai,onChange:a=>aj(a.target.value),placeholder:"Search skills",className:"w-full px-3 py-2 bg-[var(--card-bg)] border border-[var(--border)] rounded-lg text-sm focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500",autoFocus:!0})}),(0,b.jsx)("div",{className:"max-h-64 overflow-y-auto",children:aw.length>0?aw.map(a=>{let c=`${a.repo}::${a.skillId}`,d=ax.has(c);return(0,b.jsx)("button",{type:"button",className:`w-full px-3 py-2 text-left text-sm transition-colors ${d?"bg-emerald-50 text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onMouseDown:a=>a.preventDefault(),onClick:()=>{var b,c;return b=a.repo,c=a.skillId,void(an(a=>a.some(a=>a.repo===b&&a.skillId===c)?a.filter(a=>a.repo!==b||a.skillId!==c):[...a,{repo:b,skillId:c}]),aj(""))},children:(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,b.jsxs)("div",{className:"min-w-0",children:[(0,b.jsx)("div",{className:"font-medium",children:a.name||a.skillId}),(0,b.jsx)("div",{className:"text-[11px] text-[var(--muted-foreground)]",children:a.repo})]}),d&&(0,b.jsx)("span",{className:"shrink-0 rounded-full bg-emerald-100 px-2 py-0.5 text-[10px] font-semibold text-emerald-700",children:"Added"})]})},c)}):(0,b.jsx)("div",{className:"px-3 py-3 text-sm text-[var(--muted-foreground)]",children:"No matching skills."})})]})]}),(0,b.jsxs)("div",{className:"flex flex-wrap gap-2",children:[am.map(a=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-full bg-emerald-50 text-emerald-700 border border-emerald-200 px-2.5 py-1 text-[11px] font-medium",children:[a.skillId,(0,b.jsx)("button",{type:"button",onClick:()=>{var b,c;return b=a.repo,c=a.skillId,void an(a=>a.filter(a=>a.repo!==b||a.skillId!==c))},className:"text-emerald-700/70 hover:text-emerald-900",title:`Remove ${a.skillId}`,children:(0,b.jsx)(d.X,{size:12})})]},`${a.repo}::${a.skillId}`)),0===am.length&&(0,b.jsx)("span",{className:"text-[11px] text-[var(--muted-foreground)]",children:"No library skills selected yet."})]})]}):(0,b.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)]",children:"No catalog skills available right now."})]}),(0,b.jsx)("textarea",{value:W,onChange:a=>X(a.target.value),rows:5,className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all font-mono text-xs",placeholder:"one/path/to/skill.md\npath/to/skill.md | when coding in TypeScript"}),(0,b.jsxs)("p",{className:"text-xs text-[var(--muted-foreground)]",children:["Portable agent knowledge only. One reference per line. Use ",(0,b.jsx)("code",{children:"|"})," to add an optional condition."]})]}),z&&z.length>0&&(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(k.FolderOpen,{size:16})," Assign To Projects"]}),(0,b.jsx)("div",{className:"space-y-1 max-h-[160px] overflow-y-auto",children:z.map(a=>{let c=Y.has(a.id);return(0,b.jsxs)("button",{type:"button",className:c?"w-full flex items-center gap-3 px-3 py-2 rounded-lg text-sm transition-colors bg-indigo-50 text-indigo-700":"w-full flex items-center gap-3 px-3 py-2 rounded-lg text-sm transition-colors text-[var(--muted-foreground)] hover:bg-[var(--app-shell-subtle)]",onClick:()=>Z(b=>{let c=new Set(b);return c.has(a.id)?c.delete(a.id):c.add(a.id),c}),children:[(0,b.jsx)("div",{className:c?"w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center bg-indigo-600 border-indigo-600":"w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center border-[var(--border)]",children:c&&(0,b.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,b.jsx)("path",{d:"M2 5l2 2 4-4",stroke:"white",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,b.jsx)("span",{className:"text-xs font-medium text-left",children:a.label??a.name})]},a.id)})})]}),C&&(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(k.FolderOpen,{size:16})," Project Memberships"]}),C.current.length>0?(0,b.jsx)("div",{className:"flex flex-col gap-1",children:C.current.map(a=>(0,b.jsxs)("div",{className:"flex items-center gap-2 text-xs bg-[var(--app-shell-subtle)] rounded-lg px-3 py-2",children:[(0,b.jsx)(k.FolderOpen,{size:12,className:"text-[var(--muted-foreground)] shrink-0"}),(0,b.jsx)("span",{className:"truncate flex-1",children:a.name}),E&&!a.is_default&&(0,b.jsx)("button",{type:"button",className:"text-[var(--muted-foreground)] hover:text-red-500 transition-colors",onClick:()=>E(a.id),title:"Remove from project",children:(0,b.jsx)(d.X,{size:12})})]},a.id))}):(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] italic",children:"Not assigned to any projects"}),C.available.length>0&&D&&(0,b.jsx)("div",{className:"flex flex-wrap gap-1",children:C.available.map(a=>(0,b.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1 text-[10px] px-2 py-1 rounded-lg border border-dashed border-[var(--border)] text-[var(--muted-foreground)] hover:border-[var(--border)] hover:text-[var(--foreground)] transition-colors",onClick:()=>D(a.id),children:[(0,b.jsx)(j.Plus,{size:10}),a.name]},a.id))})]})]}):(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Paste agent JSON here. Switching back to Form or saving will apply valid JSON to the form state."}),(0,b.jsx)("button",{type:"button",onClick:au,className:"px-3 py-1.5 text-xs font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)] rounded-lg transition-colors",children:"Apply to Form"})]}),(0,b.jsx)("textarea",{value:aa,onChange:a=>{ab(a.target.value),ac&&ad(null)},rows:22,className:"w-full px-4 py-3 bg-[var(--app-shell-bg)] text-[var(--foreground)] border border-[var(--app-shell-border)] rounded-2xl focus:outline-none focus:ring-2 focus:ring-[var(--ring)] focus:border-[var(--primary)] transition-all font-mono text-xs",spellCheck:!1,autoFocus:!0}),ac&&(0,b.jsx)("p",{className:"text-xs text-red-500",children:ac})]}),(0,b.jsxs)("div",{className:"flex items-center justify-end gap-3 pt-4 border-t border-[var(--border)]",children:[(0,b.jsx)("button",{onClick:y,className:"px-6 py-2.5 text-sm font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)] rounded-xl transition-all",children:"Cancel"}),(0,b.jsx)("button",{onClick:()=>{let a=I.trim(),b=K,c=M.trim(),d=O,e=Q.trim(),f=S.trim(),g=U,h=u(W),i=am,j=z?Array.from(Y):void 0;if("json"===$)try{let k=at(aa);a=k.data.name.trim(),b=k.data.roleId??"",c=(k.data.role??"").trim(),d=k.data.provider,e=k.data.model.trim(),f=k.data.identity.trim(),g=k.data.color??"#6B7280",h=k.data.skills??[],i=k.data.skillBindings??[],j=z?k.projectIds??[]:void 0}catch(a){ad(a instanceof Error?a.message:"Unable to parse JSON.");return}a&&e&&x({name:a,...aq&&b?{roleId:b}:{},role:c||void 0,provider:d,model:e,identity:f,color:g,skills:h,skillBindings:i},j)},disabled:"form"===$&&(!I.trim()||!Q.trim()),className:"px-8 py-2.5 bg-indigo-600 text-white text-sm font-semibold rounded-xl shadow-[0_4px_12px_rgba(79,70,229,0.3)] hover:bg-indigo-700 active:scale-95 disabled:opacity-50 transition-all font-bold",children:w})]})]})]})})}a.s(["AgentForm",()=>w,"agentAvatarUrl",()=>r],8e4)}];
2
2
 
3
3
  //# sourceMappingURL=apps_local_16902bc1._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[769677,a=>{"use strict";let b="project_objectives_workspace",c="project_goals_workspace",d=new Set(["on_track","at_risk","off_track","done"]);function e(a){return!!a&&"object"==typeof a&&!Array.isArray(a)}function f(a){return`${a}_${Math.random().toString(36).slice(2,10)}`}function g(a){return[...a].sort((a,b)=>Date.parse(b.updatedAt)-Date.parse(a.updatedAt))}function h(a){return[...a].sort((a,b)=>Date.parse(a.createdAt)-Date.parse(b.createdAt))}function i(a){return[...a].sort((a,b)=>Date.parse(b.createdAt)-Date.parse(a.createdAt))}function j(a,b=""){return"string"==typeof a?a:b}function k(a){return Array.isArray(a)?Array.from(new Set(a.map(a=>"string"==typeof a?a.trim():"").filter(Boolean))):[]}function l(a,b="1970-01-01T00:00:00.000Z"){if("string"!=typeof a)return b;let c=Date.parse(a);return Number.isNaN(c)?b:new Date(c).toISOString()}function m(a){return"number"==typeof a&&Number.isFinite(a)?Math.max(0,Math.min(100,Math.round(a))):0}function n(a,b=0){return"number"==typeof a&&Number.isFinite(a)?Math.max(0,Math.floor(a)):b}function o(a,b="objective"){let c=a.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").replace(/-{2,}/g,"-").slice(0,32);return c||b.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||"objective"}function p(a,b,c="objective"){let d=o(c),e=o(a,d),f=e,g=2;for(;b.has(f);){let a=`-${g}`,b=Math.max(1,32-a.length);f=`${e.slice(0,b)}${a}`,g+=1}return b.add(f),f}function q(a,b,c){return p(a,new Set(b.filter(a=>a.id!==c).map(a=>o(a.key||a.title||a.id))),c??a)}function r(a){var b;if(!e(a))return null;let c=l(a.updatedAt??a.createdAt),g=l(a.createdAt,c);return{id:j(a.id,f("objective")),title:j(a.title,"Untitled objective"),teamId:j(a.teamId??a.team_id??a.ownerTeamId),key:o(j(a.key??a.slug??a.label),j(a.title??a.id,"objective")),threadId:j(a.threadId)||null,chatSessionVersion:n(a.chatSessionVersion,0),scheduledTaskIds:k(a.scheduledTaskIds??a.promptJobIds),summary:j(a.summary),progress:m(a.progress),status:"string"==typeof(b=a.status)&&d.has(b)?b:"on_track",createdAt:g,updatedAt:c}}function s(a){if(!e(a))return null;let b=l(a.updatedAt??a.createdAt),c=l(a.createdAt,b),d=j(a.objectiveId??a.goalId);return d?{id:j(a.id,f("objective_activity")),objectiveId:d,sourceType:"note",sourceLabel:j(a.sourceLabel,"Update"),title:j(a.title,"Untitled activity"),body:j(a.body),createdAt:c,updatedAt:b,relatedTaskId:j(a.relatedTaskId)||null}:null}function t(a){if(!e(a))return null;let b=j(a.activityId);return b?{id:j(a.id,f("objective_thread_message")),activityId:b,author:j(a.author,"You"),body:j(a.body),createdAt:l(a.createdAt)}:null}function u(){return{objectives:[],activities:[],activityThreads:{}}}function v(a){let b;if(!e(a))return u();let c=Array.isArray(a.objectives)?a.objectives.map(a=>r(a)).filter(a=>null!==a):[],d=Array.isArray(a.activities)?a.activities.map(a=>s(a)).filter(a=>null!==a):[],f=e(a.activityThreads)?Object.fromEntries(Object.entries(a.activityThreads).map(([a,b])=>[a,h(Array.isArray(b)?b.map(a=>t(a)).filter(a=>null!==a):[])])):{};return{objectives:g((b=new Set,c.map(a=>{let c=p(a.key||a.title||a.id,b,a.id||a.title||"objective");return a.key===c?a:{...a,key:c}}))),activities:i(d),activityThreads:f}}function w(a){if(!e(a))return u();let d=a[b];if(void 0!==d){let a=v(d);if(a.objectives.length>0||a.activities.length>0||Object.keys(a.activityThreads).length>0)return a}let f=a[c];if(void 0!==f){if(!e(f))return u();let a=Array.isArray(f.goals)?f.goals.map(a=>(function(a){if(!e(a))return null;let b=j(a.target),c=[j(a.summary),b?`Measure: ${b}`:""].filter(Boolean).join("\n\n");return r({...a,summary:c})})(a)).filter(a=>null!==a):[],b=Array.isArray(f.manualActivities)?f.manualActivities.map(a=>s({...a,sourceLabel:"Update"})).filter(a=>null!==a):[],c=e(f.activityThreads)?Object.fromEntries(Object.entries(f.activityThreads).map(([a,b])=>[a,h(Array.isArray(b)?b.map(b=>t({...b,activityId:a})).filter(a=>null!==a):[])])):{};return{objectives:g(a),activities:i(b),activityThreads:c}}return u()}function x(a,d){let e={...a};return delete e[c],e[b]=v(d),e}function y(a){return{id:a.id??f("objective"),title:a.title.trim(),teamId:a.teamId.trim(),key:o(a.key?.trim()??a.title.trim(),a.id??a.title),threadId:"string"==typeof a.threadId&&a.threadId.trim()?a.threadId.trim():null,chatSessionVersion:n(a.chatSessionVersion??2,2),scheduledTaskIds:k(a.scheduledTaskIds??[]),summary:a.summary?.trim()??"",progress:m(a.progress??0),status:a.status??"on_track",createdAt:a.now,updatedAt:a.now}}function z(a,b){let c=a.objectives.findIndex(a=>a.id===b.id)>=0?a.objectives.map(a=>a.id===b.id?b:a):[b,...a.objectives];return{...a,objectives:g(c)}}function A(a,b){let c=new Set(a.activities.filter(a=>a.objectiveId===b).map(a=>a.id)),d=Object.fromEntries(Object.entries(a.activityThreads).filter(([a])=>!c.has(a)));return{objectives:a.objectives.filter(a=>a.id!==b),activities:a.activities.filter(a=>a.objectiveId!==b),activityThreads:d}}function B({objective:a,workspace:b}){return b.activities.filter(b=>b.objectiveId===a.id).map(a=>({...a,threadCount:b.activityThreads[a.id]?.length??0})).sort((a,b)=>Date.parse(b.createdAt)-Date.parse(a.createdAt))}a.s(["CURRENT_OBJECTIVE_CHAT_SESSION_VERSION",0,2,"LEGACY_PROJECT_GOALS_METADATA_KEY",0,c,"PROJECT_HEALTH_METADATA_KEY",0,"project_health_snapshot","PROJECT_OBJECTIVES_METADATA_KEY",0,b,"buildObjectiveTimelineActivities",()=>B,"createProjectObjective",()=>y,"generateProjectObjectiveKey",()=>q,"readProjectObjectivesWorkspace",()=>w,"removeProjectObjective",()=>A,"upsertProjectObjective",()=>z,"writeProjectObjectivesWorkspace",()=>x])},204246,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={DEFAULT_SEGMENT_KEY:function(){return l},NOT_FOUND_SEGMENT_KEY:function(){return m},PAGE_SEGMENT_KEY:function(){return k},addSearchParamsIfPageSegment:function(){return i},computeSelectedLayoutSegment:function(){return j},getSegmentValue:function(){return f},getSelectedLayoutSegmentPath:function(){return function a(b,c,d=!0,e=[]){let g;if(d)g=b[1][c];else{let a=b[1];g=a.children??Object.values(a)[0]}if(!g)return e;let h=f(g[0]);return!h||h.startsWith(k)?e:(e.push(h),a(g,c,!1,e))}},isGroupSegment:function(){return g},isParallelRouteSegment:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(a){return Array.isArray(a)?a[1]:a}function g(a){return"("===a[0]&&a.endsWith(")")}function h(a){return a.startsWith("@")&&"@children"!==a}function i(a,b){if(a.includes(k)){let a=JSON.stringify(b);return"{}"!==a?k+"?"+a:k}return a}function j(a,b){if(!a||0===a.length)return null;let c="children"===b?a[0]:a[a.length-1];return c===l?null:c}let k="__PAGE__",l="__DEFAULT__",m="/_not-found"},830284,a=>{"use strict";var b=a.i(786220);function c(){let[a,c]=(0,b.useState)([]),[d,e]=(0,b.useState)(!1),[f,g]=(0,b.useState)(null),h=(0,b.useCallback)(async()=>{e(!0);try{let a=await fetch("/api/projects");if(!a.ok)throw Error("Failed to fetch projects");let b=await a.json();c(b.projects??[]),g(null)}catch(a){g(a instanceof Error?a:Error("Unknown error"))}finally{e(!1)}},[]);(0,b.useEffect)(()=>{h()},[h]);let i=(0,b.useCallback)(async a=>{let b=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(!b.ok)throw Error((await b.json().catch(()=>({}))).error||"Failed to create project");let d=(await b.json()).project;return c(a=>[d,...a]),d},[]);return{projects:a,isLoading:d,error:f,refetch:h,createProject:i,updateProject:(0,b.useCallback)(async(a,b)=>{let d=await fetch(`/api/projects/${a}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)});if(!d.ok)throw Error((await d.json().catch(()=>({}))).error||"Failed to update project");let e=(await d.json()).project;return c(b=>b.map(b=>b.id===a?e:b)),e},[]),deleteProject:(0,b.useCallback)(async a=>{let b=await fetch(`/api/projects/${a}`,{method:"DELETE"});if(!b.ok)throw Error((await b.json().catch(()=>({}))).error||"Failed to delete project");c(b=>b.filter(b=>b.id!==a))},[])}}function d(){let[a,c]=(0,b.useState)([]),[d,e]=(0,b.useState)(!0),f=(0,b.useCallback)(async()=>{try{let a=await fetch("/api/projects");if(!a.ok)return;let{projects:b}=await a.json(),d=await Promise.all((b??[]).map(async a=>{let b=[],c=[];try{let[d,e]=await Promise.all([fetch(`/api/projects/${a.id}/agents`),fetch(`/api/projects/${a.id}/threads`)]);d.ok&&(b=(await d.json()).agents??[]),e.ok&&(c=((await e.json()).threads??[]).map(a=>a.thread_id))}catch{}return{...a,repos:a.repos??[],agents:b.map(b=>({project_id:a.id,agent_id:b.agent_id,routing_order:b.routing_order,created_at:b.created_at})),thread_ids:c,workspace_ids:c}}));c(d)}catch{}finally{e(!1)}},[]);(0,b.useEffect)(()=>{f()},[f]);let g=(0,b.useCallback)(async(a,b)=>{try{let d="string"==typeof a?{name:a}:a,e=d.name.trim(),f=(d.slug||e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")).trim(),g=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...d,name:e,slug:f})});if(!g.ok)return null;let{project:h}=await g.json(),i=Array.isArray(b)?b:b?[b]:[];for(let a of i)await fetch(`/api/projects/${h.id}/threads`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:a})}).catch(a=>console.warn("[useProjects] link thread failed:",a));let j={...h,repos:h.repos??[],agents:[],thread_ids:i,workspace_ids:i};return c(a=>[...a,j].sort((a,b)=>a.name.localeCompare(b.name))),j}catch{return null}},[]),h=(0,b.useCallback)(async(a,b)=>{try{if(!(await fetch(`/api/projects/${a}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:b})})).ok)return;c(c=>c.map(c=>c.id===a?{...c,name:b}:c).sort((a,b)=>a.name.localeCompare(b.name)))}catch{}},[]),i=(0,b.useCallback)(async a=>{try{if(!(await fetch(`/api/projects/${a}`,{method:"DELETE"})).ok)return;c(b=>b.filter(b=>b.id!==a))}catch{}},[]),j=(0,b.useCallback)(async(a,b)=>{try{let d=await fetch(`/api/projects/${a}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)});if(!d.ok){let a=await d.json().catch(()=>({}));throw Error(a.error||"Failed to update project")}let e=(await d.json()).project;return c(b=>b.map(b=>b.id===a?{...b,...e,repos:e.repos??b.repos}:b)),e}catch{return null}},[]),k=(0,b.useCallback)(async(a,b)=>{try{let d=await fetch(`/api/projects/${a}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:b})});if(!d.ok)return;let e=((await d.json()).agents??[]).map(b=>({project_id:a,agent_id:b.agent_id,routing_order:b.routing_order,created_at:b.created_at}));c(b=>b.map(b=>b.id===a?{...b,agents:e}:b))}catch{}},[]),l=(0,b.useCallback)(async(a,b)=>{try{let d=await fetch(`/api/projects/${a}/agents?agentId=${b}`,{method:"DELETE"});if(!d.ok)return;let e=((await d.json()).agents??[]).map(b=>({project_id:a,agent_id:b.agent_id,routing_order:b.routing_order,created_at:b.created_at}));c(b=>b.map(b=>b.id===a?{...b,agents:e}:b))}catch{}},[]);return{projects:a,isLoading:d,createProject:g,updateProject:j,renameProject:h,deleteProject:i,addAgent:k,removeAgent:l,reorderAgents:(0,b.useCallback)(async(a,b)=>{try{let d=await fetch(`/api/projects/${a}/agents`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({orderedAgentIds:b})});if(!d.ok)return;let e=((await d.json()).agents??[]).map(b=>({project_id:a,agent_id:b.agent_id,routing_order:b.routing_order,created_at:b.created_at}));c(b=>b.map(b=>b.id===a?{...b,agents:e}:b))}catch{}},[]),moveAgent:(0,b.useCallback)(async(a,b,c)=>{try{await fetch(`/api/projects/${b}/agents?agentId=${a}`,{method:"DELETE"}),await fetch(`/api/projects/${c}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:a})}),await f()}catch{}},[f]),refresh:f}}a.s(["useProjects",()=>c,"useProjectsWithAgents",()=>d])},422662,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={getDeploymentId:function(){return f},getDeploymentIdQueryOrEmptyString:function(){return g}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(){return!1}function g(){return""}},639211,a=>{"use strict";a.s(["GRAPH_TIMEOUT_DEFAULT_MS",0,864e5,"NODE_TIMEOUT_DEFAULT_MS",0,18e5,"UI_POLL_CHAT_ALT_MS",0,15e3,"UI_POLL_CHAT_CHECK_MS",0,1e4,"UI_POLL_DB_HEALTH_MS",0,3e4,"UI_POLL_PROMPT_RUNS_MS",0,5e3,"UI_POLL_SYSTEM_STATUS_MS",0,3e4])}];
1
+ module.exports=[769677,a=>{"use strict";let b="project_objectives_workspace",c="project_goals_workspace",d=new Set(["on_track","at_risk","off_track","done"]);function e(a){return!!a&&"object"==typeof a&&!Array.isArray(a)}function f(a){return`${a}_${Math.random().toString(36).slice(2,10)}`}function g(a){return[...a].sort((a,b)=>Date.parse(b.updatedAt)-Date.parse(a.updatedAt))}function h(a){return[...a].sort((a,b)=>Date.parse(a.createdAt)-Date.parse(b.createdAt))}function i(a){return[...a].sort((a,b)=>Date.parse(b.createdAt)-Date.parse(a.createdAt))}function j(a,b=""){return"string"==typeof a?a:b}function k(a){return Array.isArray(a)?Array.from(new Set(a.map(a=>"string"==typeof a?a.trim():"").filter(Boolean))):[]}function l(a,b="1970-01-01T00:00:00.000Z"){if("string"!=typeof a)return b;let c=Date.parse(a);return Number.isNaN(c)?b:new Date(c).toISOString()}function m(a){return"number"==typeof a&&Number.isFinite(a)?Math.max(0,Math.min(100,Math.round(a))):0}function n(a,b=0){return"number"==typeof a&&Number.isFinite(a)?Math.max(0,Math.floor(a)):b}function o(a,b="objective"){let c=a.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").replace(/-{2,}/g,"-").slice(0,32);return c||b.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||"objective"}function p(a,b,c="objective"){let d=o(c),e=o(a,d),f=e,g=2;for(;b.has(f);){let a=`-${g}`,b=Math.max(1,32-a.length);f=`${e.slice(0,b)}${a}`,g+=1}return b.add(f),f}function q(a,b,c){return p(a,new Set(b.filter(a=>a.id!==c).map(a=>o(a.key||a.title||a.id))),c??a)}function r(a){var b;if(!e(a))return null;let c=l(a.updatedAt??a.createdAt),g=l(a.createdAt,c);return{id:j(a.id,f("objective")),title:j(a.title,"Untitled objective"),teamId:j(a.teamId??a.team_id??a.ownerTeamId),key:o(j(a.key??a.slug??a.label),j(a.title??a.id,"objective")),threadId:j(a.threadId)||null,chatSessionVersion:n(a.chatSessionVersion,0),scheduledTaskIds:k(a.scheduledTaskIds??a.promptJobIds),summary:j(a.summary),progress:m(a.progress),status:"string"==typeof(b=a.status)&&d.has(b)?b:"on_track",createdAt:g,updatedAt:c}}function s(a){if(!e(a))return null;let b=l(a.updatedAt??a.createdAt),c=l(a.createdAt,b),d=j(a.objectiveId??a.goalId);return d?{id:j(a.id,f("objective_activity")),objectiveId:d,sourceType:"note",sourceLabel:j(a.sourceLabel,"Update"),title:j(a.title,"Untitled activity"),body:j(a.body),createdAt:c,updatedAt:b,relatedTaskId:j(a.relatedTaskId)||null}:null}function t(a){if(!e(a))return null;let b=j(a.activityId);return b?{id:j(a.id,f("objective_thread_message")),activityId:b,author:j(a.author,"You"),body:j(a.body),createdAt:l(a.createdAt)}:null}function u(){return{objectives:[],activities:[],activityThreads:{}}}function v(a){let b;if(!e(a))return u();let c=Array.isArray(a.objectives)?a.objectives.map(a=>r(a)).filter(a=>null!==a):[],d=Array.isArray(a.activities)?a.activities.map(a=>s(a)).filter(a=>null!==a):[],f=e(a.activityThreads)?Object.fromEntries(Object.entries(a.activityThreads).map(([a,b])=>[a,h(Array.isArray(b)?b.map(a=>t(a)).filter(a=>null!==a):[])])):{};return{objectives:g((b=new Set,c.map(a=>{let c=p(a.key||a.title||a.id,b,a.id||a.title||"objective");return a.key===c?a:{...a,key:c}}))),activities:i(d),activityThreads:f}}function w(a){if(!e(a))return u();let d=a[b];if(void 0!==d){let a=v(d);if(a.objectives.length>0||a.activities.length>0||Object.keys(a.activityThreads).length>0)return a}let f=a[c];if(void 0!==f){if(!e(f))return u();let a=Array.isArray(f.goals)?f.goals.map(a=>(function(a){if(!e(a))return null;let b=j(a.target),c=[j(a.summary),b?`Measure: ${b}`:""].filter(Boolean).join("\n\n");return r({...a,summary:c})})(a)).filter(a=>null!==a):[],b=Array.isArray(f.manualActivities)?f.manualActivities.map(a=>s({...a,sourceLabel:"Update"})).filter(a=>null!==a):[],c=e(f.activityThreads)?Object.fromEntries(Object.entries(f.activityThreads).map(([a,b])=>[a,h(Array.isArray(b)?b.map(b=>t({...b,activityId:a})).filter(a=>null!==a):[])])):{};return{objectives:g(a),activities:i(b),activityThreads:c}}return u()}function x(a,d){let e={...a};return delete e[c],e[b]=v(d),e}function y(a){return{id:a.id??f("objective"),title:a.title.trim(),teamId:a.teamId.trim(),key:o(a.key?.trim()??a.title.trim(),a.id??a.title),threadId:"string"==typeof a.threadId&&a.threadId.trim()?a.threadId.trim():null,chatSessionVersion:n(a.chatSessionVersion??2,2),scheduledTaskIds:k(a.scheduledTaskIds??[]),summary:a.summary?.trim()??"",progress:m(a.progress??0),status:a.status??"on_track",createdAt:a.now,updatedAt:a.now}}function z(a,b){let c=a.objectives.findIndex(a=>a.id===b.id)>=0?a.objectives.map(a=>a.id===b.id?b:a):[b,...a.objectives];return{...a,objectives:g(c)}}function A(a,b){let c=new Set(a.activities.filter(a=>a.objectiveId===b).map(a=>a.id)),d=Object.fromEntries(Object.entries(a.activityThreads).filter(([a])=>!c.has(a)));return{objectives:a.objectives.filter(a=>a.id!==b),activities:a.activities.filter(a=>a.objectiveId!==b),activityThreads:d}}function B({objective:a,workspace:b}){return b.activities.filter(b=>b.objectiveId===a.id).map(a=>({...a,threadCount:b.activityThreads[a.id]?.length??0})).sort((a,b)=>Date.parse(b.createdAt)-Date.parse(a.createdAt))}a.s(["CURRENT_OBJECTIVE_CHAT_SESSION_VERSION",0,2,"LEGACY_PROJECT_GOALS_METADATA_KEY",0,c,"PROJECT_HEALTH_METADATA_KEY",0,"project_health_snapshot","PROJECT_OBJECTIVES_METADATA_KEY",0,b,"buildObjectiveTimelineActivities",()=>B,"createProjectObjective",()=>y,"generateProjectObjectiveKey",()=>q,"readProjectObjectivesWorkspace",()=>w,"removeProjectObjective",()=>A,"upsertProjectObjective",()=>z,"writeProjectObjectivesWorkspace",()=>x])},204246,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={DEFAULT_SEGMENT_KEY:function(){return l},NOT_FOUND_SEGMENT_KEY:function(){return m},PAGE_SEGMENT_KEY:function(){return k},addSearchParamsIfPageSegment:function(){return i},computeSelectedLayoutSegment:function(){return j},getSegmentValue:function(){return f},getSelectedLayoutSegmentPath:function(){return function a(b,c,d=!0,e=[]){let g;if(d)g=b[1][c];else{let a=b[1];g=a.children??Object.values(a)[0]}if(!g)return e;let h=f(g[0]);return!h||h.startsWith(k)?e:(e.push(h),a(g,c,!1,e))}},isGroupSegment:function(){return g},isParallelRouteSegment:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(a){return Array.isArray(a)?a[1]:a}function g(a){return"("===a[0]&&a.endsWith(")")}function h(a){return a.startsWith("@")&&"@children"!==a}function i(a,b){if(a.includes(k)){let a=JSON.stringify(b);return"{}"!==a?k+"?"+a:k}return a}function j(a,b){if(!a||0===a.length)return null;let c="children"===b?a[0]:a[a.length-1];return c===l?null:c}let k="__PAGE__",l="__DEFAULT__",m="/_not-found"},830284,a=>{"use strict";var b=a.i(786220);function c(){let[a,c]=(0,b.useState)([]),[d,e]=(0,b.useState)(!1),[f,g]=(0,b.useState)(null),h=(0,b.useCallback)(async()=>{e(!0);try{let a=await fetch("/api/projects");if(!a.ok)throw Error("Failed to fetch projects");let b=await a.json();c(b.projects??[]),g(null)}catch(a){g(a instanceof Error?a:Error("Unknown error"))}finally{e(!1)}},[]);(0,b.useEffect)(()=>{h()},[h]);let i=(0,b.useCallback)(async a=>{let b=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(!b.ok)throw Error((await b.json().catch(()=>({}))).error||"Failed to create project");let d=(await b.json()).project;return c(a=>[d,...a]),d},[]);return{projects:a,isLoading:d,error:f,refetch:h,createProject:i,updateProject:(0,b.useCallback)(async(a,b)=>{let d=await fetch(`/api/projects/${a}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)});if(!d.ok)throw Error((await d.json().catch(()=>({}))).error||"Failed to update project");let e=(await d.json()).project;return c(b=>b.map(b=>b.id===a?e:b)),e},[]),deleteProject:(0,b.useCallback)(async a=>{let b=await fetch(`/api/projects/${a}`,{method:"DELETE"});if(!b.ok)throw Error((await b.json().catch(()=>({}))).error||"Failed to delete project");c(b=>b.filter(b=>b.id!==a))},[])}}function d(){let[a,c]=(0,b.useState)([]),[d,e]=(0,b.useState)(!0),f=(0,b.useCallback)(async()=>{try{let a=await fetch("/api/projects");if(!a.ok)return;let{projects:b}=await a.json(),d=await Promise.all((b??[]).map(async a=>{let b=[],c=[];try{let[d,e]=await Promise.all([fetch(`/api/projects/${a.id}/agents`),fetch(`/api/projects/${a.id}/threads`)]);d.ok&&(b=(await d.json()).agents??[]),e.ok&&(c=((await e.json()).threads??[]).map(a=>a.thread_id))}catch{}return{...a,repos:a.repos??[],agents:b.map(b=>({project_id:a.id,agent_id:b.agent_id,routing_order:b.routing_order,created_at:b.created_at})),thread_ids:c,workspace_ids:c}}));c(d)}catch{}finally{e(!1)}},[]);(0,b.useEffect)(()=>{f()},[f]);let g=(0,b.useCallback)(async(a,b)=>{try{let d="string"==typeof a?{name:a}:a,e=d.name.trim(),f=(d.slug||e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")).trim(),g=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...d,name:e,slug:f})});if(!g.ok)return null;let{project:h}=await g.json(),i=Array.isArray(b)?b:b?[b]:[];for(let a of i)await fetch(`/api/projects/${h.id}/threads`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:a})}).catch(a=>console.warn("[useProjects] link thread failed:",a));let j={...h,repos:h.repos??[],agents:[],thread_ids:i,workspace_ids:i};return c(a=>[...a,j].sort((a,b)=>a.name.localeCompare(b.name))),j}catch{return null}},[]),h=(0,b.useCallback)(async(a,b)=>{try{if(!(await fetch(`/api/projects/${a}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:b})})).ok)return;c(c=>c.map(c=>c.id===a?{...c,name:b}:c).sort((a,b)=>a.name.localeCompare(b.name)))}catch{}},[]),i=(0,b.useCallback)(async a=>{try{if(!(await fetch(`/api/projects/${a}`,{method:"DELETE"})).ok)return;c(b=>b.filter(b=>b.id!==a))}catch{}},[]),j=(0,b.useCallback)(async(a,b)=>{try{let d=await fetch(`/api/projects/${a}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)});if(!d.ok){let a=await d.json().catch(()=>({}));throw Error(a.error||"Failed to update project")}let e=(await d.json()).project;return c(b=>b.map(b=>b.id===a?{...b,...e,repos:e.repos??b.repos}:b)),e}catch{return null}},[]),k=(0,b.useCallback)(async(a,b)=>{try{let d=await fetch(`/api/projects/${a}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:b})});if(!d.ok)return;let e=((await d.json()).agents??[]).map(b=>({project_id:a,agent_id:b.agent_id,routing_order:b.routing_order,created_at:b.created_at}));c(b=>b.map(b=>b.id===a?{...b,agents:e}:b))}catch{}},[]),l=(0,b.useCallback)(async(a,b)=>{try{let d=await fetch(`/api/projects/${a}/agents?agentId=${b}`,{method:"DELETE"});if(!d.ok)return;let e=((await d.json()).agents??[]).map(b=>({project_id:a,agent_id:b.agent_id,routing_order:b.routing_order,created_at:b.created_at}));c(b=>b.map(b=>b.id===a?{...b,agents:e}:b))}catch{}},[]);return{projects:a,isLoading:d,createProject:g,updateProject:j,renameProject:h,deleteProject:i,addAgent:k,removeAgent:l,reorderAgents:(0,b.useCallback)(async(a,b)=>{try{let d=await fetch(`/api/projects/${a}/agents`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({orderedAgentIds:b})});if(!d.ok)return;let e=((await d.json()).agents??[]).map(b=>({project_id:a,agent_id:b.agent_id,routing_order:b.routing_order,created_at:b.created_at}));c(b=>b.map(b=>b.id===a?{...b,agents:e}:b))}catch{}},[]),moveAgent:(0,b.useCallback)(async(a,b,c)=>{try{await fetch(`/api/projects/${b}/agents?agentId=${a}`,{method:"DELETE"}),await fetch(`/api/projects/${c}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:a})}),await f()}catch{}},[f]),refresh:f}}a.s(["useProjects",()=>c,"useProjectsWithAgents",()=>d])},422662,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={getDeploymentId:function(){return f},getDeploymentIdQueryOrEmptyString:function(){return g}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(){return!1}function g(){return""}},639211,a=>{"use strict";a.s(["GRAPH_TIMEOUT_DEFAULT_MS",0,864e5,"NODE_TIMEOUT_DEFAULT_MS",0,18e5,"UI_POLL_CHAT_ALT_MS",0,15e3,"UI_POLL_CHAT_CHECK_MS",0,1e4,"UI_POLL_DB_HEALTH_MS",0,3e4,"UI_POLL_PROMPT_RUNS_MS",0,5e3,"UI_POLL_SYSTEM_STATUS_MS",0,3e4,"UI_POLL_UPDATE_CHECK_MS",0,18e5])}];
2
2
 
3
3
  //# sourceMappingURL=apps_local_1e4a0236._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[263841,(a,b,c)=>{"use strict";b.exports=a.r(433430).vendored.contexts.AppRouterContext},234154,(a,b,c)=>{"use strict";b.exports=a.r(433430).vendored["react-ssr"].ReactServerDOMTurbopackClient},422662,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={getDeploymentId:function(){return f},getDeploymentIdQueryOrEmptyString:function(){return g}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(){return!1}function g(){return""}},830284,a=>{"use strict";var b=a.i(786220);function c(){let[a,c]=(0,b.useState)([]),[d,e]=(0,b.useState)(!1),[f,g]=(0,b.useState)(null),h=(0,b.useCallback)(async()=>{e(!0);try{let a=await fetch("/api/projects");if(!a.ok)throw Error("Failed to fetch projects");let b=await a.json();c(b.projects??[]),g(null)}catch(a){g(a instanceof Error?a:Error("Unknown error"))}finally{e(!1)}},[]);(0,b.useEffect)(()=>{h()},[h]);let i=(0,b.useCallback)(async a=>{let b=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(!b.ok)throw Error((await b.json().catch(()=>({}))).error||"Failed to create project");let d=(await b.json()).project;return c(a=>[d,...a]),d},[]);return{projects:a,isLoading:d,error:f,refetch:h,createProject:i,updateProject:(0,b.useCallback)(async(a,b)=>{let d=await fetch(`/api/projects/${a}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)});if(!d.ok)throw Error((await d.json().catch(()=>({}))).error||"Failed to update project");let e=(await d.json()).project;return c(b=>b.map(b=>b.id===a?e:b)),e},[]),deleteProject:(0,b.useCallback)(async a=>{let b=await fetch(`/api/projects/${a}`,{method:"DELETE"});if(!b.ok)throw Error((await b.json().catch(()=>({}))).error||"Failed to delete project");c(b=>b.filter(b=>b.id!==a))},[])}}function d(){let[a,c]=(0,b.useState)([]),[d,e]=(0,b.useState)(!0),f=(0,b.useCallback)(async()=>{try{let a=await fetch("/api/projects");if(!a.ok)return;let{projects:b}=await a.json(),d=await Promise.all((b??[]).map(async a=>{let b=[],c=[];try{let[d,e]=await Promise.all([fetch(`/api/projects/${a.id}/agents`),fetch(`/api/projects/${a.id}/threads`)]);d.ok&&(b=(await d.json()).agents??[]),e.ok&&(c=((await e.json()).threads??[]).map(a=>a.thread_id))}catch{}return{...a,repos:a.repos??[],agents:b.map(b=>({project_id:a.id,agent_id:b.agent_id,routing_order:b.routing_order,created_at:b.created_at})),thread_ids:c,workspace_ids:c}}));c(d)}catch{}finally{e(!1)}},[]);(0,b.useEffect)(()=>{f()},[f]);let g=(0,b.useCallback)(async(a,b)=>{try{let d="string"==typeof a?{name:a}:a,e=d.name.trim(),f=(d.slug||e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")).trim(),g=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...d,name:e,slug:f})});if(!g.ok)return null;let{project:h}=await g.json(),i=Array.isArray(b)?b:b?[b]:[];for(let a of i)await fetch(`/api/projects/${h.id}/threads`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({threadId:a})}).catch(a=>console.warn("[useProjects] link thread failed:",a));let j={...h,repos:h.repos??[],agents:[],thread_ids:i,workspace_ids:i};return c(a=>[...a,j].sort((a,b)=>a.name.localeCompare(b.name))),j}catch{return null}},[]),h=(0,b.useCallback)(async(a,b)=>{try{if(!(await fetch(`/api/projects/${a}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:b})})).ok)return;c(c=>c.map(c=>c.id===a?{...c,name:b}:c).sort((a,b)=>a.name.localeCompare(b.name)))}catch{}},[]),i=(0,b.useCallback)(async a=>{try{if(!(await fetch(`/api/projects/${a}`,{method:"DELETE"})).ok)return;c(b=>b.filter(b=>b.id!==a))}catch{}},[]),j=(0,b.useCallback)(async(a,b)=>{try{let d=await fetch(`/api/projects/${a}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)});if(!d.ok){let a=await d.json().catch(()=>({}));throw Error(a.error||"Failed to update project")}let e=(await d.json()).project;return c(b=>b.map(b=>b.id===a?{...b,...e,repos:e.repos??b.repos}:b)),e}catch{return null}},[]),k=(0,b.useCallback)(async(a,b)=>{try{let d=await fetch(`/api/projects/${a}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:b})});if(!d.ok)return;let e=((await d.json()).agents??[]).map(b=>({project_id:a,agent_id:b.agent_id,routing_order:b.routing_order,created_at:b.created_at}));c(b=>b.map(b=>b.id===a?{...b,agents:e}:b))}catch{}},[]),l=(0,b.useCallback)(async(a,b)=>{try{let d=await fetch(`/api/projects/${a}/agents?agentId=${b}`,{method:"DELETE"});if(!d.ok)return;let e=((await d.json()).agents??[]).map(b=>({project_id:a,agent_id:b.agent_id,routing_order:b.routing_order,created_at:b.created_at}));c(b=>b.map(b=>b.id===a?{...b,agents:e}:b))}catch{}},[]);return{projects:a,isLoading:d,createProject:g,updateProject:j,renameProject:h,deleteProject:i,addAgent:k,removeAgent:l,reorderAgents:(0,b.useCallback)(async(a,b)=>{try{let d=await fetch(`/api/projects/${a}/agents`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({orderedAgentIds:b})});if(!d.ok)return;let e=((await d.json()).agents??[]).map(b=>({project_id:a,agent_id:b.agent_id,routing_order:b.routing_order,created_at:b.created_at}));c(b=>b.map(b=>b.id===a?{...b,agents:e}:b))}catch{}},[]),moveAgent:(0,b.useCallback)(async(a,b,c)=>{try{await fetch(`/api/projects/${b}/agents?agentId=${a}`,{method:"DELETE"}),await fetch(`/api/projects/${c}/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentId:a})}),await f()}catch{}},[f]),refresh:f}}a.s(["useProjects",()=>c,"useProjectsWithAgents",()=>d])},824179,a=>{"use strict";let b=(0,a.i(831709).default)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);a.s(["X",()=>b],824179)},353532,a=>{"use strict";let b=(0,a.i(831709).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);a.s(["Plus",()=>b],353532)},667597,a=>{"use strict";let b=(0,a.i(831709).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"}]]);a.s(["Pencil",()=>b],667597)},340492,a=>{"use strict";let b=(0,a.i(831709).default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);a.s(["Download",()=>b],340492)},316099,a=>{"use strict";let b=(0,a.i(831709).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"}]]);a.s(["Hash",()=>b],316099)},285320,a=>{"use strict";let b=(0,a.i(831709).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["ArrowLeft",()=>b],285320)},870630,a=>{"use strict";let b="agx-chat:threads";function c(){let a=globalThis.localStorage;if(!a)throw Error("LocalThreadAdapter requires a browser-like environment with `localStorage`.");return a}function d(){let a=c().getItem(b);if(!a)return{threads:{}};try{let b=JSON.parse(a);if(b&&"object"==typeof b&&b.threads&&"object"==typeof b.threads)return{threads:Object.fromEntries(Object.entries(b.threads).map(([a,b])=>{var c,d;return[a,(c=a,d=b,{id:c,title:d?.title,messages:Array.isArray(d?.messages)?[...d.messages]:[],createdAt:"number"==typeof d?.createdAt?d.createdAt:Date.now(),updatedAt:"number"==typeof d?.updatedAt?d.updatedAt:Date.now(),metadata:d?.metadata,status:d?.status,outcomeNote:d?.outcomeNote,projectId:"string"==typeof d?.projectId?d.projectId:"string"==typeof d?.teamId?d.teamId:d?.projectId===null||d?.teamId===null?null:void 0})]}))}}catch{}return{threads:{}}}function e(a){c().setItem(b,JSON.stringify(a))}function f(a){return{...a,messages:a.messages.map(a=>({...a})),metadata:a.metadata?{...a.metadata}:void 0}}let g=new class{async saveThread(a){let b=Date.now(),c=d(),g=c.threads[a.id],h=g?.createdAt??a.createdAt??b,i=a.updatedAt??b,j={id:a.id,title:a.title,messages:a.messages.map(a=>({...a})),metadata:a.metadata,createdAt:h,updatedAt:i,status:a.status,outcomeNote:a.outcomeNote,projectId:a.projectId??a.teamId};return c.threads[a.id]=j,e(c),f(j)}async loadThread(a){let b=d().threads[a];return b?f(b):null}async listThreads(a){let b=Object.values(d().threads),c=a?.order??"desc",e=[...b].sort((a,b)=>"asc"===c?a.updatedAt-b.updatedAt:b.updatedAt-a.updatedAt),g=Math.max(0,a?.offset??0),h=a?.limit,i="number"==typeof h&&h>=0?e.slice(g,g+h):e.slice(g);return{total:b.length,threads:i.map(f)}}async deleteThread(a){let b=d();b.threads[a]&&(delete b.threads[a],e(b))}};a.s(["threadService",0,{listThreads:async()=>[...(await g.listThreads({order:"desc"})).threads.filter(a=>!0!==a.metadata?.archived)].sort((a,b)=>b.updatedAt-a.updatedAt),async createThread(a){let b="string"==typeof a?.id?a.id.trim():"";if(b){let c=await g.loadThread(b);if(c){let b={...c.metadata??{},...a?.metadata??{},archived:!1,archivedAt:null};return g.saveThread({id:c.id,title:a?.title??c.title,messages:a?.messages?.length?a.messages:c.messages,metadata:b,createdAt:c.createdAt})}}let c={id:b||("u">typeof crypto&&"function"==typeof crypto.randomUUID?crypto.randomUUID():`thread-${Date.now()}-${Math.random().toString(16).slice(2)}`),messages:a?.messages?.length?a.messages:[],title:a?.title,metadata:a?.metadata};return g.saveThread(c)},async deleteThread(a){let b=a.trim();if(!b)return;let c=await g.loadThread(b);if(!c)return;let d={...c.metadata??{},archived:!0,archivedAt:Date.now()};await g.saveThread({id:c.id,title:c.title,messages:c.messages,metadata:d,createdAt:c.createdAt})},async renameThread(a,b){let c=a.trim(),d=b.trim();if(!c||!d)return null;let e=await g.loadThread(c);return e?(e.title?.trim()??"")===d?e:g.saveThread({id:e.id,title:d,messages:e.messages,metadata:e.metadata,createdAt:e.createdAt}):null},async updateThreadStatus(a,b){let c=await g.loadThread(a);return c?c.status===b?c:g.saveThread({id:c.id,title:c.title,messages:c.messages,metadata:c.metadata,createdAt:c.createdAt,status:b,outcomeNote:c.outcomeNote}):null},async updateThreadOutcomeNote(a,b){let c=await g.loadThread(a);return c?c.outcomeNote===b?c:g.saveThread({id:c.id,title:c.title,messages:c.messages,metadata:c.metadata,createdAt:c.createdAt,status:c.status,outcomeNote:b}):null},async updateMessageThreadStatus(a,b,c){let d=await g.loadThread(a);if(!d)return null;let e=d.messages.map(a=>a.id===b?{...a,threadStatus:c}:a);return g.saveThread({id:d.id,title:d.title,messages:e,metadata:d.metadata,createdAt:d.createdAt,status:d.status,outcomeNote:d.outcomeNote})},async updateMessageOutcomeNote(a,b,c){let d=await g.loadThread(a);if(!d)return null;let e=d.messages.map(a=>a.id===b?{...a,outcomeNote:c}:a);return g.saveThread({id:d.id,title:d.title,messages:e,metadata:d.metadata,createdAt:d.createdAt,status:d.status,outcomeNote:d.outcomeNote})},async saveThreadMessages(a,b){let c=await g.loadThread(a);if(!c)return null;let d=c.title?.trim()||function(a){let b=a.find(a=>"user"===a.role)?.content?.trim();if(!b)return;let c=b.replace(/\s+/g," ");return c.length>60?`${c.slice(0,60).trim()}…`:c}(b);return function(a,b){if(a.length!==b.length)return!1;for(let c=0;c<a.length;c+=1){let d=a[c],e=b[c];if(d.id!==e.id||d.role!==e.role||d.participantId!==e.participantId||d.content!==e.content||d.timestamp!==e.timestamp)return!1}return!0}(c.messages,b)&&(c.title?.trim()||void 0)===d?c:g.saveThread({id:c.id,title:d,messages:b,metadata:c.metadata,createdAt:c.createdAt})}}],870630)},960216,a=>{"use strict";let b=(0,a.i(831709).default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Eye",()=>b],960216)}];
2
+
3
+ //# sourceMappingURL=apps_local_35d90b5d._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[697183,a=>{"use strict";let b=(0,a.i(831709).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"}]]);a.s(["Trash2",()=>b],697183)},667597,a=>{"use strict";let b=(0,a.i(831709).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"}]]);a.s(["Pencil",()=>b],667597)},756490,a=>{"use strict";let b=(0,a.i(831709).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);a.s(["ChevronRight",()=>b],756490)},319405,a=>{"use strict";let b="obra/superpowers",c="vercel/next-skills";function d(a,b,c){return c?{repo:a,skillId:b,condition:c}:{repo:a,skillId:b}}function e(a){return a.condition?{...a}:{repo:a.repo,skillId:a.skillId}}function f(a){let b={...a};return b.extraSkills&&(b.extraSkills=b.extraSkills.map(e)),b}function g(a){return{...a,agents:a.agents.map(f)}}function h(a){let b={...a,agents:a.agents.map(f)};return b.variants&&(b.variants=b.variants.map(g)),b}let i={"strategist-lead":[d(b,"brainstorming"),d(b,"writing-plans"),d(b,"dispatching-parallel-agents"),d(b,"requesting-code-review"),d(b,"verification-before-completion")],"senior-builder":[d(b,"test-driven-development"),d(b,"systematic-debugging"),d(b,"subagent-driven-development"),d(b,"requesting-code-review"),d(b,"verification-before-completion"),d(b,"finishing-a-development-branch")],builder:[d(b,"test-driven-development"),d(b,"systematic-debugging"),d(b,"verification-before-completion"),d(b,"finishing-a-development-branch")],planner:[d(b,"brainstorming"),d(b,"writing-plans"),d(b,"verification-before-completion")],researcher:[d(b,"brainstorming"),d(b,"writing-plans"),d(b,"systematic-debugging"),d(b,"verification-before-completion")],reviewer:[d(b,"systematic-debugging"),d(b,"test-driven-development"),d(b,"requesting-code-review"),d(b,"verification-before-completion")]},j=["strategist-lead","senior-builder","builder","planner","researcher","reviewer"].map(a=>({id:a,skills:i[a].map(e)})),k=[d(c,"api-routes","next.js app router, route handlers, api endpoints"),d(c,"nextjs-patterns","next.js app structure, routing, layouts, data fetching"),d(c,"react-server-components","react server components, server client boundaries, next.js rendering")],l={"team-lead":{name:"Ada",role:"Team Lead",style:"balanced",skillProfileId:"strategist-lead",identity:"Own technical direction, break ambiguous work into executable plans, and keep the squad aligned on delivery."},"fullstack-engineer":{name:"Kai",role:"Senior Fullstack Engineer",style:"balanced",skillProfileId:"senior-builder",identity:"Ship features end-to-end across frontend and backend with pragmatic tradeoffs and clean boundaries.",extraSkills:k},"backend-engineer":{name:"Ravi",role:"Senior Backend Engineer",style:"specialist",skillProfileId:"senior-builder",identity:"Own backend contracts, data integrity, and safe delivery under real production constraints."},"frontend-engineer":{name:"Mira",role:"Senior Frontend Engineer",style:"balanced",skillProfileId:"senior-builder",identity:"Own product-facing UI quality, interaction design fidelity, and maintainable front-end architecture.",extraSkills:k},"data-engineer":{name:"Nia",role:"Data Engineer",style:"specialist",skillProfileId:"senior-builder",identity:"Build reliable data pipelines, schemas, and transformations with a bias toward traceability."},"ml-engineer":{name:"Luca",role:"ML Engineer",style:"specialist",skillProfileId:"senior-builder",identity:"Ship model-backed systems pragmatically, with evaluation, rollback paths, and tight production feedback."},"devops-engineer":{name:"Juno",role:"DevOps Engineer",style:"specialist",skillProfileId:"senior-builder",identity:"Own delivery automation, deployment safety, and infrastructure changes that must fail predictably."},"security-engineer":{name:"Iris",role:"Security Engineer",style:"conservative",skillProfileId:"senior-builder",identity:"Harden trust boundaries, implement secure defaults, and turn vague risk into concrete engineering requirements."},"ui-designer":{name:"Theo",role:"UI Designer",style:"specialist",skillProfileId:"builder",identity:"Refine interfaces into consistent, high-signal UI systems that are practical to build and maintain.",extraSkills:[d(c,"nextjs-patterns","next.js ui flows, routing, layouts, app router"),d(c,"react-server-components","react server components, server client boundaries, data fetching placement")]},"qa-engineer":{name:"Sana",role:"QA Engineer",style:"conservative",skillProfileId:"reviewer",identity:"Find regressions early, tighten acceptance boundaries, and force evidence before release claims."},sre:{name:"Dax",role:"Site Reliability Engineer",style:"conservative",skillProfileId:"reviewer",identity:"Guard uptime, incident readiness, and operational correctness by challenging risky assumptions early."},"pen-tester":{name:"Vega",role:"Penetration Tester",style:"specialist",skillProfileId:"reviewer",identity:"Probe the system as an adversary, find exploit paths, and make the attack surface legible to builders."},"product-manager":{name:"Sage",role:"Product Manager",style:"balanced",skillProfileId:"planner",identity:"Turn ambiguous requests into scoped bets, crisp plans, and explicit tradeoffs the team can execute."},"ux-designer":{name:"Yara",role:"UX Designer",style:"balanced",skillProfileId:"planner",identity:"Clarify user intent, reduce friction in flows, and turn product goals into coherent interaction design."},"technical-writer":{name:"Orin",role:"Technical Writer",style:"balanced",skillProfileId:"planner",identity:"Turn complex implementation detail into clear docs, rollout notes, and operational guidance."},"growth-marketer":{name:"Zed",role:"Growth Marketer",style:"balanced",skillProfileId:"strategist-lead",identity:"Design growth experiments with clear hypotheses, sequencing, and measurable outcomes."},analyst:{name:"Piper",role:"Product Analyst",style:"specialist",skillProfileId:"researcher",identity:"Ground decisions in evidence, identify gaps in the brief, and surface the signal behind user behavior."},"content-writer":{name:"Wren",role:"Content Strategist",style:"balanced",skillProfileId:"researcher",identity:"Translate product and audience insight into clear narratives, launch copy, and feedback loops."},researcher:{name:"Ezra",role:"Researcher",style:"balanced",skillProfileId:"researcher",identity:"Map fast-changing domains, synthesize evidence, and surface the governing model behind decisions."},"marketing-strategist":{name:"Finn",role:"Marketing Strategist",style:"balanced",skillProfileId:"strategist-lead",identity:"Own brand positioning, campaign strategy, and channel mix with measurable conversion targets."},copywriter:{name:"Blair",role:"Copywriter",style:"balanced",skillProfileId:"researcher",identity:"Craft clear, persuasive copy that serves both the reader and the business goal."},"support-engineer":{name:"Gwen",role:"Support Engineer",style:"balanced",skillProfileId:"builder",identity:"Diagnose customer issues fast, escalate with precision, and turn patterns into preventive fixes."},"support-lead":{name:"Eli",role:"Support Lead",style:"balanced",skillProfileId:"planner",identity:"Triage incoming issues, route to the right responder, and track resolution quality."},"devrel-engineer":{name:"Milo",role:"Developer Relations Engineer",style:"balanced",skillProfileId:"senior-builder",identity:"Build sample apps, integrations, and tooling that make the platform easy to adopt."},"community-manager":{name:"Uma",role:"Community Manager",style:"balanced",skillProfileId:"planner",identity:"Grow and engage the developer community through events, content, and feedback loops."},"ops-engineer":{name:"Nate",role:"Operations Engineer",style:"specialist",skillProfileId:"senior-builder",identity:"Automate operational workflows, reduce toil, and keep internal tooling reliable."},"project-manager":{name:"Quinn",role:"Project Manager",style:"balanced",skillProfileId:"planner",identity:"Track milestones, remove blockers, and keep cross-team delivery on schedule."},"solutions-architect":{name:"Cass",role:"Solutions Architect",style:"balanced",skillProfileId:"strategist-lead",identity:"Design system-level architectures, evaluate tradeoffs, and guide teams through technical decisions."},"mobile-engineer":{name:"Rio",role:"Senior Mobile Engineer",style:"balanced",skillProfileId:"senior-builder",identity:"Ship native and cross-platform mobile experiences with attention to performance and platform conventions."}},m=["team-lead","fullstack-engineer","backend-engineer","frontend-engineer","qa-engineer","product-manager","analyst","growth-marketer","content-writer","data-engineer","ml-engineer","ux-designer","ui-designer","devops-engineer","sre","security-engineer","pen-tester","researcher","technical-writer","marketing-strategist","copywriter","support-engineer","support-lead","devrel-engineer","community-manager","ops-engineer","project-manager","solutions-architect","mobile-engineer"].map(a=>f({id:a,...l[a]}));function n(a){return f({id:a,...l[a]})}let o=[{id:"engineering",name:"Engineering",description:"Software engineering teams across all domains — pick a specialization or build your own.",icon:"hammer",agents:[n("team-lead"),n("backend-engineer"),n("frontend-engineer"),n("fullstack-engineer"),n("qa-engineer")],variants:[{id:"general",name:"General",description:"Product engineering with leadership, builders across the stack, and quality gates.",agents:[n("team-lead"),n("backend-engineer"),n("frontend-engineer"),n("fullstack-engineer"),n("qa-engineer")]},{id:"ai",name:"AI",description:"Applied AI and ML engineering for models, evaluation, and production inference.",agents:[n("team-lead"),n("ml-engineer"),n("data-engineer"),n("researcher"),n("qa-engineer")]},{id:"data",name:"Data",description:"Data platform engineering for pipelines, warehousing, and transformation reliability.",agents:[n("team-lead"),n("data-engineer"),n("qa-engineer")]},{id:"mobile",name:"Mobile",description:"Native and cross-platform mobile engineering with fullstack support.",agents:[n("team-lead"),n("mobile-engineer"),n("fullstack-engineer"),n("qa-engineer")]},{id:"infra",name:"Infrastructure",description:"Platform reliability for delivery pipelines, runtime stability, and operational safety.",agents:[n("team-lead"),n("devops-engineer"),n("sre")]},{id:"security",name:"Security",description:"Security engineering for secure defaults, hardening, and adversarial validation.",agents:[n("team-lead"),n("security-engineer"),n("pen-tester")]},{id:"solutions",name:"Solutions",description:"Architecture and integration work across systems and customer deployments.",agents:[n("team-lead"),n("solutions-architect"),n("backend-engineer"),n("devops-engineer")]}]},{id:"product",name:"Product",description:"Discovery and prioritization for product direction, scope, and validation.",icon:"clipboard-list",agents:[n("team-lead"),n("product-manager"),n("analyst")]},{id:"design",name:"Design",description:"UX and UI pairing for flows, interaction models, and polished product surfaces.",icon:"palette",agents:[n("team-lead"),n("ux-designer"),n("ui-designer")]},{id:"growth",name:"Growth",description:"Experiment and content team for acquisition, activation, and learning loops.",icon:"trending-up",agents:[n("team-lead"),n("growth-marketer"),n("content-writer")]},{id:"research",name:"Research",description:"Research and synthesis pair for investigations, briefs, and decision support.",icon:"flask-conical",agents:[n("team-lead"),n("researcher"),n("technical-writer")]},{id:"marketing",name:"Marketing",description:"Brand strategy, campaign execution, and content production.",icon:"megaphone",agents:[n("team-lead"),n("marketing-strategist"),n("copywriter"),n("content-writer")]},{id:"support",name:"Support",description:"Customer-facing support with triage, diagnosis, and escalation.",icon:"life-buoy",agents:[n("team-lead"),n("support-lead"),n("support-engineer")]},{id:"devrel",name:"Developer Relations",description:"Developer advocacy through tooling, content, and community engagement.",icon:"users",agents:[n("team-lead"),n("devrel-engineer"),n("community-manager"),n("technical-writer")]},{id:"operations",name:"Operations",description:"Internal tooling, project delivery, and cross-team coordination.",icon:"settings",agents:[n("team-lead"),n("project-manager"),n("ops-engineer")]}].map(h),p=new Map(j.map(a=>[a.id,a])),q=new Map(m.map(a=>[a.id,a]));function r(){return m.map(f)}function s(a){let b,c="string"==typeof a?function(a){if(!a)return null;let b=q.get(a);return b?f(b):null}(a):a;return c?[...(b=function(a){if(!a)return null;let b=p.get(a);return b?{id:b.id,skills:b.skills.map(e)}:null}(c.skillProfileId))?b.skills:[],...c.extraSkills?c.extraSkills.map(e):[]]:[]}function t(){return o.map(h)}o.map(a=>[a.id,a]),a.s(["getAgentPresetBindings",()=>s,"listAgentPresets",()=>r,"listTeamTemplates",()=>t])}];
2
+
3
+ //# sourceMappingURL=apps_local_3e5712aa._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[328400,a=>{"use strict";let b=(0,a.i(831709).default)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);a.s(["BookOpen",()=>b],328400)},517259,562428,a=>{"use strict";var b=a.i(831709);let c=(0,b.default)("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]);a.s(["Cpu",()=>c],517259);let d=(0,b.default)("box",[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]]);a.s(["Box",()=>d],562428)},8e4,a=>{"use strict";let b;var c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v=a.i(308316),w=a.i(786220),x=a.i(824179),y=a.i(252197),z=a.i(517259),A=a.i(562428),B=a.i(328400),C=a.i(724938),D=a.i(353532),E=a.i(89613),F=a.i(811760),G=a.i(804632),H=a.i(627421),I=a.i(86466);function J(a){let b=Object.prototype.toString.call(a);return"[object Window]"===b||"[object global]"===b}function K(a){return"nodeType"in a}function L(a){var b,c;return a?J(a)?a:K(a)&&null!=(b=null==(c=a.ownerDocument)?void 0:c.defaultView)?b:window:window}a.i(197180);w.useEffect;function M(a){return function(b){for(var c=arguments.length,d=Array(c>1?c-1:0),e=1;e<c;e++)d[e-1]=arguments[e];return d.reduce((b,c)=>{for(let[d,e]of Object.entries(c)){let c=b[d];null!=c&&(b[d]=c+a*e)}return b},{...b})}}function N(a){if(!a)return!1;let{KeyboardEvent:b}=L(a.target);return b&&a instanceof b}function O(a){if(function(a){if(!a)return!1;let{TouchEvent:b}=L(a.target);return b&&a instanceof b}(a)){if(a.touches&&a.touches.length){let{clientX:b,clientY:c}=a.touches[0];return{x:b,y:c}}else if(a.changedTouches&&a.changedTouches.length){let{clientX:b,clientY:c}=a.changedTouches[0];return{x:b,y:c}}}return"clientX"in a&&"clientY"in a?{x:a.clientX,y:a.clientY}:null}let P=Object.freeze({Translate:{toString(a){if(!a)return;let{x:b,y:c}=a;return"translate3d("+(b?Math.round(b):0)+"px, "+(c?Math.round(c):0)+"px, 0)"}},Scale:{toString(a){if(!a)return;let{scaleX:b,scaleY:c}=a;return"scaleX("+b+") scaleY("+c+")"}},Transform:{toString(a){if(a)return[P.Translate.toString(a),P.Scale.toString(a)].join(" ")}},Transition:{toString(a){let{property:b,duration:c,easing:d}=a;return b+" "+c+"ms "+d}}});function Q(){}(c=l||(l={})).DragStart="dragStart",c.DragMove="dragMove",c.DragEnd="dragEnd",c.DragCancel="dragCancel",c.DragOver="dragOver",c.RegisterDroppable="registerDroppable",c.SetDroppableDisabled="setDroppableDisabled",c.UnregisterDroppable="unregisterDroppable";let R=Object.freeze({x:0,y:0}),S={ignoreTransform:!1};function T(a,b){void 0===b&&(b=S);let c=a.getBoundingClientRect();if(b.ignoreTransform){let{transform:b,transformOrigin:d}=L(a).getComputedStyle(a);b&&(c=function(a,b,c){let d=function(a){if(a.startsWith("matrix3d(")){let b=a.slice(9,-1).split(/, /);return{x:+b[12],y:+b[13],scaleX:+b[0],scaleY:+b[5]}}if(a.startsWith("matrix(")){let b=a.slice(7,-1).split(/, /);return{x:+b[4],y:+b[5],scaleX:+b[0],scaleY:+b[3]}}return null}(b);if(!d)return a;let{scaleX:e,scaleY:f,x:g,y:h}=d,i=a.left-g-(1-e)*parseFloat(c),j=a.top-h-(1-f)*parseFloat(c.slice(c.indexOf(" ")+1)),k=e?a.width/e:a.width,l=f?a.height/f:a.height;return{width:k,height:l,top:j,right:i+k,bottom:j+l,left:i}}(c,b,d))}let{top:d,left:e,width:f,height:g,bottom:h,right:i}=c;return{top:d,left:e,width:f,height:g,bottom:h,right:i}}function U(a){return T(a,{ignoreTransform:!0})}function V(a){return J(a)?a.scrollX:a.scrollLeft}function W(a){return J(a)?a.scrollY:a.scrollTop}(d=m||(m={}))[d.Forward=1]="Forward",d[d.Backward=-1]="Backward";(e=n||(n={})).Click="click",e.DragStart="dragstart",e.Keydown="keydown",e.ContextMenu="contextmenu",e.Resize="resize",e.SelectionChange="selectionchange",e.VisibilityChange="visibilitychange",(f=o||(o={})).Space="Space",f.Down="ArrowDown",f.Right="ArrowRight",f.Left="ArrowLeft",f.Up="ArrowUp",f.Esc="Escape",f.Enter="Enter",f.Tab="Tab";o.Space,o.Enter,o.Esc,o.Space,o.Enter,o.Tab;(g=p||(p={}))[g.RightClick=2]="RightClick";(h=q||(q={}))[h.Pointer=0]="Pointer",h[h.DraggableRect=1]="DraggableRect",(i=r||(r={}))[i.TreeOrder=0]="TreeOrder",i[i.ReversedTreeOrder=1]="ReversedTreeOrder",m.Backward,m.Forward,m.Backward,m.Forward,(j=s||(s={}))[j.Always=0]="Always",j[j.BeforeDragging=1]="BeforeDragging",j[j.WhileDragging=2]="WhileDragging",(t||(t={})).Optimized="optimized";let X={draggable:{measure:U},droppable:{measure:U,strategy:s.WhileDragging,frequency:t.Optimized},dragOverlay:{measure:T}};class Y extends Map{get(a){var b;return null!=a&&null!=(b=super.get(a))?b:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter(a=>{let{disabled:b}=a;return!b})}getNodeFor(a){var b,c;return null!=(b=null==(c=this.get(a))?void 0:c.node.current)?b:void 0}}let Z={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new Y,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:Q},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:X,measureDroppableContainers:Q,windowRect:null,measuringScheduled:!1},$={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:""},dispatch:Q,draggableNodes:new Map,over:null,measureDroppableContainers:Q},_=(0,w.createContext)($),aa=(0,w.createContext)({...R,scaleX:1,scaleY:1});(k=u||(u={}))[k.Uninitialized=0]="Uninitialized",k[k.Initializing=1]="Initializing",k[k.Initialized=2]="Initialized";let ab={position:"fixed",touchAction:"none"},ac=a=>N(a)?"transform 250ms ease":void 0;b={styles:{active:{opacity:"0"}}},o.Down,o.Right,o.Up,o.Left;var ad=a.i(766412);function ae(a,b=32,c){let d=`https://api.dicebear.com/9.x/bottts-neutral/svg?seed=${encodeURIComponent(a)}&size=${b}`;if(!c)return d;let e=c.replace("#","");return`${d}&backgroundColor=${e}`}a.i(529889);let af=["claude","ollama","gemini","codex","zai"];function ag(a){return(a??[]).map(a=>a.condition?.trim()?`${a.file} | ${a.condition}`:a.file).join("\n")}function ah(a){return a.split("\n").map(a=>a.trim()).filter(Boolean).map(a=>{let[b,...c]=a.split("|");return{file:b.trim(),condition:c.join("|").trim()}}).filter(a=>a.file.length>0)}function ai(a,b){return JSON.stringify({name:a.name,...a.roleId?{roleId:a.roleId}:{},...a.role?{role:a.role}:{},provider:a.provider,model:a.model,identity:a.identity,color:a.color??"#6B7280",skills:a.skills??[],skillBindings:a.skillBindings??[],...b?{projectIds:b}:{}},null,2)}function aj({title:a,initial:b,submitLabel:c,onSubmit:d,onCancel:e,projects:f,initialProjectIds:g,agentId:h,projectMemberships:i,onAddToProject:j,onRemoveFromProject:k,roleOptions:l,roleLabel:m="Role",onRolePresetChange:n}){let[o,p]=(0,w.useState)(b.name),[q,r]=(0,w.useState)(b.roleId??""),[s,t]=(0,w.useState)(b.role??""),[u,J]=(0,w.useState)(b.provider),[K,L]=(0,w.useState)(b.model),[M,N]=(0,w.useState)(b.identity),[O,P]=(0,w.useState)(b.color??"#6B7280"),[Q,R]=(0,w.useState)(ag(b.skills)),[S,T]=(0,w.useState)(new Set(g??[])),[U,V]=(0,w.useState)("form"),[W,X]=(0,w.useState)(()=>ai(b,f?g??[]:void 0)),[Y,Z]=(0,w.useState)(null),[$,_]=(0,w.useState)(!1),[aa,ab]=(0,w.useState)([]),[ac,aj]=(0,w.useState)(""),[ak,al]=(0,w.useState)(!1),[am,an]=(0,w.useState)(b.skillBindings??[]),ao=(0,w.useRef)(null),ap=(0,w.useRef)(null),aq=!!(l&&l.length>0),ar=h||o.trim()||b.name||"agent";(0,w.useEffect)(()=>{let a=a=>{ap.current&&!ap.current.contains(a.target)&&e()},b=setTimeout(()=>document.addEventListener("pointerdown",a),0);return()=>{clearTimeout(b),document.removeEventListener("pointerdown",a)}},[ap,e]),(0,w.useEffect)(()=>{if(!ak)return;let a=a=>{ao.current&&!ao.current.contains(a.target)&&al(!1)};return document.addEventListener("pointerdown",a),()=>document.removeEventListener("pointerdown",a)},[ak]),(0,w.useEffect)(()=>{"form"===U&&X(ai({name:o,...aq&&q?{roleId:q}:{},role:s,provider:u,model:K,identity:M,color:O,skills:ah(Q),skillBindings:am},f?Array.from(S):void 0))},[U,o,q,aq,s,u,K,M,O,Q,am,S,f]),(0,w.useEffect)(()=>{if(!$)return;let a=window.setTimeout(()=>_(!1),1200);return()=>window.clearTimeout(a)},[$]),(0,w.useEffect)(()=>{let a=!1;return async function(){try{let b=await fetch("/api/skills");if(!b.ok)return;let c=await b.json();if(a)return;let d=Array.isArray(c.skills)?c.skills.filter(a=>!!a&&"object"==typeof a).map(a=>({skillId:String(a.skillId??"").trim(),repo:String(a.repo??"").trim(),name:String(a.name??a.skillId??"").trim()})).filter(a=>a.skillId.length>0&&a.repo.length>0):[];ab(d)}catch{a||ab([])}}(),()=>{a=!0}},[]);let as=(a,b)=>{let c=f?(b??[]).filter(a=>f.some(b=>b.id===a)):void 0;return p(a.name),r(a.roleId??""),t(a.role??""),J(a.provider),L(a.model),N(a.identity),P(a.color??"#6B7280"),R(ag(a.skills)),an(a.skillBindings??[]),f&&T(new Set(c??[])),X(ai(a,f?c??[]:void 0)),Z(null),c},at=a=>{let b=function(a,b){let c;try{c=JSON.parse(a)}catch{throw Error("JSON is invalid.")}if(!c||"object"!=typeof c||Array.isArray(c))throw Error("JSON must be an object.");let d=c,e="string"==typeof d.provider?d.provider:b,f=af.includes(e)?e:b,g=(Array.isArray(d.skills)?d.skills:[]).flatMap(a=>{if("string"==typeof a){let[b,...c]=a.split("|"),d=b.trim();return d?[{file:d,condition:c.join("|").trim()}]:[]}if(!a||"object"!=typeof a||Array.isArray(a))return[];let b="string"==typeof a.file?a.file.trim():"";return b?[{file:b,condition:"string"==typeof a.condition?a.condition.trim():""}]:[]}),h=Array.isArray(d.projectIds)?d.projectIds.filter(a=>"string"==typeof a&&a.trim().length>0):void 0,i=(Array.isArray(d.skillBindings)?d.skillBindings:[]).flatMap(a=>{if(!a||"object"!=typeof a||Array.isArray(a))return[];let b="string"==typeof a.repo?a.repo.trim():"",c="string"==typeof a.skillId?a.skillId.trim():"";return b&&c?[{repo:b,skillId:c,condition:"string"==typeof a.condition?a.condition.trim():""}]:[]});return{data:{name:"string"==typeof d.name?d.name:"",roleId:"string"==typeof d.roleId?d.roleId:void 0,role:"string"==typeof d.role?d.role:"",provider:f,model:"string"==typeof d.model?d.model:"",identity:"string"==typeof d.identity?d.identity:"",color:"string"==typeof d.color&&d.color.trim()?d.color:"#6B7280",skills:g,skillBindings:i},projectIds:h}}(a,u),c=as(b.data,b.projectIds);return{...b,projectIds:c}},au=()=>{if("form"!==U)try{at(W),V("form")}catch(a){Z(a instanceof Error?a.message:"Unable to parse JSON.")}},av=async()=>{try{await navigator.clipboard.writeText(W),_(!0)}catch{_(!1)}},aw=(0,w.useMemo)(()=>{let a=ac.trim().toLowerCase();return a?aa.filter(b=>[b.name,b.skillId,b.repo].some(b=>b.toLowerCase().includes(a))).slice(0,50):aa.slice(0,50)},[aa,ac]),ax=(0,w.useMemo)(()=>new Set(am.map(a=>`${a.repo}::${a.skillId}`)),[am]);return(0,v.jsx)("div",{ref:ap,className:"fixed inset-0 z-[100] flex items-center justify-center p-4 bg-black/30 backdrop-blur-sm",onKeyDown:a=>{"Escape"===a.key&&e()},children:(0,v.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-[32px] shadow-2xl overflow-hidden w-full max-w-2xl max-h-[90vh] flex flex-col animate-in fade-in zoom-in duration-300",children:[(0,v.jsxs)("div",{className:"px-8 pt-8 pb-4 shrink-0 flex items-center justify-between",children:[(0,v.jsxs)("div",{className:"flex items-center gap-4",children:[(0,v.jsxs)("div",{className:"flex flex-col items-center gap-1.5",children:[(0,v.jsx)("img",{src:ae(ar,64,O),alt:o,className:"w-14 h-14 rounded-full bg-[var(--muted)]"}),(0,v.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,v.jsx)("label",{className:"text-[10px] text-[var(--muted-foreground)]",children:"Color"}),(0,v.jsx)("input",{type:"color",value:O,onChange:a=>P(a.target.value),className:"w-5 h-5 rounded border border-[var(--border)] cursor-pointer p-0"})]})]}),(0,v.jsxs)("div",{children:[(0,v.jsx)("h2",{className:"text-[10px] font-bold tracking-widest text-[var(--muted-foreground)] uppercase",children:a}),(0,v.jsx)("h1",{className:"text-2xl font-semibold mt-1",children:o||"Configure Agent"})]})]}),(0,v.jsx)("button",{onClick:e,className:"p-2 text-[var(--muted-foreground)] hover:text-[var(--muted-foreground)] hover:bg-[var(--muted)] rounded-full transition-all",children:(0,v.jsx)(x.X,{size:20})})]}),(0,v.jsxs)("div",{className:"px-8 pb-8 space-y-6 overflow-y-auto",children:[(0,v.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,v.jsxs)("div",{className:"inline-flex rounded-xl bg-[var(--muted)] p-1",children:[(0,v.jsx)("button",{type:"button",onClick:au,className:"form"===U?"px-3 py-1.5 text-xs font-semibold rounded-lg bg-[var(--card-bg)] text-[var(--foreground)] shadow-sm":"px-3 py-1.5 text-xs font-semibold rounded-lg text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:"Form"}),(0,v.jsx)("button",{type:"button",onClick:()=>{X(ai({name:o,...aq&&q?{roleId:q}:{},role:s,provider:u,model:K,identity:M,color:O,skills:ah(Q),skillBindings:am},f?Array.from(S):void 0)),Z(null),V("json")},className:"json"===U?"px-3 py-1.5 text-xs font-semibold rounded-lg bg-[var(--card-bg)] text-[var(--foreground)] shadow-sm":"px-3 py-1.5 text-xs font-semibold rounded-lg text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:"JSON"})]}),"json"===U&&(0,v.jsxs)("button",{type:"button",onClick:av,className:"inline-flex items-center gap-1.5 px-3 py-1.5 text-xs font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)] rounded-lg transition-colors",children:[$?(0,v.jsx)(H.Check,{size:14,className:"text-emerald-500"}):(0,v.jsx)(G.Copy,{size:14}),$?"Copied":"Copy"]})]}),"form"===U?(0,v.jsxs)(v.Fragment,{children:[(0,v.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,v.jsxs)("div",{className:"space-y-2",children:[(0,v.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,v.jsx)(y.User,{size:16})," Name"]}),(0,v.jsx)("input",{type:"text",value:o,onChange:a=>p(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. Ada, Kai, Sage...",autoFocus:!0})]}),aq?(0,v.jsxs)("div",{className:"space-y-2",children:[(0,v.jsx)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:m}),(0,v.jsx)(ad.default,{options:l??[],value:q||null,onChange:a=>{if(!aq)return;let b={name:o,roleId:a,role:s,provider:u,model:K,identity:M,color:O,skills:ah(Q),skillBindings:am},c=n?.(a,b);c?as({...c,roleId:a},f?Array.from(S):void 0):r(a)},placeholder:"Select a role preset..."})]}):(0,v.jsxs)("div",{className:"space-y-2",children:[(0,v.jsx)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:"Role"}),(0,v.jsx)("input",{type:"text",value:s,onChange:a=>t(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. Senior Backend Engineer"})]})]}),(0,v.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,v.jsxs)("div",{className:"space-y-2",children:[(0,v.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,v.jsx)(A.Box,{size:16})," Provider"]}),(0,v.jsxs)("div",{className:"relative",children:[(0,v.jsxs)("select",{value:u,onChange:a=>J(a.target.value),className:"w-full appearance-none px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all pr-10 cursor-pointer",children:[(0,v.jsx)("option",{value:"claude",children:"Claude"}),(0,v.jsx)("option",{value:"ollama",children:"Ollama"}),(0,v.jsx)("option",{value:"gemini",children:"Gemini"}),(0,v.jsx)("option",{value:"codex",children:"Codex"}),(0,v.jsx)("option",{value:"zai",children:"Z.AI"})]}),(0,v.jsx)(F.ChevronDown,{className:"absolute right-3 top-1/2 -translate-y-1/2 text-[var(--muted-foreground)] pointer-events-none",size:16})]})]}),(0,v.jsxs)("div",{className:"space-y-2",children:[(0,v.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,v.jsx)(z.Cpu,{size:16})," Model"]}),(0,v.jsx)("input",{type:"text",value:K,onChange:a=>L(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all font-mono text-sm",placeholder:"e.g. claude-sonnet-4-6"})]})]}),(0,v.jsxs)("div",{className:"space-y-2",children:[(0,v.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,v.jsx)(B.BookOpen,{size:16})," Identity"]}),(0,v.jsx)("div",{className:"border border-[var(--border)] rounded-xl overflow-hidden bg-[var(--app-shell-subtle)] focus-within:ring-2 focus-within:ring-indigo-500/20 focus-within:border-indigo-500 transition-all",children:(0,v.jsx)(I.default,{content:M,onChange:a=>N(a),placeholder:"You are a ..."})}),(0,v.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Identity defines who the agent is. Keep portable knowledge separate below; project and repo knowledge belong on their scoped surfaces."})]}),(0,v.jsxs)("div",{className:"space-y-2",children:[(0,v.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,v.jsx)(C.Sparkles,{size:16})," Portable Knowledge"]}),(0,v.jsxs)("div",{className:"rounded-xl border border-[var(--border)] bg-[var(--app-shell-subtle)] p-3 space-y-3",children:[(0,v.jsx)("div",{className:"flex items-center justify-between gap-3",children:(0,v.jsxs)("div",{children:[(0,v.jsx)("p",{className:"text-xs font-semibold text-[var(--foreground)]",children:"Skills Picker"}),(0,v.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)]",children:"Pick a skill here. AGX will install it later only if the run actually needs it."})]})}),aa.length>0?(0,v.jsxs)(v.Fragment,{children:[(0,v.jsxs)("div",{className:"relative",ref:ao,children:[(0,v.jsxs)("button",{type:"button",onClick:()=>al(a=>!a),className:"w-full flex items-center justify-between px-3 py-2 rounded-xl border border-[var(--border)] bg-[var(--card-bg)] text-sm font-medium hover:border-indigo-500",children:[(0,v.jsx)("span",{className:"truncate text-left",children:"Search and add skills"}),(0,v.jsx)(F.ChevronDown,{size:16,className:`shrink-0 text-[var(--muted-foreground)] transition-transform ${ak?"rotate-180":""}`})]}),ak&&(0,v.jsxs)("div",{className:"absolute left-0 right-0 top-full mt-2 z-30 rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] shadow-lg overflow-hidden",children:[(0,v.jsx)("div",{className:"p-2 border-b border-[var(--border)]",children:(0,v.jsx)("input",{type:"text",value:ac,onChange:a=>aj(a.target.value),placeholder:"Search skills",className:"w-full px-3 py-2 bg-[var(--card-bg)] border border-[var(--border)] rounded-lg text-sm focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500",autoFocus:!0})}),(0,v.jsx)("div",{className:"max-h-64 overflow-y-auto",children:aw.length>0?aw.map(a=>{let b=`${a.repo}::${a.skillId}`,c=ax.has(b);return(0,v.jsx)("button",{type:"button",className:`w-full px-3 py-2 text-left text-sm transition-colors ${c?"bg-emerald-50 text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onMouseDown:a=>a.preventDefault(),onClick:()=>{var b,c;return b=a.repo,c=a.skillId,void(an(a=>a.some(a=>a.repo===b&&a.skillId===c)?a.filter(a=>a.repo!==b||a.skillId!==c):[...a,{repo:b,skillId:c}]),aj(""))},children:(0,v.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,v.jsxs)("div",{className:"min-w-0",children:[(0,v.jsx)("div",{className:"font-medium",children:a.name||a.skillId}),(0,v.jsx)("div",{className:"text-[11px] text-[var(--muted-foreground)]",children:a.repo})]}),c&&(0,v.jsx)("span",{className:"shrink-0 rounded-full bg-emerald-100 px-2 py-0.5 text-[10px] font-semibold text-emerald-700",children:"Added"})]})},b)}):(0,v.jsx)("div",{className:"px-3 py-3 text-sm text-[var(--muted-foreground)]",children:"No matching skills."})})]})]}),(0,v.jsxs)("div",{className:"flex flex-wrap gap-2",children:[am.map(a=>(0,v.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-full bg-emerald-50 text-emerald-700 border border-emerald-200 px-2.5 py-1 text-[11px] font-medium",children:[a.skillId,(0,v.jsx)("button",{type:"button",onClick:()=>{var b,c;return b=a.repo,c=a.skillId,void an(a=>a.filter(a=>a.repo!==b||a.skillId!==c))},className:"text-emerald-700/70 hover:text-emerald-900",title:`Remove ${a.skillId}`,children:(0,v.jsx)(x.X,{size:12})})]},`${a.repo}::${a.skillId}`)),0===am.length&&(0,v.jsx)("span",{className:"text-[11px] text-[var(--muted-foreground)]",children:"No library skills selected yet."})]})]}):(0,v.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)]",children:"No catalog skills available right now."})]}),(0,v.jsx)("textarea",{value:Q,onChange:a=>R(a.target.value),rows:5,className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all font-mono text-xs",placeholder:"one/path/to/skill.md\npath/to/skill.md | when coding in TypeScript"}),(0,v.jsxs)("p",{className:"text-xs text-[var(--muted-foreground)]",children:["Portable agent knowledge only. One reference per line. Use ",(0,v.jsx)("code",{children:"|"})," to add an optional condition."]})]}),f&&f.length>0&&(0,v.jsxs)("div",{className:"space-y-3",children:[(0,v.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,v.jsx)(E.FolderOpen,{size:16})," Assign To Projects"]}),(0,v.jsx)("div",{className:"space-y-1 max-h-[160px] overflow-y-auto",children:f.map(a=>{let b=S.has(a.id);return(0,v.jsxs)("button",{type:"button",className:b?"w-full flex items-center gap-3 px-3 py-2 rounded-lg text-sm transition-colors bg-indigo-50 text-indigo-700":"w-full flex items-center gap-3 px-3 py-2 rounded-lg text-sm transition-colors text-[var(--muted-foreground)] hover:bg-[var(--app-shell-subtle)]",onClick:()=>T(b=>{let c=new Set(b);return c.has(a.id)?c.delete(a.id):c.add(a.id),c}),children:[(0,v.jsx)("div",{className:b?"w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center bg-indigo-600 border-indigo-600":"w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center border-[var(--border)]",children:b&&(0,v.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,v.jsx)("path",{d:"M2 5l2 2 4-4",stroke:"white",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,v.jsx)("span",{className:"text-xs font-medium text-left",children:a.label??a.name})]},a.id)})})]}),i&&(0,v.jsxs)("div",{className:"space-y-3",children:[(0,v.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,v.jsx)(E.FolderOpen,{size:16})," Project Memberships"]}),i.current.length>0?(0,v.jsx)("div",{className:"flex flex-col gap-1",children:i.current.map(a=>(0,v.jsxs)("div",{className:"flex items-center gap-2 text-xs bg-[var(--app-shell-subtle)] rounded-lg px-3 py-2",children:[(0,v.jsx)(E.FolderOpen,{size:12,className:"text-[var(--muted-foreground)] shrink-0"}),(0,v.jsx)("span",{className:"truncate flex-1",children:a.name}),k&&!a.is_default&&(0,v.jsx)("button",{type:"button",className:"text-[var(--muted-foreground)] hover:text-red-500 transition-colors",onClick:()=>k(a.id),title:"Remove from project",children:(0,v.jsx)(x.X,{size:12})})]},a.id))}):(0,v.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] italic",children:"Not assigned to any projects"}),i.available.length>0&&j&&(0,v.jsx)("div",{className:"flex flex-wrap gap-1",children:i.available.map(a=>(0,v.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1 text-[10px] px-2 py-1 rounded-lg border border-dashed border-[var(--border)] text-[var(--muted-foreground)] hover:border-[var(--border)] hover:text-[var(--foreground)] transition-colors",onClick:()=>j(a.id),children:[(0,v.jsx)(D.Plus,{size:10}),a.name]},a.id))})]})]}):(0,v.jsxs)("div",{className:"space-y-3",children:[(0,v.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,v.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Paste agent JSON here. Switching back to Form or saving will apply valid JSON to the form state."}),(0,v.jsx)("button",{type:"button",onClick:au,className:"px-3 py-1.5 text-xs font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)] rounded-lg transition-colors",children:"Apply to Form"})]}),(0,v.jsx)("textarea",{value:W,onChange:a=>{X(a.target.value),Y&&Z(null)},rows:22,className:"w-full px-4 py-3 bg-[var(--app-shell-bg)] text-[var(--foreground)] border border-[var(--app-shell-border)] rounded-2xl focus:outline-none focus:ring-2 focus:ring-[var(--ring)] focus:border-[var(--primary)] transition-all font-mono text-xs",spellCheck:!1,autoFocus:!0}),Y&&(0,v.jsx)("p",{className:"text-xs text-red-500",children:Y})]}),(0,v.jsxs)("div",{className:"flex items-center justify-end gap-3 pt-4 border-t border-[var(--border)]",children:[(0,v.jsx)("button",{onClick:e,className:"px-6 py-2.5 text-sm font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)] rounded-xl transition-all",children:"Cancel"}),(0,v.jsx)("button",{onClick:()=>{let a=o.trim(),b=q,c=s.trim(),e=u,g=K.trim(),h=M.trim(),i=O,j=ah(Q),k=am,l=f?Array.from(S):void 0;if("json"===U)try{let d=at(W);a=d.data.name.trim(),b=d.data.roleId??"",c=(d.data.role??"").trim(),e=d.data.provider,g=d.data.model.trim(),h=d.data.identity.trim(),i=d.data.color??"#6B7280",j=d.data.skills??[],k=d.data.skillBindings??[],l=f?d.projectIds??[]:void 0}catch(a){Z(a instanceof Error?a.message:"Unable to parse JSON.");return}a&&g&&d({name:a,...aq&&b?{roleId:b}:{},role:c||void 0,provider:e,model:g,identity:h,color:i,skills:j,skillBindings:k},l)},disabled:"form"===U&&(!o.trim()||!K.trim()),className:"px-8 py-2.5 bg-indigo-600 text-white text-sm font-semibold rounded-xl shadow-[0_4px_12px_rgba(79,70,229,0.3)] hover:bg-indigo-700 active:scale-95 disabled:opacity-50 transition-all font-bold",children:c})]})]})]})})}a.s(["AgentForm",()=>aj,"agentAvatarUrl",()=>ae],8e4)}];
1
+ module.exports=[328400,a=>{"use strict";let b=(0,a.i(831709).default)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);a.s(["BookOpen",()=>b],328400)},517259,562428,a=>{"use strict";var b=a.i(831709);let c=(0,b.default)("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]);a.s(["Cpu",()=>c],517259);let d=(0,b.default)("box",[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]]);a.s(["Box",()=>d],562428)},8e4,a=>{"use strict";var b=a.i(308316),c=a.i(786220),d=a.i(824179),e=a.i(252197),f=a.i(517259),g=a.i(562428),h=a.i(328400),i=a.i(724938),j=a.i(353532),k=a.i(89613),l=a.i(811760),m=a.i(804632),n=a.i(627421),o=a.i(86466),p=a.i(749741);a.i(214512),p.KeyboardCode.Down,p.KeyboardCode.Right,p.KeyboardCode.Up,p.KeyboardCode.Left;var q=a.i(766412);function r(a,b=32,c){let d=`https://api.dicebear.com/9.x/bottts-neutral/svg?seed=${encodeURIComponent(a)}&size=${b}`;if(!c)return d;let e=c.replace("#","");return`${d}&backgroundColor=${e}`}a.i(529889);let s=["claude","ollama","gemini","codex","zai"];function t(a){return(a??[]).map(a=>a.condition?.trim()?`${a.file} | ${a.condition}`:a.file).join("\n")}function u(a){return a.split("\n").map(a=>a.trim()).filter(Boolean).map(a=>{let[b,...c]=a.split("|");return{file:b.trim(),condition:c.join("|").trim()}}).filter(a=>a.file.length>0)}function v(a,b){return JSON.stringify({name:a.name,...a.roleId?{roleId:a.roleId}:{},...a.role?{role:a.role}:{},provider:a.provider,model:a.model,identity:a.identity,color:a.color??"#6B7280",skills:a.skills??[],skillBindings:a.skillBindings??[],...b?{projectIds:b}:{}},null,2)}function w({title:a,initial:p,submitLabel:w,onSubmit:x,onCancel:y,projects:z,initialProjectIds:A,agentId:B,projectMemberships:C,onAddToProject:D,onRemoveFromProject:E,roleOptions:F,roleLabel:G="Role",onRolePresetChange:H}){let[I,J]=(0,c.useState)(p.name),[K,L]=(0,c.useState)(p.roleId??""),[M,N]=(0,c.useState)(p.role??""),[O,P]=(0,c.useState)(p.provider),[Q,R]=(0,c.useState)(p.model),[S,T]=(0,c.useState)(p.identity),[U,V]=(0,c.useState)(p.color??"#6B7280"),[W,X]=(0,c.useState)(t(p.skills)),[Y,Z]=(0,c.useState)(new Set(A??[])),[$,_]=(0,c.useState)("form"),[aa,ab]=(0,c.useState)(()=>v(p,z?A??[]:void 0)),[ac,ad]=(0,c.useState)(null),[ae,af]=(0,c.useState)(!1),[ag,ah]=(0,c.useState)([]),[ai,aj]=(0,c.useState)(""),[ak,al]=(0,c.useState)(!1),[am,an]=(0,c.useState)(p.skillBindings??[]),ao=(0,c.useRef)(null),ap=(0,c.useRef)(null),aq=!!(F&&F.length>0),ar=B||I.trim()||p.name||"agent";(0,c.useEffect)(()=>{let a=a=>{ap.current&&!ap.current.contains(a.target)&&y()},b=setTimeout(()=>document.addEventListener("pointerdown",a),0);return()=>{clearTimeout(b),document.removeEventListener("pointerdown",a)}},[ap,y]),(0,c.useEffect)(()=>{if(!ak)return;let a=a=>{ao.current&&!ao.current.contains(a.target)&&al(!1)};return document.addEventListener("pointerdown",a),()=>document.removeEventListener("pointerdown",a)},[ak]),(0,c.useEffect)(()=>{"form"===$&&ab(v({name:I,...aq&&K?{roleId:K}:{},role:M,provider:O,model:Q,identity:S,color:U,skills:u(W),skillBindings:am},z?Array.from(Y):void 0))},[$,I,K,aq,M,O,Q,S,U,W,am,Y,z]),(0,c.useEffect)(()=>{if(!ae)return;let a=window.setTimeout(()=>af(!1),1200);return()=>window.clearTimeout(a)},[ae]),(0,c.useEffect)(()=>{let a=!1;return async function(){try{let b=await fetch("/api/skills");if(!b.ok)return;let c=await b.json();if(a)return;let d=Array.isArray(c.skills)?c.skills.filter(a=>!!a&&"object"==typeof a).map(a=>({skillId:String(a.skillId??"").trim(),repo:String(a.repo??"").trim(),name:String(a.name??a.skillId??"").trim()})).filter(a=>a.skillId.length>0&&a.repo.length>0):[];ah(d)}catch{a||ah([])}}(),()=>{a=!0}},[]);let as=(a,b)=>{let c=z?(b??[]).filter(a=>z.some(b=>b.id===a)):void 0;return J(a.name),L(a.roleId??""),N(a.role??""),P(a.provider),R(a.model),T(a.identity),V(a.color??"#6B7280"),X(t(a.skills)),an(a.skillBindings??[]),z&&Z(new Set(c??[])),ab(v(a,z?c??[]:void 0)),ad(null),c},at=a=>{let b=function(a,b){let c;try{c=JSON.parse(a)}catch{throw Error("JSON is invalid.")}if(!c||"object"!=typeof c||Array.isArray(c))throw Error("JSON must be an object.");let d=c,e="string"==typeof d.provider?d.provider:b,f=s.includes(e)?e:b,g=(Array.isArray(d.skills)?d.skills:[]).flatMap(a=>{if("string"==typeof a){let[b,...c]=a.split("|"),d=b.trim();return d?[{file:d,condition:c.join("|").trim()}]:[]}if(!a||"object"!=typeof a||Array.isArray(a))return[];let b="string"==typeof a.file?a.file.trim():"";return b?[{file:b,condition:"string"==typeof a.condition?a.condition.trim():""}]:[]}),h=Array.isArray(d.projectIds)?d.projectIds.filter(a=>"string"==typeof a&&a.trim().length>0):void 0,i=(Array.isArray(d.skillBindings)?d.skillBindings:[]).flatMap(a=>{if(!a||"object"!=typeof a||Array.isArray(a))return[];let b="string"==typeof a.repo?a.repo.trim():"",c="string"==typeof a.skillId?a.skillId.trim():"";return b&&c?[{repo:b,skillId:c,condition:"string"==typeof a.condition?a.condition.trim():""}]:[]});return{data:{name:"string"==typeof d.name?d.name:"",roleId:"string"==typeof d.roleId?d.roleId:void 0,role:"string"==typeof d.role?d.role:"",provider:f,model:"string"==typeof d.model?d.model:"",identity:"string"==typeof d.identity?d.identity:"",color:"string"==typeof d.color&&d.color.trim()?d.color:"#6B7280",skills:g,skillBindings:i},projectIds:h}}(a,O),c=as(b.data,b.projectIds);return{...b,projectIds:c}},au=()=>{if("form"!==$)try{at(aa),_("form")}catch(a){ad(a instanceof Error?a.message:"Unable to parse JSON.")}},av=async()=>{try{await navigator.clipboard.writeText(aa),af(!0)}catch{af(!1)}},aw=(0,c.useMemo)(()=>{let a=ai.trim().toLowerCase();return a?ag.filter(b=>[b.name,b.skillId,b.repo].some(b=>b.toLowerCase().includes(a))).slice(0,50):ag.slice(0,50)},[ag,ai]),ax=(0,c.useMemo)(()=>new Set(am.map(a=>`${a.repo}::${a.skillId}`)),[am]);return(0,b.jsx)("div",{ref:ap,className:"fixed inset-0 z-[100] flex items-center justify-center p-4 bg-black/30 backdrop-blur-sm",onKeyDown:a=>{"Escape"===a.key&&y()},children:(0,b.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-[32px] shadow-2xl overflow-hidden w-full max-w-2xl max-h-[90vh] flex flex-col animate-in fade-in zoom-in duration-300",children:[(0,b.jsxs)("div",{className:"px-8 pt-8 pb-4 shrink-0 flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"flex items-center gap-4",children:[(0,b.jsxs)("div",{className:"flex flex-col items-center gap-1.5",children:[(0,b.jsx)("img",{src:r(ar,64,U),alt:I,className:"w-14 h-14 rounded-full bg-[var(--muted)]"}),(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("label",{className:"text-[10px] text-[var(--muted-foreground)]",children:"Color"}),(0,b.jsx)("input",{type:"color",value:U,onChange:a=>V(a.target.value),className:"w-5 h-5 rounded border border-[var(--border)] cursor-pointer p-0"})]})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("h2",{className:"text-[10px] font-bold tracking-widest text-[var(--muted-foreground)] uppercase",children:a}),(0,b.jsx)("h1",{className:"text-2xl font-semibold mt-1",children:I||"Configure Agent"})]})]}),(0,b.jsx)("button",{onClick:y,className:"p-2 text-[var(--muted-foreground)] hover:text-[var(--muted-foreground)] hover:bg-[var(--muted)] rounded-full transition-all",children:(0,b.jsx)(d.X,{size:20})})]}),(0,b.jsxs)("div",{className:"px-8 pb-8 space-y-6 overflow-y-auto",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,b.jsxs)("div",{className:"inline-flex rounded-xl bg-[var(--muted)] p-1",children:[(0,b.jsx)("button",{type:"button",onClick:au,className:"form"===$?"px-3 py-1.5 text-xs font-semibold rounded-lg bg-[var(--card-bg)] text-[var(--foreground)] shadow-sm":"px-3 py-1.5 text-xs font-semibold rounded-lg text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:"Form"}),(0,b.jsx)("button",{type:"button",onClick:()=>{ab(v({name:I,...aq&&K?{roleId:K}:{},role:M,provider:O,model:Q,identity:S,color:U,skills:u(W),skillBindings:am},z?Array.from(Y):void 0)),ad(null),_("json")},className:"json"===$?"px-3 py-1.5 text-xs font-semibold rounded-lg bg-[var(--card-bg)] text-[var(--foreground)] shadow-sm":"px-3 py-1.5 text-xs font-semibold rounded-lg text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:"JSON"})]}),"json"===$&&(0,b.jsxs)("button",{type:"button",onClick:av,className:"inline-flex items-center gap-1.5 px-3 py-1.5 text-xs font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)] rounded-lg transition-colors",children:[ae?(0,b.jsx)(n.Check,{size:14,className:"text-emerald-500"}):(0,b.jsx)(m.Copy,{size:14}),ae?"Copied":"Copy"]})]}),"form"===$?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(e.User,{size:16})," Name"]}),(0,b.jsx)("input",{type:"text",value:I,onChange:a=>J(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. Ada, Kai, Sage...",autoFocus:!0})]}),aq?(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:G}),(0,b.jsx)(q.default,{options:F??[],value:K||null,onChange:a=>{if(!aq)return;let b={name:I,roleId:a,role:M,provider:O,model:Q,identity:S,color:U,skills:u(W),skillBindings:am},c=H?.(a,b);c?as({...c,roleId:a},z?Array.from(Y):void 0):L(a)},placeholder:"Select a role preset..."})]}):(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:"Role"}),(0,b.jsx)("input",{type:"text",value:M,onChange:a=>N(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. Senior Backend Engineer"})]})]}),(0,b.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(g.Box,{size:16})," Provider"]}),(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsxs)("select",{value:O,onChange:a=>P(a.target.value),className:"w-full appearance-none px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all pr-10 cursor-pointer",children:[(0,b.jsx)("option",{value:"claude",children:"Claude"}),(0,b.jsx)("option",{value:"ollama",children:"Ollama"}),(0,b.jsx)("option",{value:"gemini",children:"Gemini"}),(0,b.jsx)("option",{value:"codex",children:"Codex"}),(0,b.jsx)("option",{value:"zai",children:"Z.AI"})]}),(0,b.jsx)(l.ChevronDown,{className:"absolute right-3 top-1/2 -translate-y-1/2 text-[var(--muted-foreground)] pointer-events-none",size:16})]})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(f.Cpu,{size:16})," Model"]}),(0,b.jsx)("input",{type:"text",value:Q,onChange:a=>R(a.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all font-mono text-sm",placeholder:"e.g. claude-sonnet-4-6"})]})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(h.BookOpen,{size:16})," Identity"]}),(0,b.jsx)("div",{className:"border border-[var(--border)] rounded-xl overflow-hidden bg-[var(--app-shell-subtle)] focus-within:ring-2 focus-within:ring-indigo-500/20 focus-within:border-indigo-500 transition-all",children:(0,b.jsx)(o.default,{content:S,onChange:a=>T(a),placeholder:"You are a ..."})}),(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Identity defines who the agent is. Keep portable knowledge separate below; project and repo knowledge belong on their scoped surfaces."})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(i.Sparkles,{size:16})," Portable Knowledge"]}),(0,b.jsxs)("div",{className:"rounded-xl border border-[var(--border)] bg-[var(--app-shell-subtle)] p-3 space-y-3",children:[(0,b.jsx)("div",{className:"flex items-center justify-between gap-3",children:(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"text-xs font-semibold text-[var(--foreground)]",children:"Skills Picker"}),(0,b.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)]",children:"Pick a skill here. AGX will install it later only if the run actually needs it."})]})}),ag.length>0?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"relative",ref:ao,children:[(0,b.jsxs)("button",{type:"button",onClick:()=>al(a=>!a),className:"w-full flex items-center justify-between px-3 py-2 rounded-xl border border-[var(--border)] bg-[var(--card-bg)] text-sm font-medium hover:border-indigo-500",children:[(0,b.jsx)("span",{className:"truncate text-left",children:"Search and add skills"}),(0,b.jsx)(l.ChevronDown,{size:16,className:`shrink-0 text-[var(--muted-foreground)] transition-transform ${ak?"rotate-180":""}`})]}),ak&&(0,b.jsxs)("div",{className:"absolute left-0 right-0 top-full mt-2 z-30 rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] shadow-lg overflow-hidden",children:[(0,b.jsx)("div",{className:"p-2 border-b border-[var(--border)]",children:(0,b.jsx)("input",{type:"text",value:ai,onChange:a=>aj(a.target.value),placeholder:"Search skills",className:"w-full px-3 py-2 bg-[var(--card-bg)] border border-[var(--border)] rounded-lg text-sm focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500",autoFocus:!0})}),(0,b.jsx)("div",{className:"max-h-64 overflow-y-auto",children:aw.length>0?aw.map(a=>{let c=`${a.repo}::${a.skillId}`,d=ax.has(c);return(0,b.jsx)("button",{type:"button",className:`w-full px-3 py-2 text-left text-sm transition-colors ${d?"bg-emerald-50 text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onMouseDown:a=>a.preventDefault(),onClick:()=>{var b,c;return b=a.repo,c=a.skillId,void(an(a=>a.some(a=>a.repo===b&&a.skillId===c)?a.filter(a=>a.repo!==b||a.skillId!==c):[...a,{repo:b,skillId:c}]),aj(""))},children:(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,b.jsxs)("div",{className:"min-w-0",children:[(0,b.jsx)("div",{className:"font-medium",children:a.name||a.skillId}),(0,b.jsx)("div",{className:"text-[11px] text-[var(--muted-foreground)]",children:a.repo})]}),d&&(0,b.jsx)("span",{className:"shrink-0 rounded-full bg-emerald-100 px-2 py-0.5 text-[10px] font-semibold text-emerald-700",children:"Added"})]})},c)}):(0,b.jsx)("div",{className:"px-3 py-3 text-sm text-[var(--muted-foreground)]",children:"No matching skills."})})]})]}),(0,b.jsxs)("div",{className:"flex flex-wrap gap-2",children:[am.map(a=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-full bg-emerald-50 text-emerald-700 border border-emerald-200 px-2.5 py-1 text-[11px] font-medium",children:[a.skillId,(0,b.jsx)("button",{type:"button",onClick:()=>{var b,c;return b=a.repo,c=a.skillId,void an(a=>a.filter(a=>a.repo!==b||a.skillId!==c))},className:"text-emerald-700/70 hover:text-emerald-900",title:`Remove ${a.skillId}`,children:(0,b.jsx)(d.X,{size:12})})]},`${a.repo}::${a.skillId}`)),0===am.length&&(0,b.jsx)("span",{className:"text-[11px] text-[var(--muted-foreground)]",children:"No library skills selected yet."})]})]}):(0,b.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)]",children:"No catalog skills available right now."})]}),(0,b.jsx)("textarea",{value:W,onChange:a=>X(a.target.value),rows:5,className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all font-mono text-xs",placeholder:"one/path/to/skill.md\npath/to/skill.md | when coding in TypeScript"}),(0,b.jsxs)("p",{className:"text-xs text-[var(--muted-foreground)]",children:["Portable agent knowledge only. One reference per line. Use ",(0,b.jsx)("code",{children:"|"})," to add an optional condition."]})]}),z&&z.length>0&&(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(k.FolderOpen,{size:16})," Assign To Projects"]}),(0,b.jsx)("div",{className:"space-y-1 max-h-[160px] overflow-y-auto",children:z.map(a=>{let c=Y.has(a.id);return(0,b.jsxs)("button",{type:"button",className:c?"w-full flex items-center gap-3 px-3 py-2 rounded-lg text-sm transition-colors bg-indigo-50 text-indigo-700":"w-full flex items-center gap-3 px-3 py-2 rounded-lg text-sm transition-colors text-[var(--muted-foreground)] hover:bg-[var(--app-shell-subtle)]",onClick:()=>Z(b=>{let c=new Set(b);return c.has(a.id)?c.delete(a.id):c.add(a.id),c}),children:[(0,b.jsx)("div",{className:c?"w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center bg-indigo-600 border-indigo-600":"w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center border-[var(--border)]",children:c&&(0,b.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,b.jsx)("path",{d:"M2 5l2 2 4-4",stroke:"white",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,b.jsx)("span",{className:"text-xs font-medium text-left",children:a.label??a.name})]},a.id)})})]}),C&&(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,b.jsx)(k.FolderOpen,{size:16})," Project Memberships"]}),C.current.length>0?(0,b.jsx)("div",{className:"flex flex-col gap-1",children:C.current.map(a=>(0,b.jsxs)("div",{className:"flex items-center gap-2 text-xs bg-[var(--app-shell-subtle)] rounded-lg px-3 py-2",children:[(0,b.jsx)(k.FolderOpen,{size:12,className:"text-[var(--muted-foreground)] shrink-0"}),(0,b.jsx)("span",{className:"truncate flex-1",children:a.name}),E&&!a.is_default&&(0,b.jsx)("button",{type:"button",className:"text-[var(--muted-foreground)] hover:text-red-500 transition-colors",onClick:()=>E(a.id),title:"Remove from project",children:(0,b.jsx)(d.X,{size:12})})]},a.id))}):(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] italic",children:"Not assigned to any projects"}),C.available.length>0&&D&&(0,b.jsx)("div",{className:"flex flex-wrap gap-1",children:C.available.map(a=>(0,b.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1 text-[10px] px-2 py-1 rounded-lg border border-dashed border-[var(--border)] text-[var(--muted-foreground)] hover:border-[var(--border)] hover:text-[var(--foreground)] transition-colors",onClick:()=>D(a.id),children:[(0,b.jsx)(j.Plus,{size:10}),a.name]},a.id))})]})]}):(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,b.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Paste agent JSON here. Switching back to Form or saving will apply valid JSON to the form state."}),(0,b.jsx)("button",{type:"button",onClick:au,className:"px-3 py-1.5 text-xs font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)] rounded-lg transition-colors",children:"Apply to Form"})]}),(0,b.jsx)("textarea",{value:aa,onChange:a=>{ab(a.target.value),ac&&ad(null)},rows:22,className:"w-full px-4 py-3 bg-[var(--app-shell-bg)] text-[var(--foreground)] border border-[var(--app-shell-border)] rounded-2xl focus:outline-none focus:ring-2 focus:ring-[var(--ring)] focus:border-[var(--primary)] transition-all font-mono text-xs",spellCheck:!1,autoFocus:!0}),ac&&(0,b.jsx)("p",{className:"text-xs text-red-500",children:ac})]}),(0,b.jsxs)("div",{className:"flex items-center justify-end gap-3 pt-4 border-t border-[var(--border)]",children:[(0,b.jsx)("button",{onClick:y,className:"px-6 py-2.5 text-sm font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)] rounded-xl transition-all",children:"Cancel"}),(0,b.jsx)("button",{onClick:()=>{let a=I.trim(),b=K,c=M.trim(),d=O,e=Q.trim(),f=S.trim(),g=U,h=u(W),i=am,j=z?Array.from(Y):void 0;if("json"===$)try{let k=at(aa);a=k.data.name.trim(),b=k.data.roleId??"",c=(k.data.role??"").trim(),d=k.data.provider,e=k.data.model.trim(),f=k.data.identity.trim(),g=k.data.color??"#6B7280",h=k.data.skills??[],i=k.data.skillBindings??[],j=z?k.projectIds??[]:void 0}catch(a){ad(a instanceof Error?a.message:"Unable to parse JSON.");return}a&&e&&x({name:a,...aq&&b?{roleId:b}:{},role:c||void 0,provider:d,model:e,identity:f,color:g,skills:h,skillBindings:i},j)},disabled:"form"===$&&(!I.trim()||!Q.trim()),className:"px-8 py-2.5 bg-indigo-600 text-white text-sm font-semibold rounded-xl shadow-[0_4px_12px_rgba(79,70,229,0.3)] hover:bg-indigo-700 active:scale-95 disabled:opacity-50 transition-all font-bold",children:w})]})]})]})})}a.s(["AgentForm",()=>w,"agentAvatarUrl",()=>r],8e4)}];
2
2
 
3
3
  //# sourceMappingURL=apps_local_3f9f6417._.js.map