@mndrk/agx 2.0.55 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (762) hide show
  1. package/README.md +5 -0
  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 +3 -0
  4. package/cloud-runtime/standalone/apps/local/.next/build-manifest.json +3 -3
  5. package/cloud-runtime/standalone/apps/local/.next/prerender-manifest.json +3 -3
  6. package/cloud-runtime/standalone/apps/local/.next/required-server-files.json +5 -0
  7. package/cloud-runtime/standalone/apps/local/.next/routes-manifest.json +23 -0
  8. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page.js +1 -1
  9. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page.js.nft.json +1 -1
  10. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.html +1 -1
  11. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.rsc +1 -1
  12. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  13. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  14. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  15. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  16. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  17. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page.js +1 -1
  18. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page.js.nft.json +1 -1
  19. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  20. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.html +2 -2
  21. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.rsc +2 -2
  22. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  23. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  24. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  25. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  26. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  27. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  28. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js +1 -1
  29. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js.nft.json +1 -1
  30. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
  31. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js +1 -1
  32. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js.nft.json +1 -1
  33. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  34. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.html +2 -2
  35. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.rsc +3 -3
  36. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_full.segment.rsc +3 -3
  37. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  38. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_index.segment.rsc +2 -2
  39. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
  40. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +2 -2
  41. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents.segment.rsc +1 -1
  42. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agent-specs/route.js +1 -1
  43. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
  44. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/profile/route.js +4 -3
  45. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
  46. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/export/route.js +1 -1
  47. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/export/route.js.nft.json +1 -1
  48. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/create/route.js +1 -1
  49. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/create/route.js.nft.json +1 -1
  50. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/route.js +1 -1
  51. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/route.js.nft.json +1 -1
  52. package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat/route.js +2 -2
  53. package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat/route.js.nft.json +1 -1
  54. package/cloud-runtime/standalone/apps/local/.next/server/app/api/daemon/route.js +2 -2
  55. package/cloud-runtime/standalone/apps/local/.next/server/app/api/daemon/route.js.nft.json +1 -1
  56. package/cloud-runtime/standalone/apps/local/.next/server/app/api/file-search/route.js.nft.json +1 -1
  57. package/cloud-runtime/standalone/apps/local/.next/server/app/api/filesystem/analyze/route.js +1 -1
  58. package/cloud-runtime/standalone/apps/local/.next/server/app/api/filesystem/analyze/route.js.nft.json +1 -1
  59. package/cloud-runtime/standalone/apps/local/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js +1 -1
  60. package/cloud-runtime/standalone/apps/local/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js.nft.json +1 -1
  61. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/[id]/route.js.nft.json +1 -1
  62. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/context/route.js.nft.json +1 -1
  63. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/route.js.nft.json +1 -1
  64. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/options/route.js.nft.json +1 -1
  65. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/scripted/route.js +5 -4
  66. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/scripted/route.js.nft.json +1 -1
  67. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/status/route.js.nft.json +1 -1
  68. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route/app-paths-manifest.json +3 -0
  69. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route/build-manifest.json +9 -0
  70. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route/server-reference-manifest.json +4 -0
  71. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route.js +13 -0
  72. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route.js.map +5 -0
  73. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route.js.nft.json +1 -0
  74. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route_client-reference-manifest.js +3 -0
  75. package/cloud-runtime/standalone/apps/local/.next/server/app/api/participants/route.js +1 -1
  76. package/cloud-runtime/standalone/apps/local/.next/server/app/api/participants/route.js.nft.json +1 -1
  77. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js +4 -4
  78. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js.nft.json +1 -1
  79. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route.js +4 -4
  80. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route.js.nft.json +1 -1
  81. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/[noteId]/route.js +2 -2
  82. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/[noteId]/route.js.nft.json +1 -1
  83. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/route.js +2 -2
  84. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/route.js.nft.json +1 -1
  85. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/route.js +3 -3
  86. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/route.js.nft.json +1 -1
  87. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.js +19 -8
  88. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.js.nft.json +1 -1
  89. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/validate/route.js +3 -3
  90. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/validate/route.js.nft.json +1 -1
  91. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route/app-paths-manifest.json +3 -0
  92. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route/build-manifest.json +9 -0
  93. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route/server-reference-manifest.json +4 -0
  94. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js +28 -0
  95. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js.map +5 -0
  96. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js.nft.json +1 -0
  97. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route_client-reference-manifest.js +3 -0
  98. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/route.js +9 -5
  99. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
  100. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/search/route.js +1 -1
  101. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/search/route.js.nft.json +1 -1
  102. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/route.js.nft.json +1 -1
  103. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/route.js +4 -4
  104. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/route.js.nft.json +1 -1
  105. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/cancel/route.js +1 -1
  106. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/cancel/route.js.nft.json +1 -1
  107. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/route.js +1 -1
  108. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/route.js.nft.json +1 -1
  109. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/runs/route.js +1 -1
  110. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/runs/route.js.nft.json +1 -1
  111. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/poll/route.js +16 -15
  112. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/poll/route.js.nft.json +1 -1
  113. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/route.js +5 -5
  114. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/route.js.nft.json +1 -1
  115. package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/check/[id]/route.js.nft.json +1 -1
  116. package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/route.js.nft.json +1 -1
  117. package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/route.js +2 -2
  118. package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/route.js.nft.json +1 -1
  119. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/debug/route.js +1 -1
  120. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
  121. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/poll/route.js +1 -1
  122. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
  123. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/route.js +1 -1
  124. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/route.js.nft.json +1 -1
  125. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/assign/route.js.nft.json +1 -1
  126. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/available/route.js.nft.json +1 -1
  127. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
  128. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/history/route.js.nft.json +1 -1
  129. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/learn/route.js.nft.json +1 -1
  130. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/route.js.nft.json +1 -1
  131. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/unlearn/route.js.nft.json +1 -1
  132. package/cloud-runtime/standalone/apps/local/.next/server/app/api/status/route.js.nft.json +1 -1
  133. package/cloud-runtime/standalone/apps/local/.next/server/app/api/summarize/route.js.nft.json +1 -1
  134. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
  135. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
  136. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/events/route.js.nft.json +1 -1
  137. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/history/route.js.nft.json +1 -1
  138. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/metrics/route.js.nft.json +1 -1
  139. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/pause/route.js.nft.json +1 -1
  140. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/replan/route.js.nft.json +1 -1
  141. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/restart/route.js.nft.json +1 -1
  142. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/resume/route.js.nft.json +1 -1
  143. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/rollback/route.js.nft.json +1 -1
  144. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/route.js.nft.json +1 -1
  145. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/schedule/route.js.nft.json +1 -1
  146. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/stop/route.js.nft.json +1 -1
  147. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/logs/route.js.nft.json +1 -1
  148. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js.nft.json +1 -1
  149. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js.nft.json +1 -1
  150. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js.nft.json +1 -1
  151. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js.nft.json +1 -1
  152. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js.nft.json +1 -1
  153. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js.nft.json +1 -1
  154. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
  155. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
  156. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/extract/route.js.nft.json +1 -1
  157. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/route.js +9 -8
  158. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/route.js.nft.json +1 -1
  159. package/cloud-runtime/standalone/apps/local/.next/server/app/api/terminal/sessions/[id]/route.js +1 -1
  160. package/cloud-runtime/standalone/apps/local/.next/server/app/api/terminal/sessions/[id]/route.js.nft.json +1 -1
  161. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js +1 -1
  162. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -1
  163. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/route.js +1 -1
  164. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/route.js.nft.json +1 -1
  165. package/cloud-runtime/standalone/apps/local/.next/server/app/automations/page/react-loadable-manifest.json +2 -2
  166. package/cloud-runtime/standalone/apps/local/.next/server/app/automations/page.js +1 -1
  167. package/cloud-runtime/standalone/apps/local/.next/server/app/automations/page.js.nft.json +1 -1
  168. package/cloud-runtime/standalone/apps/local/.next/server/app/automations/page_client-reference-manifest.js +1 -1
  169. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.html +2 -2
  170. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.rsc +15 -15
  171. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_full.segment.rsc +15 -15
  172. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_head.segment.rsc +1 -1
  173. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_index.segment.rsc +2 -2
  174. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/_tree.segment.rsc +3 -3
  175. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/automations/__PAGE__.segment.rsc +3 -3
  176. package/cloud-runtime/standalone/apps/local/.next/server/app/automations.segments/automations.segment.rsc +1 -1
  177. package/cloud-runtime/standalone/apps/local/.next/server/app/board/page.js +1 -1
  178. package/cloud-runtime/standalone/apps/local/.next/server/app/board/page.js.nft.json +1 -1
  179. package/cloud-runtime/standalone/apps/local/.next/server/app/board/page_client-reference-manifest.js +1 -1
  180. package/cloud-runtime/standalone/apps/local/.next/server/app/board.html +2 -2
  181. package/cloud-runtime/standalone/apps/local/.next/server/app/board.rsc +2 -2
  182. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_full.segment.rsc +2 -2
  183. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_head.segment.rsc +1 -1
  184. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_index.segment.rsc +2 -2
  185. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/_tree.segment.rsc +2 -2
  186. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/board/__PAGE__.segment.rsc +1 -1
  187. package/cloud-runtime/standalone/apps/local/.next/server/app/board.segments/board.segment.rsc +1 -1
  188. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph/page.js +1 -1
  189. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph/page.js.nft.json +1 -1
  190. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph/page_client-reference-manifest.js +1 -1
  191. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.html +2 -2
  192. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.rsc +3 -3
  193. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_full.segment.rsc +3 -3
  194. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_head.segment.rsc +1 -1
  195. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_index.segment.rsc +2 -2
  196. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/_tree.segment.rsc +2 -2
  197. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/execution-graph/__PAGE__.segment.rsc +2 -2
  198. package/cloud-runtime/standalone/apps/local/.next/server/app/execution-graph.segments/execution-graph.segment.rsc +1 -1
  199. package/cloud-runtime/standalone/apps/local/.next/server/app/folders/page.js +1 -1
  200. package/cloud-runtime/standalone/apps/local/.next/server/app/folders/page.js.nft.json +1 -1
  201. package/cloud-runtime/standalone/apps/local/.next/server/app/folders/page_client-reference-manifest.js +1 -1
  202. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.html +2 -2
  203. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.rsc +3 -3
  204. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_full.segment.rsc +3 -3
  205. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_head.segment.rsc +1 -1
  206. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_index.segment.rsc +2 -2
  207. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/_tree.segment.rsc +2 -2
  208. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/folders/__PAGE__.segment.rsc +2 -2
  209. package/cloud-runtime/standalone/apps/local/.next/server/app/folders.segments/folders.segment.rsc +1 -1
  210. package/cloud-runtime/standalone/apps/local/.next/server/app/index.html +2 -2
  211. package/cloud-runtime/standalone/apps/local/.next/server/app/index.rsc +2 -2
  212. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  213. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_full.segment.rsc +2 -2
  214. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_head.segment.rsc +1 -1
  215. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_index.segment.rsc +2 -2
  216. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  217. package/cloud-runtime/standalone/apps/local/.next/server/app/page.js +1 -1
  218. package/cloud-runtime/standalone/apps/local/.next/server/app/page.js.nft.json +1 -1
  219. package/cloud-runtime/standalone/apps/local/.next/server/app/page_client-reference-manifest.js +1 -1
  220. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page/react-loadable-manifest.json +2 -2
  221. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js +1 -1
  222. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js.nft.json +1 -1
  223. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page_client-reference-manifest.js +1 -1
  224. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js +1 -1
  225. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js.nft.json +1 -1
  226. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page_client-reference-manifest.js +1 -1
  227. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/app-paths-manifest.json +3 -0
  228. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/build-manifest.json +18 -0
  229. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/next-font-manifest.json +11 -0
  230. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/react-loadable-manifest.json +1 -0
  231. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/server-reference-manifest.json +4 -0
  232. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js +14 -0
  233. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js.map +5 -0
  234. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js.nft.json +1 -0
  235. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page_client-reference-manifest.js +3 -0
  236. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js +1 -1
  237. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
  238. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
  239. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/knowledge/page.js +1 -1
  240. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/knowledge/page.js.nft.json +1 -1
  241. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/knowledge/page_client-reference-manifest.js +1 -1
  242. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page/react-loadable-manifest.json +8 -2
  243. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page.js +1 -1
  244. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page.js.nft.json +1 -1
  245. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page_client-reference-manifest.js +1 -1
  246. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js +1 -1
  247. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js.nft.json +1 -1
  248. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page_client-reference-manifest.js +1 -1
  249. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js +1 -1
  250. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js.nft.json +1 -1
  251. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page_client-reference-manifest.js +1 -1
  252. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js +1 -1
  253. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
  254. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  255. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/settings/page.js +1 -1
  256. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/settings/page.js.nft.json +1 -1
  257. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/settings/page_client-reference-manifest.js +1 -1
  258. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js +1 -1
  259. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js.nft.json +1 -1
  260. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page_client-reference-manifest.js +1 -1
  261. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js +1 -1
  262. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js.nft.json +1 -1
  263. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page_client-reference-manifest.js +1 -1
  264. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js +1 -1
  265. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js.nft.json +1 -1
  266. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page_client-reference-manifest.js +1 -1
  267. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js +1 -1
  268. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js.nft.json +1 -1
  269. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page_client-reference-manifest.js +1 -1
  270. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js +1 -1
  271. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js.nft.json +1 -1
  272. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page_client-reference-manifest.js +1 -1
  273. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js +1 -1
  274. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js.nft.json +1 -1
  275. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page_client-reference-manifest.js +1 -1
  276. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js +1 -1
  277. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js.nft.json +1 -1
  278. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page_client-reference-manifest.js +1 -1
  279. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js +1 -1
  280. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -1
  281. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +1 -1
  282. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans/page.js +1 -1
  283. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans/page.js.nft.json +1 -1
  284. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans/page_client-reference-manifest.js +1 -1
  285. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.html +2 -2
  286. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.rsc +3 -3
  287. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_full.segment.rsc +3 -3
  288. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_head.segment.rsc +1 -1
  289. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_index.segment.rsc +2 -2
  290. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/_tree.segment.rsc +2 -2
  291. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/projects/orphans/__PAGE__.segment.rsc +2 -2
  292. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/projects/orphans.segment.rsc +1 -1
  293. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/orphans.segments/projects.segment.rsc +1 -1
  294. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page.js +1 -1
  295. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page.js.nft.json +1 -1
  296. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  297. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.html +2 -2
  298. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.rsc +3 -3
  299. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_full.segment.rsc +3 -3
  300. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_head.segment.rsc +1 -1
  301. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_index.segment.rsc +2 -2
  302. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
  303. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +2 -2
  304. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects.segment.rsc +1 -1
  305. package/cloud-runtime/standalone/apps/local/.next/server/app/settings/page.js +1 -1
  306. package/cloud-runtime/standalone/apps/local/.next/server/app/settings/page.js.nft.json +1 -1
  307. package/cloud-runtime/standalone/apps/local/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  308. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.html +2 -2
  309. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.rsc +2 -2
  310. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_full.segment.rsc +2 -2
  311. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  312. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_index.segment.rsc +2 -2
  313. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  314. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
  315. package/cloud-runtime/standalone/apps/local/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  316. package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page.js +1 -1
  317. package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page.js.nft.json +1 -1
  318. package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  319. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.html +2 -2
  320. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.rsc +3 -3
  321. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_full.segment.rsc +3 -3
  322. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_head.segment.rsc +1 -1
  323. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_index.segment.rsc +2 -2
  324. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
  325. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +2 -2
  326. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup.segment.rsc +1 -1
  327. package/cloud-runtime/standalone/apps/local/.next/server/app/skills/page.js +1 -1
  328. package/cloud-runtime/standalone/apps/local/.next/server/app/skills/page.js.nft.json +1 -1
  329. package/cloud-runtime/standalone/apps/local/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  330. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.html +2 -2
  331. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.rsc +2 -2
  332. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_full.segment.rsc +2 -2
  333. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_head.segment.rsc +1 -1
  334. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_index.segment.rsc +2 -2
  335. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/_tree.segment.rsc +2 -2
  336. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/skills/__PAGE__.segment.rsc +1 -1
  337. package/cloud-runtime/standalone/apps/local/.next/server/app/skills.segments/skills.segment.rsc +1 -1
  338. package/cloud-runtime/standalone/apps/local/.next/server/app/status/page.js +1 -1
  339. package/cloud-runtime/standalone/apps/local/.next/server/app/status/page.js.nft.json +1 -1
  340. package/cloud-runtime/standalone/apps/local/.next/server/app/status/page_client-reference-manifest.js +1 -1
  341. package/cloud-runtime/standalone/apps/local/.next/server/app/status.html +2 -2
  342. package/cloud-runtime/standalone/apps/local/.next/server/app/status.rsc +3 -3
  343. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_full.segment.rsc +3 -3
  344. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_head.segment.rsc +1 -1
  345. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_index.segment.rsc +2 -2
  346. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_tree.segment.rsc +2 -2
  347. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status/__PAGE__.segment.rsc +2 -2
  348. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status.segment.rsc +1 -1
  349. package/cloud-runtime/standalone/apps/local/.next/server/app/thread/[id]/page.js +1 -1
  350. package/cloud-runtime/standalone/apps/local/.next/server/app/thread/[id]/page.js.nft.json +1 -1
  351. package/cloud-runtime/standalone/apps/local/.next/server/app/thread/[id]/page_client-reference-manifest.js +1 -1
  352. package/cloud-runtime/standalone/apps/local/.next/server/app-paths-manifest.json +3 -0
  353. package/cloud-runtime/standalone/apps/local/.next/server/chunks/0jps_app_api_projects_[id]_objectives_[objectiveId]_worker_route_actions_0v8q3zz.js +3 -0
  354. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[externals]__0_au5u1._.js +3 -0
  355. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[externals]__13x93ar._.js +3 -0
  356. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0_10qfd._.js → [root-of-the-server]__0.6yz1u._.js} +2 -2
  357. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__01lsgl~._.js +4 -0
  358. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0205scg._.js → [root-of-the-server]__03.9arn._.js} +2 -2
  359. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__01ol22y._.js → [root-of-the-server]__03h0gqp._.js} +2 -2
  360. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__094z9yf._.js → [root-of-the-server]__08jo91s._.js} +2 -2
  361. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__09j9jpf._.js +3 -0
  362. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0-nye63._.js → [root-of-the-server]__09jghbu._.js} +2 -2
  363. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0_7hiof._.js +43 -0
  364. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0.jam.l._.js → [root-of-the-server]__0a0cq38._.js} +2 -2
  365. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0asvfdo._.js +54 -0
  366. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0c86535._.js +3 -0
  367. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0cj1krd._.js +3 -0
  368. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0aa-88e._.js → [root-of-the-server]__0dy3h2i._.js} +2 -2
  369. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0touqng._.js → [root-of-the-server]__0e8-2k_._.js} +2 -2
  370. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0enhv5p._.js +3 -0
  371. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0f9byr.._.js +1 -1
  372. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0g7hc1-._.js +18 -0
  373. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0g7p6pw._.js +55 -0
  374. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__019q25b._.js → [root-of-the-server]__0gj~dap._.js} +7 -7
  375. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0e6cj2y._.js → [root-of-the-server]__0hc45jw._.js} +2 -2
  376. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0avz575._.js → [root-of-the-server]__0hkcw03._.js} +2 -2
  377. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0hmw36u._.js +1 -1
  378. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0l53ok5._.js +54 -0
  379. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0n.momw._.js +8 -0
  380. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0tjo9we._.js +7 -0
  381. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0-~t2br._.js → [root-of-the-server]__0v7jjvl._.js} +2 -2
  382. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0x6w64i._.js +3 -0
  383. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__11nke7t._.js → [root-of-the-server]__0y3qxv1._.js} +2 -2
  384. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__10z8f9h._.js → [root-of-the-server]__0ygidxe._.js} +2 -2
  385. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0z82z0-._.js +49 -0
  386. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0zsv-tb._.js +8 -0
  387. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0~nnfjr._.js +3 -0
  388. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0~x4jbk._.js +3 -0
  389. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__10d.dhd._.js +229 -0
  390. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__12qy318._.js +3 -0
  391. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_039.xxy._.js +1 -1
  392. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_06oeti1._.js +49 -0
  393. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0dyy7h.._.js +3 -0
  394. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0gi7c9x._.js +2 -2
  395. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0gr.psg._.js +1 -1
  396. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0sd8z0i._.js +21 -0
  397. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0y42h_~._.js +2 -2
  398. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0~ah49q._.js +1 -1
  399. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_01kqgle._.js +11 -0
  400. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_06qet8g._.js +36 -0
  401. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0_0m2ly._.js +397 -0
  402. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0_a~bj0._.js +25 -0
  403. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0a15wtk._.js +397 -0
  404. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0bjdpen._.js +29 -0
  405. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0fr1qq6._.js +1 -1
  406. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0g.q2r6._.js +41 -0
  407. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0h7wd0e._.js +29 -0
  408. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0i7fs.i._.js +397 -0
  409. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0ipg-p6._.js +3 -0
  410. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0npxy21._.js +11 -0
  411. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0uhfa93._.js +21 -0
  412. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_12wpldq._.js +25 -0
  413. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_worker_route_actions_116303i.js +3 -0
  414. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_01hd2_5._.js +3 -0
  415. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_01pvj2g._.js +34 -0
  416. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0ik933l._.js +55 -0
  417. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0o1v.j4._.js +79 -0
  418. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0pxj122._.js +55 -0
  419. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_automations_index_ts_0_8ch28._.js +10 -0
  420. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_graph_082u-ls._.js +41 -0
  421. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_0.xgxyl._.js +4 -0
  422. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_0yu3--n._.js +4 -0
  423. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_0ze8hzc._.js +4 -0
  424. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_get-store_ts_0p0aod1._.js +5 -5
  425. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_linear-worker_ts_0ycjwem._.js +5 -0
  426. package/cloud-runtime/standalone/apps/local/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0gips_c.js +1 -1
  427. package/cloud-runtime/standalone/apps/local/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0u_5kfo.js +1 -1
  428. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/02dz_local__next-internal_server_app_projects_[slug]_folders_page_actions_03fg4j9.js +3 -0
  429. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_0tvwux2._.js +3 -0
  430. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_icons_0e2_v_.._.js +3 -0
  431. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_icons_0hvpc.y._.js +3 -0
  432. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_icons_0w3hl3p._.js +3 -0
  433. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__006vr7.._.js +3 -0
  434. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__08d5c~o._.js +3 -0
  435. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0_n~ybp._.js +3 -0
  436. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0d18x53._.js +18 -0
  437. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0fl7_-o._.js +18 -0
  438. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0h~rb5r._.js +3 -0
  439. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0j9m72.._.js +18 -0
  440. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__02.r909._.js → [root-of-the-server]__0n5g8ml._.js} +2 -2
  441. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0w.zmt6._.js +3 -0
  442. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0z7nw_r._.js +3 -0
  443. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__10h_7t0._.js +3 -0
  444. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_00trrg8._.js +3 -0
  445. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{_0s~0ump._.js → _064h43p._.js} +2 -2
  446. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0742x_.._.js +3 -0
  447. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ejzn1e._.js +3 -0
  448. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0fwy5tm._.js +7 -0
  449. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0sjchy6._.js +3 -0
  450. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ufdu.z._.js +7 -0
  451. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0wk3skw._.js +3 -0
  452. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0yeuuy1._.js +25 -0
  453. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_03z24q2._.js +3 -0
  454. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0_ac-.f._.js +1 -1
  455. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0a-8i4p._.js +3 -0
  456. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0h3mfm7._.js +3 -0
  457. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{apps_local_075cq2j._.js → apps_local_0k4~c1x._.js} +2 -2
  458. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{_0n80y4_._.js → apps_local_0nvzo3y._.js} +2 -2
  459. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0t6p.qm._.js +3 -0
  460. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0v~bvwg._.js +3 -0
  461. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_11k_-8~._.js +1 -1
  462. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_agents_[id]_page_tsx_06n47n~._.js +1 -1
  463. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_execution-graph_page_tsx_0tn2sx9._.js +2 -2
  464. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_folders_page_tsx_0ju618z._.js +3 -0
  465. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_graph_[taskId]_page_tsx_0bctfd-._.js +1 -1
  466. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_layout_tsx_0aaa3~t._.js +1 -1
  467. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_linear_page_tsx_0a~n5y8._.js +2 -2
  468. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_page_tsx_0kcaeqi._.js +1 -1
  469. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_teams_new_page_tsx_0yqd0a5._.js +3 -0
  470. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_teams_page_tsx_06czvz-._.js +3 -0
  471. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_terminal_page_tsx_01n9qk.._.js +12 -12
  472. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_orphans_page_tsx_0sdv.11._.js +4 -4
  473. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_setup_page_tsx_0ql2qmr._.js +1 -1
  474. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_PromptJobBoard_tsx_06zob36._.js +8 -0
  475. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_TaskCard_tsx_0e35_z5._.js +6 -6
  476. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_chat-ui_ChatContainer_tsx_0c9fjtl._.js +3 -3
  477. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_projects_ProjectObjectivesWorkspace_tsx_0k4tfip._.js +6 -6
  478. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_thread_WorkspaceSidebar_tsx_0unv2xp._.js +1 -1
  479. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0mk0s0o.js +4 -0
  480. package/cloud-runtime/standalone/apps/local/.next/server/functions-config-manifest.json +2 -0
  481. package/cloud-runtime/standalone/apps/local/.next/server/middleware-build-manifest.js +3 -3
  482. package/cloud-runtime/standalone/apps/local/.next/server/middleware-manifest.json +5 -5
  483. package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.js +1 -1
  484. package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.json +4 -0
  485. package/cloud-runtime/standalone/apps/local/.next/server/pages/404.html +2 -2
  486. package/cloud-runtime/standalone/apps/local/.next/server/pages/500.html +1 -1
  487. package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.js +1 -1
  488. package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.json +1 -1
  489. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0-_ukhpeg429c.js +16 -0
  490. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0-olq~7zw3wjy.js +1 -0
  491. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0142ce0jj3j7r.js → 0-vo_x2cxmjm3.js} +1 -1
  492. package/cloud-runtime/standalone/apps/local/.next/static/chunks/003q-y3exxalk.js +1 -0
  493. package/cloud-runtime/standalone/apps/local/.next/static/chunks/00po4v2x~0x_z.js +1 -0
  494. package/cloud-runtime/standalone/apps/local/.next/static/chunks/013gtut17~fne.js +23 -0
  495. package/cloud-runtime/standalone/apps/local/.next/static/chunks/014z_yruiincl.js +1 -0
  496. package/cloud-runtime/standalone/apps/local/.next/static/chunks/041-dhls9zkl1.js +1 -0
  497. package/cloud-runtime/standalone/apps/local/.next/static/chunks/04yoml2rqnuot.js +16 -0
  498. package/cloud-runtime/standalone/apps/local/.next/static/chunks/07646a0h94826.js +3 -0
  499. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0_mrpyqcoyb_5.js +1 -0
  500. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0rm7v.1y6qcni.js → 0aewbg0i704w7.js} +1 -1
  501. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0px65ynyk3t1d.js → 0bchtyu6m.2yv.js} +7 -7
  502. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0dnw31436wd~..js +5 -0
  503. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0e307b-0c2jbx.js +1 -0
  504. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0edewt9l~cs~k.css +1 -0
  505. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0f7i3ae1ynhf3.css +1 -0
  506. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0fonouj2i9qnb.js +5 -0
  507. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0gj98094p~zn4.js +1 -0
  508. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0jrkacz_dyem6.js +37 -0
  509. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0l3v45kd.9is_.js +1 -0
  510. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0lgb.0~i1xvv-.js +1 -0
  511. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0lkal3uvr6_~2.js +1 -0
  512. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0mig99af4~uos.js +28 -0
  513. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0pdrpsy-zdxp0.js +5 -0
  514. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0p~l5ap6qqx2o.js +1 -0
  515. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0r0c9y6.8.m5p.js +1 -0
  516. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0stvi5btlxl4m.js +20 -0
  517. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0h_bwlg~kk8lz.js → 0tt1oh112yv-l.js} +2 -2
  518. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0uve8xrt~0a2e.js +1 -0
  519. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0w94x-v00osq0.js +1 -0
  520. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0wh6p5~ft5rma.js +5 -0
  521. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0x_pewz9npq~q.js +1 -0
  522. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0xwny92a.ad_i.js +1 -0
  523. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0zw85-xl9ysjs.js +1 -0
  524. package/cloud-runtime/standalone/apps/local/.next/static/chunks/119v0-idpg-cv.js +16 -0
  525. package/cloud-runtime/standalone/apps/local/.next/static/chunks/11l2tww5f0hsk.js +20 -0
  526. package/cloud-runtime/standalone/apps/local/.next/static/chunks/14v~9vx3tdv85.js +1 -0
  527. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{0826uh6nmsi5l.js → 1503vb7lb6.g1.js} +1 -1
  528. package/cloud-runtime/standalone/apps/local/.next/static/chunks/16d~es6h6k~rj.js +6 -0
  529. package/cloud-runtime/standalone/apps/local/.next/static/chunks/177-q0wwdi0qe.js +1 -0
  530. package/cloud-runtime/standalone/apps/local/agx-server.js +4055 -0
  531. package/cloud-runtime/standalone/apps/local/app/agents/[id]/page.tsx +40 -5
  532. package/cloud-runtime/standalone/apps/local/app/api/agents/[id]/profile/route.ts +10 -0
  533. package/cloud-runtime/standalone/apps/local/app/api/automations/route.ts +10 -2
  534. package/cloud-runtime/standalone/apps/local/app/api/linear/worker/route.ts +151 -0
  535. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/objectives/[objectiveId]/route.ts +0 -8
  536. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.ts +22 -27
  537. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/objectives/[objectiveId]/worker/route.ts +89 -0
  538. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/route.ts +13 -0
  539. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/search/route.ts +4 -4
  540. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/teams/route.ts +5 -3
  541. package/cloud-runtime/standalone/apps/local/app/api/prompt-jobs/route.ts +15 -5
  542. package/cloud-runtime/standalone/apps/local/app/globals.css +67 -5
  543. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/folders/page.tsx +25 -0
  544. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/layout.tsx +19 -5
  545. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/objectives/[objectiveId]/page.tsx +7 -2
  546. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/teams/new/page.tsx +236 -10
  547. package/cloud-runtime/standalone/apps/local/app/setup/page.tsx +9 -1
  548. package/cloud-runtime/standalone/apps/local/bundled-server.ts +45 -0
  549. package/cloud-runtime/standalone/apps/local/components/ActionToolbar.tsx +5 -2
  550. package/cloud-runtime/standalone/apps/local/components/AutomationsBoard.tsx +35 -3
  551. package/cloud-runtime/standalone/apps/local/components/ContextMenu.tsx +2 -2
  552. package/cloud-runtime/standalone/apps/local/components/FloatingPanel.tsx +70 -20
  553. package/cloud-runtime/standalone/apps/local/components/IconButton.tsx +10 -2
  554. package/cloud-runtime/standalone/apps/local/components/KanbanBoard.tsx +84 -3
  555. package/cloud-runtime/standalone/apps/local/components/LinearBoard.tsx +434 -36
  556. package/cloud-runtime/standalone/apps/local/components/LogTimeline.tsx +4 -1
  557. package/cloud-runtime/standalone/apps/local/components/NowRunningPanel.tsx +3 -1
  558. package/cloud-runtime/standalone/apps/local/components/PromptJobBoard.tsx +119 -6
  559. package/cloud-runtime/standalone/apps/local/components/SearchCombo.tsx +3 -3
  560. package/cloud-runtime/standalone/apps/local/components/SortableTaskCard.tsx +21 -3
  561. package/cloud-runtime/standalone/apps/local/components/StatusCircle.tsx +3 -3
  562. package/cloud-runtime/standalone/apps/local/components/TaskCard.tsx +51 -1
  563. package/cloud-runtime/standalone/apps/local/components/chat-ui/ChatContainer.tsx +15 -2
  564. package/cloud-runtime/standalone/apps/local/components/chat-ui/Composer.tsx +3 -3
  565. package/cloud-runtime/standalone/apps/local/components/chat-ui/ParticipantBar.tsx +76 -9
  566. package/cloud-runtime/standalone/apps/local/components/graph/ExecutionGraphPanel.tsx +4 -1
  567. package/cloud-runtime/standalone/apps/local/components/graph/GraphFirstView.tsx +6 -2
  568. package/cloud-runtime/standalone/apps/local/components/graph/NodeDetailPanel.tsx +45 -25
  569. package/cloud-runtime/standalone/apps/local/components/graph/NodeInspector.tsx +9 -6
  570. package/cloud-runtime/standalone/apps/local/components/linear/LinearSettingsModal.tsx +105 -0
  571. package/cloud-runtime/standalone/apps/local/components/linear/LinearWorkerConfig.tsx +367 -0
  572. package/cloud-runtime/standalone/apps/local/components/projects/FoldersSummaryCard.tsx +16 -16
  573. package/cloud-runtime/standalone/apps/local/components/projects/FoldersView.tsx +856 -0
  574. package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveActivityTimeline.tsx +40 -32
  575. package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveHealthTrend.tsx +215 -0
  576. package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveScheduledTasksPanel.tsx +338 -91
  577. package/cloud-runtime/standalone/apps/local/components/projects/ProjectHome.tsx +12 -6
  578. package/cloud-runtime/standalone/apps/local/components/projects/ProjectObjectivesWorkspace.tsx +489 -467
  579. package/cloud-runtime/standalone/apps/local/components/projects/ProjectSearchBar.tsx +4 -2
  580. package/cloud-runtime/standalone/apps/local/components/projects/RecentlyCompletedCard.tsx +213 -0
  581. package/cloud-runtime/standalone/apps/local/components/projects/ScheduledTasksSummaryCard.tsx +19 -19
  582. package/cloud-runtime/standalone/apps/local/components/projects/TeamsSummaryCard.tsx +10 -10
  583. package/cloud-runtime/standalone/apps/local/components/projects/TeamsView.tsx +171 -56
  584. package/cloud-runtime/standalone/apps/local/components/projects/WorkingNowCard.tsx +12 -12
  585. package/cloud-runtime/standalone/apps/local/components/projects/home/ObjectiveCard.tsx +13 -10
  586. package/cloud-runtime/standalone/apps/local/components/projects/home/ObjectivesSection.tsx +7 -7
  587. package/cloud-runtime/standalone/apps/local/components/projects/home/ToolPathCard.tsx +2 -2
  588. package/cloud-runtime/standalone/apps/local/components/projects/home/ToolPathsSection.tsx +9 -9
  589. package/cloud-runtime/standalone/apps/local/components/scheduling/ScheduleConditionPicker.tsx +4 -4
  590. package/cloud-runtime/standalone/apps/local/components/setup/McpSetupStep.tsx +242 -0
  591. package/cloud-runtime/standalone/apps/local/components/setup/ProjectStep.tsx +2 -2
  592. package/cloud-runtime/standalone/apps/local/components/setup/ProviderStep.tsx +1 -1
  593. package/cloud-runtime/standalone/apps/local/components/setup/TeamsStep.tsx +288 -15
  594. package/cloud-runtime/standalone/apps/local/components/terminal/ProjectTerminal.tsx +233 -89
  595. package/cloud-runtime/standalone/apps/local/components/terminal/TerminalSessionList.tsx +3 -1
  596. package/cloud-runtime/standalone/apps/local/components/thread/WorkspaceSidebar.tsx +72 -21
  597. package/cloud-runtime/standalone/apps/local/hooks/useInputCapabilities.ts +74 -0
  598. package/cloud-runtime/standalone/apps/local/hooks/useSetupFlow.ts +16 -2
  599. package/cloud-runtime/standalone/apps/local/lib/app-config.ts +35 -0
  600. package/cloud-runtime/standalone/apps/local/lib/objective-health-history.ts +198 -0
  601. package/cloud-runtime/standalone/apps/local/lib/project-objective-context.ts +10 -0
  602. package/cloud-runtime/standalone/apps/local/lib/project-objectives.ts +0 -9
  603. package/cloud-runtime/standalone/apps/local/lib/pty-manager.ts +5 -1
  604. package/cloud-runtime/standalone/apps/local/lib/terminal-server.ts +182 -0
  605. package/cloud-runtime/standalone/apps/local/next.config.ts +2 -1
  606. package/cloud-runtime/standalone/apps/local/package.json +2 -2
  607. package/cloud-runtime/standalone/apps/local/playwright.config.ts +8 -0
  608. package/cloud-runtime/standalone/apps/local/server.js +1 -1
  609. package/cloud-runtime/standalone/apps/local/server.ts +14 -158
  610. package/cloud-runtime/standalone/apps/local/skills-lock.json +20 -0
  611. package/cloud-runtime/standalone/apps/local/src/automations/adapters.ts +5 -0
  612. package/cloud-runtime/standalone/apps/local/src/automations/types.ts +5 -0
  613. package/cloud-runtime/standalone/apps/local/src/automations/validation.ts +12 -5
  614. package/cloud-runtime/standalone/apps/local/src/graph/types.ts +2 -0
  615. package/cloud-runtime/standalone/apps/local/src/objectives/parser.ts +0 -2
  616. package/cloud-runtime/standalone/apps/local/src/objectives/serializer.ts +0 -2
  617. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/cron.ts +11 -0
  618. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/linear-worker-constants.ts +38 -0
  619. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/linear-worker-job.ts +47 -0
  620. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/linear-worker.ts +482 -0
  621. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/objective-worker-job.ts +47 -0
  622. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/objective-worker.ts +511 -0
  623. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/processor.ts +239 -368
  624. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/store.ts +19 -4
  625. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/types.ts +32 -8
  626. package/cloud-runtime/standalone/apps/local/state/terminalTabs.ts +182 -106
  627. package/cloud-runtime/standalone/apps/local/state/windowState.ts +11 -0
  628. package/cloud-runtime/standalone/apps/local/styles/workspaceSidebar.css +65 -0
  629. package/cloud-runtime/standalone/apps/local/worker/index.js +9 -14
  630. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/darwin-arm64/pty.node +0 -0
  631. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/darwin-arm64/spawn-helper +0 -0
  632. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/darwin-x64/pty.node +0 -0
  633. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/darwin-x64/spawn-helper +0 -0
  634. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty/OpenConsole.exe +0 -0
  635. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty/conpty.dll +0 -0
  636. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty.node +0 -0
  637. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty.pdb +0 -0
  638. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty_console_list.node +0 -0
  639. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/conpty_console_list.pdb +0 -0
  640. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/pty.node +0 -0
  641. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/pty.pdb +0 -0
  642. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/winpty-agent.exe +0 -0
  643. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/winpty-agent.pdb +0 -0
  644. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/winpty.dll +0 -0
  645. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-arm64/winpty.pdb +0 -0
  646. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty/OpenConsole.exe +0 -0
  647. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty/conpty.dll +0 -0
  648. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty.node +0 -0
  649. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty.pdb +0 -0
  650. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty_console_list.node +0 -0
  651. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/conpty_console_list.pdb +0 -0
  652. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/pty.node +0 -0
  653. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/pty.pdb +0 -0
  654. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/winpty-agent.exe +0 -0
  655. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/winpty-agent.pdb +0 -0
  656. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/winpty.dll +0 -0
  657. package/cloud-runtime/standalone/node_modules/node-pty/prebuilds/win32-x64/winpty.pdb +0 -0
  658. package/lib/cli/daemon.js +13 -2
  659. package/lib/cli/onboarding.js +5 -6
  660. package/lib/cli/runCli.js +1 -1
  661. package/lib/cloud/client.js +1 -1
  662. package/lib/commands/chat.js +37 -11
  663. package/lib/commands/daemonBoard.js +19 -13
  664. package/lib/config/cloudConfig.js +1 -1
  665. package/lib/orchestrator/httpClient.js +1 -1
  666. package/lib/prompts/templates.js +8 -9
  667. package/package.json +1 -1
  668. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0-0479y._.js +0 -54
  669. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__088h0r2._.js +0 -3
  670. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__08oj_ky._.js +0 -49
  671. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__08y2lkj._.js +0 -3
  672. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__09joc_o._.js +0 -3
  673. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0gtv0rq._.js +0 -8
  674. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0gvjvx7._.js +0 -237
  675. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0ksbs9p._.js +0 -3
  676. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0o315az._.js +0 -3
  677. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0pz~m67._.js +0 -3
  678. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0q93mk3._.js +0 -7
  679. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0t2jk2r._.js +0 -18
  680. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0vhcrdv._.js +0 -229
  681. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__11s20j6._.js +0 -3
  682. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__12xhcor._.js +0 -54
  683. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_01rag2f._.js +0 -49
  684. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_03y4xss._.js +0 -21
  685. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0cm4i3i._.js +0 -3
  686. package/cloud-runtime/standalone/apps/local/.next/server/chunks/_0ijzgnb._.js +0 -3
  687. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_03q7_.q._.js +0 -21
  688. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0m3e2d~._.js +0 -30
  689. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_0r-oiga._.js +0 -30
  690. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_00cwfvi._.js +0 -34
  691. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0hx7xyz._.js +0 -34
  692. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0rqcat4._.js +0 -55
  693. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_0sc_lek._.js +0 -79
  694. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_135ddsu._.js +0 -55
  695. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_graph_store_ts_0h.2qy9._.js +0 -43
  696. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_processor_ts_0i1av_r._.js +0 -474
  697. package/cloud-runtime/standalone/apps/local/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0xxf2a0.js +0 -3
  698. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0rhn_lucide-react_dist_esm_0xd_mxu._.js +0 -3
  699. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__044xm0q._.js +0 -3
  700. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__066ay_e._.js +0 -3
  701. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__09smg3p._.js +0 -18
  702. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0bf346q._.js +0 -3
  703. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0hd2vo4._.js +0 -18
  704. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0iix1sf._.js +0 -3
  705. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0r54zr9._.js +0 -3
  706. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0s8z2_c._.js +0 -18
  707. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__0wq3ukc._.js +0 -3
  708. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_03-mlx0._.js +0 -7
  709. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_03rf_sb._.js +0 -3
  710. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_09b42z9._.js +0 -3
  711. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ag3.tl._.js +0 -7
  712. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0dh_hx0._.js +0 -3
  713. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0h8cbsi._.js +0 -3
  714. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0i1ffhz._.js +0 -3
  715. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ndrb_0._.js +0 -8
  716. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0nlki7b._.js +0 -3
  717. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ut3k~7._.js +0 -3
  718. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0vibfch._.js +0 -3
  719. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0yffwm4._.js +0 -8
  720. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0_q01av._.js +0 -3
  721. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0eh.4j7._.js +0 -3
  722. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0qaowqy._.js +0 -3
  723. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0s0iy2_._.js +0 -3
  724. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0zr-_na._.js +0 -3
  725. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_10qsqky._.js +0 -3
  726. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0.a4-dh~x9sa3.js +0 -6
  727. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0.bv3h68wo33z.js +0 -1
  728. package/cloud-runtime/standalone/apps/local/.next/static/chunks/016.x9zt9~rsh.js +0 -16
  729. package/cloud-runtime/standalone/apps/local/.next/static/chunks/027-6dwgpb0cy.js +0 -1
  730. package/cloud-runtime/standalone/apps/local/.next/static/chunks/031720jijg_th.js +0 -1
  731. package/cloud-runtime/standalone/apps/local/.next/static/chunks/03m1xs0rztynh.js +0 -16
  732. package/cloud-runtime/standalone/apps/local/.next/static/chunks/051-7k0nnm-vm.js +0 -1
  733. package/cloud-runtime/standalone/apps/local/.next/static/chunks/07o~9mm~xds_b.js +0 -1
  734. package/cloud-runtime/standalone/apps/local/.next/static/chunks/08zgoptetnxjj.css +0 -1
  735. package/cloud-runtime/standalone/apps/local/.next/static/chunks/09-_2lcshmjl5.js +0 -1
  736. package/cloud-runtime/standalone/apps/local/.next/static/chunks/09_yj-9nfh48m.js +0 -1
  737. package/cloud-runtime/standalone/apps/local/.next/static/chunks/09c7ssmgohk7l.js +0 -1
  738. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0awbe2r3qazge.css +0 -1
  739. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0dro-bz6f72z0.js +0 -1
  740. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0gbunx8z.~i4x.js +0 -5
  741. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0ge81r~ap.u7n.js +0 -28
  742. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0ghg5160qeazw.js +0 -5
  743. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0gl_8hdxl5qnd.js +0 -37
  744. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0g~v8p6_pc46-.js +0 -1
  745. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0jb4f8425s.-2.js +0 -1
  746. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0kukkarp4un0o.js +0 -1
  747. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0m.2b-cekea8b.js +0 -1
  748. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0o0hwfzwwty4b.js +0 -6
  749. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0ov5lu0tz2o2e.js +0 -1
  750. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0pt8_y9asrg~7.js +0 -1
  751. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0wyg4lymaq0hg.js +0 -3
  752. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0xl~1ux2f~rcu.js +0 -1
  753. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0y7-eze-w7~b4.js +0 -5
  754. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0y8e--tok1214.js +0 -5
  755. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0yy~0bgsz~o6-.js +0 -1
  756. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0~apd0q5_i88z.js +0 -16
  757. package/cloud-runtime/standalone/apps/local/.next/static/chunks/100xrwo-45nrg.js +0 -20
  758. package/cloud-runtime/standalone/apps/local/.next/static/chunks/14h3qxwuo~1q9.js +0 -20
  759. package/cloud-runtime/standalone/apps/local/.next/static/chunks/17oesq5eds3xi.js +0 -1
  760. /package/cloud-runtime/standalone/apps/local/.next/static/{z8XjY2Aj-ox_Dro192i4I → RnYHmEXBwXJjVrVVx2CuP}/_buildManifest.js +0 -0
  761. /package/cloud-runtime/standalone/apps/local/.next/static/{z8XjY2Aj-ox_Dro192i4I → RnYHmEXBwXJjVrVVx2CuP}/_clientMiddlewareManifest.js +0 -0
  762. /package/cloud-runtime/standalone/apps/local/.next/static/{z8XjY2Aj-ox_Dro192i4I → RnYHmEXBwXJjVrVVx2CuP}/_ssgManifest.js +0 -0
@@ -1,37 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,628822,e=>{"use strict";var t=e.i(843476),r=e.i(271645),s=e.i(618566),a=e.i(524123),n=e.i(770703),i=e.i(363732);let o=(0,i.default)("arrow-down",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]),l=(0,i.default)("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);var d=e.i(529471),c=e.i(498027),u=e.i(580873),m=e.i(245110),p=e.i(575479);let x=(0,i.default)("link-2",[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]]);var g=e.i(245900),f=e.i(929870),h=e.i(203096),v=e.i(8707),b=e.i(257587),j=e.i(169610),y=e.i(66386),w=e.i(33887);let k="agx-linear:runScripts",N={activeScriptId:null,scripts:[]};function S(){return void 0!==window.localStorage}function I(e){if(!e||"object"!=typeof e)return{...N};let t=Array.isArray(e.scripts)?[...e.scripts.map(e=>(function(e){if(!e||"object"!=typeof e)return null;let t="string"==typeof e.id?e.id.trim():"",r="string"==typeof e.name?e.name.trim():"",s="string"==typeof e.prompt?e.prompt.trim():"",a="string"==typeof e.createdAt&&e.createdAt.trim()?e.createdAt.trim():"",n="string"==typeof e.updatedAt&&e.updatedAt.trim()?e.updatedAt.trim():a;return t&&r&&s&&a&&n?{id:t,name:r,prompt:s,createdAt:a,updatedAt:n}:null})(e)).filter(e=>!!e)].sort((e,t)=>t.updatedAt.localeCompare(e.updatedAt)):[],r="string"==typeof e.activeScriptId&&e.activeScriptId.trim()?e.activeScriptId.trim():null;return{activeScriptId:r&&t.some(e=>e.id===r)?r:null,scripts:t}}function C(e){let t=String(e??"").trim().toLowerCase();return t?`${k}:${t}`:`${k}:global`}var A=e.i(945028),$=e.i(490011),L=e.i(208343);let E=(0,i.default)("save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);var R=e.i(794731),M=e.i(352687),P=e.i(40527);function T({projectSlug:e,scripts:s,activeScriptId:a,onSetActiveScriptId:n,onSaveScript:i,onDeleteScript:o}){let l=(0,r.useMemo)(()=>s.find(e=>e.id===a)??null,[a,s]),[c,u]=(0,r.useState)(()=>a?{type:"edit",scriptId:a}:{type:"new"}),[m,p]=(0,r.useState)(""),[x,g]=(0,r.useState)(""),[h,v]=(0,r.useState)(null),[b,j]=(0,r.useState)(null),y="edit"===c.type?c.scriptId:null;(0,r.useEffect)(()=>{if("edit"===c.type){let e=s.find(e=>e.id===c.scriptId);if(e){p(e.name),g(e.prompt);return}}if(l&&"new"!==c.type){("edit"!==c.type||c.scriptId!==l.id)&&u({type:"edit",scriptId:l.id}),p(l.name),g(l.prompt);return}0===s.length&&"new"!==c.type&&(u({type:"new"}),p(""),g(""))},[l,y,c,s]);let w=()=>{u({type:"new"}),p(""),g(""),v(null)},k=()=>{try{let e=i({name:m,prompt:x});u({type:"edit",scriptId:e.id}),v(null)}catch(e){v(e instanceof Error?e.message:"Failed to save session script.")}};return(0,t.jsxs)("div",{className:"flex flex-col gap-5",children:[(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("h3",{className:"text-sm font-semibold text-[var(--foreground)]",children:"Session Scripts"}),(0,t.jsxs)("p",{className:"text-xs leading-relaxed text-[var(--muted-foreground)]",children:["Save reusable kickoff prompts for the ",String(e??"").trim()||"global Linear board",". These scripts stay on this device and layer on top of the built-in ticket context whenever you start a scripted session."]})]}),(0,t.jsxs)("div",{className:"grid gap-5 md:grid-cols-[240px_minmax(0,1fr)]",children:[(0,t.jsxs)("aside",{className:"rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] p-3",children:[(0,t.jsxs)("div",{className:"mb-3 flex items-center justify-between",children:[(0,t.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-[0.16em] text-[var(--muted-foreground)]",children:"Library"}),(0,t.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1 rounded-md border border-[var(--card-border)] px-2 py-1 text-[11px] font-medium text-[var(--foreground)] transition-colors hover:bg-[var(--background)]",onClick:w,children:[(0,t.jsx)(f.Plus,{size:12}),"New"]})]}),(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,t.jsxs)("button",{type:"button",className:`flex w-full items-center gap-2 rounded-lg px-3 py-2 text-left text-xs transition-colors ${null===a?"bg-[var(--background)] text-[var(--foreground)]":"text-[var(--muted-foreground)] hover:bg-[var(--background)] hover:text-[var(--foreground)]"}`,onClick:()=>n(null),children:[(0,t.jsx)("span",{className:`flex h-4 w-4 shrink-0 items-center justify-center rounded-full border ${null===a?"border-blue-500 bg-blue-500 text-white":"border-[var(--card-border)]"}`,children:null===a?(0,t.jsx)(d.Check,{size:10}):null}),(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate font-medium",children:"AGX default"})]}),0===s.length?(0,t.jsx)("div",{className:"rounded-lg border border-dashed border-[var(--card-border)] px-3 py-4 text-xs leading-relaxed text-[var(--muted-foreground)]",children:"No saved scripts yet. Create one to reuse your preferred scripted session prompt."}):s.map(e=>{let r=e.id===a,s="edit"===c.type&&c.scriptId===e.id;return(0,t.jsx)("button",{type:"button",className:`rounded-lg border px-3 py-2 text-left transition-colors ${s?"border-blue-500/50 bg-[var(--background)]":"border-transparent hover:border-[var(--card-border)] hover:bg-[var(--background)]"}`,onClick:()=>{u({type:"edit",scriptId:e.id}),p(e.name),g(e.prompt),v(null),n(e.id)},children:(0,t.jsxs)("div",{className:"flex items-start gap-2",children:[(0,t.jsx)("span",{className:`mt-0.5 flex h-4 w-4 shrink-0 items-center justify-center rounded-full border ${r?"border-blue-500 bg-blue-500 text-white":"border-[var(--card-border)]"}`,children:r?(0,t.jsx)(d.Check,{size:10}):null}),(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("div",{className:"truncate text-xs font-medium text-[var(--foreground)]",children:e.name}),(0,t.jsx)("div",{className:"mt-1 line-clamp-2 text-[11px] leading-relaxed text-[var(--muted-foreground)]",children:e.prompt}),(0,t.jsxs)("div",{className:"mt-2 text-[10px] uppercase tracking-[0.14em] text-[var(--muted-foreground)]",children:["Updated ",function(e){try{return new Date(e).toLocaleString([],{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"})}catch{return e}}(e.updatedAt)]})]})]})},e.id)})]})]}),(0,t.jsxs)("section",{className:"rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] p-4",children:[(0,t.jsxs)("div",{className:"mb-4 flex items-start justify-between gap-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h4",{className:"text-sm font-semibold text-[var(--foreground)]",children:"edit"===c.type?"Edit Session Script":"New Session Script"}),(0,t.jsxs)("p",{className:"mt-1 text-xs leading-relaxed text-[var(--muted-foreground)]",children:["Use placeholders like ",(0,t.jsx)("code",{children:"{{ticket.identifier}}"}),", ",(0,t.jsx)("code",{children:"{{ticket.title}}"}),", ",(0,t.jsx)("code",{children:"{{ticket.status}}"}),", ",(0,t.jsx)("code",{children:"{{ticket.assignee}}"}),", ",(0,t.jsx)("code",{children:"{{project.slug}}"}),", ",(0,t.jsx)("code",{children:"{{knowledge_base.root}}"}),", ",(0,t.jsx)("code",{children:"{{knowledge_base.issue_path}}"}),", and ",(0,t.jsx)("code",{children:"{{worktree.path}}"}),"."]})]}),l?(0,t.jsxs)("span",{className:"rounded-full border border-blue-500/30 bg-blue-500/10 px-2.5 py-1 text-[11px] font-medium text-blue-400",children:["Active: ",l.name]}):(0,t.jsx)("span",{className:"rounded-full border border-[var(--card-border)] px-2.5 py-1 text-[11px] font-medium text-[var(--muted-foreground)]",children:"Active: AGX default"})]}),(0,t.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,t.jsxs)("label",{className:"flex flex-col gap-1.5",children:[(0,t.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-[0.14em] text-[var(--muted-foreground)]",children:"Name"}),(0,t.jsx)("input",{type:"text",className:"rounded-lg border border-[var(--card-border)] bg-[var(--background)] px-3 py-2 text-sm text-[var(--foreground)] outline-none transition-colors focus:border-blue-500",placeholder:"Investigation-first",value:m,onChange:e=>p(e.target.value)})]}),(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,t.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-[0.14em] text-[var(--muted-foreground)]",children:"Prompt"}),(0,t.jsx)("div",{className:"overflow-hidden rounded-lg border border-[var(--card-border)] bg-[var(--background)] transition-colors focus-within:border-blue-500 [&_.rich-text-editor_.ProseMirror]:min-h-[220px]",children:(0,t.jsx)(P.default,{content:x,onChange:g,placeholder:"Read {{ticket.identifier}} and the full comment thread in Linear before changing code.\nWrite your investigation to {{knowledge_base.issue_path}} and stop after posting a plan unless the issue is already approved for implementation."})})]}),h?(0,t.jsx)("div",{className:"rounded-lg border border-red-500/30 bg-red-500/10 px-3 py-2 text-xs text-red-300",children:h}):null,(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,t.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1.5 rounded-lg bg-blue-500 px-3 py-2 text-sm font-medium text-white transition-colors hover:bg-blue-600",onClick:k,children:[(0,t.jsx)(E,{size:14}),"Save as new"]}),"edit"===c.type?(0,t.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1.5 rounded-lg border border-[var(--card-border)] px-3 py-2 text-sm font-medium text-[var(--foreground)] transition-colors hover:bg-[var(--background)]",onClick:()=>{if("edit"!==c.type)return void k();try{let e=i({id:c.scriptId,name:m,prompt:x});u({type:"edit",scriptId:e.id}),v(null)}catch(e){v(e instanceof Error?e.message:"Failed to update session script.")}},children:[(0,t.jsx)(E,{size:14}),"Update"]}):null,"edit"===c.type?(0,t.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1.5 rounded-lg border border-red-500/30 px-3 py-2 text-sm font-medium text-red-300 transition-colors hover:bg-red-500/10",onClick:()=>{j(s.find(e=>e.id===c.scriptId)??null)},children:[(0,t.jsx)(R.Trash2,{size:14}),"Delete"]}):null,(0,t.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1.5 rounded-lg border border-[var(--card-border)] px-3 py-2 text-sm font-medium text-[var(--muted-foreground)] transition-colors hover:bg-[var(--background)] hover:text-[var(--foreground)]",onClick:w,children:[(0,t.jsx)(f.Plus,{size:14}),"Clear editor"]})]})]})]})]}),(0,t.jsx)(M.default,{isOpen:!!b,title:"Delete session script?",message:"This removes the saved script from this device for the current project.",preview:b?.name,confirmLabel:"Delete",variant:"danger",onConfirm:()=>{b&&(o(b.id),"edit"===c.type&&c.scriptId===b.id&&(u({type:"new"}),p(""),g("")),j(null),v(null))},onCancel:()=>j(null)})]})}var z=e.i(423709);let U="agx-linear:boardFilters",D={search:"",assigneeIds:[],statuses:[],teamId:"",cycleId:"",sortBy:"activity",sortDir:"desc",hasActivity:!1};function O(){return void 0!==window.localStorage}function F(e){return Array.isArray(e)?Array.from(new Set(e.map(e=>"string"==typeof e?e.trim():"").filter(Boolean))):[]}function q(e){let t=String(e??"").trim().toLowerCase();return t?`${U}:${t}`:`${U}:global`}var B=e.i(169433),_=e.i(990933);function W(e,t){return e.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||t}var K=e.i(906724);let G=[{id:"claude",label:"Claude Code",icon:"🟣"},{id:"codex",label:"Codex",icon:"⚫"},{id:"gemini",label:"Gemini CLI",icon:"🔵"}];function X({connected:e,user:s,clis:a,mcpConfigured:n,onConnect:i,onConnectWithKey:o,onDisconnect:l,onConfigureMcp:c,onContinue:u}){let[p,x]=(0,r.useState)(""),[g,f]=(0,r.useState)(null),[h,v]=(0,r.useState)(!1),[b,j]=(0,r.useState)(null),[y,w]=(0,r.useState)(null),k=async()=>{if(!p.trim())return;v(!0),f(null);let e=await o(p.trim());v(!1),e.ok||f(e.error||"Failed to connect")},N=async e=>{j(e),w(null);let t=await c(e);j(null),t.ok||w(t.error||"Failed to configure")},S=G.filter(e=>a[e.id]).some(e=>n[e.id]);return(0,t.jsx)("div",{className:"flex h-full items-center justify-center",children:(0,t.jsxs)("div",{className:"w-full max-w-md space-y-6 px-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[e&&(0,t.jsx)("div",{className:"flex h-4 w-4 items-center justify-center rounded-full bg-green-500/20",children:(0,t.jsx)(d.Check,{size:10,className:"text-green-500"})}),(0,t.jsx)("h2",{className:"text-sm font-semibold text-[var(--foreground)]",children:"Connect to Linear"})]}),(0,t.jsx)("p",{className:"mt-1 text-xs text-[var(--muted-foreground)]",children:"Connect your workspace to browse tickets and execute them with agents."}),(0,t.jsx)("div",{className:"mt-3 space-y-3",children:e?(0,t.jsxs)("div",{className:"flex items-center justify-between rounded-md border border-[var(--card-border)] px-3 py-2",children:[(0,t.jsxs)("div",{className:"text-xs text-[var(--foreground)]",children:["Connected as"," ",(0,t.jsx)("span",{className:"font-medium",children:s?.name})]}),(0,t.jsx)("button",{type:"button",onClick:l,className:"text-[10px] text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:"Disconnect"})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("button",{type:"button",onClick:i,className:"w-full rounded-md bg-[var(--foreground)] px-4 py-2 text-xs font-medium text-[var(--card-bg)] transition-opacity hover:opacity-90",children:"Connect with Linear"}),(0,t.jsxs)("div",{className:"flex items-center gap-2 text-[10px] text-[var(--muted-foreground)]",children:[(0,t.jsx)("div",{className:"flex-1 border-t border-[var(--card-border)]"}),"or",(0,t.jsx)("div",{className:"flex-1 border-t border-[var(--card-border)]"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("label",{className:"text-[10px] text-[var(--muted-foreground)] block mb-1",children:"Personal API key"}),(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsx)("input",{type:"password",value:p,onChange:e=>{x(e.target.value),f(null)},onKeyDown:e=>{"Enter"===e.key&&k()},placeholder:"lin_api_...",className:"flex-1 rounded-md border border-[var(--card-border)] bg-transparent px-3 py-1.5 text-xs text-[var(--foreground)] placeholder:text-[var(--muted-foreground)] focus:outline-none focus:ring-1 focus:ring-[var(--foreground)]"}),(0,t.jsx)("button",{type:"button",onClick:k,disabled:!p.trim()||h,className:"rounded-md border border-[var(--card-border)] px-3 py-1.5 text-xs text-[var(--foreground)] transition-colors hover:bg-[var(--card-border)] disabled:opacity-40",children:h?"...":"Save"})]}),g&&(0,t.jsx)("p",{className:"mt-1 text-[10px] text-red-400",children:g}),(0,t.jsxs)("a",{href:"https://linear.app/settings/api",target:"_blank",rel:"noopener noreferrer",className:"mt-1 inline-flex items-center gap-1 text-[10px] text-[var(--muted-foreground)] hover:text-[var(--foreground)] transition-colors",children:["Generate at linear.app/settings/api",(0,t.jsx)(m.ExternalLink,{size:8})]})]})]})})]}),e&&(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-sm font-semibold text-[var(--foreground)]",children:"Configure MCP"}),(0,t.jsx)("p",{className:"mt-1 text-xs text-[var(--muted-foreground)]",children:"Add the Linear MCP server to your AI tools so agents can read and update tickets during execution."}),(0,t.jsxs)("div",{className:"mt-3 space-y-1",children:[G.map(e=>{let r=a[e.id],s=n[e.id],i=b===e.id;return(0,t.jsxs)("div",{className:`flex items-center justify-between rounded-md border border-[var(--card-border)] px-3 py-2 ${!r?"opacity-40":""}`,children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs",children:[(0,t.jsx)("span",{children:e.icon}),(0,t.jsx)("span",{className:"text-[var(--foreground)]",children:e.label})]}),r?s?(0,t.jsxs)("span",{className:"flex items-center gap-1 text-[10px] text-green-500",children:[(0,t.jsx)(d.Check,{size:10}),"Configured"]}):(0,t.jsx)("button",{type:"button",onClick:()=>N(e.id),disabled:i,className:"flex items-center gap-1 rounded px-2 py-0.5 text-[10px] text-[var(--foreground)] border border-[var(--card-border)] hover:bg-[var(--card-border)] transition-colors disabled:opacity-50",children:i?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(K.Loader2,{size:10,className:"animate-spin"}),"Configuring..."]}):"Configure"}):(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:"Not installed"})]},e.id)}),y&&(0,t.jsx)("p",{className:"mt-1 text-[10px] text-red-400",children:y})]}),(0,t.jsx)("button",{type:"button",onClick:u,className:"mt-4 w-full rounded-md bg-[var(--foreground)] px-4 py-2 text-xs font-medium text-[var(--card-bg)] transition-opacity hover:opacity-90",children:S?"Continue":"Skip for now"})]})]})})}let J=(0,n.default)(()=>e.A(501223).then(e=>e.Composer),{loadableGenerated:{modules:[844118]},ssr:!1});function H({onResize:e}){let s=(0,r.useRef)(!1),a=(0,r.useRef)(0);return(0,r.useEffect)(()=>{if(!s.current)return;let t=t=>{let r=t.clientX-a.current;a.current=t.clientX,e(r)},r=()=>{s.current=!1,document.body.style.cursor="",document.body.style.userSelect="",window.removeEventListener("mousemove",t),window.removeEventListener("mouseup",r)};return window.addEventListener("mousemove",t),window.addEventListener("mouseup",r),()=>{window.removeEventListener("mousemove",t),window.removeEventListener("mouseup",r)}}),(0,t.jsx)("div",{className:"group relative z-10 w-0 shrink-0 cursor-col-resize",onMouseDown:e=>{e.preventDefault(),s.current=!0,a.current=e.clientX,document.body.style.cursor="col-resize",document.body.style.userSelect="none"},children:(0,t.jsx)("div",{className:"absolute inset-y-0 -left-0.5 w-1 transition-colors group-hover:bg-[var(--primary)]/40"})})}function V(e,t,r=20){let s=t?t.replace("#",""):"e2e8f0";return`https://api.dicebear.com/9.x/bottts-neutral/svg?seed=${encodeURIComponent(e)}&size=${r}&backgroundColor=${s}`}function Y(e){if("chat"===e.mode)switch(e.status){case"queued":return{label:"starting",tone:"queued"};case"running":return{label:"thinking",tone:"running"};case"success":return{label:"ready",tone:"ready"};case"failed":return{label:"error",tone:"failed"};case"cancelled":return{label:"stopped",tone:"cancelled"}}return{label:function(e){switch(e){case"queued":return"queued";case"running":return"running";case"success":return"success";case"failed":return"failed";case"cancelled":return"cancelled";default:return e}}(e.status),tone:e.status}}function Q(e){let t=e.sessionTitle?.trim();return t||("scripted"===e.mode?"Scripted session":"Chat session")}let Z={"In Progress":"In Prog","In Review":"Review",Backlog:"Backlog",Todo:"Todo",Done:"Done",Cancelled:"Cancl."},ee={queued:"bg-amber-500/10 border-amber-500/20 text-amber-400",running:"bg-yellow-500/10 border-yellow-500/20 text-yellow-400",ready:"bg-sky-500/10 border-sky-500/20 text-sky-400",success:"bg-emerald-500/10 border-emerald-500/20 text-emerald-400",failed:"bg-red-500/10 border-red-500/20 text-red-400",cancelled:"bg-zinc-500/10 border-zinc-500/20 text-zinc-400"},et={queued:"bg-amber-400",running:"bg-yellow-400",ready:"bg-sky-400",success:"bg-emerald-400",failed:"bg-red-400",cancelled:"bg-zinc-400"},er={queued:"text-amber-500",running:"text-yellow-500",ready:"text-sky-500",success:"text-green-500",failed:"text-red-500",cancelled:"text-[var(--muted-foreground)]"};function es({label:e,value:r,options:s,activeClasses:a,onChange:n,disabled:i=!1}){let o=r.trim().length>0;return(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("select",{"aria-label":e,className:`max-w-[160px] appearance-none rounded-full border bg-transparent px-2.5 py-0.5 pr-6 text-[11px] font-medium outline-none transition-colors disabled:cursor-not-allowed disabled:opacity-60 ${o?a:"border-[var(--card-border)] text-[var(--muted-foreground)] hover:bg-[var(--card-bg)]"}`,value:r,disabled:i,onChange:e=>n(e.target.value),children:s.map(r=>(0,t.jsx)("option",{value:r.value,children:r.label},`${e}-${r.value||"all"}`))}),(0,t.jsx)(c.ChevronDown,{size:12,className:"pointer-events-none absolute right-2 top-1/2 -translate-y-1/2 text-current"})]})}function ea({status:e,options:r,onChange:s,disabled:a=!1,updating:n=!1}){return(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)("select",{"aria-label":"Ticket status",className:"max-w-[160px] appearance-none rounded-md border border-[var(--card-border)] bg-[var(--card-bg)] px-2.5 py-1 pr-8 text-xs font-medium text-[var(--foreground)] outline-none transition-colors hover:border-[var(--muted-foreground)] disabled:cursor-not-allowed disabled:opacity-60",value:e,disabled:a||n,onChange:e=>s(e.target.value),children:r.map(e=>(0,t.jsx)("option",{value:e.value,children:e.label},`ticket-status-${e.value}`))}),n?(0,t.jsx)(h.RefreshCw,{size:12,className:"pointer-events-none absolute right-6 top-1/2 -translate-y-1/2 animate-spin text-[var(--muted-foreground)]"}):null,(0,t.jsx)(c.ChevronDown,{size:12,className:"pointer-events-none absolute right-2 top-1/2 -translate-y-1/2 text-[var(--muted-foreground)]"})]})}function en({label:e,values:s,options:a,activeClasses:n,onChange:i,emptyLabel:o}){let[l,u]=(0,r.useState)(!1),m=(0,r.useRef)(null),p=a.filter(e=>e.value&&s.includes(e.value)),x=p.length>0,g=(()=>{if(0===p.length||p.length===a.length)return o??e;if(1===p.length)return p[0]?.label??o??e;let t=e.toLowerCase();return`${p.length} ${t}${t.endsWith("s")?"es":"s"}`})();(0,r.useEffect)(()=>{if(!l)return;let e=e=>{m.current&&!m.current.contains(e.target)&&u(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[l]);let f=(0,r.useCallback)(e=>{e?i(s.includes(e)?s.filter(t=>t!==e):[...s,e]):i([])},[i,s]);return(0,t.jsxs)("div",{className:"relative",ref:m,children:[(0,t.jsxs)("button",{type:"button","aria-label":e,"aria-haspopup":"listbox","aria-expanded":l,className:`flex max-w-[180px] items-center gap-1 rounded-full border px-2.5 py-0.5 text-[11px] font-medium transition-colors ${x?n:"border-[var(--card-border)] text-[var(--muted-foreground)] hover:bg-[var(--card-bg)]"}`,onClick:()=>u(e=>!e),children:[(0,t.jsx)("span",{className:"max-w-[132px] truncate",children:g}),(0,t.jsx)(c.ChevronDown,{size:12,className:`shrink-0 transition-transform ${l?"rotate-180":""}`})]}),l?(0,t.jsxs)("div",{role:"listbox","aria-label":`${e} options`,"aria-multiselectable":"true",className:"absolute left-0 top-full z-50 mt-1 min-w-[240px] overflow-hidden rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] p-1 shadow-lg backdrop-blur-sm",children:[(0,t.jsxs)("button",{type:"button",role:"option","aria-selected":!x,className:`flex w-full items-center gap-2 rounded-lg px-3 py-2 text-left text-xs transition-colors ${!x?"bg-[var(--background)] font-medium text-[var(--foreground)]":"text-[var(--muted-foreground)] hover:bg-[var(--background)] hover:text-[var(--foreground)]"}`,onClick:()=>i([]),children:[(0,t.jsx)("span",{className:`flex h-4 w-4 shrink-0 items-center justify-center rounded-full border ${!x?"border-blue-500 bg-blue-500 text-white":"border-[var(--card-border)]"}`,children:x?null:(0,t.jsx)(d.Check,{size:10})}),(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate",children:o??e})]}),p.length>0?(0,t.jsx)("div",{className:"px-3 pb-1 pt-2 text-[10px] font-medium uppercase tracking-[0.12em] text-[var(--muted-foreground)]",children:"Selected"}):null,a.filter(e=>e.value).map(r=>{let a=s.includes(r.value);return(0,t.jsxs)("button",{type:"button",role:"option","aria-selected":a,className:`flex w-full items-center gap-2 rounded-lg px-3 py-2 text-left text-xs transition-colors ${a?"bg-[var(--background)] font-medium text-[var(--foreground)]":"text-[var(--muted-foreground)] hover:bg-[var(--background)] hover:text-[var(--foreground)]"}`,onClick:()=>f(r.value),children:[(0,t.jsx)("span",{className:`flex h-4 w-4 shrink-0 items-center justify-center rounded border ${a?"border-blue-500 bg-blue-500 text-white":"border-[var(--card-border)]"}`,children:a?(0,t.jsx)(d.Check,{size:10}):null}),(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate",children:r.label})]},`${e}-${r.value}`)})]}):null]})}function ei({issue:e,participants:s,projectId:a,projectSlug:n,issueStatusOptions:i,issueStatusUpdating:o,onIssueStatusChange:l,activeSessionScriptLabel:d,onOpenSessionScripts:c,onStartScriptedSession:u,createRun:m,updateRun:x,onRunCreated:f}){let h=s[0],v=(0,r.useRef)(crypto.randomUUID()),{messages:b,setMessages:y,sendMessage:w,chatRuns:k}=(0,A.useGroupChat)(v.current),{processes:N,streaming:S}=(0,$.useProcessPolling)({workspaceId:v.current},{messages:b,setMessages:y}),I=new Set(["queued","running","awaiting_user","blocked"]),C=k.some(e=>I.has(e.status))||N.some(e=>"spawning"===e.state||"running"===e.state)?k.some(e=>"queued"===e.status)?"queued":"working":"ready",E=(0,r.useMemo)(()=>new Map(s.map(e=>[e.id,e])),[s]),R=(0,r.useRef)(!1),M=(0,r.useCallback)(async(t,r,i,o,l,d,c)=>{if(R.current)return;R.current=!0;let u=(l?s.find(e=>e.id===l):null)??h;if(u)try{var p,g,v;let r,s,i,o,l,h,b,j,y,w,k,N,S,I,C,A,$,L,E,R,{promptPrefix:M}=(i=(g={issue:{identifier:e.identifier,title:e.title,status:e.status,assignee:e.assignee},project:n?{slug:n}:null}).issue.identifier.trim()||"TICKET-ID",o=g.issue.title.trim()||"Untitled ticket",l=String(g.issue.status??"").trim()||"Unknown",h=String(g.issue.assignee??"").trim()||"Unassigned",b=function(e){let t=String(e?.slug??"").trim();if(t)return W(t,"project");let r=String(e?.name??"").trim();return r?W(r,"project"):"project"}(g.project),j=String(g.project?.name??"").trim()||b,y=String(g.runtime?.knowledgeBaseRoot??"").trim()||`~/.agx/vault/${b}`,w=String(g.runtime?.issueKnowledgePath??"").trim()||`${y}/issues/${i}/`,k=String(g.runtime?.isolatedWorktreePath??"").trim()||`/tmp/agx-${W(i,"ticket")}`,S=(N={issue:{identifier:i,title:o,status:l,assignee:h},project:{name:j,slug:b,label:(v=g.project,r=String(v?.name??"").trim(),s=String(v?.slug??"").trim(),r&&s?`${r} (${s})`:r||s||"current project"),repos:g.project?.repos?[...g.project.repos]:[]},runtime:{knowledgeBaseRoot:y,issueKnowledgePath:w,isolatedWorktreePath:k}}).issue.identifier,I=N.issue.title,C=N.issue.status,A=N.issue.assignee,$=N.runtime.knowledgeBaseRoot,L=N.runtime.issueKnowledgePath,E=N.runtime.isolatedWorktreePath,R=`LINEAR TASK EXECUTION
2
-
3
- You are an engineer working through a single Linear ticket. Work like a careful teammate: continue existing work when present, investigate before coding, present a plan before implementation, ask clarifying questions when requirements are ambiguous, and stop cleanly when blocked instead of guessing.
4
-
5
- INJECTED CONTEXT
6
- - Ticket: ${S}
7
- - Title: ${I}
8
- - Current status: ${C}
9
- - Current assignee: ${A}
10
- - Project: ${N.project.label}
11
- - Knowledge base root: ${$}
12
- - Issue knowledge path: ${L}
13
- - Suggested isolated worktree: ${E}
14
- - Additional project resources such as repo knowledge, project memory, and project variables are injected separately by the active project context.
15
-
16
- SOURCE REPOSITORIES
17
- ${!(p=N.project.repos)||0===p.length?"- Use the active project context to discover the right repository or workspace; do not hardcode paths.":p.map(e=>{let t=[e.name.trim()||"repository"],r=String(e.path??"").trim(),s=String(e.notes??"").trim();return r&&t.push(`path: ${r}`),s&&t.push(`notes: ${s}`),`- ${t.join(" | ")}`}).join("\n")}
18
-
19
- WORKFLOW
20
- 1. Read the full Linear issue and comment thread before acting. Use Linear MCP for issue details, comments, state changes, and follow-up.
21
- 2. Prefer resuming existing work: existing knowledge-base notes, branches, PRs, or prior discussion.
22
- 3. If requirements are unclear, ask specific clarifying questions in Linear and stop.
23
- 4. If the ticket is fresh, investigate first, capture findings in the knowledge base, write a plan, and share the plan before implementation.
24
- 5. If a reviewed plan already exists or the ticket is explicitly ready for implementation, implement in an isolated worktree or equivalent isolated workspace rather than a shared checkout.
25
- 6. Validate with the appropriate tests, linting, type checks, and manual verification for the change.
26
- 7. Keep Linear accurate: comments, links, statuses, blockers, and PR references should match reality.
27
- 8. Keep the knowledge base current with what you learned, what changed, and what remains.
28
- 9. Work on exactly this ticket during this session.
29
-
30
- RULES
31
- - Use the injected project context instead of hardcoded repo-specific paths or conventions.
32
- - Use knowledge base terminology; the filesystem path above is the storage location.
33
- - If a PR already exists, focus on CI failures, reviewer feedback, merge status, or ticket follow-up instead of starting over.
34
- - Leave the ticket and the knowledge base in a resumable state at the end of the session. Clean up temporary worktrees or session claims if your workflow created them.
35
-
36
- `,{prompt:`Work on this Linear ticket: ${S} - ${I}`,promptPrefix:R}),P=M+(d?`
37
- ${d}`:""),T=await m({projectId:a??null,projectSlug:n??null,issueId:e.id,issueIdentifier:e.identifier,issueTitle:e.title,issueStatus:e.status,issueAssignee:e.assignee??null,agentId:u.id,agentName:u.name,mode:"chat"}),z=await fetch("/api/chat",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({prompt:t,promptPrefix:P,threadId:T.threadId,activeParticipantIds:[u.id],projectSlug:n??void 0,routing:c})}),U=await z.json().catch(()=>({}));if(!z.ok||!U.chatRunId||!U.userMessageId)throw Error(U.error||"Failed to start chat session");await x(T.id,{chatRunId:U.chatRunId,rootMessageId:U.userMessageId}),f(T.id)}catch(e){console.error("Failed to create chat session:",e),R.current=!1,e instanceof Error&&window.alert(e.message)}},[e,s,h,a,n,m,x,f]);return(0,t.jsxs)("div",{className:"relative flex min-w-0 flex-1 flex-col overflow-hidden",children:[(0,t.jsxs)("header",{className:"flex h-12 shrink-0 items-center justify-between border-b border-[var(--card-border)] px-6",children:[(0,t.jsxs)("div",{className:"flex min-w-0 items-center gap-3",children:[(0,t.jsx)("span",{className:"shrink-0 font-mono text-sm text-[var(--muted-foreground)]",children:e.identifier}),(0,t.jsx)("div",{className:"h-1 w-1 shrink-0 rounded-full bg-[var(--card-border)]"}),(0,t.jsx)("span",{className:"truncate text-sm font-medium text-[var(--foreground)]",children:e.title})]}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-2",children:[(0,t.jsx)(ea,{status:e.status,options:i,disabled:0===i.length,updating:o,onChange:t=>l(e,t)}),(0,t.jsxs)("button",{type:"button",className:"flex items-center gap-1 rounded-md border border-[var(--card-border)] px-2 py-1 text-xs font-medium text-[var(--muted-foreground)] transition-colors hover:bg-[var(--card-bg)] hover:text-[var(--foreground)]",onClick:c,title:`Session script: ${d}. Choose or edit the kickoff prompt for this ticket.`,children:[(0,t.jsx)(p.FileText,{size:12}),(0,t.jsx)("span",{className:"max-w-[120px] truncate",children:"AGX default"===d?"Session script":d})]}),(0,t.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1.5 rounded-md bg-blue-500 px-2.5 py-1 text-xs font-medium text-white transition-colors hover:bg-blue-600",onClick:u,children:[(0,t.jsx)(g.Play,{size:12}),(0,t.jsx)("span",{children:"Start scripted session"})]})]})]}),(0,t.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto px-6 py-6 pb-64",children:0===b.length?(0,t.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-2 text-[var(--muted-foreground)]",children:[(0,t.jsx)("span",{className:"text-sm",children:"Start a new session for this ticket"}),(0,t.jsx)("span",{className:"text-xs",children:"Type a message to open a chat, or launch the active session script."})]}):(0,t.jsxs)("div",{className:"mx-auto max-w-4xl space-y-8",children:[b.map(e=>{let r=e.participantId?E.get(e.participantId):null,s=(0,z.stripMarkers)(e.content);return s.trim()?(0,t.jsxs)("div",{className:"flex gap-3",children:["user"===e.role?(0,t.jsx)("div",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-full bg-[var(--app-shell-subtle,var(--card-bg))]",children:(0,t.jsx)(j.User,{className:"h-3.5 w-3.5 text-[var(--muted-foreground)]"})}):(0,t.jsx)("img",{src:V(e.participantId??"",r?.color),alt:r?.name??"Agent",className:"h-7 w-7 shrink-0 rounded-full object-cover"}),(0,t.jsxs)("div",{className:"min-w-0 flex-1 flex flex-col gap-1.5",children:[(0,t.jsx)("span",{className:"text-sm font-semibold text-[var(--foreground)]",children:"user"===e.role?"You":r?.name??"Agent"}),(0,t.jsx)("div",{className:"text-sm text-[var(--foreground)]",children:(0,t.jsx)(L.Markdown,{content:s,isUser:"user"===e.role})})]})]},e.id):null}),Object.entries(S).map(([e])=>{let r=E.get(e);return(0,t.jsxs)("div",{className:"flex items-center gap-3 text-sm text-[var(--muted-foreground)]",children:[(0,t.jsx)("img",{src:V(e,r?.color),alt:r?.name??"Agent",className:"h-7 w-7 shrink-0 rounded-full object-cover"}),r?.name??"Agent"," is thinking..."]},`stream-${e}`)})]})}),(0,t.jsx)("div",{className:"absolute bottom-3 left-3 right-3 p-2",children:(0,t.jsx)(J,{onSend:M,onStop:()=>{},participants:s,projectSlug:n??void 0,loading:"ready"!==C,commands:[],activityStatus:C,placeholder:`Ask about ${e.identifier}...`,initialPinnedParticipantId:h?.id})})]})}function eo({issue:e,run:s,participants:a,issueStatusOptions:n,issueStatusUpdating:i,onIssueStatusChange:o}){let{messages:l,setMessages:d,sendMessage:c,loadHistory:m,stop:p}=(0,A.useGroupChat)(s.threadId),{processes:x,streaming:g,chatRuns:f}=(0,$.useProcessPolling)(s.rootMessageId?{workspaceId:s.threadId,threadId:s.rootMessageId}:{workspaceId:s.threadId},{messages:l,setMessages:d}),h=(0,r.useMemo)(()=>{let e=f[0];if(!e)return Y(s);let t={queued:"queued",running:"running",awaiting_user:"running",blocked:"running",completed:"success",failed:"failed",cancelled:"cancelled"}[e.status]??s.status;return Y({...s,status:t})},[f,s]);(0,r.useEffect)(()=>{m()},[m,s.threadId]);let v=(0,r.useMemo)(()=>new Map(a.map(e=>[e.id,e])),[a]),b=new Set(["queued","running","awaiting_user","blocked"]),y=f.some(e=>b.has(e.status))||x.some(e=>"spawning"===e.state||"running"===e.state)?f.some(e=>"queued"===e.status)?"queued":"working":"ready",w=(0,r.useCallback)((e,t,r,n,i,o,l)=>{s.rootMessageId&&c(e,t,void 0,s.rootMessageId,r,void 0,(0,_.orderParticipantIds)(a.map(e=>e.id),i),s.projectSlug??void 0,o,l)},[a,s.projectSlug,s.rootMessageId,c]);return(0,t.jsxs)("div",{className:"relative flex min-w-0 flex-1 flex-col overflow-hidden",children:[(0,t.jsxs)("header",{className:"flex h-12 shrink-0 items-center justify-between border-b border-[var(--card-border)] px-6",children:[(0,t.jsxs)("div",{className:"flex min-w-0 items-center gap-3",children:[(0,t.jsx)("span",{className:"shrink-0 font-mono text-sm text-[var(--muted-foreground)]",children:e.identifier}),(0,t.jsx)("div",{className:"h-1 w-1 shrink-0 rounded-full bg-[var(--card-border)]"}),(0,t.jsx)("span",{className:"truncate text-sm font-medium text-[var(--foreground)]",children:Q(s)})]}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-4",children:[(0,t.jsx)(ea,{status:e.status,options:n,disabled:0===n.length,updating:i,onChange:t=>o(e,t)}),(0,t.jsxs)("div",{className:`flex items-center gap-2 rounded-md border px-2.5 py-1 ${ee[h.tone]}`,children:[(0,t.jsx)("div",{className:`h-1.5 w-1.5 rounded-full ${et[h.tone]}`}),(0,t.jsx)("span",{className:"text-xs font-semibold uppercase tracking-wider",children:h.label})]}),null!=s.durationMs&&(0,t.jsxs)("div",{className:"flex items-center gap-1.5 text-sm text-[var(--muted-foreground)]",children:[(0,t.jsx)(u.Clock,{size:14}),(0,t.jsxs)("span",{children:[(s.durationMs/1e3).toFixed(1),"s"]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 rounded-full border border-[var(--card-border)] bg-[var(--card-bg)] px-2 py-1",children:[(0,t.jsx)("img",{src:V(s.agentId,v.get(s.agentId)?.color),alt:s.agentName,className:"h-5 w-5 rounded-full object-cover"}),(0,t.jsx)("span",{className:"pr-1 text-xs font-medium",children:s.agentName})]})]})]}),(0,t.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto px-6 py-6 pb-64",children:0===l.length?(0,t.jsx)("div",{className:"py-8 text-center text-xs text-[var(--muted-foreground)]",children:"queued"===s.status||"running"===s.status?"Starting session...":"No thread messages yet."}):(0,t.jsxs)("div",{className:"mx-auto max-w-4xl space-y-8",children:[l.map(e=>{let r=e.participantId?v.get(e.participantId):null,a=(0,z.stripMarkers)(e.content);if(!a.trim())return null;let n=e.participantId??s.agentId;return(0,t.jsxs)("div",{className:"flex gap-3",children:["user"===e.role?(0,t.jsx)("div",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-full bg-[var(--app-shell-subtle,var(--card-bg))]",children:(0,t.jsx)(j.User,{className:"h-3.5 w-3.5 text-[var(--muted-foreground)]"})}):(0,t.jsx)("img",{src:V(n,r?.color),alt:r?.name??s.agentName,className:"h-7 w-7 shrink-0 rounded-full object-cover"}),(0,t.jsxs)("div",{className:"min-w-0 flex-1 flex flex-col gap-1.5",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("div",{className:"flex items-center gap-2",children:"user"===e.role?(0,t.jsx)("span",{className:"text-sm font-semibold text-[var(--foreground)]",children:"You"}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"text-sm font-semibold",style:{color:r?.color??"var(--foreground)"},children:r?.name??s.agentName}),(0,t.jsx)("span",{className:"rounded bg-[var(--card-bg)] px-1.5 py-0.5 text-[10px] font-bold uppercase tracking-wider text-[var(--muted-foreground)]",children:"Agent"})]})}),(0,t.jsx)("span",{className:"text-xs text-[var(--muted-foreground)]",children:new Date(e.timestamp).toLocaleTimeString([],{hour:"numeric",minute:"2-digit"})})]}),"user"===e.role?(0,t.jsx)("div",{className:"w-fit max-w-[85%] rounded-xl rounded-tl-sm border border-[var(--card-border)] bg-[var(--card-bg)] px-4 py-3 text-sm text-[var(--foreground)]",children:(0,t.jsx)(L.Markdown,{content:a,isUser:!0})}):(0,t.jsx)("div",{className:"text-sm text-[var(--foreground)]",children:(0,t.jsx)(L.Markdown,{content:a,isUser:!1})})]})]},e.id)}),Object.entries(g).filter(([,e])=>!s.rootMessageId||e.rootMessageId===s.rootMessageId).map(([e])=>{let r=v.get(e);return(0,t.jsxs)("div",{className:"flex items-center gap-3 text-sm text-[var(--muted-foreground)]",children:[(0,t.jsx)("img",{src:V(e,r?.color),alt:r?.name??s.agentName,className:"h-7 w-7 shrink-0 rounded-full object-cover"}),r?.name??s.agentName," is thinking..."]},`stream-${e}`)})]})}),(0,t.jsx)("div",{className:"absolute bottom-3 left-3 right-3 p-2",children:s.rootMessageId?(0,t.jsx)(J,{onSend:w,onStop:p,participants:a,projectSlug:s.projectSlug??void 0,loading:"ready"!==y,commands:[],activityStatus:y,placeholder:"Continue this session...",initialPinnedParticipantId:s.agentId}):(0,t.jsx)("div",{className:"px-2 py-1 text-xs text-[var(--muted-foreground)]",children:"Waiting for the session to start..."})})]})}function el({issue:e,selected:s,onSelect:a,activeAgents:n,participants:i}){let[o,l]=(0,r.useState)(!1),c=(0,r.useRef)(null);(0,r.useEffect)(()=>()=>{c.current&&window.clearTimeout(c.current)},[]);let u=(0,r.useCallback)(async t=>{if(t.stopPropagation(),e.url)try{await navigator.clipboard.writeText(e.url),l(!0),c.current&&window.clearTimeout(c.current),c.current=window.setTimeout(()=>{l(!1)},1500)}catch(e){console.error("Failed to copy Linear issue URL:",e),l(!1)}},[e.url]),p=(0,r.useCallback)(t=>{if(t.stopPropagation(),e.url){var r;let t;r=e.url,t=window.open(r,"_blank","noopener,noreferrer"),t?.focus()}},[e.url]),g=Z[e.status]??e.status.slice(0,6);return(0,t.jsxs)("div",{className:`group relative flex cursor-pointer items-center gap-3 px-4 py-2.5 text-sm transition-colors ${s?"bg-[var(--card-bg)]":"hover:bg-[var(--card-bg)]/50"}`,onClick:a,role:"button",tabIndex:0,onKeyDown:e=>{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),a())},children:[s&&(0,t.jsx)("div",{className:"absolute left-0 top-0 bottom-0 w-[3px] rounded-r-full bg-blue-500"}),(0,t.jsx)("span",{className:"w-24 shrink-0 whitespace-nowrap font-mono text-xs text-[var(--muted-foreground)]",children:e.identifier}),(0,t.jsx)("span",{className:`min-w-0 flex-1 truncate text-xs ${s?"font-medium text-[var(--foreground)]":"text-[var(--muted-foreground)]"}`,children:e.title}),(0,t.jsx)("span",{className:"shrink-0 text-xs text-[var(--muted-foreground)]",children:g}),n&&n.length>0&&(0,t.jsx)("span",{className:"inline-flex items-center -space-x-1 shrink-0",children:n.slice(0,3).map(e=>{let r=i?.find(t=>t.id===e.agentId);return(0,t.jsxs)("span",{className:"relative inline-block",title:r?.name??e.agentName,children:[(0,t.jsx)("img",{src:V(e.agentId,r?.color,16),alt:r?.name??e.agentName,className:"h-3 w-3 rounded-full ring-[1.5px] ring-[var(--app-shell-pane)]"}),(0,t.jsx)("span",{className:"absolute -bottom-px -right-px h-1.5 w-1.5 rounded-full bg-green-500 ring-[1px] ring-[var(--app-shell-pane)]"})]},e.agentId)})}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-1",children:[(0,t.jsx)("button",{type:"button",className:`flex h-6 w-6 shrink-0 items-center justify-center rounded text-[var(--muted-foreground)] transition-all hover:bg-zinc-700 hover:text-[var(--foreground)] ${s?"opacity-100":"opacity-0 group-hover:opacity-100"} ${e.url?"":"cursor-not-allowed opacity-40 hover:bg-transparent hover:text-[var(--muted-foreground)]"}`,onClick:e=>{u(e)},title:o?"Copied ticket URL":"Copy ticket URL","aria-label":o?"Copied ticket URL":"Copy ticket URL",disabled:!e.url,children:o?(0,t.jsx)(d.Check,{size:10,className:"text-emerald-400"}):(0,t.jsx)(x,{size:10})}),(0,t.jsx)("button",{type:"button",className:`flex h-6 w-6 shrink-0 items-center justify-center rounded text-[var(--muted-foreground)] transition-all hover:bg-zinc-700 hover:text-[var(--foreground)] ${s?"opacity-100":"opacity-0 group-hover:opacity-100"} ${e.url?"":"cursor-not-allowed opacity-40 hover:bg-transparent hover:text-[var(--muted-foreground)]"}`,onClick:p,title:e.url?"Open this Linear ticket in a new tab":"This ticket does not have a Linear URL","aria-label":e.url?"Open this Linear ticket in a new tab":"This ticket does not have a Linear URL",disabled:!e.url,children:(0,t.jsx)(m.ExternalLink,{size:10})})]})]})}function ed({projectId:e,projectSlug:s,initialShowSettings:a}){let{connected:n,loading:i,user:d,clis:c,mcpConfigured:u,connect:m,connectWithKey:p,disconnect:x,configureMcp:g}=(0,w.useLinearConnection)(),[j,k]=(0,r.useState)(!1),[A,$]=(0,r.useState)(a??!1),[L,E]=(0,r.useState)(!1),[R,M]=(0,r.useState)(()=>(0,B.loadLinearTicketPanelWidth)()||576),[P,z]=(0,r.useState)(()=>(0,B.loadLinearRunsPanelWidth)()||224),[U,_]=(0,r.useState)(""),[W,K]=(0,r.useState)(""),[G,J]=(0,r.useState)(!1),[Z,ee]=(0,r.useState)([]),[et,ea]=(0,r.useState)([]),[ec,eu]=(0,r.useState)([]),[em,ep]=(0,r.useState)([]),[ex,eg]=(0,r.useState)([]),[ef,eh]=(0,r.useState)([]),[ev,eb]=(0,r.useState)(""),[ej,ey]=(0,r.useState)(""),[ew,ek]=(0,r.useState)("activity"),[eN,eS]=(0,r.useState)("desc"),[eI,eC]=(0,r.useState)(!1),[eA,e$]=(0,r.useState)(null),[eL,eE]=(0,r.useState)(null),[eR,eM]=(0,r.useState)([]),[eP,eT]=(0,r.useState)(new Map),[ez,eU]=(0,r.useState)(null),[eD,eO]=(0,r.useState)(null),eF=(0,r.useRef)(null),eq=(0,r.useRef)(!0),eB=(0,r.useRef)(null),e_=(0,r.useRef)(null),{getSelection:eW,pushSelection:eK,replaceSelection:eG}=(0,y.useUrlSelection)(),eX=eW("issue"),eJ=eW("run"),eH=(0,r.useCallback)(e=>{_(e),eF.current&&clearTimeout(eF.current),eF.current=setTimeout(()=>K(e),300)},[]);(0,r.useEffect)(()=>()=>{eF.current&&clearTimeout(eF.current)},[]),(0,r.useEffect)(()=>{let e=function(e){if(!O())return{...D};let t=window.localStorage.getItem(q(e));if(!t)return{...D};try{let e=JSON.parse(t);return{search:"string"==typeof e.search?e.search:D.search,assigneeIds:F(e.assigneeIds),statuses:F(e.statuses),teamId:"string"==typeof e.teamId?e.teamId:D.teamId,cycleId:"string"==typeof e.cycleId?e.cycleId:D.cycleId,sortBy:["activity","identifier","status","created"].includes(e.sortBy)?e.sortBy:D.sortBy,sortDir:["asc","desc"].includes(e.sortDir)?e.sortDir:D.sortDir,hasActivity:"boolean"==typeof e.hasActivity?e.hasActivity:D.hasActivity}}catch{return{...D}}}(s);eq.current=!0,_(e.search),K(e.search),ep(e.assigneeIds),eg(e.statuses),ey(e.teamId),eb(e.cycleId),ek(e.sortBy),eS(e.sortDir),eC(e.hasActivity)},[s]),(0,r.useEffect)(()=>{if(eq.current){eq.current=!1;return}var e=U,t=em,r=ex,a=ej,n=ev,i=ew,o=eN,l=eI;if(O())try{window.localStorage.setItem(q(s),JSON.stringify({search:e,assigneeIds:F(t),statuses:F(r),teamId:String(a||""),cycleId:String(n||""),sortBy:i||"activity",sortDir:o||"desc",hasActivity:!!l}))}catch{}},[s,U,em,ex,ej,ev,ew,eN,eI]),(0,r.useEffect)(()=>{if(!n)return;let e=!1;J(!1);let t=new URLSearchParams;return s&&t.set("projectSlug",s),fetch(t.size>0?`/api/linear/options?${t.toString()}`:"/api/linear/options").then(e=>e.json()).then(t=>{e||(ee(Array.isArray(t.assignees)?t.assignees:[]),ea(Array.isArray(t.statuses)?t.statuses:[]),eu(Array.isArray(t.teams)?t.teams:[]),eh(Array.isArray(t.cycles)?t.cycles:[]),J(!0))}).catch(()=>{e||(ee([]),ea([]),eu([]),eh([]),J(!0))}),()=>{e=!0}},[n,s]),(0,r.useEffect)(()=>{if(!G)return;let e=em.filter(e=>Z.some(t=>t.id===e));e.length!==em.length&&ep(e)},[Z,G,em]),(0,r.useEffect)(()=>{if(!G)return;let e=ex.filter(e=>et.includes(e));e.length!==ex.length&&eg(e)},[G,ex,et]),(0,r.useEffect)(()=>{if(G){if(ec.length<=1&&ej)return void ey("");ej&&!ec.some(e=>e.id===ej)&&ey("")}},[G,ej,ec]),(0,r.useEffect)(()=>{G&&ev&&!ef.some(e=>e.id===ev)&&eb("")},[ef,G,ev]);let{issues:eV,loading:eY,hasMore:eQ,loadMore:eZ,refresh:e0,updateIssue:e1}=function(e,t=!0,s={}){let[a,n]=(0,r.useState)([]),[i,o]=(0,r.useState)(!0),[l,d]=(0,r.useState)(null),[c,u]=(0,r.useState)(!1),m=(0,r.useRef)(l),p=(0,r.useRef)(!1);m.current=l,(0,r.useEffect)(()=>{p.current=!1},[s.projectSlug]);let x=(0,r.useCallback)(async(r,a=!1)=>{if(t){o(!0);try{let t=new URLSearchParams;if(e.teamId&&t.set("teamId",e.teamId),e.statuses?.length)for(let r of e.statuses)t.append("status",r);if(e.search&&t.set("search",e.search),e.assigneeIds?.length)for(let r of e.assigneeIds)t.append("assigneeId",r);else e.assignedToMe&&t.set("assignedToMe","true");e.cycleId&&t.set("cycleId",e.cycleId),e.sortBy&&t.set("sortBy",e.sortBy),e.sortDir&&t.set("sortDir",e.sortDir),e.hasActivity&&t.set("hasActivity","true"),r&&m.current&&t.set("cursor",m.current),s.projectSlug&&t.set("projectSlug",s.projectSlug),s.limit&&t.set("limit",String(s.limit)),a&&t.set("refresh","true");let i=await fetch(`/api/linear/issues?${t.toString()}`),o=await i.json(),l=o.issues??[];n(e=>r?[...e,...l]:l),d(o.pageInfo?.endCursor??null),u(o.pageInfo?.hasNextPage??!1),p.current=!0}catch{r||n([])}finally{o(!1)}}},[e.teamId,e.statuses,e.search,e.assigneeIds,e.assignedToMe,e.cycleId,e.sortBy,e.sortDir,e.hasActivity,t,s.projectSlug,s.limit]);(0,r.useEffect)(()=>{d(null),x(!1,!p.current)},[x]);let g=(0,r.useCallback)(()=>x(!0),[x]);return{issues:a,loading:i,hasMore:c,loadMore:g,refresh:(0,r.useCallback)(()=>(d(null),x(!1,!0)),[x]),updateIssue:(0,r.useCallback)(e=>{n(t=>t.map(t=>t.id===e.id?e:t))},[])}}((0,r.useMemo)(()=>({search:W||void 0,statuses:ex.length>0&&ex.length<et.length?ex:void 0,assigneeIds:em.length>0?em:void 0,teamId:ej||void 0,cycleId:ev||void 0,sortBy:ew,sortDir:eN,hasActivity:eI||void 0}),[W,em,ev,ex,ej,et.length,ew,eN,eI]),n,{projectSlug:s}),e2=(0,r.useMemo)(()=>eX?eV.find(e=>e.id===eX)??null:null,[eV,eX]),e5=e2??(eA?.id===eX?eA:null),{runs:e3,loading:e4,createRun:e7,updateRun:e6}=function(e,t){let[s,a]=(0,r.useState)([]),[n,i]=(0,r.useState)(!1),o=(0,r.useRef)(e??null);o.current=e??null;let l=(0,r.useCallback)(async()=>{let e=o.current?.trim();if(!e)return a([]),[];i(!0);try{let r=new URLSearchParams({issueId:e});t&&r.set("projectId",t);let s=await fetch(`/api/linear/runs?${r.toString()}`);if(!s.ok)throw Error(`Failed to fetch Linear runs: ${s.status}`);let n=await s.json(),i=Array.isArray(n.runs)?n.runs:[];return a(i),i}finally{i(!1)}},[t]);return(0,r.useEffect)(()=>{a([]),l()},[l,e]),(0,r.useEffect)(()=>{if(!e)return;let t=window.setInterval(()=>{l()},3e3);return()=>window.clearInterval(t)},[e,l]),{runs:s,loading:n,refresh:l,createRun:(0,r.useCallback)(async e=>{let t=await fetch("/api/linear/runs",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw Error((await t.json().catch(()=>({}))).error||`Failed to create Linear run: ${t.status}`);let r=(await t.json()).run;return a(e=>[r,...e.filter(e=>e.id!==r.id)]),r},[]),updateRun:(0,r.useCallback)(async(e,t)=>{let r=await fetch(`/api/linear/runs/${encodeURIComponent(e)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!r.ok)throw Error((await r.json().catch(()=>({}))).error||`Failed to update Linear run: ${r.status}`);let s=(await r.json()).run;return a(e=>e.map(e=>e.id===s.id?s:e)),s},[])}}(e5?.id,e??null),{scripts:e8,activeScriptId:e9,activeScript:te,setActiveScriptId:tt,saveScript:tr,deleteScript:ts}=function(e){let[t,s]=(0,r.useState)([]),[a,n]=(0,r.useState)(null);(0,r.useEffect)(()=>{let t=function(e){if(!S())return{...N};let t=window.localStorage.getItem(C(e));if(!t)return{...N};try{return I(JSON.parse(t))}catch{return{...N}}}(e);s(t.scripts),n(t.activeScriptId)},[e]);let i=(0,r.useCallback)((t,r)=>{s(t),n(r);if(S())try{let s=I({scripts:t,activeScriptId:r});window.localStorage.setItem(C(e),JSON.stringify(s))}catch{}},[e]),o=(0,r.useCallback)(e=>{let r=e&&t.some(t=>t.id===e)?e:null;i(t,r)},[i,t]),l=(0,r.useCallback)(e=>{let r=new Date().toISOString(),s=e.name.trim(),a=e.prompt.trim();if(!s||!a)throw Error("Run script name and prompt are required.");let n=e.id?t.find(t=>t.id===e.id):null,o=n?{...n,name:s,prompt:a,updatedAt:r}:{id:crypto.randomUUID(),name:s,prompt:a,createdAt:r,updatedAt:r};return i([...n?t.map(e=>e.id===n.id?o:e):[o,...t]].sort((e,t)=>t.updatedAt.localeCompare(e.updatedAt)),o.id),o},[i,t]),d=(0,r.useCallback)(e=>{i(t.filter(t=>t.id!==e),a===e?null:a)},[a,i,t]),c=(0,r.useMemo)(()=>t.find(e=>e.id===a)??null,[a,t]);return{scripts:t,activeScriptId:a,activeScript:c,setActiveScriptId:o,saveScript:l,deleteScript:d}}(s),ta=eJ&&"new"!==eJ?e3.find(e=>e.id===eJ)??null:null,tn=(0,r.useMemo)(()=>Z.map(e=>({value:e.id,label:e.name})),[Z]),ti=(0,r.useMemo)(()=>et.map(e=>({value:e,label:e})),[et]),to=(0,r.useMemo)(()=>Array.from(new Set([e5?.status??"",...et].map(e=>e.trim()).filter(Boolean))).map(e=>({value:e,label:e})),[e5?.status,et]),tl=(0,r.useMemo)(()=>[{value:"",label:"Workspace"},...ec.map(e=>({value:e.id,label:e.name}))],[ec]),td=(0,r.useMemo)(()=>[{value:"",label:"Cycle"},...ef.map(e=>({value:e.id,label:e.name||`Cycle ${e.number}`}))],[ef]),tc=ti.length>0,tu=td.length>1,tm=tl.length>2,tp=te?.name??"AGX default",tx=(0,r.useCallback)(async(e,t)=>{let r=t.trim();if(r&&r!==e.status){eE(e.id);try{let t=await fetch(`/api/linear/issues/${encodeURIComponent(e.id)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({status:r})}),s=await t.json().catch(()=>({}));if(!t.ok||!s.issue)throw Error(s.error||"Failed to update ticket status");let a=s.issue;e1(a),eX===a.id&&e$(a),await e0()}catch(e){e instanceof Error&&window.alert(e.message)}finally{eE(t=>t===e.id?null:t)}}},[e0,eX,e1]);(0,r.useEffect)(()=>{if(!eX)return void e$(null);if(e2)return void e$(e=>e?.id===eX?e2:null);let e=!1;return(async()=>{try{let t=await fetch(`/api/linear/issues/${encodeURIComponent(eX)}`);if(e)return;if(404===t.status)return void eG({issue:null,run:null});if(!t.ok)throw Error(`Failed to fetch selected Linear ticket: ${t.status}`);let r=await t.json().catch(()=>({}));if(!r.issue?.id)return void eG({issue:null,run:null});e$(r.issue)}catch(t){e||console.error("Failed to hydrate selected Linear issue",t)}})(),()=>{e=!0}},[eG,e2,eX]),(0,r.useEffect)(()=>{if(!eX){eJ&&eG({run:null});return}},[eG,eX,eJ]),(0,r.useEffect)(()=>{e5&&eJ&&"new"!==eJ&&!e4&&(e3.some(e=>e.id===eJ)||eG({run:null}))},[eG,e3,e4,e5,eJ]),(0,r.useEffect)(()=>{let t=!1;return async function(){try{let r=await fetch("/api/participants"),s=r.ok?await r.json():[];if(!e){t||eM(s);return}let a=await fetch(`/api/projects/${encodeURIComponent(e)}/agents`);if(!a.ok){t||eM(s);return}let n=await a.json(),i=Array.isArray(n.agents)?n.agents.map(e=>e.agent_id).filter(e=>"string"==typeof e&&e.trim().length>0):[],o=new Map(i.map((e,t)=>[e,t])),l=s.filter(e=>o.has(e.id)).sort((e,t)=>(o.get(e.id)??Number.MAX_SAFE_INTEGER)-(o.get(t.id)??Number.MAX_SAFE_INTEGER));t||eM(l)}catch{t||eM([])}}(),()=>{t=!0}},[e]),(0,r.useEffect)(()=>{let t=!1;async function r(){try{let r=new URLSearchParams;e&&r.set("projectId",e);let s=await fetch(`/api/linear/issues/active-agents?${r}`);if(!s.ok||t)return;let a=await s.json(),n=new Map;for(let e of a.agents??[]){let t=n.get(e.issueId)??[];t.push({agentId:e.agentId,agentName:e.agentName}),n.set(e.issueId,t)}t||eT(n)}catch{}}r();let s=setInterval(()=>void r(),5e3);return()=>{t=!0,clearInterval(s)}},[e]),(0,r.useEffect)(()=>{if(!L)return;let e=e=>{let t=e.target;e_.current?.contains(t)||eB.current?.contains(t)||E(!1)},t=e=>{"Escape"===e.key&&E(!1)};return document.addEventListener("mousedown",e),document.addEventListener("keydown",t),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("keydown",t)}},[L]);let tg=(0,r.useCallback)(async(t,r)=>{eU(null),eO(null);try{let a=await fetch("/api/linear/runs/scripted",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectId:e??void 0,projectSlug:s??void 0,issueId:t.id,issueIdentifier:t.identifier,issueTitle:t.title,issueStatus:t.status,issueAssignee:t.assignee,agentId:r.id,scriptName:te?.name,scriptPrompt:te?.prompt})}),n=await a.json().catch(()=>({}));if(!a.ok||!n.run||!n.chatRunId||!n.userMessageId)throw Error(n.error||"Failed to start scripted session");eK({issue:t.id,run:n.run.id})}catch(e){console.error("Failed to start scripted Linear session:",e),e instanceof Error&&window.alert(e.message)}},[te,e,s,eK]),tf=(0,r.useCallback)((e,t)=>{if(E(!1),0===eR.length)return void window.alert("Add at least one agent to this project before starting a scripted session.");if(1===eR.length)return void tg(e,eR[0]);let r=t?.currentTarget?.getBoundingClientRect();eU(e),eO(r?{top:r.bottom+4,left:r.left}:{top:200,left:200})},[tg,eR]),th=(0,r.useRef)(null);if((0,r.useEffect)(()=>{let e=th.current;if(!e||!eQ)return;let t=new IntersectionObserver(e=>{e[0]?.isIntersecting&&eZ()},{threshold:.1});return t.observe(e),()=>t.disconnect()},[eQ,eZ]),i)return(0,t.jsx)("div",{className:"flex h-full items-center justify-center text-xs text-[var(--muted-foreground)]",children:"Loading..."});let tv=n&&!j&&!Object.values(u).some(Boolean);return!n||tv?(0,t.jsx)(X,{connected:n,user:d,clis:c,mcpConfigured:u,onConnect:m,onConnectWithKey:p,onDisconnect:x,onConfigureMcp:g,onContinue:()=>k(!0)}):(0,t.jsxs)("div",{className:"relative flex h-full overflow-hidden",children:[(0,t.jsxs)("div",{className:"flex shrink-0 flex-col border-r border-[var(--card-border)]",style:{width:R},children:[(0,t.jsxs)("div",{className:"shrink-0 border-b border-[var(--card-border)]",children:[(0,t.jsxs)("div",{className:"flex h-12 items-center gap-2 px-3",children:[(0,t.jsxs)("div",{className:"flex flex-1 items-center gap-2 rounded-md border border-[var(--card-border)] bg-[var(--background)] px-2.5 py-1.5 transition-all focus-within:border-[var(--muted-foreground)] focus-within:ring-1 focus-within:ring-[var(--muted-foreground)]",children:[(0,t.jsx)(v.Search,{size:14,className:"shrink-0 text-[var(--muted-foreground)]"}),(0,t.jsx)("input",{type:"text",className:"flex-1 bg-transparent text-sm outline-none placeholder:text-[var(--muted-foreground)]",placeholder:"Search tickets...",value:U,onChange:e=>eH(e.target.value)})]}),(0,t.jsx)("button",{type:"button",className:"shrink-0 rounded p-1.5 text-[var(--muted-foreground)] transition-colors hover:bg-[var(--card-bg)] hover:text-[var(--foreground)] disabled:cursor-not-allowed disabled:opacity-50",onClick:()=>void e0(),title:"Refresh tickets","aria-label":"Refresh tickets",disabled:eY,children:(0,t.jsx)(h.RefreshCw,{size:16,className:eY?"animate-spin":void 0})}),(0,t.jsx)("button",{type:"button",className:"shrink-0 rounded p-1.5 text-[var(--muted-foreground)] transition-colors hover:bg-[var(--card-bg)] hover:text-[var(--foreground)]",onClick:()=>{E(!1),$(!0)},title:"Linear settings",children:(0,t.jsx)(b.Settings,{size:16})})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5 px-3 pb-2",children:[tc?(0,t.jsx)(en,{label:"Status",values:ex,options:ti,activeClasses:"border-amber-500/30 bg-amber-500/10 text-amber-300",onChange:eg,emptyLabel:"All statuses"}):null,(0,t.jsx)(en,{label:"Assignee",values:em,options:tn,activeClasses:"border-blue-500/30 bg-blue-500/10 text-blue-400",onChange:ep,emptyLabel:"All assignees"}),tm?(0,t.jsx)(es,{label:"Workspace",value:ej,options:tl,activeClasses:"border-emerald-500/30 bg-emerald-500/10 text-emerald-400",onChange:ey}):null,tu?(0,t.jsx)(es,{label:"Cycle",value:ev,options:td,activeClasses:"border-purple-500/30 bg-purple-500/10 text-purple-400",onChange:eb}):null,(0,t.jsx)(es,{label:"Sort",value:ew,options:[{value:"activity",label:"Activity"},{value:"identifier",label:"Ticket ID"},{value:"status",label:"Status"},{value:"created",label:"Created"}],activeClasses:"border-sky-500/30 bg-sky-500/10 text-sky-400",onChange:e=>ek(e)}),(0,t.jsx)("button",{type:"button",className:"rounded-full border border-[var(--card-border)] p-0.5 text-[var(--muted-foreground)] transition-colors hover:bg-[var(--card-bg)] hover:text-[var(--foreground)]",title:"desc"===eN?"Descending":"Ascending",onClick:()=>eS(e=>"desc"===e?"asc":"desc"),children:"desc"===eN?(0,t.jsx)(o,{size:12}):(0,t.jsx)(l,{size:12})}),(0,t.jsx)("button",{type:"button",className:`flex items-center gap-1 rounded-full border px-2.5 py-0.5 text-[11px] font-medium transition-colors ${eI?"border-orange-500/30 bg-orange-500/10 text-orange-400":"border-[var(--card-border)] text-[var(--muted-foreground)] hover:bg-[var(--card-bg)]"}`,onClick:()=>eC(e=>!e),children:"My activity"})]})]}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto",children:eY&&0===eV.length?(0,t.jsx)("div",{className:"px-3 py-4 text-xs text-[var(--muted-foreground)]",children:"Loading tickets..."}):0===eV.length?(0,t.jsx)("div",{className:"px-3 py-4 text-xs text-[var(--muted-foreground)]",children:"No tickets found."}):(0,t.jsxs)(t.Fragment,{children:[eV.map(e=>(0,t.jsx)(el,{issue:e,selected:e5?.id===e.id,activeAgents:eP.get(e.id),participants:eR,onSelect:()=>eK({issue:e.id,run:null})},e.id)),eQ?(0,t.jsx)("div",{ref:th,className:"py-2 text-center text-xs text-[var(--muted-foreground)]",children:eY?"Loading...":"Load more"}):null]})})]}),(0,t.jsx)(H,{onResize:e=>M(t=>{let r=Math.max(180,Math.min(600,t+e));return(0,B.persistLinearTicketPanelWidth)(r),r})}),(0,t.jsxs)("div",{className:"flex shrink-0 flex-col border-r border-[var(--card-border)]",style:{width:P},children:[(0,t.jsxs)("div",{className:"relative flex items-center justify-between border-b border-[var(--card-border)] px-3 py-2",children:[(0,t.jsx)("h3",{className:"text-xs font-semibold text-[var(--foreground)]",children:"Sessions"}),(0,t.jsxs)("button",{ref:eB,type:"button",className:"inline-flex items-center gap-1 rounded px-2 py-1 text-[10px] font-medium text-[var(--muted-foreground)] transition-colors hover:bg-[var(--card-bg)] hover:text-[var(--foreground)] disabled:cursor-not-allowed disabled:opacity-40",onClick:()=>{E(!1),eK({run:"new"})},title:"Open a fresh chat for this ticket. You can choose or edit the session script in the session details pane.","aria-label":"New session",disabled:!e5,children:[(0,t.jsx)(f.Plus,{size:12}),"New session"]}),L?(0,t.jsx)("div",{ref:e_,className:"absolute right-3 top-full z-20 mt-2 max-h-[80vh] overflow-y-auto rounded-2xl border border-[var(--card-border)] bg-[var(--background)] p-4 shadow-2xl",style:{width:"min(760px, calc(100vw - 32px))"},children:(0,t.jsx)(T,{projectSlug:s,scripts:e8,activeScriptId:e9,onSetActiveScriptId:tt,onSaveScript:tr,onDeleteScript:ts})}):null]}),(0,t.jsx)("div",{className:"flex-1 overflow-y-auto",children:e5?(0,t.jsx)(t.Fragment,{children:e4&&0===e3.length?(0,t.jsx)("div",{className:"px-3 py-4 text-xs text-[var(--muted-foreground)]",children:"Loading sessions..."}):0===e3.length?(0,t.jsx)("div",{className:"px-3 py-4 text-xs text-[var(--muted-foreground)]",children:"No previous sessions yet."}):e3.map(e=>{let r=Y(e);return(0,t.jsxs)("button",{type:"button",className:`w-full px-3 py-2 text-left text-xs transition-colors ${ta?.id===e.id?"bg-[var(--card-bg)]":"hover:bg-[var(--card-bg)]"}`,onClick:()=>eK({run:e.id}),children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-1",children:[(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate text-[11px] font-medium text-[var(--foreground)]",children:Q(e)}),(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:new Date(e.startedAt).toLocaleTimeString([],{hour:"numeric",minute:"2-digit"})})]}),(0,t.jsxs)("div",{className:"mt-0.5 flex items-center gap-1.5 text-[10px]",children:[(0,t.jsx)("span",{className:`font-medium ${er[r.tone]}`,children:r.label}),(0,t.jsx)("span",{className:"truncate text-[var(--muted-foreground)]",children:e.agentName})]}),null!=e.durationMs?(0,t.jsxs)("div",{className:"text-[10px] text-[var(--muted-foreground)]",children:[(e.durationMs/1e3).toFixed(1),"s"]}):null]},e.id)})}):(0,t.jsx)("div",{className:"px-3 py-4 text-xs text-[var(--muted-foreground)]",children:"Select a ticket to see sessions."})})]}),(0,t.jsx)(H,{onResize:e=>z(t=>{let r=Math.max(140,Math.min(500,t+e));return(0,B.persistLinearRunsPanelWidth)(r),r})}),(0,t.jsx)("div",{className:"flex min-w-0 flex-1 flex-col overflow-hidden",children:ta?(0,t.jsx)(eo,{issue:e5??{id:ta.issueId,identifier:ta.issueIdentifier,title:ta.issueTitle,url:null,status:ta.issueStatus,assignee:ta.issueAssignee,updatedAt:ta.updatedAt},run:ta,participants:eR,issueStatusOptions:to,issueStatusUpdating:eL===ta.issueId,onIssueStatusChange:tx}):e5?0===eR.length?(0,t.jsx)("div",{className:"flex h-full items-center justify-center text-xs text-[var(--muted-foreground)]",children:"Add at least one agent to this project to start a session."}):"new"===eJ||0===e3.length?(0,t.jsx)(ei,{issue:e5,participants:eR,projectId:e,projectSlug:s,issueStatusOptions:to,issueStatusUpdating:eL===e5.id,onIssueStatusChange:tx,activeSessionScriptLabel:tp,onOpenSessionScripts:()=>E(!0),onStartScriptedSession:e=>tf(e5,e),createRun:e7,updateRun:e6,onRunCreated:e=>eK({run:e})},e5.id):(0,t.jsx)("div",{className:"flex h-full items-center justify-center text-xs text-[var(--muted-foreground)]",children:e4?"Loading sessions...":"Select a session to continue."}):(0,t.jsx)("div",{className:"flex h-full items-center justify-center text-xs text-[var(--muted-foreground)]",children:"Select a ticket from the list."})}),A&&(0,t.jsx)("div",{className:"absolute inset-0 z-30 flex items-center justify-center bg-black/50",children:(0,t.jsxs)("div",{className:"relative w-full max-w-lg rounded-lg border border-[var(--card-border)] bg-[var(--background)] shadow-xl",children:[(0,t.jsx)("button",{type:"button",className:"absolute right-3 top-3 rounded p-1 text-[var(--muted-foreground)] transition-colors hover:bg-[var(--card-bg)] hover:text-[var(--foreground)]",onClick:()=>$(!1),children:"×"}),(0,t.jsx)("div",{className:"max-h-[80vh] overflow-y-auto p-6",children:(0,t.jsx)(X,{connected:n,user:d,clis:c,mcpConfigured:u,onConnect:m,onConnectWithKey:p,onDisconnect:x,onConfigureMcp:g,onContinue:()=>$(!1)})})]})}),ez&&eD&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"fixed inset-0 z-40",onClick:()=>{eU(null),eO(null)}}),(0,t.jsxs)("div",{className:"fixed z-50 min-w-[180px] rounded border border-[var(--card-border)] bg-[var(--card-bg)] py-1 shadow-lg",style:{top:eD.top,left:eD.left},children:[(0,t.jsx)("div",{className:"px-3 py-1.5 text-[10px] font-semibold uppercase tracking-wider text-[var(--muted-foreground)]",children:"Pick an agent"}),eR.map(e=>(0,t.jsxs)("button",{type:"button",className:"flex w-full items-center gap-2 px-3 py-1.5 text-left text-xs transition-colors hover:bg-[var(--card-bg)]",onClick:()=>void tg(ez,e),children:[(0,t.jsx)("img",{src:V(e.id,e.color,20),alt:"",className:"h-5 w-5 shrink-0 rounded-full"}),(0,t.jsxs)("span",{className:"flex flex-col",children:[(0,t.jsx)("span",{className:"font-medium text-[var(--foreground)]",children:e.name}),e.title?(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:e.title}):null]})]},e.id))]})]})]})}e.s(["default",0,function({params:e}){let{slug:n}=(0,r.use)(e),i=(0,s.useSearchParams)(),{projects:o}=(0,a.useProjects)(),l=o.find(e=>e.slug===n),d="true"===i.get("settings");return(0,t.jsx)(ed,{projectId:l?.id,projectSlug:l?.slug??n,initialShowSettings:d})}],628822)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,812549,871920,e=>{"use strict";var t=e.i(363732);let r=(0,t.default)("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]);e.s(["Cpu",0,r],812549);let s=(0,t.default)("box",[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]]);e.s(["Box",0,s],871920)},837958,e=>{"use strict";let t=(0,e.i(363732).default)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);e.s(["BookOpen",0,t],837958)},884564,e=>{"use strict";var t=e.i(843476),r=e.i(271645),s=e.i(797167),l=e.i(169610),o=e.i(812549),i=e.i(871920),a=e.i(837958),n=e.i(519132),d=e.i(929870),c=e.i(538292),u=e.i(498027),m=e.i(19035),x=e.i(529471),p=e.i(40527);e.i(477183),e.i(76590),e.i(807311);var f=e.i(378764);function g(e,t=32,r){let s=`https://api.dicebear.com/9.x/bottts-neutral/svg?seed=${encodeURIComponent(e)}&size=${t}`;if(!r)return s;let l=r.replace("#","");return`${s}&backgroundColor=${l}`}let h=["claude","ollama","gemini","codex","zai"];function v(e){return(e??[]).map(e=>e.condition?.trim()?`${e.file} | ${e.condition}`:e.file).join("\n")}function b(e){return e.split("\n").map(e=>e.trim()).filter(Boolean).map(e=>{let[t,...r]=e.split("|");return{file:t.trim(),condition:r.join("|").trim()}}).filter(e=>e.file.length>0)}function y(e,t){return JSON.stringify({name:e.name,...e.roleId?{roleId:e.roleId}:{},...e.title?{title:e.title}:{},provider:e.provider,model:e.model,identity:e.identity,color:e.color??"#6B7280",skills:e.skills??[],skillBindings:e.skillBindings??[],...t?{projectIds:t}:{}},null,2)}e.s(["AgentForm",0,function({title:e,initial:j,submitLabel:k,onSubmit:N,onCancel:w,projects:C,initialProjectIds:S,agentId:I,projectMemberships:A,onAddToProject:z,onRemoveFromProject:M,roleOptions:B,roleLabel:O="Role",onRolePresetChange:E}){let[$,P]=(0,r.useState)(j.name),[T,F]=(0,r.useState)(j.roleId??""),[J,L]=(0,r.useState)(j.title??""),[R,U]=(0,r.useState)(j.provider),[K,D]=(0,r.useState)(j.model),[V,X]=(0,r.useState)(j.identity),[_,q]=(0,r.useState)(j.color??"#6B7280"),[G,Z]=(0,r.useState)(v(j.skills)),[W,Y]=(0,r.useState)(new Set(S??[])),[H,Q]=(0,r.useState)("form"),[ee,et]=(0,r.useState)(()=>y(j,C?S??[]:void 0)),[er,es]=(0,r.useState)(null),[el,eo]=(0,r.useState)(!1),[ei,ea]=(0,r.useState)([]),[en,ed]=(0,r.useState)(""),[ec,eu]=(0,r.useState)(!1),[em,ex]=(0,r.useState)(j.skillBindings??[]),ep=(0,r.useRef)(null),ef=(0,r.useRef)(null),eg=!!(B&&B.length>0),eh=I||$.trim()||j.name||"agent";(0,r.useEffect)(()=>{let e=e=>{ef.current&&!ef.current.contains(e.target)&&w()},t=setTimeout(()=>document.addEventListener("mousedown",e),0);return()=>{clearTimeout(t),document.removeEventListener("mousedown",e)}},[ef,w]),(0,r.useEffect)(()=>{if(!ec)return;let e=e=>{ep.current&&!ep.current.contains(e.target)&&eu(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[ec]),(0,r.useEffect)(()=>{"form"===H&&et(y({name:$,...eg&&T?{roleId:T}:{},title:J,provider:R,model:K,identity:V,color:_,skills:b(G),skillBindings:em},C?Array.from(W):void 0))},[H,$,T,eg,J,R,K,V,_,G,em,W,C]),(0,r.useEffect)(()=>{if(!el)return;let e=window.setTimeout(()=>eo(!1),1200);return()=>window.clearTimeout(e)},[el]),(0,r.useEffect)(()=>{let e=!1;return async function(){try{let t=await fetch("/api/skills");if(!t.ok)return;let r=await t.json();if(e)return;let s=Array.isArray(r.skills)?r.skills.filter(e=>!!e&&"object"==typeof e).map(e=>({skillId:String(e.skillId??"").trim(),repo:String(e.repo??"").trim(),name:String(e.name??e.skillId??"").trim()})).filter(e=>e.skillId.length>0&&e.repo.length>0):[];ea(s)}catch{e||ea([])}}(),()=>{e=!0}},[]);let ev=(e,t)=>{let r=C?(t??[]).filter(e=>C.some(t=>t.id===e)):void 0;return P(e.name),F(e.roleId??""),L(e.title??""),U(e.provider),D(e.model),X(e.identity),q(e.color??"#6B7280"),Z(v(e.skills)),ex(e.skillBindings??[]),C&&Y(new Set(r??[])),et(y(e,C?r??[]:void 0)),es(null),r},eb=e=>{let t=function(e,t){let r;try{r=JSON.parse(e)}catch{throw Error("JSON is invalid.")}if(!r||"object"!=typeof r||Array.isArray(r))throw Error("JSON must be an object.");let s=r,l="string"==typeof s.provider?s.provider:t,o=h.includes(l)?l:t,i=(Array.isArray(s.skills)?s.skills:[]).flatMap(e=>{if("string"==typeof e){let[t,...r]=e.split("|"),s=t.trim();return s?[{file:s,condition:r.join("|").trim()}]:[]}if(!e||"object"!=typeof e||Array.isArray(e))return[];let t="string"==typeof e.file?e.file.trim():"";return t?[{file:t,condition:"string"==typeof e.condition?e.condition.trim():""}]:[]}),a=Array.isArray(s.projectIds)?s.projectIds.filter(e=>"string"==typeof e&&e.trim().length>0):void 0,n=(Array.isArray(s.skillBindings)?s.skillBindings:[]).flatMap(e=>{if(!e||"object"!=typeof e||Array.isArray(e))return[];let t="string"==typeof e.repo?e.repo.trim():"",r="string"==typeof e.skillId?e.skillId.trim():"";return t&&r?[{repo:t,skillId:r,condition:"string"==typeof e.condition?e.condition.trim():""}]:[]});return{data:{name:"string"==typeof s.name?s.name:"",roleId:"string"==typeof s.roleId?s.roleId:void 0,title:"string"==typeof s.title?s.title:"",provider:o,model:"string"==typeof s.model?s.model:"",identity:"string"==typeof s.identity?s.identity:"",color:"string"==typeof s.color&&s.color.trim()?s.color:"#6B7280",skills:i,skillBindings:n},projectIds:a}}(e,R),r=ev(t.data,t.projectIds);return{...t,projectIds:r}},ey=()=>{if("form"!==H)try{eb(ee),Q("form")}catch(e){es(e instanceof Error?e.message:"Unable to parse JSON.")}},ej=async()=>{try{await navigator.clipboard.writeText(ee),eo(!0)}catch{eo(!1)}},ek=(0,r.useMemo)(()=>{let e=en.trim().toLowerCase();return e?ei.filter(t=>[t.name,t.skillId,t.repo].some(t=>t.toLowerCase().includes(e))).slice(0,50):ei.slice(0,50)},[ei,en]),eN=(0,r.useMemo)(()=>new Set(em.map(e=>`${e.repo}::${e.skillId}`)),[em]);return(0,t.jsx)("div",{ref:ef,className:"fixed inset-0 z-[100] flex items-center justify-center p-4 bg-black/30 backdrop-blur-sm",onKeyDown:e=>{"Escape"===e.key&&w()},children:(0,t.jsxs)("div",{className:"bg-[var(--card-bg)] rounded-[32px] shadow-2xl overflow-hidden w-full max-w-2xl max-h-[90vh] flex flex-col animate-in fade-in zoom-in duration-300",children:[(0,t.jsxs)("div",{className:"px-8 pt-8 pb-4 shrink-0 flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-4",children:[(0,t.jsxs)("div",{className:"flex flex-col items-center gap-1.5",children:[(0,t.jsx)("img",{src:g(eh,64,_),alt:$,className:"w-14 h-14 rounded-full bg-[var(--muted)]"}),(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("label",{className:"text-[10px] text-[var(--muted-foreground)]",children:"Color"}),(0,t.jsx)("input",{type:"color",value:_,onChange:e=>q(e.target.value),className:"w-5 h-5 rounded border border-[var(--border)] cursor-pointer p-0"})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-[10px] font-bold tracking-widest text-[var(--muted-foreground)] uppercase",children:e}),(0,t.jsx)("h1",{className:"text-2xl font-semibold mt-1",children:$||"Configure Agent"})]})]}),(0,t.jsx)("button",{onClick:w,className:"p-2 text-[var(--muted-foreground)] hover:text-[var(--muted-foreground)] hover:bg-[var(--muted)] rounded-full transition-all",children:(0,t.jsx)(s.X,{size:20})})]}),(0,t.jsxs)("div",{className:"px-8 pb-8 space-y-6 overflow-y-auto",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsxs)("div",{className:"inline-flex rounded-xl bg-[var(--muted)] p-1",children:[(0,t.jsx)("button",{type:"button",onClick:ey,className:"form"===H?"px-3 py-1.5 text-xs font-semibold rounded-lg bg-[var(--card-bg)] text-[var(--foreground)] shadow-sm":"px-3 py-1.5 text-xs font-semibold rounded-lg text-[var(--muted-foreground)] hover:text-[var(--foreground)]",children:"Form"}),(0,t.jsx)("button",{type:"button",onClick:()=>{et(y({name:$,...eg&&T?{roleId:T}:{},title:J,provider:R,model:K,identity:V,color:_,skills:b(G),skillBindings:em},C?Array.from(W):void 0)),es(null),Q("json")},className:"json"===H?"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"===H&&(0,t.jsxs)("button",{type:"button",onClick:ej,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:[el?(0,t.jsx)(x.Check,{size:14,className:"text-emerald-500"}):(0,t.jsx)(m.Copy,{size:14}),el?"Copied":"Copy"]})]}),"form"===H?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(l.User,{size:16})," Name"]}),(0,t.jsx)("input",{type:"text",value:$,onChange:e=>P(e.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. Ada, Kai, Sage...",autoFocus:!0})]}),eg?(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:O}),(0,t.jsx)(f.default,{options:B??[],value:T||null,onChange:e=>{if(!eg)return;let t={name:$,roleId:e,title:J,provider:R,model:K,identity:V,color:_,skills:b(G),skillBindings:em},r=E?.(e,t);r?ev({...r,roleId:e},C?Array.from(W):void 0):F(e)},placeholder:"Select a role preset..."})]}):(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:"Title"}),(0,t.jsx)("input",{type:"text",value:J,onChange:e=>L(e.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. VP of Engineering"})]})]}),eg&&(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:"Title"}),(0,t.jsx)("input",{type:"text",value:J,onChange:e=>L(e.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all",placeholder:"e.g. VP of Engineering"})]}),(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(i.Box,{size:16})," Provider"]}),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsxs)("select",{value:R,onChange:e=>U(e.target.value),className:"w-full appearance-none px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all pr-10 cursor-pointer",children:[(0,t.jsx)("option",{value:"claude",children:"Claude"}),(0,t.jsx)("option",{value:"ollama",children:"Ollama"}),(0,t.jsx)("option",{value:"gemini",children:"Gemini"}),(0,t.jsx)("option",{value:"codex",children:"Codex"}),(0,t.jsx)("option",{value:"zai",children:"Z.AI"})]}),(0,t.jsx)(u.ChevronDown,{className:"absolute right-3 top-1/2 -translate-y-1/2 text-[var(--muted-foreground)] pointer-events-none",size:16})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(o.Cpu,{size:16})," Model"]}),(0,t.jsx)("input",{type:"text",value:K,onChange:e=>D(e.target.value),className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all font-mono text-sm",placeholder:"e.g. claude-sonnet-4-6"})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(a.BookOpen,{size:16})," Identity"]}),(0,t.jsx)("div",{className:"border border-[var(--border)] rounded-xl overflow-hidden bg-[var(--app-shell-subtle)] focus-within:ring-2 focus-within:ring-indigo-500/20 focus-within:border-indigo-500 transition-all",children:(0,t.jsx)(p.default,{content:V,onChange:e=>X(e),placeholder:"You are a ..."})}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Identity defines who the agent is. Keep portable knowledge separate below; project and repo knowledge belong on their scoped surfaces."})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(n.Sparkles,{size:16})," Portable Knowledge"]}),(0,t.jsxs)("div",{className:"rounded-xl border border-[var(--border)] bg-[var(--app-shell-subtle)] p-3 space-y-3",children:[(0,t.jsx)("div",{className:"flex items-center justify-between gap-3",children:(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"text-xs font-semibold text-[var(--foreground)]",children:"Skills Picker"}),(0,t.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)]",children:"Pick a skill here. AGX will install it later only if the run actually needs it."})]})}),ei.length>0?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"relative",ref:ep,children:[(0,t.jsxs)("button",{type:"button",onClick:()=>eu(e=>!e),className:"w-full flex items-center justify-between px-3 py-2 rounded-xl border border-[var(--border)] bg-[var(--card-bg)] text-sm font-medium hover:border-indigo-500",children:[(0,t.jsx)("span",{className:"truncate text-left",children:"Search and add skills"}),(0,t.jsx)(u.ChevronDown,{size:16,className:`shrink-0 text-[var(--muted-foreground)] transition-transform ${ec?"rotate-180":""}`})]}),ec&&(0,t.jsxs)("div",{className:"absolute left-0 right-0 top-full mt-2 z-30 rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] shadow-lg overflow-hidden",children:[(0,t.jsx)("div",{className:"p-2 border-b border-[var(--border)]",children:(0,t.jsx)("input",{type:"text",value:en,onChange:e=>ed(e.target.value),placeholder:"Search skills",className:"w-full px-3 py-2 bg-[var(--card-bg)] border border-[var(--border)] rounded-lg text-sm focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500",autoFocus:!0})}),(0,t.jsx)("div",{className:"max-h-64 overflow-y-auto",children:ek.length>0?ek.map(e=>{let r=`${e.repo}::${e.skillId}`,s=eN.has(r);return(0,t.jsx)("button",{type:"button",className:`w-full px-3 py-2 text-left text-sm transition-colors ${s?"bg-emerald-50 text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,onMouseDown:e=>e.preventDefault(),onClick:()=>{var t,r;return t=e.repo,r=e.skillId,void(ex(e=>e.some(e=>e.repo===t&&e.skillId===r)?e.filter(e=>e.repo!==t||e.skillId!==r):[...e,{repo:t,skillId:r}]),ed(""))},children:(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("div",{className:"font-medium",children:e.name||e.skillId}),(0,t.jsx)("div",{className:"text-[11px] text-[var(--muted-foreground)]",children:e.repo})]}),s&&(0,t.jsx)("span",{className:"shrink-0 rounded-full bg-emerald-100 px-2 py-0.5 text-[10px] font-semibold text-emerald-700",children:"Added"})]})},r)}):(0,t.jsx)("div",{className:"px-3 py-3 text-sm text-[var(--muted-foreground)]",children:"No matching skills."})})]})]}),(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[em.map(e=>(0,t.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-full bg-emerald-50 text-emerald-700 border border-emerald-200 px-2.5 py-1 text-[11px] font-medium",children:[e.skillId,(0,t.jsx)("button",{type:"button",onClick:()=>{var t,r;return t=e.repo,r=e.skillId,void ex(e=>e.filter(e=>e.repo!==t||e.skillId!==r))},className:"text-emerald-700/70 hover:text-emerald-900",title:`Remove ${e.skillId}`,children:(0,t.jsx)(s.X,{size:12})})]},`${e.repo}::${e.skillId}`)),0===em.length&&(0,t.jsx)("span",{className:"text-[11px] text-[var(--muted-foreground)]",children:"No library skills selected yet."})]})]}):(0,t.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)]",children:"No catalog skills available right now."})]}),(0,t.jsx)("textarea",{value:G,onChange:e=>Z(e.target.value),rows:5,className:"w-full px-4 py-3 bg-[var(--app-shell-subtle)] border border-[var(--border)] rounded-xl focus:outline-none focus:ring-2 focus:ring-indigo-500/20 focus:border-indigo-500 transition-all font-mono text-xs",placeholder:"one/path/to/skill.md\npath/to/skill.md | when coding in TypeScript"}),(0,t.jsxs)("p",{className:"text-xs text-[var(--muted-foreground)]",children:["Portable agent knowledge only. One reference per line. Use ",(0,t.jsx)("code",{children:"|"})," to add an optional condition."]})]}),C&&C.length>0&&(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(c.FolderOpen,{size:16})," Assign To Projects"]}),(0,t.jsx)("div",{className:"space-y-1 max-h-[160px] overflow-y-auto",children:C.map(e=>{let r=W.has(e.id);return(0,t.jsxs)("button",{type:"button",className:r?"w-full flex items-center gap-3 px-3 py-2 rounded-lg text-sm transition-colors bg-indigo-50 text-indigo-700":"w-full flex items-center gap-3 px-3 py-2 rounded-lg text-sm transition-colors text-[var(--muted-foreground)] hover:bg-[var(--app-shell-subtle)]",onClick:()=>Y(t=>{let r=new Set(t);return r.has(e.id)?r.delete(e.id):r.add(e.id),r}),children:[(0,t.jsx)("div",{className:r?"w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center bg-indigo-600 border-indigo-600":"w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center border-[var(--border)]",children:r&&(0,t.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,t.jsx)("path",{d:"M2 5l2 2 4-4",stroke:"white",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,t.jsx)("span",{className:"text-xs font-medium text-left",children:e.label??e.name})]},e.id)})})]}),A&&(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("label",{className:"flex items-center gap-2 text-sm font-medium text-[var(--muted-foreground)]",children:[(0,t.jsx)(c.FolderOpen,{size:16})," Project Memberships"]}),A.current.length>0?(0,t.jsx)("div",{className:"flex flex-col gap-1",children:A.current.map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs bg-[var(--app-shell-subtle)] rounded-lg px-3 py-2",children:[(0,t.jsx)(c.FolderOpen,{size:12,className:"text-[var(--muted-foreground)] shrink-0"}),(0,t.jsx)("span",{className:"truncate flex-1",children:e.name}),M&&!e.is_default&&(0,t.jsx)("button",{type:"button",className:"text-[var(--muted-foreground)] hover:text-red-500 transition-colors",onClick:()=>M(e.id),title:"Remove from project",children:(0,t.jsx)(s.X,{size:12})})]},e.id))}):(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] italic",children:"Not assigned to any projects"}),A.available.length>0&&z&&(0,t.jsx)("div",{className:"flex flex-wrap gap-1",children:A.available.map(e=>(0,t.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1 text-[10px] px-2 py-1 rounded-lg border border-dashed border-[var(--border)] text-[var(--muted-foreground)] hover:border-[var(--border)] hover:text-[var(--foreground)] transition-colors",onClick:()=>z(e.id),children:[(0,t.jsx)(d.Plus,{size:10}),e.name]},e.id))})]})]}):(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Paste agent JSON here. Switching back to Form or saving will apply valid JSON to the form state."}),(0,t.jsx)("button",{type:"button",onClick:ey,className:"px-3 py-1.5 text-xs font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--muted)] rounded-lg transition-colors",children:"Apply to Form"})]}),(0,t.jsx)("textarea",{value:ee,onChange:e=>{et(e.target.value),er&&es(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}),er&&(0,t.jsx)("p",{className:"text-xs text-red-500",children:er})]}),(0,t.jsxs)("div",{className:"flex items-center justify-end gap-3 pt-4 border-t border-[var(--border)]",children:[(0,t.jsx)("button",{onClick:w,className:"px-6 py-2.5 text-sm font-semibold text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)] rounded-xl transition-all",children:"Cancel"}),(0,t.jsx)("button",{onClick:()=>{let e=$.trim(),t=T,r=J.trim(),s=R,l=K.trim(),o=V.trim(),i=_,a=b(G),n=em,d=C?Array.from(W):void 0;if("json"===H)try{let c=eb(ee);e=c.data.name.trim(),t=c.data.roleId??"",r=(c.data.title??"").trim(),s=c.data.provider,l=c.data.model.trim(),o=c.data.identity.trim(),i=c.data.color??"#6B7280",a=c.data.skills??[],n=c.data.skillBindings??[],d=C?c.projectIds??[]:void 0}catch(e){es(e instanceof Error?e.message:"Unable to parse JSON.");return}e&&l&&N({name:e,...eg&&t?{roleId:t}:{},title:r||void 0,provider:s,model:l,identity:o,color:i,skills:a,skillBindings:n},d)},disabled:"form"===H&&(!$.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:k})]})]})]})})},"agentAvatarUrl",0,g])}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,958164,e=>{"use strict";let t=(0,e.i(363732).default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["AlertTriangle",0,t],958164)},794731,e=>{"use strict";let t=(0,e.i(363732).default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);e.s(["Trash2",0,t],794731)},196630,e=>{"use strict";let t=(0,e.i(363732).default)("folder-git-2",[["path",{d:"M18 19a5 5 0 0 1-5-5v8",key:"sz5oeg"}],["path",{d:"M9 20H4a2 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.9H20a2 2 0 0 1 2 2v5",key:"1w6njk"}],["circle",{cx:"13",cy:"12",r:"2",key:"1j92g6"}],["circle",{cx:"20",cy:"19",r:"2",key:"1obnsp"}]]);e.s(["FolderGit2",0,t],196630)},80673,e=>{"use strict";let t=(0,e.i(363732).default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);e.s(["Download",0,t],80673)},666946,e=>{"use strict";let t=(0,e.i(363732).default)("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]]);e.s(["Upload",0,t],666946)},779860,e=>{"use strict";var t=e.i(843476),s=e.i(271645),a=e.i(618566),l=e.i(196630),i=e.i(80673),r=e.i(666946),n=e.i(794731),c=e.i(958164),d=e.i(929870);function o({project:e,onUpdate:x,onDelete:m}){let p=(0,a.useRouter)(),[u,h]=(0,s.useState)(e.name),[b,j]=(0,s.useState)(e.description??""),[g,f]=(0,s.useState)(null),y=(0,s.useCallback)(async(t,s)=>{let a=s.trim();if(("name"!==t||a)&&("name"!==t||a!==e.name)&&("description"!==t||a!==(e.description??"")))try{await x(e.id,{[t]:a}),f("Saved"),setTimeout(()=>f(null),2e3)}catch{f("Failed to save"),setTimeout(()=>f(null),3e3)}},[x,e.id,e.name,e.description]),[N,v]=(0,s.useState)(!1),[z,k]=(0,s.useState)(""),[w,C]=(0,s.useState)(""),[T,M]=(0,s.useState)(null),S=(0,s.useCallback)(async t=>{try{await x(e.id,{repos:t}),M("Saved"),setTimeout(()=>M(null),2e3)}catch{M("Failed to save"),setTimeout(()=>M(null),3e3)}},[x,e.id]),F=(0,s.useCallback)(async()=>{let t=z.trim(),s=w.trim();if(!t||!s)return;let a=(e.repos??[]).map(e=>({id:e.id,name:e.name,path:e.path,git_url:e.git_url,notes:e.notes}));await S([...a,{name:t,path:s}]),k(""),C(""),v(!1)},[z,w,e.repos,S]),A=(0,s.useCallback)(async t=>{let s=(e.repos??[]).filter(e=>e.id!==t).map(e=>({id:e.id,name:e.name,path:e.path,git_url:e.git_url,notes:e.notes}));await S(s)},[e.repos,S]),D=(0,s.useRef)(null),[P,U]=(0,s.useState)(null),_=(0,s.useCallback)(()=>{window.open(`/api/projects/${e.id}/teams/export`,"_blank")},[e.id]),H=(0,s.useCallback)(async t=>{let s=t.target.files?.[0];if(s){try{let t=await s.text(),a=await fetch(`/api/projects/${e.id}/teams/import`,{method:"POST",headers:{"Content-Type":"application/x-yaml"},body:t});if(a.ok)U("Import successful");else{let e=await a.json().catch(()=>({}));U(`Import failed: ${e.error||a.statusText}`)}}catch{U("Import failed")}D.current&&(D.current.value=""),setTimeout(()=>U(null),4e3)}},[e.id]),[I,R]=(0,s.useState)(!1),[B,L]=(0,s.useState)(!1),V=(0,s.useCallback)(async()=>{L(!0);try{await m(e.id),p.push("/")}catch{L(!1),R(!1)}},[m,e.id,p]);return(0,t.jsx)("div",{className:"h-full overflow-y-auto",children:(0,t.jsxs)("div",{className:"max-w-2xl mx-auto px-6 py-8 space-y-8",children:[(0,t.jsxs)("section",{className:"rounded-2xl border border-zinc-800 bg-zinc-900/50 p-6 space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between border-b border-zinc-800 pb-3",children:[(0,t.jsx)("h2",{className:"text-sm font-bold uppercase tracking-widest text-zinc-400",children:"Project Info"}),g&&(0,t.jsx)("span",{className:"text-xs text-zinc-500",children:g})]}),(0,t.jsxs)("label",{className:"block space-y-1.5",children:[(0,t.jsx)("span",{className:"text-xs font-medium text-zinc-500",children:"Name"}),(0,t.jsx)("input",{value:u,onChange:e=>h(e.target.value),onBlur:()=>y("name",u),className:"input w-full",placeholder:"Project name"})]}),(0,t.jsxs)("label",{className:"block space-y-1.5",children:[(0,t.jsx)("span",{className:"text-xs font-medium text-zinc-500",children:"Description"}),(0,t.jsx)("textarea",{value:b,onChange:e=>j(e.target.value),onBlur:()=>y("description",b),className:"input w-full h-24 resize-none",placeholder:"What is this project about?"})]})]}),(0,t.jsxs)("section",{className:"rounded-2xl border border-zinc-800 bg-zinc-900/50 p-6 space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between border-b border-zinc-800 pb-3",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(l.FolderGit2,{className:"w-4 h-4 text-zinc-400"}),(0,t.jsx)("h2",{className:"text-sm font-bold uppercase tracking-widest text-zinc-400",children:"Folders"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[T&&(0,t.jsx)("span",{className:"text-xs text-zinc-500",children:T}),(0,t.jsxs)("button",{onClick:()=>v(!0),className:"text-xs font-semibold text-blue-400 hover:text-blue-300 flex items-center gap-1",children:[(0,t.jsx)(d.Plus,{className:"w-3 h-3"}),"Add Folder"]})]})]}),0===(e.repos??[]).length&&!N&&(0,t.jsx)("p",{className:"text-sm text-zinc-500",children:"No folders linked to this project."}),(0,t.jsx)("div",{className:"space-y-2",children:(e.repos??[]).map(e=>(0,t.jsxs)("div",{className:"flex items-center justify-between rounded-xl border border-zinc-800 bg-zinc-900/30 px-4 py-3",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("div",{className:"text-sm font-medium text-zinc-200 truncate",children:e.name}),(0,t.jsx)("div",{className:"text-xs text-zinc-500 truncate",children:e.path||e.git_url||"No path set"})]}),(0,t.jsx)("button",{onClick:()=>A(e.id),className:"ml-3 p-1.5 rounded-lg text-zinc-600 hover:text-red-400 hover:bg-zinc-800 transition-colors flex-shrink-0",title:"Remove repository",children:(0,t.jsx)(n.Trash2,{className:"w-4 h-4"})})]},e.id))}),N&&(0,t.jsxs)("div",{className:"rounded-xl border border-zinc-700 bg-zinc-800/50 p-4 space-y-3",children:[(0,t.jsx)("input",{value:z,onChange:e=>k(e.target.value),className:"input w-full text-sm",placeholder:"Folder name",autoFocus:!0}),(0,t.jsx)("input",{value:w,onChange:e=>C(e.target.value),className:"input w-full text-sm",placeholder:"Local path (e.g. /Users/you/projects/repo)"}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("button",{onClick:F,disabled:!z.trim()||!w.trim(),className:"btn-primary px-4 py-1.5 text-sm disabled:opacity-40",children:"Save"}),(0,t.jsx)("button",{onClick:()=>{v(!1),k(""),C("")},className:"px-4 py-1.5 text-sm text-zinc-400 hover:text-zinc-200",children:"Cancel"})]})]})]}),(0,t.jsxs)("section",{className:"rounded-2xl border border-zinc-800 bg-zinc-900/50 p-6 space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between border-b border-zinc-800 pb-3",children:[(0,t.jsx)("h2",{className:"text-sm font-bold uppercase tracking-widest text-zinc-400",children:"Team Config"}),P&&(0,t.jsx)("span",{className:"text-xs text-zinc-500",children:P})]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsxs)("button",{onClick:_,className:"flex items-center gap-2 px-4 py-2 rounded-xl border border-zinc-700 bg-zinc-800/50 hover:bg-zinc-800 transition-colors text-sm text-zinc-300",children:[(0,t.jsx)(i.Download,{className:"w-4 h-4"}),"Export YAML"]}),(0,t.jsxs)("label",{className:"flex items-center gap-2 px-4 py-2 rounded-xl border border-zinc-700 bg-zinc-800/50 hover:bg-zinc-800 transition-colors text-sm text-zinc-300 cursor-pointer",children:[(0,t.jsx)(r.Upload,{className:"w-4 h-4"}),"Import YAML",(0,t.jsx)("input",{ref:D,type:"file",accept:".yaml,.yml",onChange:H,className:"hidden"})]})]})]}),(0,t.jsxs)("section",{className:"rounded-2xl border border-red-900/50 bg-zinc-900/50 p-6 space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 border-b border-red-900/30 pb-3",children:[(0,t.jsx)(c.AlertTriangle,{className:"w-4 h-4 text-red-500"}),(0,t.jsx)("h2",{className:"text-sm font-bold uppercase tracking-widest text-red-400",children:"Danger Zone"})]}),(0,t.jsx)("p",{className:"text-sm text-zinc-400",children:"Deleting this project will remove all associated data including folders, agent assignments, and threads."}),I?(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("button",{onClick:V,disabled:B,className:"flex items-center gap-2 px-4 py-2 rounded-xl bg-red-600 hover:bg-red-700 transition-colors text-sm text-white font-medium disabled:opacity-50",children:B?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"spinner w-3 h-3 border-2 border-white/20 border-t-white"}),"Deleting..."]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.Trash2,{className:"w-4 h-4"}),"Confirm Delete"]})}),(0,t.jsx)("button",{onClick:()=>R(!1),className:"px-4 py-2 text-sm text-zinc-400 hover:text-zinc-200",children:"Cancel"})]}):(0,t.jsxs)("button",{onClick:()=>R(!0),className:"flex items-center gap-2 px-4 py-2 rounded-xl border border-red-900/50 bg-red-950/30 hover:bg-red-950/50 transition-colors text-sm text-red-400",children:[(0,t.jsx)(n.Trash2,{className:"w-4 h-4"}),"Delete Project"]})]})]})})}var x=e.i(524123);e.s(["default",0,function({params:e}){let{slug:a}=(0,s.use)(e),{projects:l,updateProject:i,deleteProject:r}=(0,x.useProjectsWithAgents)(),n=l.find(e=>e.slug===a);return n?(0,t.jsx)(o,{project:n,onUpdate:i,onDelete:r}):(0,t.jsx)("div",{className:"flex items-center justify-center h-full text-sm text-zinc-500",children:"Loading..."})}],779860)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,429056,e=>{"use strict";let t=(0,e.i(363732).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",0,t],429056)},906724,595807,e=>{"use strict";let t=(0,e.i(363732).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["default",0,t],595807),e.s(["Loader2",0,t],906724)},575479,e=>{"use strict";let t=(0,e.i(363732).default)("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);e.s(["FileText",0,t],575479)},169433,e=>{"use strict";let t="agx:windowState",a={workspaceWidth:260,logPanelHeight:200,workspaceVisible:!0,logPanelVisible:!1,linearTicketPanelWidth:576,linearRunsPanelWidth:224,objectiveChatPanelWidth:440},r={lastThreadId:null,lastWorkspaceId:null},s={bounds:null,sidebar:a,scroll:r};function l(){return void 0!==window.localStorage}function n(){if(!l())return{...s};let e=window.localStorage.getItem(t);if(!e)return{...s};try{let t=JSON.parse(e);return{bounds:t.bounds||null,sidebar:{...a,...t.sidebar||{}},scroll:{...r,...t.scroll||{}}}}catch{return{...s}}}function d(){return n().sidebar}function i(e){let a=n();a.sidebar={...a.sidebar,...e};if(l())try{window.localStorage.setItem(t,JSON.stringify(a))}catch{}}e.s(["loadLinearRunsPanelWidth",0,function(){return d().linearRunsPanelWidth},"loadLinearTicketPanelWidth",0,function(){return d().linearTicketPanelWidth},"loadObjectiveChatPanelWidth",0,function(){return d().objectiveChatPanelWidth},"loadWorkspaceWidth",0,function(){return d().workspaceWidth},"persistLinearRunsPanelWidth",0,function(e){i({linearRunsPanelWidth:e})},"persistLinearTicketPanelWidth",0,function(e){i({linearTicketPanelWidth:e})},"persistObjectiveChatPanelWidth",0,function(e){i({objectiveChatPanelWidth:e})},"persistWorkspaceWidth",0,function(e){i({workspaceWidth:e})}])},434405,e=>{"use strict";let t="agx-chat:threads";function a(){let e=globalThis.localStorage;if(!e)throw Error("LocalThreadAdapter requires a browser-like environment with `localStorage`.");return e}function r(){let e=a().getItem(t);if(!e)return{threads:{}};try{let t=JSON.parse(e);if(t&&"object"==typeof t&&t.threads&&"object"==typeof t.threads)return{threads:Object.fromEntries(Object.entries(t.threads).map(([e,t])=>{var a,r;return[e,(a=e,r=t,{id:a,title:r?.title,messages:Array.isArray(r?.messages)?[...r.messages]:[],createdAt:"number"==typeof r?.createdAt?r.createdAt:Date.now(),updatedAt:"number"==typeof r?.updatedAt?r.updatedAt:Date.now(),metadata:r?.metadata,status:r?.status,outcomeNote:r?.outcomeNote,projectId:"string"==typeof r?.projectId?r.projectId:"string"==typeof r?.teamId?r.teamId:r?.projectId===null||r?.teamId===null?null:void 0})]}))}}catch{}return{threads:{}}}function s(e){a().setItem(t,JSON.stringify(e))}function l(e){return{...e,messages:e.messages.map(e=>({...e})),metadata:e.metadata?{...e.metadata}:void 0}}let n=new class{async saveThread(e){let t=Date.now(),a=r(),n=a.threads[e.id],d=n?.createdAt??e.createdAt??t,i=e.updatedAt??t,o={id:e.id,title:e.title,messages:e.messages.map(e=>({...e})),metadata:e.metadata,createdAt:d,updatedAt:i,status:e.status,outcomeNote:e.outcomeNote,projectId:e.projectId??e.teamId};return a.threads[e.id]=o,s(a),l(o)}async loadThread(e){let t=r().threads[e];return t?l(t):null}async listThreads(e){let t=Object.values(r().threads),a=e?.order??"desc",s=[...t].sort((e,t)=>"asc"===a?e.updatedAt-t.updatedAt:t.updatedAt-e.updatedAt),n=Math.max(0,e?.offset??0),d=e?.limit,i="number"==typeof d&&d>=0?s.slice(n,n+d):s.slice(n);return{total:t.length,threads:i.map(l)}}async deleteThread(e){let t=r();t.threads[e]&&(delete t.threads[e],s(t))}};e.s(["threadService",0,{listThreads:async()=>[...(await n.listThreads({order:"desc"})).threads.filter(e=>!0!==e.metadata?.archived)].sort((e,t)=>t.updatedAt-e.updatedAt),async createThread(e){let t="string"==typeof e?.id?e.id.trim():"";if(t){let a=await n.loadThread(t);if(a){let t={...a.metadata??{},...e?.metadata??{},archived:!1,archivedAt:null};return n.saveThread({id:a.id,title:e?.title??a.title,messages:e?.messages?.length?e.messages:a.messages,metadata:t,createdAt:a.createdAt})}}let a={id:t||("u">typeof crypto&&"function"==typeof crypto.randomUUID?crypto.randomUUID():`thread-${Date.now()}-${Math.random().toString(16).slice(2)}`),messages:e?.messages?.length?e.messages:[],title:e?.title,metadata:e?.metadata};return n.saveThread(a)},async deleteThread(e){let t=e.trim();if(!t)return;let a=await n.loadThread(t);if(!a)return;let r={...a.metadata??{},archived:!0,archivedAt:Date.now()};await n.saveThread({id:a.id,title:a.title,messages:a.messages,metadata:r,createdAt:a.createdAt})},async renameThread(e,t){let a=e.trim(),r=t.trim();if(!a||!r)return null;let s=await n.loadThread(a);return s?(s.title?.trim()??"")===r?s:n.saveThread({id:s.id,title:r,messages:s.messages,metadata:s.metadata,createdAt:s.createdAt}):null},async updateThreadStatus(e,t){let a=await n.loadThread(e);return a?a.status===t?a:n.saveThread({id:a.id,title:a.title,messages:a.messages,metadata:a.metadata,createdAt:a.createdAt,status:t,outcomeNote:a.outcomeNote}):null},async updateThreadOutcomeNote(e,t){let a=await n.loadThread(e);return a?a.outcomeNote===t?a:n.saveThread({id:a.id,title:a.title,messages:a.messages,metadata:a.metadata,createdAt:a.createdAt,status:a.status,outcomeNote:t}):null},async updateMessageThreadStatus(e,t,a){let r=await n.loadThread(e);if(!r)return null;let s=r.messages.map(e=>e.id===t?{...e,threadStatus:a}:e);return n.saveThread({id:r.id,title:r.title,messages:s,metadata:r.metadata,createdAt:r.createdAt,status:r.status,outcomeNote:r.outcomeNote})},async updateMessageOutcomeNote(e,t,a){let r=await n.loadThread(e);if(!r)return null;let s=r.messages.map(e=>e.id===t?{...e,outcomeNote:a}:e);return n.saveThread({id:r.id,title:r.title,messages:s,metadata:r.metadata,createdAt:r.createdAt,status:r.status,outcomeNote:r.outcomeNote})},async saveThreadMessages(e,t){let a=await n.loadThread(e);if(!a)return null;let r=a.title?.trim()||function(e){let t=e.find(e=>"user"===e.role)?.content?.trim();if(!t)return;let a=t.replace(/\s+/g," ");return a.length>60?`${a.slice(0,60).trim()}…`:a}(t);return function(e,t){if(e.length!==t.length)return!1;for(let a=0;a<e.length;a+=1){let r=e[a],s=t[a];if(r.id!==s.id||r.role!==s.role||r.participantId!==s.participantId||r.content!==s.content||r.timestamp!==s.timestamp)return!1}return!0}(a.messages,t)&&(a.title?.trim()||void 0)===r?a:n.saveThread({id:a.id,title:r,messages:t,metadata:a.metadata,createdAt:a.createdAt})}}],434405)},997626,e=>{"use strict";let t=(0,e.i(363732).default)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);e.s(["Zap",0,t],997626)},938201,e=>{"use strict";let t=(0,e.i(363732).default)("target",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"6",key:"1vlfrh"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]]);e.s(["Target",0,t],938201)},494999,e=>{"use strict";var t=e.i(843476),a=e.i(271645);e.s(["default",0,function({initialPath:e,onSelect:r,onCancel:s}){let[l,n]=(0,a.useState)(e||""),[d,i]=(0,a.useState)(null),[o,c]=(0,a.useState)(!1),[u,h]=(0,a.useState)(null),m=(0,a.useRef)(null),p=(0,a.useCallback)(async e=>{c(!0),h(null);try{let t=e?`?path=${encodeURIComponent(e)}`:"",a=await fetch(`/api/filesystem/browse${t}`),r=await a.json();if(!a.ok)return void h(r.error||"Failed to browse");i(r),n(r.current),m.current?.scrollTo(0,0)}catch{h("Failed to connect")}finally{c(!1)}},[]);return(0,a.useEffect)(()=>{p(e||"")},[]),(0,t.jsxs)("div",{className:"rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] overflow-hidden shadow-lg",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 px-3 py-2 border-b border-[var(--card-border)] bg-[var(--muted)]/30",children:[(0,t.jsx)("input",{value:l,onChange:e=>n(e.target.value),onKeyDown:e=>{"Enter"===e.key&&p(l)},className:"input text-xs flex-1 py-1",placeholder:"Enter path..."}),(0,t.jsx)("button",{type:"button",onClick:()=>p(l),className:"text-[10px] font-bold uppercase tracking-wider text-[var(--primary)] hover:underline px-2 py-1 shrink-0",children:"Go"})]}),(0,t.jsxs)("div",{ref:m,className:"max-h-48 overflow-y-auto",children:[o&&(0,t.jsx)("div",{className:"px-3 py-4 text-xs text-[var(--muted-foreground)] text-center",children:"Loading..."}),u&&(0,t.jsx)("div",{className:"px-3 py-4 text-xs text-[var(--destructive)] text-center",children:u}),!o&&d&&(0,t.jsxs)("div",{className:"py-1",children:[d.parent&&(0,t.jsxs)("button",{type:"button",onClick:()=>p(d.parent),className:"w-full text-left px-3 py-1.5 text-sm hover:bg-[var(--muted)]/50 transition-colors flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"↑"}),(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:".."})]}),0===d.dirs.length&&!d.parent&&(0,t.jsx)("div",{className:"px-3 py-3 text-xs text-[var(--muted-foreground)] text-center",children:"No subdirectories"}),d.dirs.map(e=>(0,t.jsxs)("button",{type:"button",onClick:()=>p(e.path),className:"w-full text-left px-3 py-1.5 text-sm hover:bg-[var(--muted)]/50 transition-colors flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-[var(--muted-foreground)]",children:"📁"}),(0,t.jsx)("span",{className:"truncate",children:e.name})]},e.path))]})]}),(0,t.jsxs)("div",{className:"flex items-center justify-between px-3 py-2 border-t border-[var(--card-border)] bg-[var(--muted)]/30",children:[(0,t.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)] truncate max-w-[60%]",children:d?.current||l}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("button",{type:"button",onClick:s,className:"text-xs font-medium text-[var(--muted-foreground)] hover:underline px-2 py-1",children:"Cancel"}),(0,t.jsx)("button",{type:"button",onClick:()=>r(d?.current||l),className:"text-xs font-bold text-[var(--primary)] hover:underline px-2 py-1",children:"Select"})]})]})]})}])},535208,e=>{"use strict";var t=e.i(843476),a=e.i(271645),r=e.i(494999);let s={name:"",description:""},l={name:"",path:"",notes:""};function n({form:e,repos:s,isEditingProject:l,isSubmitting:d,onFieldChange:i,onRepoChange:o,onAddRepo:c,onRemoveRepo:u}){let[h,m]=(0,a.useState)([]),[p,x]=(0,a.useState)(null),f=(0,a.useRef)(0);(0,a.useEffect)(()=>{l?m([]):m(s.map((e,t)=>t)),f.current=s.length},[l,s.length]),(0,a.useEffect)(()=>{if(!l){f.current=s.length;return}let e=f.current;m(t=>{let a=t.filter(e=>e<s.length);return s.length>e&&a.push(...Array.from({length:s.length-e},(t,a)=>e+a)),a}),f.current=s.length},[l,s.length]);let v=(0,a.useCallback)(e=>{m(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},[]),g=(0,a.useCallback)(e=>!l||h.includes(e),[h,l]);return(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsx)("div",{className:"grid gap-4",children:(0,t.jsxs)("label",{className:"space-y-1.5 block",children:[(0,t.jsx)("span",{className:"text-xs font-bold uppercase tracking-wider text-[var(--muted-foreground)]",children:"Project Name"}),(0,t.jsx)("input",{value:e.name,onChange:e=>i("name",e.target.value),className:"input w-full",placeholder:"e.g. AGX Cloud",disabled:d})]})}),(0,t.jsxs)("label",{className:"space-y-1.5 block",children:[(0,t.jsx)("span",{className:"text-xs font-bold uppercase tracking-wider text-[var(--muted-foreground)]",children:"Description"}),(0,t.jsx)("textarea",{value:e.description,onChange:e=>i("description",e.target.value),className:"input w-full h-24 resize-none",placeholder:"What is this project about?",disabled:d})]}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between border-b border-[var(--card-border)] pb-2",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h3",{className:"text-sm font-bold uppercase tracking-widest text-[var(--muted-foreground)]",children:"Folders"}),(0,t.jsx)("p",{className:"text-[11px] text-[var(--muted-foreground)] mt-0.5",children:"Code repos, doc folders, design assets, config directories — any path your team needs access to."})]}),(0,t.jsx)("button",{type:"button",onClick:c,className:"text-xs font-semibold text-[var(--primary)] hover:underline flex-shrink-0",disabled:d,children:"+ Add Folder"})]}),(0,t.jsx)("div",{className:"space-y-4",children:s.map((e,a)=>(0,t.jsxs)("div",{className:"p-4 rounded-2xl border border-[var(--card-border)] bg-[var(--muted)]/20 space-y-3 relative group",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"text-xs font-bold text-[var(--foreground)] uppercase",children:["Folder #",a+1]}),l&&!g(a)?(0,t.jsxs)("div",{className:"mt-1 text-sm text-[var(--muted-foreground)]",children:[(0,t.jsx)("div",{children:e.name||"Unnamed folder"}),(0,t.jsx)("div",{className:"truncate",children:e.path||"No local path set"})]}):null]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[l&&(0,t.jsx)("button",{type:"button",onClick:()=>v(a),className:"text-xs font-semibold text-[var(--primary)] hover:underline",disabled:d,children:g(a)?"Done":"Edit"}),s.length>1&&(0,t.jsx)("button",{type:"button",onClick:()=>u(a),className:"text-xs font-semibold text-[var(--destructive)] hover:underline",disabled:d,children:"Remove"})]})]}),g(a)?(0,t.jsxs)("div",{className:"grid gap-3 md:grid-cols-2",children:[(0,t.jsx)("input",{value:e.name,onChange:e=>o(a,"name",e.target.value),placeholder:"Name (e.g. Frontend, API Docs, Design System)",className:"input text-sm",disabled:d}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("input",{value:e.path,onChange:e=>o(a,"path",e.target.value),placeholder:"Local path to folder",className:"input text-sm flex-1",disabled:d}),(0,t.jsx)("button",{type:"button",onClick:async()=>{try{let e=await fetch("/api/filesystem/pick-folder",{method:"POST"}),t=await e.json();t.path&&o(a,"path",t.path)}catch{x(p===a?null:a)}},className:"px-3 py-2 rounded-xl border border-[var(--card-border)] bg-[var(--muted)]/30 hover:bg-[var(--muted)]/60 transition-colors text-xs font-semibold text-[var(--muted-foreground)] whitespace-nowrap",disabled:d,children:"Browse"})]}),p===a&&(0,t.jsx)("div",{className:"md:col-span-2",children:(0,t.jsx)(r.default,{initialPath:e.path||"",onSelect:e=>{o(a,"path",e),x(null)},onCancel:()=>x(null)})}),(0,t.jsx)("div",{className:"md:col-span-2",children:(0,t.jsx)("textarea",{value:e.notes,onChange:e=>o(a,"notes",e.target.value),placeholder:"Notes for this folder — e.g. coding conventions, deploy steps, ownership, doc standards...",className:"input text-sm w-full min-h-24 resize-y",disabled:d})})]}):null]},a))})]})]})}e.s(["createProjectPayload",0,function(e,t){let a=t.filter(e=>e.name.trim()&&e.path.trim()).map(e=>({...e.id?{id:e.id}:{},name:e.name.trim(),path:e.path.trim(),...e.git_url?.trim()?{git_url:e.git_url.trim()}:{},notes:e.notes.trim()||void 0}));return{name:e.name.trim(),description:e.description.trim()||void 0,repos:a.length?a:void 0}},"default",0,function({isOpen:e,onClose:r,onSubmit:s,editingProject:l,form:d,repos:i,isSubmitting:o,formError:c,onFieldChange:u,onRepoChange:h,onAddRepo:m,onRemoveRepo:p}){let[x,f]=(0,a.useState)([]);return((0,a.useEffect)(()=>{let e=!1;return async function(){if(!l)return f([]);try{let t=await fetch(`/api/knowledge-notes?scope=project&subjectId=${encodeURIComponent(l.id)}`),a=(t.ok?await t.json():{note:null}).note;e||f(a?.content?[{id:a.id,content:a.content,created_at:a.updatedAt??a.createdAt,source:a.sourceType}]:[])}catch{e||f([])}}(),()=>{e=!0}},[l]),e)?(0,t.jsx)("div",{className:"modal-backdrop p-2 sm:p-4 z-50 overflow-y-auto flex items-center justify-center",onClick:e=>e.target===e.currentTarget&&r(),children:(0,t.jsxs)("div",{className:"modal-content w-full max-w-4xl mx-2 sm:mx-auto bg-[var(--card-bg)] rounded-3xl border border-[var(--card-border)] shadow-2xl animate-scale-in flex flex-col max-h-[90vh]",children:[(0,t.jsxs)("div",{className:"px-4 py-4 sm:px-8 sm:py-6 border-b border-[var(--card-border)] flex items-center justify-between flex-shrink-0",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-xl font-bold",children:l?"Edit Project":"Create New Project"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-0.5",children:l?"Update your project settings and folders.":"Define a new project and connect folders."})]}),(0,t.jsx)("button",{onClick:r,className:"p-2 rounded-xl hover:bg-[var(--muted)]/50 transition-colors",children:(0,t.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),(0,t.jsxs)("div",{className:"flex-1 overflow-y-auto p-4 sm:p-8",children:[l&&(0,t.jsx)("div",{className:"mb-6",children:(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--card-border)] bg-[var(--muted)]/20 p-4",children:[(0,t.jsx)("h3",{className:"text-sm font-bold uppercase tracking-widest text-[var(--muted-foreground)]",children:"Living Project Note"}),x.length>0?(0,t.jsx)("div",{className:"mt-3 space-y-2",children:x.slice(0,5).map(e=>(0,t.jsxs)("div",{className:"rounded-xl border border-[var(--card-border)] bg-[var(--card-bg)] px-3 py-2 text-sm text-[var(--foreground)]",children:[(0,t.jsx)("div",{children:e.content}),e.created_at?(0,t.jsx)("div",{className:"mt-1 text-[11px] text-[var(--muted-foreground)]",children:new Date(e.created_at).toLocaleString()}):null]},e.id))}):(0,t.jsx)("p",{className:"mt-2 text-sm text-[var(--muted-foreground)]",children:"No project note yet."})]})}),(0,t.jsx)(n,{form:d,repos:i,isEditingProject:!!l,isSubmitting:o,onFieldChange:u,onRepoChange:h,onAddRepo:m,onRemoveRepo:p}),c&&(0,t.jsx)("div",{className:"mt-6 p-4 rounded-xl bg-[var(--destructive-muted)] border border-[var(--destructive)]/20 text-sm text-[var(--destructive)]",children:c})]}),(0,t.jsxs)("div",{className:"px-4 py-4 sm:px-8 sm:py-6 border-t border-[var(--card-border)] flex items-center justify-end gap-3 flex-shrink-0",children:[(0,t.jsx)("button",{onClick:r,className:"px-6 py-2 rounded-xl border border-[var(--card-border)] hover:bg-[var(--muted)]/50 transition-colors text-sm font-medium",children:"Cancel"}),(0,t.jsx)("button",{onClick:s,disabled:o,className:"btn-primary px-8 py-2 shadow-lg shadow-[var(--primary)]/20 min-w-[120px]",children:o?(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"spinner w-3 h-3 border-2 border-white/20 border-t-white"}),"Saving..."]}):l?"Save Changes":"Create Project"})]})]})}):null},"useProjectFormState",0,function(){let[e,t]=(0,a.useState)(s),[r,n]=(0,a.useState)([l]),[d,i]=(0,a.useState)(!1),[o,c]=(0,a.useState)(null),u=(0,a.useCallback)((e,t,a)=>{n(r=>r.map((r,s)=>s===e?{...r,[t]:a}:r))},[]),h=(0,a.useCallback)(()=>{n(e=>[...e,{...l}])},[]),m=(0,a.useCallback)(e=>{n(t=>t.filter((t,a)=>a!==e))},[]),p=(0,a.useCallback)(()=>{t(s),n([l]),c(null)},[]),x=(0,a.useCallback)(e=>{t({name:e.name||"",description:e.description||""}),e.repos&&e.repos.length>0?n(e.repos.map(e=>({id:e.id,name:e.name||"",path:e.path||"",git_url:e.git_url||"",notes:e.notes||""}))):n([l]),c(null)},[]);return{form:e,setForm:t,repos:r,handleRepoChange:u,addRepo:h,removeRepo:m,resetForm:p,hydrateFromProject:x,isSubmitting:d,setIsSubmitting:i,formError:o,setFormError:c}}])},99296,846279,e=>{"use strict";let t=(0,e.i(363732).default)("square-terminal",[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]]);e.s(["default",0,t],846279),e.s(["TerminalSquare",0,t],99296)},257587,e=>{"use strict";let t=(0,e.i(363732).default)("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);e.s(["Settings",0,t],257587)},468947,e=>{"use strict";let t=(0,e.i(363732).default)("sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]);e.s(["Sun",0,t],468947)},721571,e=>{"use strict";let t=(0,e.i(363732).default)("moon",[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]]);e.s(["Moon",0,t],721571)},524780,e=>{"use strict";var t=e.i(843476),a=e.i(271645),r=e.i(522016),s=e.i(810605);e.s(["StatusIndicator",0,function(){let[e,l]=(0,a.useState)("unknown"),[n,d]=(0,a.useState)([]),[i,o]=(0,a.useState)(""),[c,u]=(0,a.useState)(!1),h=(0,a.useCallback)(async()=>{try{let e=await fetch("/api/status");if(!e.ok)return void l("unknown");let t=await e.json();l("ok"===t.status?"ok":"degraded");let a=t.services.filter(e=>"agx-chat"===e.name||"agx-cloud"===e.name);d(a),o(new Date().toLocaleTimeString())}catch{l("unknown"),d([])}},[]);return(0,a.useEffect)(()=>{h();let e=setInterval(h,s.UI_POLL_SYSTEM_STATUS_MS);return()=>clearInterval(e)},[h]),(0,t.jsxs)("div",{className:"relative",onMouseEnter:()=>u(!0),onMouseLeave:()=>u(!1),children:[(0,t.jsx)(r.default,{href:"/status",className:"inline-flex h-8 w-8 items-center justify-center rounded-md border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] transition-all hover:bg-[var(--app-shell-subtle)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--ring)]",title:"System status",children:(0,t.jsx)("span",{className:`h-2.5 w-2.5 rounded-full ${"ok"===e?"bg-emerald-400":"degraded"===e?"bg-amber-400":"bg-[var(--app-shell-muted)]"} ${"degraded"===e?"animate-pulse":""}`})}),c&&(0,t.jsxs)("div",{className:"absolute top-full right-0 z-50 mt-1.5 w-52 rounded-lg border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] p-3 text-xs shadow-lg",children:[n.length>0?(0,t.jsx)("ul",{className:"space-y-1.5",children:n.map(e=>(0,t.jsxs)("li",{className:"flex items-center justify-between",children:[(0,t.jsx)("span",{className:"font-medium text-[var(--foreground)]",children:e.name}),(0,t.jsx)("span",{className:"ok"===e.status?"text-emerald-600":"error"===e.status?"text-red-500":"text-[var(--muted-foreground)]",children:"ok"===e.status?"Healthy":"error"===e.status?e.detail||"Error":"Unavailable"})]},e.name))}):(0,t.jsx)("p",{className:"text-[var(--app-shell-soft-text)]",children:"Checking..."}),i&&(0,t.jsxs)("p",{className:"mt-2 border-t border-[var(--app-shell-border)] pt-1.5 text-[var(--app-shell-soft-text)]",children:["Last check: ",i]})]})]})}])},51297,e=>{"use strict";let t=(0,e.i(363732).default)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]);e.s(["Bot",0,t],51297)},969039,e=>{"use strict";var t=e.i(271645),a=e.i(618566),r=e.i(434405);let s="agx-chat:last-thread";function l(){return void 0!==window.localStorage}function n(){if(l())try{window.localStorage.removeItem(s)}catch{}}let d=e=>[...e].sort((e,t)=>t.createdAt-e.createdAt);e.s(["useThreadState",0,function(e){let i=(0,a.useSearchParams)(),o=(e||i.get("thread")||"").trim()||null,c=(0,t.useRef)(!0),[u,h]=(0,t.useState)([]),[m,p]=(0,t.useState)(null),[x,f]=(0,t.useState)(!0),[v,g]=(0,t.useState)(!0),[b,y]=(0,t.useState)(!1),[j,w]=(0,t.useState)(null),[k,N]=(0,t.useState)(null),S=(0,t.useRef)(!1),C=(0,t.useCallback)(e=>{p(e)},[]);(0,t.useEffect)(()=>(c.current=!0,()=>{c.current=!1}),[]),(0,t.useEffect)(()=>{let e=!1;return(async()=>{try{var t;let a,i=await r.threadService.listThreads();if(o&&!i.some(e=>e.id===o)){let e=await r.threadService.createThread({id:o});i=d([...i.filter(t=>t.id!==e.id),e])}if(e||!c.current)return;h(i);let u=o||function(){if(!l())return null;try{return window.localStorage.getItem(s)}catch{return null}}(),{threadId:m,shouldClearSavedId:x,restoredFromStorage:f}=(t=i,a=t[0]?.id??null,u?t.some(e=>e.id===u)?{threadId:u,shouldClearSavedId:!1,restoredFromStorage:!0}:{threadId:a,shouldClearSavedId:!0,restoredFromStorage:!1}:{threadId:a,shouldClearSavedId:!1,restoredFromStorage:!1});x&&n(),S.current||(S.current=!0),f&&m?C(m):m?p(e=>e??m):p(null)}catch(e){console.error("Failed to load threads",e)}finally{c.current&&(f(!1),g(!1))}})(),()=>{e=!0}},[o,C]),(0,t.useEffect)(()=>{if(S.current)if(m){if(l())try{window.localStorage.setItem(s,m)}catch{}}else n()},[m]);let T=(0,t.useCallback)(async e=>{y(!0);try{let t=await r.threadService.createThread(e);if(!c.current)return t;return h(e=>d([...e.filter(e=>e.id!==t.id),t])),p(t.id),t}catch(e){throw console.error("Failed to create thread",e),e}finally{c.current&&y(!1)}},[]),A=(0,t.useCallback)(async e=>{if(e){w(e);try{if(await r.threadService.deleteThread(e),!c.current)return;let t=[];h(a=>t=d(a.filter(t=>t.id!==e))),p(a=>a===e?t[0]?.id??null:a)}catch(e){throw console.error("Failed to delete thread",e),e}finally{c.current&&w(null)}}},[]),M=(0,t.useCallback)(async(e,t)=>{let a=e.trim(),s=t.trim();if(a&&s){N(a);try{let e=await r.threadService.renameThread(a,s);if(!e||!c.current)return;h(t=>d(t.map(t=>t.id===e.id?e:t)))}catch(e){throw console.error("Failed to rename thread",e),e}finally{c.current&&N(e=>e===a?null:e)}}},[]),I=(0,t.useCallback)(async(e,t)=>{if(e)try{let a=await r.threadService.saveThreadMessages(e,t);if(!a||!c.current)return;h(e=>d(e.map(e=>e.id===a.id?a:e)))}catch(e){console.error("Failed to update thread messages",e)}},[]),P=(0,t.useCallback)(async(e,t)=>{if(e)try{let a=await r.threadService.updateThreadStatus(e,t);if(!a||!c.current)return;h(e=>d(e.map(e=>e.id===a.id?a:e)))}catch(e){console.error("Failed to update thread status",e)}},[]),E=(0,t.useCallback)(async(e,t)=>{if(e)try{let a=await r.threadService.updateThreadOutcomeNote(e,t);if(!a||!c.current)return;h(e=>d(e.map(e=>e.id===a.id?a:e)))}catch(e){console.error("Failed to update thread outcome note",e)}},[]),W=(0,t.useCallback)(async(e,t,a)=>{if(e&&t)try{let s=await r.threadService.updateMessageThreadStatus(e,t,a);if(!s||!c.current)return;h(e=>d(e.map(e=>e.id===s.id?s:e)))}catch(e){console.error("Failed to update message thread status",e)}},[]),L=(0,t.useCallback)(async(e,t,a)=>{if(e&&t)try{let s=await r.threadService.updateMessageOutcomeNote(e,t,a);if(!s||!c.current)return;h(e=>d(e.map(e=>e.id===s.id?s:e)))}catch(e){console.error("Failed to update message outcome note",e)}},[]),R=null!==m&&j===m;return{threads:u,activeThreadId:m,selectThread:C,createThread:T,deleteThread:A,isLoading:x,isRestoringActiveThread:v,isCreating:b,deletingThreadId:j,renamingThreadId:k,isDeletingActiveThread:R,updateThreadMessages:I,renameThread:M,updateThreadStatus:P,updateThreadOutcomeNote:E,updateMessageThreadStatus:W,updateMessageOutcomeNote:L}}],969039)},563975,e=>{"use strict";var t=e.i(843476),a=e.i(271645),r=e.i(618566),s=e.i(429056),l=e.i(468947),n=e.i(721571),d=e.i(524780),i=e.i(51297);let o=(0,e.i(363732).default)("clock-3",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6h4",key:"135r8i"}]]);var c=e.i(575479),u=e.i(906724),h=e.i(597628),m=e.i(8707),p=e.i(938201),x=e.i(572665),f=e.i(797167);function v({projectId:e}){let s=(0,r.useRouter)(),l=(0,r.usePathname)(),n=(0,a.useRef)(null),d=(0,a.useRef)(null),[g,b]=(0,a.useState)(""),[y,j]=(0,a.useState)([]),[w,k]=(0,a.useState)(0),[N,S]=(0,a.useState)(!1),[C,T]=(0,a.useState)(null),[A,M]=(0,a.useState)(!1),[I,P]=(0,a.useState)(0),[E,W]=(0,a.useState)(new Set),L=g.trim(),R=(0,a.useMemo)(()=>y.map(e=>({...e,visibleResults:E.has(e.id)?e.results:e.results.slice(0,3),hiddenCount:Math.max(0,e.results.length-3)})),[E,y]),D=(0,a.useMemo)(()=>R.flatMap(e=>e.visibleResults),[R]),F=(0,a.useMemo)(()=>D.map(e=>`${e.kind}:${e.id}`),[D]),$=(0,a.useCallback)(()=>{b(""),j([]),k(0),T(null),S(!1),P(0)},[]),U=(0,a.useCallback)(e=>{$(),M(!1),s.push(e.href)},[$,s]);(0,a.useEffect)(()=>{$(),M(!1),W(new Set)},[$,l]),(0,a.useEffect)(()=>{let e=e=>{n.current?.contains(e.target)||M(!1)};return window.addEventListener("pointerdown",e),()=>window.removeEventListener("pointerdown",e)},[]),(0,a.useEffect)(()=>{let e=e=>{(e.metaKey||e.ctrlKey)&&"k"===e.key.toLowerCase()&&(e.preventDefault(),d.current?.focus(),d.current?.select())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[]),(0,a.useEffect)(()=>{A&&P(0)},[A,y]),(0,a.useEffect)(()=>{if(!L||L.length<2){j([]),k(0),T(null),S(!1),W(new Set);return}let t=!1;S(!0);let a=window.setTimeout(()=>{(async()=>{try{let a=new URLSearchParams({q:L}),r=await fetch(`/api/projects/${encodeURIComponent(e)}/search?${a.toString()}`,{cache:"no-store"}),s=await r.json().catch(()=>null);if(t)return;if(!r.ok){let e=s&&"object"==typeof s&&"error"in s?String(s.error):"Search failed";j([]),k(0),T(e);return}j(Array.isArray(s.sections)?s.sections:[]),k("number"==typeof s.total?s.total:0),T(null),W(new Set)}catch(e){if(t)return;console.error("Project search failed",e),j([]),k(0),T("Search failed")}finally{t||S(!1)}})()},220);return()=>{t=!0,window.clearTimeout(a)}},[L,e]);let O=A&&(L.length>0||N||null!==C),_=D.length>0?D[Math.max(0,Math.min(I,D.length-1))]:null,z=(0,a.useCallback)(e=>{W(t=>{let a=new Set(t);return a.has(e)?a.delete(e):a.add(e),a})},[]);return(0,t.jsxs)("div",{ref:n,className:"relative w-full max-w-xl",children:[(0,t.jsxs)("div",{className:"group/search relative",children:[(0,t.jsx)(m.Search,{className:"pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[var(--app-shell-soft-text)] transition-colors group-focus-within/search:text-[var(--primary)]",strokeWidth:1.8}),(0,t.jsx)("input",{ref:d,type:"text",value:g,onFocus:()=>M(!0),onChange:e=>{b(e.target.value),M(!0)},onKeyDown:e=>{if("ArrowDown"===e.key&&D.length>0){e.preventDefault(),P(e=>(e+1)%D.length);return}if("ArrowUp"===e.key&&D.length>0){e.preventDefault(),P(e=>(e-1+D.length)%D.length);return}if("Enter"===e.key&&_){e.preventDefault(),U(_);return}"Escape"===e.key&&(L?$():(M(!1),d.current?.blur()))},placeholder:"Search objectives, tickets, tasks, teams, agents, and chat…",className:"h-8 w-full rounded-xl border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] pl-9 pr-16 text-xs font-medium text-[var(--foreground)] outline-none placeholder:text-[var(--app-shell-soft-text)] transition-all hover:border-[var(--app-shell-border-strong)] focus:border-[var(--primary)] focus:ring-2 focus:ring-[var(--ring)]"}),L?(0,t.jsxs)("div",{className:"absolute right-2 top-1/2 flex -translate-y-1/2 items-center gap-2",children:[(0,t.jsx)("span",{className:"text-[11px] font-bold text-[var(--muted-foreground)]",children:N?"…":w}),(0,t.jsx)("button",{type:"button",onClick:()=>{$(),d.current?.focus()},className:"inline-flex h-5 w-5 items-center justify-center rounded-md text-[var(--app-shell-soft-text)] transition-colors hover:bg-[var(--app-shell-subtle)] hover:text-[var(--foreground)]","aria-label":"Clear search",children:(0,t.jsx)(f.X,{className:"h-3.5 w-3.5"})})]}):(0,t.jsx)("kbd",{className:"pointer-events-none absolute right-3 top-1/2 -translate-y-1/2 rounded-md border border-[var(--app-shell-border)] bg-[var(--app-shell-subtle)] px-1.5 py-0.5 font-sans text-[10px] font-bold text-[var(--app-shell-soft-text)]",children:"⌘K"})]}),O?(0,t.jsx)("div",{className:"absolute left-0 right-0 top-[calc(100%+0.5rem)] z-50 overflow-hidden rounded-2xl border border-[var(--app-shell-border)] bg-[var(--app-shell-surface)] shadow-2xl shadow-black/20",children:(0,t.jsxs)("div",{className:"max-h-[28rem] overflow-y-auto p-2",children:[L.length<2?(0,t.jsx)("div",{className:"rounded-xl px-3 py-4 text-sm text-[var(--muted-foreground)]",children:"Keep typing to search across project entities."}):null,N?(0,t.jsxs)("div",{className:"flex items-center gap-2 rounded-xl px-3 py-4 text-sm text-[var(--muted-foreground)]",children:[(0,t.jsx)(u.Loader2,{className:"h-4 w-4 animate-spin"}),"Searching this project…"]}):null,!N&&C?(0,t.jsx)("div",{className:"rounded-xl px-3 py-4 text-sm text-rose-500",children:C}):null,N||C||!(L.length>=2)||0!==y.length?null:(0,t.jsx)("div",{className:"rounded-xl px-3 py-4 text-sm text-[var(--muted-foreground)]",children:"No matches in this project."}),!N&&!C&&R.map(e=>(0,t.jsxs)("div",{className:"mb-2 last:mb-0",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-3 px-3 pb-1 pt-2",children:[(0,t.jsxs)("div",{className:"text-[10px] font-semibold uppercase tracking-[0.16em] text-[var(--app-shell-soft-text)]",children:[e.label,(0,t.jsx)("span",{className:"ml-1.5 text-[9px] text-[var(--muted-foreground)]",children:e.results.length})]}),e.results.length>3?(0,t.jsx)("button",{type:"button",onMouseDown:e=>e.preventDefault(),onClick:()=>z(e.id),className:"text-[10px] font-medium text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)]",children:E.has(e.id)?"Collapse":`Show ${e.hiddenCount} more`}):null]}),(0,t.jsx)("div",{className:"space-y-1",children:e.visibleResults.map(e=>{let a,r,s=`${e.kind}:${e.id}`,l=F.findIndex(e=>e===s),n=l===I,d=function(e){switch(e){case"objective":return p.Target;case"linear_issue":return c.FileText;case"scheduled_task":return o;case"team":return x.Users;case"agent":return i.Bot;case"chat_thread":case"chat_message":return h.MessageSquare;default:return m.Search}}(e.kind);return(0,t.jsxs)("button",{type:"button",onMouseDown:e=>e.preventDefault(),onMouseEnter:()=>P(l),onClick:()=>U(e),className:`flex w-full items-start gap-3 rounded-xl px-3 py-2.5 text-left transition-colors ${n?"bg-[var(--app-shell-subtle)] text-[var(--foreground)]":"text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]"}`,children:[(0,t.jsx)("span",{className:"mt-0.5 inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-lg border border-[var(--app-shell-border)] bg-[var(--app-shell-elevated)] text-[var(--app-shell-muted)]",children:(0,t.jsx)(d,{className:"h-3.5 w-3.5",strokeWidth:1.75})}),(0,t.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-2",children:[(0,t.jsx)("span",{className:"truncate text-sm font-medium",children:e.title}),(0,t.jsx)("span",{className:"shrink-0 rounded-full bg-[var(--app-shell-subtle)] px-1.5 py-0.5 text-[10px] font-semibold uppercase tracking-wide text-[var(--app-shell-soft-text)]",children:e.label})]}),e.context?(0,t.jsx)("span",{className:"mt-0.5 block truncate text-xs text-[var(--muted-foreground)]",children:e.context}):null,e.description?(0,t.jsx)("span",{className:"mt-1 block text-xs leading-5 text-[var(--muted-foreground)]",children:(a=e.description.split(/(<\/?mark>)/g),r=!1,a.map((e,a)=>"<mark>"===e?(r=!0,null):"</mark>"===e?(r=!1,null):e?r?(0,t.jsx)("mark",{className:"rounded bg-amber-200/80 px-0.5 text-inherit",children:e},`mark-${a}`):(0,t.jsx)("span",{children:e},`text-${a}`):null))}):null]})]},s)})})]},e.id))]})}):null]})}var g=e.i(749410),b=e.i(524123),y=e.i(969039),j=e.i(481248),w=e.i(169433);let k="agx-theme";function N({children:e,params:i}){let{slug:o}=(0,a.use)(i),c=(0,r.useRouter)(),u=(0,r.usePathname)(),{projects:h,isLoading:m,createProject:p,updateProject:x,deleteProject:f,addAgent:S,removeAgent:C}=(0,b.useProjectsWithAgents)(),{threads:T,isLoading:A,isCreating:M,deletingThreadId:I,renamingThreadId:P,isRestoringActiveThread:E,createThread:W,renameThread:L,deleteThread:R}=(0,y.useThreadState)(),[D,F]=(0,a.useState)([]),[$,U]=(0,a.useState)(!1),[O,_]=(0,a.useState)(368),[z,K]=(0,a.useState)(()=>{let e=window.localStorage.getItem(k);return"dark"===e||"light"===e?e:document.documentElement.classList.contains("dark")?"dark":"light"});(0,a.useEffect)(()=>{U((0,j.loadWorkspaceSidebarVisible)()),_((0,w.loadWorkspaceWidth)()||368)},[]),(0,a.useEffect)(()=>{let e="dark"===z;document.documentElement.classList.toggle("dark",e),document.documentElement.style.colorScheme=z,window.localStorage.setItem(k,z)},[z]),(0,a.useEffect)(()=>{fetch("/api/participants").then(e=>e.json()).then(e=>F(Array.isArray(e)?e:[])).catch(()=>F([]))},[]);let q=(0,a.useMemo)(()=>h.find(e=>e.slug===o)??null,[h,o]),H=(0,a.useMemo)(()=>{let e=u.match(/\/projects\/[^/]+\/thread\/([^/]+)/);return e?.[1]?decodeURIComponent(e[1]):q?.thread_ids[0]??null},[q?.thread_ids,u]),V=(0,a.useMemo)(()=>u.includes("/linear")?"linear":u.includes("/automations")?"automations":u.includes("/thread/")?"thread":u.includes("/knowledge")?"knowledge":u.includes("/objectives")?"objectives":u.includes("/teams")?"teams":u.includes("/env-vars")?"env-vars":u.includes("/terminal")?"terminal":u.includes("/settings")?"settings":"home",[u]),B=(0,a.useCallback)(e=>{_(e),(0,w.persistWorkspaceWidth)(e)},[]);return m?(0,t.jsx)("div",{className:"flex items-center justify-center h-full",children:(0,t.jsx)("span",{className:"spinner w-8 h-8 border-3 border-[var(--primary)] border-t-transparent rounded-full"})}):q?(0,t.jsxs)("div",{className:"flex h-dvh min-h-0 overflow-hidden bg-[var(--background)]",children:[(0,t.jsx)(g.WorkspaceSidebar,{threads:T,participants:D,activeThreadId:H,isLoading:A,isRestoringActiveThread:E,isCreating:M,deletingThreadId:I,renamingThreadId:P,onSelectThread:e=>c.push(`/projects/${o}/thread/${encodeURIComponent(e)}`),onCreateThread:W,onRenameThread:L,onDeleteThread:R,visible:$,onToggle:()=>{let e=!$;U(e),(0,j.persistWorkspaceSidebarVisible)(e)},width:O,onWidthChange:B,projects:h,onCreateProject:p,onUpdateProject:x,onDeleteProject:f,onAddAgentToProject:S,onRemoveAgentFromProject:C,activeProjectId:q.id,activeProjectView:V,onUpdateParticipant:async e=>{let t=await fetch("/api/participants",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw Error("Failed to update agent");let a=await t.json();F(e=>e.map(e=>e.id===a.id?a:e))},onSelectProject:e=>{let t=h.find(t=>t.id===e);t&&c.push(`/projects/${t.slug}`)}}),(0,t.jsxs)("div",{className:"flex-1 min-h-0 flex flex-col min-w-0 h-full overflow-hidden",children:[(0,t.jsxs)("div",{className:"flex items-center px-4 py-2 border-b border-[var(--app-shell-border)] bg-[var(--background)] shrink-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5 min-w-0 flex-shrink-0",children:[u!==`/projects/${o}`&&(0,t.jsx)("button",{type:"button",onClick:()=>c.back(),className:"p-1 -ml-1 rounded-lg text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)] transition-colors",children:(0,t.jsx)(s.ArrowLeft,{className:"w-4 h-4"})}),(0,t.jsx)("button",{type:"button",onClick:()=>c.push(`/projects/${o}`),className:`text-xs transition-colors ${"home"===V?"text-[var(--foreground)]":"text-[var(--muted-foreground)] hover:text-[var(--foreground)]"}`,children:q.name}),"home"!==V&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"text-xs text-[var(--muted-foreground)]",children:"\\"}),(0,t.jsx)("button",{type:"button",onClick:()=>c.push(`/projects/${o}/${"thread"===V?"":V}`),className:"text-xs text-[var(--foreground)] hover:text-[var(--muted-foreground)] transition-colors",children:{objectives:"Objectives",teams:"Teams","env-vars":"Environment Variables",linear:"Linear",automations:"Scheduled Tasks",thread:"Chat",knowledge:"Knowledge",terminal:"Terminal",settings:"Settings"}[V]??V}),(0,t.jsx)("span",{id:"topbar-breadcrumb",className:"contents"})]})]}),(0,t.jsx)("div",{className:"flex-1 flex justify-center min-w-0 px-4",children:(0,t.jsx)(v,{projectId:q.id})}),(0,t.jsxs)("div",{className:"flex items-center gap-2 flex-shrink-0",children:[(0,t.jsx)(d.StatusIndicator,{}),(0,t.jsx)("button",{type:"button",onClick:()=>K(e=>"dark"===e?"light":"dark"),"aria-label":"dark"===z?"Switch to light theme":"Switch to dark theme",title:"dark"===z?"Switch to light theme":"Switch to dark theme",className:"inline-flex h-7 w-7 items-center justify-center rounded-lg text-[var(--muted-foreground)] transition-colors hover:text-[var(--foreground)] hover:bg-[var(--app-shell-subtle)]",children:"dark"===z?(0,t.jsx)(l.Sun,{className:"h-3.5 w-3.5"}):(0,t.jsx)(n.Moon,{className:"h-3.5 w-3.5"})})]})]}),e]})]}):(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center h-full",children:[(0,t.jsx)("h2",{className:"text-xl font-bold mb-2",children:"Project Not Found"}),(0,t.jsxs)("p",{className:"text-[var(--muted-foreground)] mb-4",children:["The project “",o,"” does not exist or you do not have access to it."]}),(0,t.jsx)("button",{onClick:()=>c.push("/projects"),className:"px-4 py-2 bg-[var(--primary)] text-white rounded-lg hover:bg-[var(--primary-dark)] transition-colors",children:"Back to Projects"})]})}e.s(["default",0,function({children:e,params:r}){return(0,t.jsx)(a.Suspense,{fallback:(0,t.jsx)("div",{className:"flex h-full items-center justify-center text-sm text-[var(--muted-foreground)]",children:"Loading project…"}),children:(0,t.jsx)(N,{params:r,children:e})})}],563975)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,906724,595807,e=>{"use strict";let t=(0,e.i(363732).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["default",0,t],595807),e.s(["Loader2",0,t],906724)},741746,e=>{"use strict";let t=(0,e.i(363732).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);e.s(["AlertCircle",0,t],741746)},196630,e=>{"use strict";let t=(0,e.i(363732).default)("folder-git-2",[["path",{d:"M18 19a5 5 0 0 1-5-5v8",key:"sz5oeg"}],["path",{d:"M9 20H4a2 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.9H20a2 2 0 0 1 2 2v5",key:"1w6njk"}],["circle",{cx:"13",cy:"12",r:"2",key:"1j92g6"}],["circle",{cx:"20",cy:"19",r:"2",key:"1obnsp"}]]);e.s(["FolderGit2",0,t],196630)},575479,e=>{"use strict";let t=(0,e.i(363732).default)("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);e.s(["FileText",0,t],575479)},844118,e=>{e.n(e.i(984242))}]);