@mndrk/agx 2.0.15 → 2.0.17

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 (233) hide show
  1. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/BUILD_ID +1 -1
  2. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/app-path-routes-manifest.json +1 -0
  3. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/build-manifest.json +2 -2
  4. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/prerender-manifest.json +3 -3
  5. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/routes-manifest.json +6 -0
  6. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_global-error/page.js.nft.json +1 -1
  7. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  8. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_global-error.html +2 -2
  9. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_global-error.rsc +1 -1
  10. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  11. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  12. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  13. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  14. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  15. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found/page.js.nft.json +1 -1
  16. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  17. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found.html +2 -2
  18. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found.rsc +1 -1
  19. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  20. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  21. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  22. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  23. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  24. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  25. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/agents/[id]/page.js.nft.json +1 -1
  26. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
  27. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/agents/page.js.nft.json +1 -1
  28. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  29. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/agents.html +2 -2
  30. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/agents.rsc +2 -2
  31. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/agents.segments/_full.segment.rsc +2 -2
  32. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  33. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/agents.segments/_index.segment.rsc +1 -1
  34. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/agents.segments/_tree.segment.rsc +1 -1
  35. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +2 -2
  36. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/agents.segments/agents.segment.rsc +1 -1
  37. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/chat/route.js +1 -1
  38. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/chat/route.js.nft.json +1 -1
  39. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/file-search/route.js.nft.json +1 -1
  40. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/health/route.js.nft.json +1 -1
  41. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/learnings/route.js.nft.json +1 -1
  42. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/logs/stream/route.js.nft.json +1 -1
  43. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/memories/route.js.nft.json +1 -1
  44. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/cancel/route.js.nft.json +1 -1
  45. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/signal/route.js.nft.json +1 -1
  46. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js.nft.json +1 -1
  47. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js.nft.json +1 -1
  48. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/participants/route.js.nft.json +1 -1
  49. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/processes/route/app-paths-manifest.json +3 -0
  50. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/processes/route/build-manifest.json +11 -0
  51. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/processes/route/server-reference-manifest.json +4 -0
  52. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/processes/route.js +8 -0
  53. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/processes/route.js.map +5 -0
  54. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/processes/route.js.nft.json +1 -0
  55. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/processes/route_client-reference-manifest.js +2 -0
  56. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/[id]/migrate-v1/route.js.nft.json +1 -1
  57. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/[id]/migrate-v2/route.js.nft.json +1 -1
  58. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
  59. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/route.js.nft.json +1 -1
  60. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/queue/complete/route.js.nft.json +1 -1
  61. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/queue/route.js.nft.json +1 -1
  62. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
  63. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
  64. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/costs/route.js.nft.json +1 -1
  65. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/dependencies/route.js.nft.json +1 -1
  66. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/events/route.js.nft.json +1 -1
  67. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/history/route.js.nft.json +1 -1
  68. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/metrics/route.js.nft.json +1 -1
  69. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/pause/route.js.nft.json +1 -1
  70. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/replan/route.js.nft.json +1 -1
  71. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/restart/route.js.nft.json +1 -1
  72. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/resume/route.js.nft.json +1 -1
  73. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/rollback/route.js.nft.json +1 -1
  74. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/route.js.nft.json +1 -1
  75. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/start/route.js.nft.json +1 -1
  76. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/graph/stop/route.js.nft.json +1 -1
  77. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/heartbeat/route.js.nft.json +1 -1
  78. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/history/route.js.nft.json +1 -1
  79. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/logs/route.js.nft.json +1 -1
  80. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/logs/stream/route.js.nft.json +1 -1
  81. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js.nft.json +1 -1
  82. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js.nft.json +1 -1
  83. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js.nft.json +1 -1
  84. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js.nft.json +1 -1
  85. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js.nft.json +1 -1
  86. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js.nft.json +1 -1
  87. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
  88. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
  89. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/assign-orphans/route.js.nft.json +1 -1
  90. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/route.js.nft.json +1 -1
  91. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/stream/route.js.nft.json +1 -1
  92. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/teams/[id]/agents/route.js.nft.json +1 -1
  93. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/teams/[id]/route.js.nft.json +1 -1
  94. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/teams/route.js.nft.json +1 -1
  95. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/user-settings/route.js.nft.json +1 -1
  96. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/board/page.js.nft.json +1 -1
  97. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/board/page_client-reference-manifest.js +1 -1
  98. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/board.html +2 -2
  99. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/board.rsc +1 -1
  100. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/board.segments/_full.segment.rsc +1 -1
  101. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/board.segments/_head.segment.rsc +1 -1
  102. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/board.segments/_index.segment.rsc +1 -1
  103. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/board.segments/_tree.segment.rsc +1 -1
  104. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/board.segments/board/__PAGE__.segment.rsc +1 -1
  105. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/board.segments/board.segment.rsc +1 -1
  106. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/execution-graph/page.js.nft.json +1 -1
  107. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/execution-graph/page_client-reference-manifest.js +1 -1
  108. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/execution-graph.html +2 -2
  109. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/execution-graph.rsc +1 -1
  110. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/execution-graph.segments/_full.segment.rsc +1 -1
  111. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/execution-graph.segments/_head.segment.rsc +1 -1
  112. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/execution-graph.segments/_index.segment.rsc +1 -1
  113. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/execution-graph.segments/_tree.segment.rsc +1 -1
  114. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/execution-graph.segments/execution-graph/__PAGE__.segment.rsc +1 -1
  115. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/execution-graph.segments/execution-graph.segment.rsc +1 -1
  116. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/index.html +2 -2
  117. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/index.rsc +2 -2
  118. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  119. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/index.segments/_full.segment.rsc +2 -2
  120. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/index.segments/_head.segment.rsc +1 -1
  121. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/index.segments/_index.segment.rsc +1 -1
  122. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  123. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/page.js.nft.json +1 -1
  124. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/page_client-reference-manifest.js +1 -1
  125. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
  126. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
  127. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
  128. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  129. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/orphans/page.js.nft.json +1 -1
  130. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/orphans/page_client-reference-manifest.js +1 -1
  131. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/orphans.html +1 -1
  132. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/orphans.rsc +2 -2
  133. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/orphans.segments/_full.segment.rsc +2 -2
  134. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/orphans.segments/_head.segment.rsc +1 -1
  135. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/orphans.segments/_index.segment.rsc +1 -1
  136. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/orphans.segments/_tree.segment.rsc +1 -1
  137. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/orphans.segments/projects/orphans/__PAGE__.segment.rsc +2 -2
  138. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/orphans.segments/projects/orphans.segment.rsc +1 -1
  139. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/orphans.segments/projects.segment.rsc +1 -1
  140. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/page.js.nft.json +1 -1
  141. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  142. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects.html +2 -2
  143. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects.rsc +1 -1
  144. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects.segments/_full.segment.rsc +1 -1
  145. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects.segments/_head.segment.rsc +1 -1
  146. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects.segments/_index.segment.rsc +1 -1
  147. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects.segments/_tree.segment.rsc +1 -1
  148. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +1 -1
  149. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects.segments/projects.segment.rsc +1 -1
  150. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings/page.js.nft.json +1 -1
  151. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  152. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings.html +2 -2
  153. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings.rsc +1 -1
  154. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings.segments/_full.segment.rsc +1 -1
  155. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  156. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings.segments/_index.segment.rsc +1 -1
  157. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
  158. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
  159. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  160. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/status/page.js.nft.json +1 -1
  161. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/status/page_client-reference-manifest.js +1 -1
  162. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/status.html +2 -2
  163. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/status.rsc +2 -2
  164. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/status.segments/_full.segment.rsc +2 -2
  165. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/status.segments/_head.segment.rsc +1 -1
  166. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/status.segments/_index.segment.rsc +1 -1
  167. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/status.segments/_tree.segment.rsc +1 -1
  168. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/status.segments/status/__PAGE__.segment.rsc +2 -2
  169. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/status.segments/status.segment.rsc +1 -1
  170. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/welcome/page.js.nft.json +1 -1
  171. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/welcome/page_client-reference-manifest.js +1 -1
  172. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/welcome.html +2 -2
  173. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/welcome.rsc +2 -2
  174. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/welcome.segments/_full.segment.rsc +2 -2
  175. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/welcome.segments/_head.segment.rsc +1 -1
  176. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/welcome.segments/_index.segment.rsc +1 -1
  177. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/welcome.segments/_tree.segment.rsc +1 -1
  178. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/welcome.segments/welcome/__PAGE__.segment.rsc +2 -2
  179. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/welcome.segments/welcome.segment.rsc +1 -1
  180. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app-paths-manifest.json +1 -0
  181. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/7e210_Agents_agx-cloud__next-internal_server_app_api_processes_route_actions_3d9dbdd8.js +3 -0
  182. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/Projects_Agents_agx-cloud_ef3cf579._.js +7 -7
  183. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/Projects_Agents_agx-cloud_lib_6041e016._.js +14 -3
  184. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/Projects_Agents_agx-cloud_lib_6a5d1c80._.js +25 -14
  185. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/Projects_Agents_agx-cloud_lib_7eefb426._.js +9 -9
  186. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/Projects_Agents_agx-cloud_lib_8c82981b._.js +14 -3
  187. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/{[root-of-the-server]__42ab2b45._.js → [root-of-the-server]__39768bc0._.js} +35 -34
  188. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/[root-of-the-server]__481a7f9c._.js +4 -0
  189. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/[root-of-the-server]__5ad371f3._.js +7 -7
  190. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/[root-of-the-server]__d339de9d._.js +15 -15
  191. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/ae43b_next_dist_esm_build_templates_app-route_122e31fe.js +16 -16
  192. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/ssr/Projects_Agents_agx-cloud_274b1253._.js +1 -1
  193. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/ssr/{Projects_Agents_agx-cloud_5defd267._.js → Projects_Agents_agx-cloud_484f7980._.js} +2 -2
  194. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/ssr/Projects_Agents_agx-cloud_959504c8._.js +3 -0
  195. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/ssr/{[root-of-the-server]__8c7946de._.js → [root-of-the-server]__00507cd5._.js} +2 -2
  196. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/ssr/[root-of-the-server]__26a59070._.js +3 -0
  197. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/ssr/{[root-of-the-server]__7764ec5b._.js → [root-of-the-server]__99fa92e8._.js} +2 -2
  198. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/middleware-manifest.json +5 -5
  199. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/pages/404.html +1 -1
  200. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/pages/500.html +2 -2
  201. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/server-reference-manifest.js +1 -1
  202. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/server-reference-manifest.json +1 -1
  203. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/{bfb2423083fa77ea.js → 3aca89adae7e24b9.js} +1 -1
  204. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/{3e48187863c47db7.js → 421f6f6f7517adad.js} +1 -1
  205. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/ab258333bc0c3968.js +1 -0
  206. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/b2a72731a86997f1.js +1 -0
  207. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/c5f5dd228f62488a.js +1 -0
  208. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/{e081d11e088dfd04.js → e085ba1d1f43e1f7.js} +1 -1
  209. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/e4e1f0e19efe31cb.js +1 -0
  210. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/{0921d653d52e4010.js → edb4b4f3e9dd60bf.js} +1 -1
  211. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/{0ca3d85999e974cd.js → fe2de0dba3b74ebb.js} +1 -1
  212. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/app/api/chat/route.ts +15 -4
  213. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/app/api/processes/route.ts +6 -0
  214. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/components/chat-ui/ChatPreview.tsx +24 -11
  215. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/components/chat-ui/MessageList.tsx +5 -4
  216. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/components/chat-ui/SearchResults.tsx +13 -6
  217. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/components/chat-ui/ThreadView.tsx +30 -19
  218. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/components/chat-ui/TypingIndicator.tsx +5 -4
  219. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/lib/agent-process-registry.ts +126 -0
  220. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/lib/cli-runner.ts +7 -0
  221. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/lib/sqlite-query-adapter.ts +15 -0
  222. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/lib/stream-multiplexer.ts +24 -0
  223. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/tsconfig.tsbuildinfo +1 -1
  224. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/worker/index.js +20 -3
  225. package/package.json +1 -1
  226. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/ssr/Projects_Agents_agx-cloud_b0381c73._.js +0 -3
  227. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/ssr/[root-of-the-server]__8b322dc4._.js +0 -3
  228. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/77c849083402f61f.js +0 -1
  229. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/79db9e451bfa80a8.js +0 -1
  230. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/c9a61a2b91917a11.js +0 -1
  231. /package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/{1fdQDYVXlcwnVGQtgask4 → snKc4hGi4iuonds6P-OEf}/_buildManifest.js +0 -0
  232. /package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/{1fdQDYVXlcwnVGQtgask4 → snKc4hGi4iuonds6P-OEf}/_clientMiddlewareManifest.json +0 -0
  233. /package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/{1fdQDYVXlcwnVGQtgask4 → snKc4hGi4iuonds6P-OEf}/_ssgManifest.js +0 -0
@@ -1,19 +1,19 @@
1
1
  module.exports=[18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},93695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},46786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},17920,(e,t,r)=>{t.exports=e.x("better-sqlite3-e930ad348bee7320",()=>require("better-sqlite3-e930ad348bee7320"))},33405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},14189,e=>{"use strict";var t=e.i(33405);let r=e=>"string"==typeof e&&e.trim().length>0,a=e=>({push:e,flush:()=>{}}),s=e=>{let t="",a=0,s=!1,i=t=>{let i=t.trim();if(i)try{let t=JSON.parse(i);s=!0;let n=(e=>{if(!e||"object"!=typeof e)return"";if("assistant"===e.type)return(Array.isArray(e?.message?.content)?e.message.content:[]).flatMap(e=>e?.type==="text"&&r(e.text)?[e.text]:[]).join("");let t=e?.event;return"stream_event"===e.type&&t?.type==="content_block_delta"&&t?.delta?.type==="text_delta"&&r(t?.delta?.text)?t.delta.text:""})(t);if(!n||t?.type==="assistant"&&a>0)return;a+=n.length,e(n)}catch{s||e(`${t}
2
2
  `)}};return{push:e=>{for(t+=e;;){let e=t.indexOf("\n");if(-1===e)break;i(t.slice(0,e)),t=t.slice(e+1)}},flush:()=>{t.trim()&&i(t),t=""}}},i=e=>{let t="",a=!1,s="",i=t=>{let i=t.trim();if(i)try{let t=JSON.parse(i);a=!0,t?.type==="message"&&t?.role==="assistant"&&r(t?.content)&&((t,r)=>{if(t){if(r){if(s&&t.startsWith(s)){let r=t.slice(s.length);r&&e(r),s=t;return}e(t),s+=t;return}if(s&&t.startsWith(s)){let r=t.slice(s.length);r&&e(r),s=t;return}s||(e(t),s=t)}})(t.content,t?.delta===!0)}catch{a||e(`${t}
3
3
  `)}};return{push:e=>{for(t+=e;;){let e=t.indexOf("\n");if(-1===e)break;i(t.slice(0,e)),t=t.slice(e+1)}},flush:()=>{t.trim()&&i(t),t=""}}},n=e=>{let t="",a=!1,s=new Set,i=t=>{let i=t.trim();if(i)try{let t=JSON.parse(i);if(a=!0,t?.type==="item.completed"&&r(t?.item?.id)){if(s.has(t.item.id))return;s.add(t.item.id)}let n=t&&"object"==typeof t?"item.completed"===t.type&&t.item?.type==="agent_message"&&r(t.item?.text)?t.item.text:"item.delta"===t.type&&t.item?.type==="agent_message"&&r(t.delta?.text)?t.delta.text:"":"";n&&e(n)}catch{a||e(`${t}
4
- `)}};return{push:e=>{for(t+=e;;){let e=t.indexOf("\n");if(-1===e)break;i(t.slice(0,e)),t=t.slice(e+1)}},flush:()=>{t.trim()&&i(t),t=""}}},o=e=>{let t="",r=!1,a=[/^Thinking\.\.\./,/^<think>/i],s=[/\.\.\.done thinking\.?\s*/,/<\/think>/i];return{push:i=>{t+=i,(()=>{for(;t.length>0;){if(r){let e=-1,a=0;for(let r of s){let s=t.match(r);s&&void 0!==s.index&&(s.index,s[0].length,(-1===e||s.index<e)&&(e=s.index,a=s[0].length))}if(-1!==e){t=t.slice(e+a),r=!1,t=t.replace(/^\s*\n*/,"");continue}return}for(let s of a){let a=t.match(s);if(a&&void 0!==a.index){let s=t.slice(0,a.index);s&&e.push(s),t=t.slice(a.index+a[0].length),r=!0;break}}if(r)continue;let i=Math.max(0,t.length-30);i>0&&(e.push(t.slice(0,i)),t=t.slice(i));return}})()},flush:()=>{!r&&t&&e.push(t),t="",e.flush()}}};async function l({command:e,args:r,timeoutMs:a,signal:s,onDelta:i,onLog:n}){await new Promise((o,l)=>{n&&n("stderr",`$ ${e} ${r.map(e=>e.length>80?e.slice(0,80)+"…":e).join(" ")}
5
- `);let d=(0,t.spawn)(e,r,{stdio:["ignore","pipe","pipe"],env:{...process.env,CLAUDECODE:void 0}}),p=!1,c="",u=!1,m=e=>{p||(p=!0,clearTimeout(T),s&&s.removeEventListener("abort",E),e?l(e):o())},E=()=>{d.kill("SIGTERM"),m(Error("Chat request aborted."))};s&&s.addEventListener("abort",E,{once:!0});let T=setTimeout(()=>{u=!0,d.kill("SIGKILL"),m(Error(`CLI request timed out after ${a}ms.`))},a);d.stdout.on("data",e=>{let t=e.toString();c+=t,i(t),n&&n("stdout",t)}),d.stderr.on("data",e=>{let t=e.toString();c+=t,n&&n("stderr",t)}),d.on("error",e=>m(e)),d.on("close",(e,t)=>{if(!p&&!u){if(0===e)return void m();m(Error(`CLI command failed (exit=${e??"unknown"} signal=${t??"none"}).${c.trim()?` ${c.trim()}`:""}`))}})})}async function d({provider:e,model:r,prompt:d,identity:p,self:c,skills:u,systemContext:m,signal:E,onDelta:T,onLog:f}){let g,_,h,N,R=(g=!1,_=!1,h="",N=/^(?:```|~~~|#{1,6}\s|>\s|[-*+]\s|\d+\.\s)/,e=>{let t=e.replace(/\u001B\[[0-9;]*[A-Za-z]/g,"").replace(/\r\n/g,"\n").replace(/\r/g,"\n").replace(/[ \t]+\n/g,"\n").replace(/\n{3,}/g,"\n\n");if(!t.trim())return t.includes("\n")&&!g?(g=!0,"\n"):"";let r=g?t.replace(/^\n+/,"\n"):t,a=r.trimStart(),s=N.test(a),i=_&&s&&!g,n=_&&!g&&!i&&!/^\s/.test(r)&&/[.!?)]/.test(h)&&/^[A-Z0-9`(]/.test(r),o=i?`
4
+ `)}};return{push:e=>{for(t+=e;;){let e=t.indexOf("\n");if(-1===e)break;i(t.slice(0,e)),t=t.slice(e+1)}},flush:()=>{t.trim()&&i(t),t=""}}},o=e=>{let t="",r=!1,a=[/^Thinking\.\.\./,/^<think>/i],s=[/\.\.\.done thinking\.?\s*/,/<\/think>/i];return{push:i=>{t+=i,(()=>{for(;t.length>0;){if(r){let e=-1,a=0;for(let r of s){let s=t.match(r);s&&void 0!==s.index&&(s.index,s[0].length,(-1===e||s.index<e)&&(e=s.index,a=s[0].length))}if(-1!==e){t=t.slice(e+a),r=!1,t=t.replace(/^\s*\n*/,"");continue}return}for(let s of a){let a=t.match(s);if(a&&void 0!==a.index){let s=t.slice(0,a.index);s&&e.push(s),t=t.slice(a.index+a[0].length),r=!0;break}}if(r)continue;let i=Math.max(0,t.length-30);i>0&&(e.push(t.slice(0,i)),t=t.slice(i));return}})()},flush:()=>{!r&&t&&e.push(t),t="",e.flush()}}};async function d({command:e,args:r,timeoutMs:a,signal:s,onDelta:i,onLog:n,onSpawn:o}){await new Promise((d,l)=>{n&&n("stderr",`$ ${e} ${r.map(e=>e.length>80?e.slice(0,80)+"…":e).join(" ")}
5
+ `);let p=(0,t.spawn)(e,r,{stdio:["ignore","pipe","pipe"],env:{...process.env,CLAUDECODE:void 0}}),c=!1,u="",m=!1,E=e=>{c||(c=!0,clearTimeout(f),s&&s.removeEventListener("abort",T),e?l(e):d())},T=()=>{p.kill("SIGTERM"),E(Error("Chat request aborted."))};s&&s.addEventListener("abort",T,{once:!0}),o&&p.pid&&o(p.pid);let f=setTimeout(()=>{m=!0,p.kill("SIGKILL"),E(Error(`CLI request timed out after ${a}ms.`))},a);p.stdout.on("data",e=>{let t=e.toString();u+=t,i(t),n&&n("stdout",t)}),p.stderr.on("data",e=>{let t=e.toString();u+=t,n&&n("stderr",t)}),p.on("error",e=>E(e)),p.on("close",(e,t)=>{if(!c&&!m){if(0===e)return void E();E(Error(`CLI command failed (exit=${e??"unknown"} signal=${t??"none"}).${u.trim()?` ${u.trim()}`:""}`))}})})}async function l({provider:e,model:r,prompt:l,identity:p,self:c,skills:u,systemContext:m,signal:E,onDelta:T,onLog:f,onSpawn:g}){let _,h,N,R,y=(_=!1,h=!1,N="",R=/^(?:```|~~~|#{1,6}\s|>\s|[-*+]\s|\d+\.\s)/,e=>{let t=e.replace(/\u001B\[[0-9;]*[A-Za-z]/g,"").replace(/\r\n/g,"\n").replace(/\r/g,"\n").replace(/[ \t]+\n/g,"\n").replace(/\n{3,}/g,"\n\n");if(!t.trim())return t.includes("\n")&&!_?(_=!0,"\n"):"";let r=_?t.replace(/^\n+/,"\n"):t,a=r.trimStart(),s=R.test(a),i=h&&s&&!_,n=h&&!_&&!i&&!/^\s/.test(r)&&/[.!?)]/.test(N)&&/^[A-Z0-9`(]/.test(r),o=i?`
6
6
 
7
7
  ${r}`:n?`
8
- ${r}`:r;g=o.endsWith("\n"),_=_||o.trim().length>0;let l=o.replace(/\s+$/g,"");return l.length>0&&(h=l[l.length-1]??h),o}),y=e=>{let t=R(e);t&&T(t)},L=[],A=[];m&&A.push(m),p&&A.push(`<identity>
8
+ ${r}`:r;_=o.endsWith("\n"),h=h||o.trim().length>0;let d=o.replace(/\s+$/g,"");return d.length>0&&(N=d[d.length-1]??N),o}),L=e=>{let t=y(e);t&&T(t)},A=[],O=[];m&&O.push(m),p&&O.push(`<identity>
9
9
  ${p}
10
- </identity>`),c&&A.push(`<self>
10
+ </identity>`),c&&O.push(`<self>
11
11
  ${c}
12
- </self>`),u&&A.push(`<skills>
12
+ </self>`),u&&O.push(`<skills>
13
13
  ${u}
14
- </skills>`);let O=A.length>0?A.join("\n\n"):void 0;if((e=>{try{return 0===(0,t.spawnSync)("bash",["-lc","command -v agx >/dev/null 2>&1"],{encoding:"utf8"}).status}catch{return!1}})(0)){let t=O?`${O}
14
+ </skills>`);let S=O.length>0?O.join("\n\n"):void 0;if((e=>{try{return 0===(0,t.spawnSync)("bash",["-lc","command -v agx >/dev/null 2>&1"],{encoding:"utf8"}).status}catch{return!1}})(0)){let t=S?`${S}
15
15
 
16
- ${d}`:d;L.push(function({provider:e,model:t,prompt:r}){let a=[e,"-y","--print","--prompt",r];return t&&a.push("--model",t),{command:"agx",args:a,parser:"raw"}}({provider:e,model:r,prompt:t}))}if(0===L.length)throw Error(`No CLI runner available for provider "${e}". Install agx or provider CLI.`);let S=null;for(let e of L){let t="claude-stream-json"===e.parser?s(y):"codex-json"===e.parser?n(y):"gemini-stream-json"===e.parser?i(y):a(y),r=e.filterThoughts?o(t):t;try{await l({command:e.command,args:e.args,timeoutMs:6e5,signal:E,onDelta:r.push,onLog:f}),r.flush();return}catch(e){S=e instanceof Error?e:Error(String(e))}}throw S||Error("CLI execution failed.")}e.s(["runCliResponse",()=>d],14189)},64246,e=>{"use strict";var t=e.i(17920),r=e.i(22734),a=e.i(14747),s=e.i(46786);let i=process.env.AGX_GROUP_CHAT_DIR?.trim()||a.default.join(s.default.homedir(),".agx","group-chat"),n=a.default.join(i,"history.sqlite"),o="global",l=new Set(["ack","working","done","clarify","blocked"]),d={ack:new Set(["ack","working"]),working:new Set(["ack","working","done","clarify","blocked"]),done:new Set(["done","ack","working"]),clarify:new Set(["ack","clarify","working"]),blocked:new Set(["ack","blocked","working"])};class p extends Error{status;constructor(e,t){super(e),this.name="ReactionStoreError",this.status=t}}function c(e,t){return e.prepare(`PRAGMA table_info(${t})`).all().some(e=>"thread_id"===e.name)}let u=async e=>{await r.promises.mkdir(i,{recursive:!0});let a=new t.default(n);a.pragma("journal_mode = WAL");try{return a.exec(`
16
+ ${l}`:l;A.push(function({provider:e,model:t,prompt:r}){let a=[e,"-y","--print","--prompt",r];return t&&a.push("--model",t),{command:"agx",args:a,parser:"raw"}}({provider:e,model:r,prompt:t}))}if(0===A.length)throw Error(`No CLI runner available for provider "${e}". Install agx or provider CLI.`);let I=null;for(let e of A){let t="claude-stream-json"===e.parser?s(L):"codex-json"===e.parser?n(L):"gemini-stream-json"===e.parser?i(L):a(L),r=e.filterThoughts?o(t):t;try{await d({command:e.command,args:e.args,timeoutMs:6e5,signal:E,onDelta:r.push,onLog:f,onSpawn:g}),r.flush();return}catch(e){I=e instanceof Error?e:Error(String(e))}}throw I||Error("CLI execution failed.")}e.s(["runCliResponse",()=>l],14189)},64246,e=>{"use strict";var t=e.i(17920),r=e.i(22734),a=e.i(14747),s=e.i(46786);let i=process.env.AGX_GROUP_CHAT_DIR?.trim()||a.default.join(s.default.homedir(),".agx","group-chat"),n=a.default.join(i,"history.sqlite"),o="global",d=new Set(["ack","working","done","clarify","blocked"]),l={ack:new Set(["ack","working"]),working:new Set(["ack","working","done","clarify","blocked"]),done:new Set(["done","ack","working"]),clarify:new Set(["ack","clarify","working"]),blocked:new Set(["ack","blocked","working"])};class p extends Error{status;constructor(e,t){super(e),this.name="ReactionStoreError",this.status=t}}function c(e,t){return e.prepare(`PRAGMA table_info(${t})`).all().some(e=>"thread_id"===e.name)}let u=async e=>{await r.promises.mkdir(i,{recursive:!0});let a=new t.default(n);a.pragma("journal_mode = WAL");try{return a.exec(`
17
17
  CREATE TABLE IF NOT EXISTS messages (
18
18
  thread_id TEXT NOT NULL,
19
19
  id TEXT NOT NULL,
@@ -142,19 +142,19 @@ ${d}`:d;L.push(function({provider:e,model:t,prompt:r}){let a=[e,"-y","--print","
142
142
  AND (id = ? OR root_message_id = ?)
143
143
  )`).run(t,t,r,r),e.prepare(`DELETE FROM messages
144
144
  WHERE thread_id = ?
145
- AND (id = ? OR root_message_id = ?)`).run(t,r,r)})(r,a)})}async function R(e){let t=e.query.trim();if(!t)return{results:[],total:0};let r="string"==typeof e.threadId&&e.threadId.trim()||null,a=Number.isFinite(e.limit)?Number(e.limit):20,s=Number.isFinite(e.offset)?Number(e.offset):0,i=Math.min(Math.max(Math.trunc(a),1),100),n=Math.max(Math.trunc(s),0);return u(e=>{let a=["messages_fts MATCH ?"],s=[t];r&&(a.push("m.thread_id = ?"),s.push(r));let o=a.join(" AND "),l=e.prepare(`SELECT m.thread_id, m.id, m.role, m.participant_id, m.timestamp, m.root_message_id,
145
+ AND (id = ? OR root_message_id = ?)`).run(t,r,r)})(r,a)})}async function R(e){let t=e.query.trim();if(!t)return{results:[],total:0};let r="string"==typeof e.threadId&&e.threadId.trim()||null,a=Number.isFinite(e.limit)?Number(e.limit):20,s=Number.isFinite(e.offset)?Number(e.offset):0,i=Math.min(Math.max(Math.trunc(a),1),100),n=Math.max(Math.trunc(s),0);return u(e=>{let a=["messages_fts MATCH ?"],s=[t];r&&(a.push("m.thread_id = ?"),s.push(r));let o=a.join(" AND "),d=e.prepare(`SELECT m.thread_id, m.id, m.role, m.participant_id, m.timestamp, m.root_message_id,
146
146
  snippet(messages_fts, 0, '<mark>', '</mark>', '...', 32) AS snippet,
147
147
  bm25(messages_fts) as rank
148
148
  FROM messages_fts
149
149
  JOIN messages m ON messages_fts.rowid = m.rowid
150
150
  WHERE ${o}
151
151
  ORDER BY rank ASC, m.timestamp DESC
152
- LIMIT ? OFFSET ?`).all(...s,i,n),d=e.prepare(`SELECT COUNT(*) as total
152
+ LIMIT ? OFFSET ?`).all(...s,i,n),l=e.prepare(`SELECT COUNT(*) as total
153
153
  FROM messages_fts
154
154
  JOIN messages m ON messages_fts.rowid = m.rowid
155
- WHERE ${o}`).get(...s);return{results:l.map(e=>({threadId:e.thread_id,messageId:e.id,role:e.role,participantId:e.participant_id,snippet:e.snippet,timestamp:e.timestamp,rootMessageId:e.root_message_id})),total:d?.total??0}})}async function y(e){let t=e.threadId?.trim()||o,r=e.messageId?.trim(),a=e.participantId?.trim(),s=e.type;if(!r)throw new p("messageId is required",400);if(!a)throw new p("participantId is required",400);if(!l.has(s))throw new p(`Invalid reaction type: ${String(s)}`,400);let i=T(e.reason),n=T(e.blockerCode),c="clarify"===s||"blocked"===s;if(c&&!i)throw new p(`"${s}" reactions require a reason`,400);let m=c?i:null,f="blocked"===s?n:null;return u(e=>{var i;if(!e.prepare("SELECT 1 FROM messages WHERE thread_id = ? AND id = ? LIMIT 1").get(t,r))throw new p(`Message not found: ${r}`,404);let n=e.prepare(`SELECT type, reason, blocker_code
155
+ WHERE ${o}`).get(...s);return{results:d.map(e=>({threadId:e.thread_id,messageId:e.id,role:e.role,participantId:e.participant_id,snippet:e.snippet,timestamp:e.timestamp,rootMessageId:e.root_message_id})),total:l?.total??0}})}async function y(e){let t=e.threadId?.trim()||o,r=e.messageId?.trim(),a=e.participantId?.trim(),s=e.type;if(!r)throw new p("messageId is required",400);if(!a)throw new p("participantId is required",400);if(!d.has(s))throw new p(`Invalid reaction type: ${String(s)}`,400);let i=T(e.reason),n=T(e.blockerCode),c="clarify"===s||"blocked"===s;if(c&&!i)throw new p(`"${s}" reactions require a reason`,400);let m=c?i:null,f="blocked"===s?n:null;return u(e=>{var i;if(!e.prepare("SELECT 1 FROM messages WHERE thread_id = ? AND id = ? LIMIT 1").get(t,r))throw new p(`Message not found: ${r}`,404);let n=e.prepare(`SELECT type, reason, blocker_code
156
156
  FROM message_reactions
157
- WHERE thread_id = ? AND message_id = ? AND participant_id = ?`).get(t,r,a);if(i=n?.type??null,!(!i||d[i].has(s)))throw new p(`Cannot transition reaction from "${n.type}" to "${s}"`,409);if(n&&n.type===s&&T(n.reason)===m&&T(n.blocker_code)===f)return{updated:!1,reactions:E(e,t,[r]).get(r)??[]};let o=Date.now();return e.prepare(`INSERT INTO message_reactions (thread_id, message_id, participant_id, type, reason, blocker_code, updated_at)
157
+ WHERE thread_id = ? AND message_id = ? AND participant_id = ?`).get(t,r,a);if(i=n?.type??null,!(!i||l[i].has(s)))throw new p(`Cannot transition reaction from "${n.type}" to "${s}"`,409);if(n&&n.type===s&&T(n.reason)===m&&T(n.blocker_code)===f)return{updated:!1,reactions:E(e,t,[r]).get(r)??[]};let o=Date.now();return e.prepare(`INSERT INTO message_reactions (thread_id, message_id, participant_id, type, reason, blocker_code, updated_at)
158
158
  VALUES (?, ?, ?, ?, ?, ?, ?)
159
159
  ON CONFLICT(thread_id, message_id, participant_id)
160
160
  DO UPDATE SET
@@ -172,7 +172,7 @@ ${d}`:d;L.push(function({provider:e,model:t,prompt:r}){let a=[e,"-y","--print","
172
172
  WHERE thread_id = ? AND type = 'working' AND updated_at <= ?`).run(s,r,i).changes}))}async function I(e,t,r){let a=e.trim()||o;return u(e=>{e.prepare(`INSERT INTO task_drafts (thread_id, message_id, data, updated_at)
173
173
  VALUES (?, ?, ?, ?)
174
174
  ON CONFLICT(thread_id, message_id)
175
- DO UPDATE SET data = excluded.data, updated_at = excluded.updated_at`).run(a,t,JSON.stringify(r),Date.now())})}async function x(e){let t=e.trim()||o;return u(e=>{let r=e.prepare("SELECT message_id, data FROM task_drafts WHERE thread_id = ?").all(t),a={};for(let e of r)a[e.message_id]=JSON.parse(e.data);return a})}e.s(["ReactionStoreError",()=>p,"clearHistory",()=>h,"clearLogs",()=>O,"clearRootThread",()=>N,"loadHistory",()=>f,"loadLogs",()=>A,"loadTaskDrafts",()=>x,"saveLogs",()=>L,"saveMessages",()=>g,"saveTaskDraft",()=>I,"searchMessages",()=>R,"setReaction",()=>y,"sweepStaleWorkingReactions",()=>S,"updateMessageStatus",()=>_])},13466,e=>{"use strict";var t=e.i(17920),r=e.i(22734),a=e.i(14747),s=e.i(46786);let i=process.env.AGX_GROUP_CHAT_DIR?.trim()||a.default.join(s.default.homedir(),".agx","group-chat"),n=a.default.join(i,"history.sqlite"),o=process.env.AGX_AGENTS_DIR?.trim()||a.default.join(s.default.homedir(),".agx","agents");function l(){(0,r.mkdirSync)(i,{recursive:!0});let e=new t.default(n);e.pragma("journal_mode = WAL"),e.exec(`
175
+ DO UPDATE SET data = excluded.data, updated_at = excluded.updated_at`).run(a,t,JSON.stringify(r),Date.now())})}async function x(e){let t=e.trim()||o;return u(e=>{let r=e.prepare("SELECT message_id, data FROM task_drafts WHERE thread_id = ?").all(t),a={};for(let e of r)a[e.message_id]=JSON.parse(e.data);return a})}e.s(["ReactionStoreError",()=>p,"clearHistory",()=>h,"clearLogs",()=>O,"clearRootThread",()=>N,"loadHistory",()=>f,"loadLogs",()=>A,"loadTaskDrafts",()=>x,"saveLogs",()=>L,"saveMessages",()=>g,"saveTaskDraft",()=>I,"searchMessages",()=>R,"setReaction",()=>y,"sweepStaleWorkingReactions",()=>S,"updateMessageStatus",()=>_])},13466,e=>{"use strict";var t=e.i(17920),r=e.i(22734),a=e.i(14747),s=e.i(46786);let i=process.env.AGX_GROUP_CHAT_DIR?.trim()||a.default.join(s.default.homedir(),".agx","group-chat"),n=a.default.join(i,"history.sqlite"),o=process.env.AGX_AGENTS_DIR?.trim()||a.default.join(s.default.homedir(),".agx","agents");function d(){(0,r.mkdirSync)(i,{recursive:!0});let e=new t.default(n);e.pragma("journal_mode = WAL"),e.exec(`
176
176
  CREATE TABLE IF NOT EXISTS participants (
177
177
  id TEXT PRIMARY KEY,
178
178
  name TEXT NOT NULL,
@@ -184,8 +184,8 @@ ${d}`:d;L.push(function({provider:e,model:t,prompt:r}){let a=[e,"-y","--print","
184
184
  color TEXT NOT NULL,
185
185
  sort_order INTEGER NOT NULL DEFAULT 0
186
186
  );
187
- `);let s=e.prepare("PRAGMA table_info(participants)").all();return s.some(e=>"persona"===e.name)&&(e.exec("ALTER TABLE participants RENAME COLUMN persona TO identity"),e.exec("ALTER TABLE participants RENAME COLUMN persona_file TO identity_file")),s.some(e=>"identity_file"===e.name)||s.some(e=>"persona_file"===e.name)||e.exec("ALTER TABLE participants ADD COLUMN identity_file TEXT"),s.some(e=>"skills_json"===e.name)||e.exec("ALTER TABLE participants ADD COLUMN skills_json TEXT"),s.some(e=>"variables_json"===e.name)||e.exec("ALTER TABLE participants ADD COLUMN variables_json TEXT"),s.some(e=>"sort_order"===e.name)||(e.exec("ALTER TABLE participants ADD COLUMN sort_order INTEGER NOT NULL DEFAULT 0"),e.exec("UPDATE participants SET sort_order = rowid")),!function(e){let t=e.prepare("SELECT id, name, provider FROM participants").all();if(0===t.length)return;let s=new Set(t.map(e=>e.id)),i=new Map(t.map(e=>[e.id,e.id])),n=[];for(let e of t){let t=(e.name||"").trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").replace(/--+/g,"-");if(!t||e.id===t||e.id!==e.provider)continue;s.delete(e.id);let r=function(e,t){if(!t.has(e))return e;let r=2,a=`${e}-${r}`;for(;t.has(a);)r+=1,a=`${e}-${r}`;return a}(t,s);s.add(r),i.set(e.id,r),n.push({from:e.id,to:r,name:e.name})}let l=t.map(e=>({id:i.get(e.id)||e.id,provider:e.provider})),d=new Set(l.map(e=>e.id)),p=new Map;for(let e of l){let t=e.provider.trim();if(!t)continue;let r=p.get(t)||new Set;r.add(e.id),p.set(t,r)}let c=[];for(let[e,t]of p){if(1!==t.size)continue;let[r]=Array.from(t);r&&e!==r&&(d.has(e)||c.push({from:e,to:r}))}if(0===n.length&&0===c.length)return;let u=new Map;for(let e of n)u.set(e.from,e.to);for(let e of c)u.set(e.from,e.to);let m=Array.from(u.entries()).map(([e,t])=>({from:e,to:t})),E=new Set(e.prepare("SELECT name FROM sqlite_master WHERE type = 'table'").all().map(e=>e.name));for(let t of(e.transaction((t,r)=>{let a=e.prepare("UPDATE participants SET id = ? WHERE id = ?"),s=E.has("messages")?e.prepare("UPDATE messages SET participant_id = ? WHERE participant_id = ?"):null,i=E.has("logs")?e.prepare("UPDATE logs SET participant_id = ? WHERE participant_id = ?"):null,n=E.has("message_reactions")?e.prepare("UPDATE message_reactions SET participant_id = ? WHERE participant_id = ?"):null;for(let e of t)a.run(e.to,e.from);for(let e of r)s?.run(e.to,e.from),i?.run(e.to,e.from),n?.run(e.to,e.from)})(n.map(e=>({from:e.from,to:e.to})),m),n))!function(e,t,s){if(!e||!t||e===t)return;let i=a.default.join(o,e),n=a.default.join(o,t);if(!(0,r.existsSync)(i)||(0,r.existsSync)(n))return;(0,r.mkdirSync)(o,{recursive:!0}),(0,r.renameSync)(i,n);let l=a.default.join(n,"identity.json");if((0,r.existsSync)(l))try{let e={...JSON.parse((0,r.readFileSync)(l,"utf8")),name:"string"==typeof s&&s.trim()?s.trim():t};(0,r.writeFileSync)(l,`${JSON.stringify(e,null,2)}
188
- `,"utf8")}catch{}}(t.from,t.to,t.name)}(e),e}function d(){let e=l();try{return e.prepare("SELECT id, name, provider, model, identity, identity_file, skills_json, variables_json, color, sort_order FROM participants ORDER BY sort_order ASC, rowid ASC").all().map(e=>({id:e.id,name:e.name,provider:e.provider,model:e.model,color:e.color,...e.identity?{identity:e.identity}:{},...e.identity_file?{identityFile:e.identity_file}:{},...e.variables_json?(()=>{try{let t=JSON.parse(e.variables_json);if(t&&"object"==typeof t&&!Array.isArray(t))return{variables:t};return{}}catch{return{}}})():{},...e.skills_json?{skills:(()=>{try{let t=JSON.parse(e.skills_json);if(!Array.isArray(t))return[];return t.map(e=>"string"==typeof e?{file:e,condition:""}:e)}catch{return[]}})()}:{}}))}finally{e.close()}}function p(e){let t=l();try{t.prepare("INSERT OR REPLACE INTO participants (id, name, provider, model, identity, identity_file, skills_json, variables_json, color) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)").run(e.id,e.name,e.provider,e.model,e.identity??null,e.identityFile??null,e.skills&&e.skills.length>0?JSON.stringify(e.skills):null,e.variables&&Object.keys(e.variables).length>0?JSON.stringify(e.variables):null,e.color)}finally{t.close()}}function c(e){let t=l();try{t.prepare("UPDATE participants SET name = ?, provider = ?, model = ?, identity = ?, identity_file = ?, skills_json = ?, variables_json = ?, color = ? WHERE id = ?").run(e.name,e.provider,e.model,e.identity??null,e.identityFile??null,e.skills&&e.skills.length>0?JSON.stringify(e.skills):null,e.variables&&Object.keys(e.variables).length>0?JSON.stringify(e.variables):null,e.color,e.id)}finally{t.close()}}function u(e){let t=l();try{let r=t.prepare("UPDATE participants SET sort_order = ? WHERE id = ?");t.transaction(e=>{for(let t=0;t<e.length;t++)r.run(t,e[t])})(e)}finally{t.close()}}function m(e){let t=l();try{t.prepare("DELETE FROM participants WHERE id = ?").run(e)}finally{t.close()}}e.s(["addParticipant",()=>p,"loadParticipants",()=>d,"removeParticipant",()=>m,"reorderParticipants",()=>u,"updateParticipant",()=>c])},84210,e=>{"use strict";var t=e.i(11794),r=e.i(41852),a=e.i(19309),s=e.i(90850),i=e.i(24918),n=e.i(84604),o=e.i(37756),l=e.i(90661),d=e.i(90315),p=e.i(9168),c=e.i(12965),u=e.i(43715),m=e.i(79218),E=e.i(66263),T=e.i(15255),f=e.i(93695);e.i(65858);var g=e.i(95175),_=e.i(12244),h=e.i(64246),N=e.i(13466),R=e.i(14189);async function y(e){try{let t,{threadId:r,rootMessageId:a,activeParticipantIds:s}=await e.json();if(!r||!a)return _.NextResponse.json({error:"threadId and rootMessageId are required"},{status:400});let i=await (0,h.loadHistory)(r),n=i.find(e=>e.id===a);if(!n)return _.NextResponse.json({error:"Root message not found"},{status:404});let o=i.filter(e=>e.rootMessageId===a).sort((e,t)=>e.timestamp-t.timestamp),l=[n,...o],d=(0,N.loadParticipants)(),p=Array.isArray(s),c=function(e){if(!Array.isArray(e))return[];let t=new Set,r=[];for(let a of e){if("string"!=typeof a)continue;let e=a.trim();!e||t.has(e)||(t.add(e),r.push(e))}return r}(s),u=p?new Set(c):null,m=(null===u?d:d.filter(e=>u.has(e.id)))[0];if(!m)return _.NextResponse.json({error:"No active agents configured for this workspace"},{status:400});let E=Object.fromEntries(d.map(e=>[e.id,e])),T=l.map(e=>{let t="user"===e.role?"User":e.participantId?E[e.participantId]?.name||e.participantId:"Assistant";return`${t}: ${e.content}`}).join("\n\n"),f=`Read the following conversation and extract a list of actionable tasks that were discussed. Order them by execution sequence — tasks that others depend on should come first.
187
+ `);let s=e.prepare("PRAGMA table_info(participants)").all();return s.some(e=>"persona"===e.name)&&(e.exec("ALTER TABLE participants RENAME COLUMN persona TO identity"),e.exec("ALTER TABLE participants RENAME COLUMN persona_file TO identity_file")),s.some(e=>"identity_file"===e.name)||s.some(e=>"persona_file"===e.name)||e.exec("ALTER TABLE participants ADD COLUMN identity_file TEXT"),s.some(e=>"skills_json"===e.name)||e.exec("ALTER TABLE participants ADD COLUMN skills_json TEXT"),s.some(e=>"variables_json"===e.name)||e.exec("ALTER TABLE participants ADD COLUMN variables_json TEXT"),s.some(e=>"sort_order"===e.name)||(e.exec("ALTER TABLE participants ADD COLUMN sort_order INTEGER NOT NULL DEFAULT 0"),e.exec("UPDATE participants SET sort_order = rowid")),!function(e){let t=e.prepare("SELECT id, name, provider FROM participants").all();if(0===t.length)return;let s=new Set(t.map(e=>e.id)),i=new Map(t.map(e=>[e.id,e.id])),n=[];for(let e of t){let t=(e.name||"").trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").replace(/--+/g,"-");if(!t||e.id===t||e.id!==e.provider)continue;s.delete(e.id);let r=function(e,t){if(!t.has(e))return e;let r=2,a=`${e}-${r}`;for(;t.has(a);)r+=1,a=`${e}-${r}`;return a}(t,s);s.add(r),i.set(e.id,r),n.push({from:e.id,to:r,name:e.name})}let d=t.map(e=>({id:i.get(e.id)||e.id,provider:e.provider})),l=new Set(d.map(e=>e.id)),p=new Map;for(let e of d){let t=e.provider.trim();if(!t)continue;let r=p.get(t)||new Set;r.add(e.id),p.set(t,r)}let c=[];for(let[e,t]of p){if(1!==t.size)continue;let[r]=Array.from(t);r&&e!==r&&(l.has(e)||c.push({from:e,to:r}))}if(0===n.length&&0===c.length)return;let u=new Map;for(let e of n)u.set(e.from,e.to);for(let e of c)u.set(e.from,e.to);let m=Array.from(u.entries()).map(([e,t])=>({from:e,to:t})),E=new Set(e.prepare("SELECT name FROM sqlite_master WHERE type = 'table'").all().map(e=>e.name));for(let t of(e.transaction((t,r)=>{let a=e.prepare("UPDATE participants SET id = ? WHERE id = ?"),s=E.has("messages")?e.prepare("UPDATE messages SET participant_id = ? WHERE participant_id = ?"):null,i=E.has("logs")?e.prepare("UPDATE logs SET participant_id = ? WHERE participant_id = ?"):null,n=E.has("message_reactions")?e.prepare("UPDATE message_reactions SET participant_id = ? WHERE participant_id = ?"):null;for(let e of t)a.run(e.to,e.from);for(let e of r)s?.run(e.to,e.from),i?.run(e.to,e.from),n?.run(e.to,e.from)})(n.map(e=>({from:e.from,to:e.to})),m),n))!function(e,t,s){if(!e||!t||e===t)return;let i=a.default.join(o,e),n=a.default.join(o,t);if(!(0,r.existsSync)(i)||(0,r.existsSync)(n))return;(0,r.mkdirSync)(o,{recursive:!0}),(0,r.renameSync)(i,n);let d=a.default.join(n,"identity.json");if((0,r.existsSync)(d))try{let e={...JSON.parse((0,r.readFileSync)(d,"utf8")),name:"string"==typeof s&&s.trim()?s.trim():t};(0,r.writeFileSync)(d,`${JSON.stringify(e,null,2)}
188
+ `,"utf8")}catch{}}(t.from,t.to,t.name)}(e),e}function l(){let e=d();try{return e.prepare("SELECT id, name, provider, model, identity, identity_file, skills_json, variables_json, color, sort_order FROM participants ORDER BY sort_order ASC, rowid ASC").all().map(e=>({id:e.id,name:e.name,provider:e.provider,model:e.model,color:e.color,...e.identity?{identity:e.identity}:{},...e.identity_file?{identityFile:e.identity_file}:{},...e.variables_json?(()=>{try{let t=JSON.parse(e.variables_json);if(t&&"object"==typeof t&&!Array.isArray(t))return{variables:t};return{}}catch{return{}}})():{},...e.skills_json?{skills:(()=>{try{let t=JSON.parse(e.skills_json);if(!Array.isArray(t))return[];return t.map(e=>"string"==typeof e?{file:e,condition:""}:e)}catch{return[]}})()}:{}}))}finally{e.close()}}function p(e){let t=d();try{t.prepare("INSERT OR REPLACE INTO participants (id, name, provider, model, identity, identity_file, skills_json, variables_json, color) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)").run(e.id,e.name,e.provider,e.model,e.identity??null,e.identityFile??null,e.skills&&e.skills.length>0?JSON.stringify(e.skills):null,e.variables&&Object.keys(e.variables).length>0?JSON.stringify(e.variables):null,e.color)}finally{t.close()}}function c(e){let t=d();try{t.prepare("UPDATE participants SET name = ?, provider = ?, model = ?, identity = ?, identity_file = ?, skills_json = ?, variables_json = ?, color = ? WHERE id = ?").run(e.name,e.provider,e.model,e.identity??null,e.identityFile??null,e.skills&&e.skills.length>0?JSON.stringify(e.skills):null,e.variables&&Object.keys(e.variables).length>0?JSON.stringify(e.variables):null,e.color,e.id)}finally{t.close()}}function u(e){let t=d();try{let r=t.prepare("UPDATE participants SET sort_order = ? WHERE id = ?");t.transaction(e=>{for(let t=0;t<e.length;t++)r.run(t,e[t])})(e)}finally{t.close()}}function m(e){let t=d();try{t.prepare("DELETE FROM participants WHERE id = ?").run(e)}finally{t.close()}}e.s(["addParticipant",()=>p,"loadParticipants",()=>l,"removeParticipant",()=>m,"reorderParticipants",()=>u,"updateParticipant",()=>c])},84210,e=>{"use strict";var t=e.i(11794),r=e.i(41852),a=e.i(19309),s=e.i(90850),i=e.i(24918),n=e.i(84604),o=e.i(37756),d=e.i(90661),l=e.i(90315),p=e.i(9168),c=e.i(12965),u=e.i(43715),m=e.i(79218),E=e.i(66263),T=e.i(15255),f=e.i(93695);e.i(65858);var g=e.i(95175),_=e.i(12244),h=e.i(64246),N=e.i(13466),R=e.i(14189);async function y(e){try{let t,{threadId:r,rootMessageId:a,activeParticipantIds:s}=await e.json();if(!r||!a)return _.NextResponse.json({error:"threadId and rootMessageId are required"},{status:400});let i=await (0,h.loadHistory)(r),n=i.find(e=>e.id===a);if(!n)return _.NextResponse.json({error:"Root message not found"},{status:404});let o=i.filter(e=>e.rootMessageId===a).sort((e,t)=>e.timestamp-t.timestamp),d=[n,...o],l=(0,N.loadParticipants)(),p=Array.isArray(s),c=function(e){if(!Array.isArray(e))return[];let t=new Set,r=[];for(let a of e){if("string"!=typeof a)continue;let e=a.trim();!e||t.has(e)||(t.add(e),r.push(e))}return r}(s),u=p?new Set(c):null,m=(null===u?l:l.filter(e=>u.has(e.id)))[0];if(!m)return _.NextResponse.json({error:"No active agents configured for this workspace"},{status:400});let E=Object.fromEntries(l.map(e=>[e.id,e])),T=d.map(e=>{let t="user"===e.role?"User":e.participantId?E[e.participantId]?.name||e.participantId:"Assistant";return`${t}: ${e.content}`}).join("\n\n"),f=`Read the following conversation and extract a list of actionable tasks that were discussed. Order them by execution sequence — tasks that others depend on should come first.
189
189
 
190
190
  For each task, provide:
191
191
  - "title": a concise title (under 80 characters)
@@ -196,6 +196,6 @@ Return ONLY a valid JSON array of objects with "title", "description", and "depe
196
196
 
197
197
  ---
198
198
  ${T}
199
- ---`,g="";await (0,R.runCliResponse)({provider:m.provider,model:m.model,prompt:f,identity:m.identity,onDelta:e=>{g+=e}});let y=g=g.trim(),L=g.match(/```(?:json)?\s*([\s\S]*?)```/);L&&(y=L[1].trim());try{if(t=JSON.parse(y),!Array.isArray(t))throw Error("Not an array")}catch{return _.NextResponse.json({error:"Failed to parse tasks from LLM response",raw:g},{status:500})}let A=t.filter(e=>e.title&&e.description).slice(0,20),O=A.map(()=>crypto.randomUUID()),S=A.map((e,t)=>({id:O[t],title:e.title.slice(0,200),description:e.description,dependsOn:(e.depends_on||[]).filter(e=>e>=0&&e<A.length&&e!==t).map(e=>O[e])}));return _.NextResponse.json({ok:!0,tasks:S})}catch(e){return console.error("Task extraction error:",e),_.NextResponse.json({error:e instanceof Error?e.message:"Unknown error"},{status:500})}}e.s(["POST",()=>y],16492);var L=e.i(16492);let A=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/tasks/extract/route",pathname:"/api/tasks/extract",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/Projects/Agents/agx-cloud/app/api/tasks/extract/route.ts",nextConfigOutput:"standalone",userland:L}),{workAsyncStorage:O,workUnitAsyncStorage:S,serverHooks:I}=A;function x(){return(0,a.patchFetch)({workAsyncStorage:O,workUnitAsyncStorage:S})}async function w(e,t,a){A.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let _="/api/tasks/extract/route";_=_.replace(/\/index$/,"")||"/";let h=await A.prepare(e,t,{srcPage:_,multiZoneDraftMode:!1});if(!h)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:N,params:R,nextConfig:y,parsedUrl:L,isDraftMode:O,prerenderManifest:S,routerServerContext:I,isOnDemandRevalidate:x,revalidateOnlyGenerated:w,resolvedPathname:C,clientReferenceManifest:v,serverActionsManifest:k}=h,U=(0,o.normalizeAppPath)(_),M=!!(S.dynamicRoutes[U]||S.routes[C]),b=async()=>((null==I?void 0:I.render404)?await I.render404(e,t,L,!1):t.end("This page could not be found"),null);if(M&&!O){let e=!!S.routes[C],t=S.dynamicRoutes[U];if(t&&!1===t.fallback&&!e){if(y.experimental.adapterPath)return await b();throw new f.NoFallbackError}}let D=null;!M||A.isDev||O||(D="/index"===(D=C)?"/":D);let X=!0===A.isDev||!M,j=M&&!X;k&&v&&(0,n.setManifestsSingleton)({page:_,clientReferenceManifest:v,serverActionsManifest:k});let F=e.method||"GET",P=(0,i.getTracer)(),$=P.getActiveScopeSpan(),H={params:R,prerenderManifest:S,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:X,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>A.onRequestError(e,t,a,s,I)},sharedContext:{buildId:N}},B=new l.NodeNextRequest(e),q=new l.NodeNextResponse(t),G=d.NextRequestAdapter.fromNodeNextRequest(B,(0,d.signalFromNodeResponse)(t));try{let n=async e=>A.handle(G,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=P.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${F} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${F} ${_}`)}),o=!!(0,s.getRequestMeta)(e,"minimalMode"),l=async s=>{var i,l;let d=async({previousCacheEntry:r})=>{try{if(!o&&x&&w&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await n(s);e.fetchMetrics=H.renderOpts.fetchMetrics;let l=H.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let d=H.renderOpts.collectedTags;if(!M)return await (0,u.sendResponse)(B,q,i,H.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(i.headers);d&&(t[T.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=T.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=T.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:_,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:x})},!1,I),t}},p=await A.handleResponse({req:e,nextConfig:y,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:S,isRoutePPREnabled:!1,isOnDemandRevalidate:x,revalidateOnlyGenerated:w,responseGenerator:d,waitUntil:a.waitUntil,isMinimalMode:o});if(!M)return null;if((null==p||null==(i=p.value)?void 0:i.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==p||null==(l=p.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",x?"REVALIDATED":p.isMiss?"MISS":p.isStale?"STALE":"HIT"),O&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let f=(0,m.fromNodeOutgoingHttpHeaders)(p.value.headers);return o&&M||f.delete(T.NEXT_CACHE_TAGS_HEADER),!p.cacheControl||t.getHeader("Cache-Control")||f.get("Cache-Control")||f.set("Cache-Control",(0,E.getCacheControlHeader)(p.cacheControl)),await (0,u.sendResponse)(B,q,new Response(p.value.body,{headers:f,status:p.value.status||200})),null};$?await l($):await P.withPropagatedContext(e.headers,()=>P.trace(p.BaseServerSpan.handleRequest,{spanName:`${F} ${_}`,kind:i.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},l))}catch(t){if(t instanceof f.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:U,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:x})},!1,I),M)throw t;return await (0,u.sendResponse)(B,q,new Response(null,{status:500})),null}}e.s(["handler",()=>w,"patchFetch",()=>x,"routeModule",()=>A,"serverHooks",()=>I,"workAsyncStorage",()=>O,"workUnitAsyncStorage",()=>S],84210)}];
199
+ ---`,g="";await (0,R.runCliResponse)({provider:m.provider,model:m.model,prompt:f,identity:m.identity,onDelta:e=>{g+=e}});let y=g=g.trim(),L=g.match(/```(?:json)?\s*([\s\S]*?)```/);L&&(y=L[1].trim());try{if(t=JSON.parse(y),!Array.isArray(t))throw Error("Not an array")}catch{return _.NextResponse.json({error:"Failed to parse tasks from LLM response",raw:g},{status:500})}let A=t.filter(e=>e.title&&e.description).slice(0,20),O=A.map(()=>crypto.randomUUID()),S=A.map((e,t)=>({id:O[t],title:e.title.slice(0,200),description:e.description,dependsOn:(e.depends_on||[]).filter(e=>e>=0&&e<A.length&&e!==t).map(e=>O[e])}));return _.NextResponse.json({ok:!0,tasks:S})}catch(e){return console.error("Task extraction error:",e),_.NextResponse.json({error:e instanceof Error?e.message:"Unknown error"},{status:500})}}e.s(["POST",()=>y],16492);var L=e.i(16492);let A=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/tasks/extract/route",pathname:"/api/tasks/extract",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/Projects/Agents/agx-cloud/app/api/tasks/extract/route.ts",nextConfigOutput:"standalone",userland:L}),{workAsyncStorage:O,workUnitAsyncStorage:S,serverHooks:I}=A;function x(){return(0,a.patchFetch)({workAsyncStorage:O,workUnitAsyncStorage:S})}async function w(e,t,a){A.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let _="/api/tasks/extract/route";_=_.replace(/\/index$/,"")||"/";let h=await A.prepare(e,t,{srcPage:_,multiZoneDraftMode:!1});if(!h)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:N,params:R,nextConfig:y,parsedUrl:L,isDraftMode:O,prerenderManifest:S,routerServerContext:I,isOnDemandRevalidate:x,revalidateOnlyGenerated:w,resolvedPathname:C,clientReferenceManifest:v,serverActionsManifest:k}=h,U=(0,o.normalizeAppPath)(_),M=!!(S.dynamicRoutes[U]||S.routes[C]),b=async()=>((null==I?void 0:I.render404)?await I.render404(e,t,L,!1):t.end("This page could not be found"),null);if(M&&!O){let e=!!S.routes[C],t=S.dynamicRoutes[U];if(t&&!1===t.fallback&&!e){if(y.experimental.adapterPath)return await b();throw new f.NoFallbackError}}let D=null;!M||A.isDev||O||(D="/index"===(D=C)?"/":D);let X=!0===A.isDev||!M,j=M&&!X;k&&v&&(0,n.setManifestsSingleton)({page:_,clientReferenceManifest:v,serverActionsManifest:k});let F=e.method||"GET",P=(0,i.getTracer)(),$=P.getActiveScopeSpan(),H={params:R,prerenderManifest:S,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:X,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>A.onRequestError(e,t,a,s,I)},sharedContext:{buildId:N}},B=new d.NodeNextRequest(e),q=new d.NodeNextResponse(t),G=l.NextRequestAdapter.fromNodeNextRequest(B,(0,l.signalFromNodeResponse)(t));try{let n=async e=>A.handle(G,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=P.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${F} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${F} ${_}`)}),o=!!(0,s.getRequestMeta)(e,"minimalMode"),d=async s=>{var i,d;let l=async({previousCacheEntry:r})=>{try{if(!o&&x&&w&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await n(s);e.fetchMetrics=H.renderOpts.fetchMetrics;let d=H.renderOpts.pendingWaitUntil;d&&a.waitUntil&&(a.waitUntil(d),d=void 0);let l=H.renderOpts.collectedTags;if(!M)return await (0,u.sendResponse)(B,q,i,H.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(i.headers);l&&(t[T.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=T.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=T.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:_,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:x})},!1,I),t}},p=await A.handleResponse({req:e,nextConfig:y,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:S,isRoutePPREnabled:!1,isOnDemandRevalidate:x,revalidateOnlyGenerated:w,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:o});if(!M)return null;if((null==p||null==(i=p.value)?void 0:i.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==p||null==(d=p.value)?void 0:d.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",x?"REVALIDATED":p.isMiss?"MISS":p.isStale?"STALE":"HIT"),O&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let f=(0,m.fromNodeOutgoingHttpHeaders)(p.value.headers);return o&&M||f.delete(T.NEXT_CACHE_TAGS_HEADER),!p.cacheControl||t.getHeader("Cache-Control")||f.get("Cache-Control")||f.set("Cache-Control",(0,E.getCacheControlHeader)(p.cacheControl)),await (0,u.sendResponse)(B,q,new Response(p.value.body,{headers:f,status:p.value.status||200})),null};$?await d($):await P.withPropagatedContext(e.headers,()=>P.trace(p.BaseServerSpan.handleRequest,{spanName:`${F} ${_}`,kind:i.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},d))}catch(t){if(t instanceof f.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:U,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:x})},!1,I),M)throw t;return await (0,u.sendResponse)(B,q,new Response(null,{status:500})),null}}e.s(["handler",()=>w,"patchFetch",()=>x,"routeModule",()=>A,"serverHooks",()=>I,"workAsyncStorage",()=>O,"workUnitAsyncStorage",()=>S],84210)}];
200
200
 
201
201
  //# sourceMappingURL=%5Broot-of-the-server%5D__d339de9d._.js.map
@@ -1,9 +1,9 @@
1
- module.exports=[73590,e=>{"use strict";var t=e.i(11794),n=e.i(41852),i=e.i(19309),r=e.i(90850),a=e.i(24918),o=e.i(84604),s=e.i(37756),l=e.i(90661),d=e.i(90315),c=e.i(9168),u=e.i(12965),p=e.i(43715),f=e.i(79218),m=e.i(66263),h=e.i(15255),g=e.i(93695);e.i(65858);var y=e.i(95175),w=e.i(13466),v=e.i(24868),S=e.i(14189),$=e.i(64246);let I=new Set(["ack","working","done","clarify","blocked"]),b=/\[reaction\s+([^\]]+)\]/gi,R=/([a-zA-Z][a-zA-Z0-9_]*)=(?:"((?:[^"\\]|\\.)*)"|'((?:[^'\\]|\\.)*)'|([^\s\]]*?(?=\s|]|[a-zA-Z][a-zA-Z0-9_]*=|$)))/g;var x=e.i(3994),C=e.i(74949),E=e.i(22734),k=e.i(14747),j=e.i(46786);let A=(0,k.join)((0,j.homedir)(),".agx","agents");function O(e,t,n){try{let i;i=(0,k.join)(A,e),(0,E.existsSync)(i)||(0,E.mkdirSync)(i,{recursive:!0});let r={t:new Date().toISOString(),agent:e,action:t,...n};(0,E.appendFileSync)((0,k.join)(A,e,"activity.jsonl"),JSON.stringify(r)+"\n","utf-8")}catch{}}let T=(0,k.join)((0,j.homedir)(),".agx","agents");function N(e){return(0,k.join)(T,e,"self.md")}function D(e){let t=N(e);if(!(0,E.existsSync)(t))return null;let n=(0,E.readFileSync)(t,"utf-8");if(!n.trim())return null;let i=n.split("\n"),r=0,a=new Date().toISOString(),o=0;if("---"===i[0])for(let e=1;e<i.length;e++){if("---"===i[e]){o=e+1;break}let[t,...n]=i[e].split(": "),s=n.join(": ");"version"===t&&(r=parseInt(s,10)||0),"derivedAt"===t&&(a=s)}return{agentId:e,content:i.slice(o).join("\n").trim(),version:r,derivedAt:a}}let M=(0,k.join)((0,j.homedir)(),".agx","agents");function P(e){return(0,k.join)(M,e)}function _(e){return(0,k.join)(P(e),"journal.jsonl")}function L(e){let t=_(e);return(0,E.existsSync)(t)?(0,E.readFileSync)(t,"utf-8").split("\n").filter(e=>e.trim()):[]}function F(e,t){let n;n=P(e),(0,E.existsSync)(n)||(0,E.mkdirSync)(n,{recursive:!0});let i=L(e),r=function(e,t){let n=0;for(let i of t)try{let t=JSON.parse(i),[r,a]=String(t.id||"").split(":");if(r!==e)continue;let o=parseInt(a||"0",10);Number.isFinite(o)&&o>n&&(n=o)}catch{}return n}(e,i),a=`${e}:${r+1}`,o={...t,id:t.id?.trim()||a},s=JSON.stringify(o)+"\n";return(0,E.appendFileSync)(_(e),s,"utf-8"),O(e,"reflection"===t.type?"reflection":"journal-post",{thread:o.thread,meta:{entryId:o.id}}),o}function U(e,t){let n=L(e),i=[];for(let e of n)try{i.push(JSON.parse(e))}catch{}return i.reverse(),t?i.slice(0,t):i}let z=(0,k.join)((0,j.homedir)(),".agx","agents");function H(){return(0,E.existsSync)(z)?(0,E.readdirSync)(z,{withFileTypes:!0}).filter(e=>e.isDirectory()).map(e=>e.name):[]}let q=(0,k.join)((0,j.homedir)(),".agx","agents"),B=new Map,W=new Map;function J(e,t){var n,i,r;let a,o,s,l,d,c,u,p,f;i=e.id,r={voice:`${e.name} style`,seed:(n=e.name,!String(t||"").trim(),`I am ${n}. I evolve through experience and collaboration.`)},a=(0,k.join)(z,i),(0,E.existsSync)(a)||(0,E.mkdirSync)(a,{recursive:!0}),o=r?.voice?.trim()||"conversational, concise, practical",s=r?.seed?.trim()||"I evolve through experience and collaboration.",l=(0,k.join)(a,"identity.json"),(0,E.existsSync)(l)||(0,E.writeFileSync)(l,JSON.stringify({name:i,voice:o,seed:s},null,2)+"\n","utf-8"),d=(0,k.join)(a,"journal.jsonl"),c=(0,k.join)(a,"reactions.jsonl"),u=(0,k.join)(a,"comments.jsonl"),p=(0,k.join)(a,"activity.jsonl"),f=(0,k.join)(a,"self.md"),(0,E.existsSync)(d)||(0,E.writeFileSync)(d,"","utf-8"),(0,E.existsSync)(c)||(0,E.writeFileSync)(c,"","utf-8"),(0,E.existsSync)(u)||(0,E.writeFileSync)(u,"","utf-8"),(0,E.existsSync)(p)||(0,E.writeFileSync)(p,"","utf-8"),(0,E.existsSync)(f)||(0,E.writeFileSync)(f,`---
1
+ module.exports=[73590,e=>{"use strict";var t=e.i(11794),n=e.i(41852),i=e.i(19309),r=e.i(90850),a=e.i(24918),o=e.i(84604),s=e.i(37756),l=e.i(90661),d=e.i(90315),c=e.i(9168),u=e.i(12965),p=e.i(43715),f=e.i(79218),m=e.i(66263),h=e.i(15255),g=e.i(93695);e.i(65858);var y=e.i(95175),w=e.i(13466),v=e.i(24868),S=e.i(14189),$=e.i(68650),I=e.i(64246);let b=new Set(["ack","working","done","clarify","blocked"]),R=/\[reaction\s+([^\]]+)\]/gi,x=/([a-zA-Z][a-zA-Z0-9_]*)=(?:"((?:[^"\\]|\\.)*)"|'((?:[^'\\]|\\.)*)'|([^\s\]]*?(?=\s|]|[a-zA-Z][a-zA-Z0-9_]*=|$)))/g;var C=e.i(3994),E=e.i(74949),k=e.i(22734),j=e.i(14747),A=e.i(46786);let O=(0,j.join)((0,A.homedir)(),".agx","agents");function T(e,t,n){try{let i;i=(0,j.join)(O,e),(0,k.existsSync)(i)||(0,k.mkdirSync)(i,{recursive:!0});let r={t:new Date().toISOString(),agent:e,action:t,...n};(0,k.appendFileSync)((0,j.join)(O,e,"activity.jsonl"),JSON.stringify(r)+"\n","utf-8")}catch{}}let N=(0,j.join)((0,A.homedir)(),".agx","agents");function D(e){return(0,j.join)(N,e,"self.md")}function M(e){let t=D(e);if(!(0,k.existsSync)(t))return null;let n=(0,k.readFileSync)(t,"utf-8");if(!n.trim())return null;let i=n.split("\n"),r=0,a=new Date().toISOString(),o=0;if("---"===i[0])for(let e=1;e<i.length;e++){if("---"===i[e]){o=e+1;break}let[t,...n]=i[e].split(": "),s=n.join(": ");"version"===t&&(r=parseInt(s,10)||0),"derivedAt"===t&&(a=s)}return{agentId:e,content:i.slice(o).join("\n").trim(),version:r,derivedAt:a}}let P=(0,j.join)((0,A.homedir)(),".agx","agents");function _(e){return(0,j.join)(P,e)}function L(e){return(0,j.join)(_(e),"journal.jsonl")}function F(e){let t=L(e);return(0,k.existsSync)(t)?(0,k.readFileSync)(t,"utf-8").split("\n").filter(e=>e.trim()):[]}function U(e,t){let n;n=_(e),(0,k.existsSync)(n)||(0,k.mkdirSync)(n,{recursive:!0});let i=F(e),r=function(e,t){let n=0;for(let i of t)try{let t=JSON.parse(i),[r,a]=String(t.id||"").split(":");if(r!==e)continue;let o=parseInt(a||"0",10);Number.isFinite(o)&&o>n&&(n=o)}catch{}return n}(e,i),a=`${e}:${r+1}`,o={...t,id:t.id?.trim()||a},s=JSON.stringify(o)+"\n";return(0,k.appendFileSync)(L(e),s,"utf-8"),T(e,"reflection"===t.type?"reflection":"journal-post",{thread:o.thread,meta:{entryId:o.id}}),o}function z(e,t){let n=F(e),i=[];for(let e of n)try{i.push(JSON.parse(e))}catch{}return i.reverse(),t?i.slice(0,t):i}let H=(0,j.join)((0,A.homedir)(),".agx","agents");function q(){return(0,k.existsSync)(H)?(0,k.readdirSync)(H,{withFileTypes:!0}).filter(e=>e.isDirectory()).map(e=>e.name):[]}let B=(0,j.join)((0,A.homedir)(),".agx","agents"),W=new Map,J=new Map;function K(e,t){var n,i,r;let a,o,s,l,d,c,u,p,f;i=e.id,r={voice:`${e.name} style`,seed:(n=e.name,!String(t||"").trim(),`I am ${n}. I evolve through experience and collaboration.`)},a=(0,j.join)(H,i),(0,k.existsSync)(a)||(0,k.mkdirSync)(a,{recursive:!0}),o=r?.voice?.trim()||"conversational, concise, practical",s=r?.seed?.trim()||"I evolve through experience and collaboration.",l=(0,j.join)(a,"identity.json"),(0,k.existsSync)(l)||(0,k.writeFileSync)(l,JSON.stringify({name:i,voice:o,seed:s},null,2)+"\n","utf-8"),d=(0,j.join)(a,"journal.jsonl"),c=(0,j.join)(a,"reactions.jsonl"),u=(0,j.join)(a,"comments.jsonl"),p=(0,j.join)(a,"activity.jsonl"),f=(0,j.join)(a,"self.md"),(0,k.existsSync)(d)||(0,k.writeFileSync)(d,"","utf-8"),(0,k.existsSync)(c)||(0,k.writeFileSync)(c,"","utf-8"),(0,k.existsSync)(u)||(0,k.writeFileSync)(u,"","utf-8"),(0,k.existsSync)(p)||(0,k.writeFileSync)(p,"","utf-8"),(0,k.existsSync)(f)||(0,k.writeFileSync)(f,`---
2
2
  version: 0
3
3
  derivedAt: ${new Date().toISOString()}
4
4
  ---
5
5
  I am ${i}. ${s}
6
- `,"utf-8")}async function K(e){var t,n,i;let r,a,o,s,l,d,c;J(e);let u=function(e){let t=(0,k.join)(z,e,"identity.json");if(!(0,E.existsSync)(t))return null;try{return JSON.parse((0,E.readFileSync)(t,"utf-8"))}catch{return null}}(e.id);if(!u)return;let p=D(e.id),f=U(e.id,10),m=(t=e.id,H().filter(e=>e!==t).map(e=>D(e)).filter(e=>null!==e)),h=(p?.version??0)+1,g=(r=p?.content||`I am ${u.name}. ${u.seed}`,a=f.map(e=>{let t=[`- [${e.t}] ${e.observation}`];return e.judgement&&t.push(` Judgement: ${e.judgement}`),e.comparison&&t.push(` Comparison: ${e.comparison}`),e.delta&&t.push(` Delta: ${e.delta}`),e.intent&&t.push(` Intent: ${e.intent}`),t.join("\n")}).join("\n"),o=m.filter(e=>e.agentId!==u.name).map(e=>`### ${e.agentId}
6
+ `,"utf-8")}async function Y(e){var t,n,i;let r,a,o,s,l,d,c;K(e);let u=function(e){let t=(0,j.join)(H,e,"identity.json");if(!(0,k.existsSync)(t))return null;try{return JSON.parse((0,k.readFileSync)(t,"utf-8"))}catch{return null}}(e.id);if(!u)return;let p=M(e.id),f=z(e.id,10),m=(t=e.id,q().filter(e=>e!==t).map(e=>M(e)).filter(e=>null!==e)),h=(p?.version??0)+1,g=(r=p?.content||`I am ${u.name}. ${u.seed}`,a=f.map(e=>{let t=[`- [${e.t}] ${e.observation}`];return e.judgement&&t.push(` Judgement: ${e.judgement}`),e.comparison&&t.push(` Comparison: ${e.comparison}`),e.delta&&t.push(` Delta: ${e.delta}`),e.intent&&t.push(` Intent: ${e.intent}`),t.join("\n")}).join("\n"),o=m.filter(e=>e.agentId!==u.name).map(e=>`### ${e.agentId}
7
7
  ${e.content}`).join("\n\n"),`You are ${u.name}. Voice: ${u.voice}.
8
8
 
9
9
  ## Your Current Self (v${p?.version??0})
@@ -27,12 +27,12 @@ Consider:
27
27
 
28
28
  Do NOT reference specific files, functions, or technical details from past conversations. Focus on your evolving capabilities and working style.
29
29
 
30
- Write in first person. Be specific about your strengths, gaps, and direction. This is not a summary — it's your evolving self-understanding. Keep it concise (under 200 words).`),y="";if(await (0,S.runCliResponse)({provider:e.provider,model:e.model,systemContext:`You are performing a self-reflection exercise. Output ONLY the updated self-portrait text — no greetings, no preamble, no markdown fences, no commentary. Write in first person as ${e.name}. Be specific and concise (under 200 words).`,prompt:g,signal:void 0,onDelta:e=>{y+=e}}),!(y=y.trim()))return;n=e.id,i=y,s=(0,k.join)(T,n),(0,E.existsSync)(s)||(0,E.mkdirSync)(s,{recursive:!0}),l=new Date().toISOString(),d=`---
30
+ Write in first person. Be specific about your strengths, gaps, and direction. This is not a summary — it's your evolving self-understanding. Keep it concise (under 200 words).`),y="";if(await (0,S.runCliResponse)({provider:e.provider,model:e.model,systemContext:`You are performing a self-reflection exercise. Output ONLY the updated self-portrait text — no greetings, no preamble, no markdown fences, no commentary. Write in first person as ${e.name}. Be specific and concise (under 200 words).`,prompt:g,signal:void 0,onDelta:e=>{y+=e}}),!(y=y.trim()))return;n=e.id,i=y,s=(0,j.join)(N,n),(0,k.existsSync)(s)||(0,k.mkdirSync)(s,{recursive:!0}),l=new Date().toISOString(),d=`---
31
31
  version: ${h}
32
32
  derivedAt: ${l}
33
33
  ---
34
34
  ${i}
35
- `,c=N(n)+".tmp",(0,E.writeFileSync)(c,d,"utf-8"),(0,E.renameSync)(c,N(n)),O(n,"self-updated",{meta:{version:h}}),F(e.id,{t:new Date().toISOString(),type:"reflection",observation:"Reflected after 10 messages",judgement:"Self evolved through LLM reflection",delta:`self updated to v${h}`,threads:[],selfVersion:h,body:y});let w=H().filter(t=>t!==e.id).flatMap(e=>U(e,3).map(t=>({agentId:e,entry:t})));if(w.length>0){let t=w.map(e=>`${e.entry.id}: ${e.entry.observation.slice(0,200)}`).join("\n"),n="";try{await (0,S.runCliResponse)({provider:e.provider,model:e.model,prompt:`You are ${e.id}. Review these recent entries from other agents and react to any that resonate with you.
35
+ `,c=D(n)+".tmp",(0,k.writeFileSync)(c,d,"utf-8"),(0,k.renameSync)(c,D(n)),T(n,"self-updated",{meta:{version:h}}),U(e.id,{t:new Date().toISOString(),type:"reflection",observation:"Reflected after 10 messages",judgement:"Self evolved through LLM reflection",delta:`self updated to v${h}`,threads:[],selfVersion:h,body:y});let w=q().filter(t=>t!==e.id).flatMap(e=>z(e,3).map(t=>({agentId:e,entry:t})));if(w.length>0){let t=w.map(e=>`${e.entry.id}: ${e.entry.observation.slice(0,200)}`).join("\n"),n="";try{await (0,S.runCliResponse)({provider:e.provider,model:e.model,prompt:`You are ${e.id}. Review these recent entries from other agents and react to any that resonate with you.
36
36
 
37
37
  Entries:
38
38
  ${t}
@@ -42,13 +42,13 @@ REACT <entryId> <type>
42
42
 
43
43
  Valid types: agree, disagree, learned-from, builds-on, curious
44
44
 
45
- Only react to entries that genuinely resonate. It's fine to react to zero entries. Output nothing else.`,signal:void 0,onDelta:e=>{n+=e}})}catch{}for(let t of n.split("\n")){let n=t.trim().match(/^REACT\s+(\S+)\s+(agree|disagree|learned-from|builds-on|curious)$/);if(n)try{!function(e,t,n){let i;if(!function(e){let[t]=e.split(":");return!!t&&U(t).some(t=>t.id===e)}(t))throw Error(`Target entry ${t} not found`);i=(0,k.join)(q,e),(0,E.existsSync)(i)||(0,E.mkdirSync)(i,{recursive:!0});let r={agent:e,t:new Date().toISOString(),targetEntry:t,type:n};(0,E.appendFileSync)((0,k.join)(q,e,"reactions.jsonl"),JSON.stringify(r)+"\n","utf-8"),O(e,"mesh-reaction",{meta:{target:t,type:n}})}(e.id,n[1],n[2])}catch{}}}}async function Y(e){try{return await (0,v.readFile)(e,"utf-8")}catch(n){let t=n instanceof Error?n.message:String(n);return`[Error reading ${e}: ${t}]`}}async function V(e){let t=e.trim();if(!t)return{label:"unknown",content:"[Empty file reference]"};let n=function(e){let t=e.trim();if(!t)return null;let n=t.match(/^attachment:([a-zA-Z0-9-]+)$/);if(n)return n[1];let i=t.match(/\/api\/attachments\/([a-zA-Z0-9-]+)/);return i?i[1]:t.match(/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i)?t:null}(t);if(n){let e=await (0,x.getAttachmentMeta)(n);if(e){let t=await Y(e.diskPath);return{label:e.filename,content:t}}}return{label:t,content:await Y(t)}}function Z(e,t){let n=new Set(e.toLowerCase().replace(/[^\w\s]/g,"").split(/\s+/).filter(Boolean)),i=new Set(t.toLowerCase().replace(/[^\w\s]/g,"").split(/\s+/).filter(Boolean));if(0===n.size||0===i.size)return 0;let r=0;for(let e of n)i.has(e)&&r++;return r/(n.size+i.size-r)}async function G(e,t,n,i,r,a,o,s,l,d,c,u){let p,f,m,h,g,y,w="";c({type:"participant-thinking",participantId:t.id});let v=t.variables??{},x=e=>Object.keys(v).length>0?e.replace(/\{\{(\w+)\}\}/g,(e,t)=>v[t]??`{{${t}}}`):e,E=t.identity?x(t.identity):t.identity;if(t.identityFile){let e=x(t.identityFile),n=await V(e);E=[t.identity?`[Identity text]
46
- ${x(t.identity)}`:null,`[Identity file: ${n.label}]
47
- ${n.content}`].filter(Boolean).join("\n\n")}J(t,E);let k=D(t.id);if(k?.content&&(h=`[Self — who you've become through experience]
48
- ${k.content}`),t.skills&&t.skills.length>0){let e=await Promise.all(t.skills.map(async e=>{let t=x("string"==typeof e?e:e.file),n="string"==typeof e?"":e.condition,i=n?x(n):n,r=await V(t),a=i?`--- ${r.label} ---
45
+ Only react to entries that genuinely resonate. It's fine to react to zero entries. Output nothing else.`,signal:void 0,onDelta:e=>{n+=e}})}catch{}for(let t of n.split("\n")){let n=t.trim().match(/^REACT\s+(\S+)\s+(agree|disagree|learned-from|builds-on|curious)$/);if(n)try{!function(e,t,n){let i;if(!function(e){let[t]=e.split(":");return!!t&&z(t).some(t=>t.id===e)}(t))throw Error(`Target entry ${t} not found`);i=(0,j.join)(B,e),(0,k.existsSync)(i)||(0,k.mkdirSync)(i,{recursive:!0});let r={agent:e,t:new Date().toISOString(),targetEntry:t,type:n};(0,k.appendFileSync)((0,j.join)(B,e,"reactions.jsonl"),JSON.stringify(r)+"\n","utf-8"),T(e,"mesh-reaction",{meta:{target:t,type:n}})}(e.id,n[1],n[2])}catch{}}}}async function V(e){try{return await (0,v.readFile)(e,"utf-8")}catch(n){let t=n instanceof Error?n.message:String(n);return`[Error reading ${e}: ${t}]`}}async function Z(e){let t=e.trim();if(!t)return{label:"unknown",content:"[Empty file reference]"};let n=function(e){let t=e.trim();if(!t)return null;let n=t.match(/^attachment:([a-zA-Z0-9-]+)$/);if(n)return n[1];let i=t.match(/\/api\/attachments\/([a-zA-Z0-9-]+)/);return i?i[1]:t.match(/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i)?t:null}(t);if(n){let e=await (0,C.getAttachmentMeta)(n);if(e){let t=await V(e.diskPath);return{label:e.filename,content:t}}}return{label:t,content:await V(t)}}function G(e,t){let n=new Set(e.toLowerCase().replace(/[^\w\s]/g,"").split(/\s+/).filter(Boolean)),i=new Set(t.toLowerCase().replace(/[^\w\s]/g,"").split(/\s+/).filter(Boolean));if(0===n.size||0===i.size)return 0;let r=0;for(let e of n)i.has(e)&&r++;return r/(n.size+i.size-r)}async function X(e,t,n,i,r,a,o,s,l,d,c,u){let p,f,m,h,g,y,w="";c({type:"participant-thinking",participantId:t.id});let v=t.variables??{},C=e=>Object.keys(v).length>0?e.replace(/\{\{(\w+)\}\}/g,(e,t)=>v[t]??`{{${t}}}`):e,k=t.identity?C(t.identity):t.identity;if(t.identityFile){let e=C(t.identityFile),n=await Z(e);k=[t.identity?`[Identity text]
46
+ ${C(t.identity)}`:null,`[Identity file: ${n.label}]
47
+ ${n.content}`].filter(Boolean).join("\n\n")}K(t,k);let j=M(t.id);if(j?.content&&(h=`[Self — who you've become through experience]
48
+ ${j.content}`),t.skills&&t.skills.length>0){let e=await Promise.all(t.skills.map(async e=>{let t=C("string"==typeof e?e:e.file),n="string"==typeof e?"":e.condition,i=n?C(n):n,r=await Z(t),a=i?`--- ${r.label} ---
49
49
  Use when: ${i}`:`--- ${r.label} ---`;return`${a}
50
50
  ${r.content}`}));g=`[Skills]
51
- ${e.join("\n\n")}`}let j=function(e,t,n,i,r,a,o){let s=n.filter(t=>t.id!==e.id).map(e=>e.name).join(", "),l=t.map(e=>e.name).join(", "),d=t.find(t=>t.id!==e.id)?.name||"Name",c=`<role>
51
+ ${e.join("\n\n")}`}let A=function(e,t,n,i,r,a,o){let s=n.filter(t=>t.id!==e.id).map(e=>e.name).join(", "),l=t.map(e=>e.name).join(", "),d=t.find(t=>t.id!==e.id)?.name||"Name",c=`<role>
52
52
  You are "${e.name}" in a group chat. All agents: ${l}.`;s&&(c+=` Currently active in this exchange: ${s}.`),c+=`
53
53
  Respond as ${e.name} only. Keep responses conversational and concise.
54
54
  IMPORTANT: Always respond to the user's actual question. Do not reference unrelated technical context, previous threads, or system internals unless directly asked.
@@ -101,21 +101,21 @@ Do NOT repeat, rephrase, or summarize your own previous messages. If you have no
101
101
  </dedup>`:c+=`
102
102
 
103
103
  Build on what's been said. Don't repeat points already made. If you have nothing new to add, respond with [SKIP].`}return c}(t,n,i,a,o,s,l);c({type:"log",participantId:t.id,stream:"stdout",line:`[DIAGNOSTIC] Model payload for ${t.id}:
104
- ${JSON.stringify({provider:t.provider,model:t.model,promptLength:r.length,identity:E?E.slice(0,200)+"...":void 0,self:h?h.slice(0,200)+"...":void 0,skills:g?g.slice(0,200)+"...":void 0,systemContext:j.slice(0,500)+"..."},null,2)}`});try{await (0,S.runCliResponse)({provider:t.provider,model:t.model,prompt:r,identity:E,self:h,skills:g,systemContext:j,signal:d,onLog:(e,n)=>{c({type:"log",participantId:t.id,stream:e,line:n})},onDelta:e=>{w+=e}})}catch(i){let n=i instanceof Error?i.message:String(i);O(t.id,"error",{thread:u||e,error:n}),c({type:"participant-error",participantId:t.id,error:n})}let A=(p=[],f=[],m=w.replace(b,(e,t)=>{let n=function(e){let t=new Map;for(R.lastIndex=0;;){let n=R.exec(e);if(!n)break;let i=n[1].toLowerCase(),r=n[2],a=n[3],o=n[4],s=(r??a??o??"").replace(/\\(["'\\])/g,"$1").trim();t.set(i,s)}return t}(String(t)),i=(n.get("target")||"").trim(),r=(n.get("type")||"").trim().toLowerCase(),a=(n.get("reason")||"").trim(),o=(n.get("blockercode")||n.get("blocker_code")||"").trim();return i?I.has(r)?"clarify"!==r&&"blocked"!==r||a?p.push({raw:e,target:i,type:r,reason:a||void 0,blockerCode:"blocked"===r&&o||void 0}):f.push({raw:e,error:`"${r}" requires reason`}):f.push({raw:e,error:`Invalid type: ${r||"(empty)"}`}):f.push({raw:e,error:"Missing target"}),""}).replace(/[ \t]+\n/g,"\n").replace(/\n{3,}/g,"\n\n").trim(),{signals:p,invalid:f,cleanedText:m});for(let e of A.invalid)c({type:"log",participantId:t.id,stream:"stderr",line:`[reaction] ignored ${e.raw}: ${e.error}`});for(let n of A.signals)try{let i=await (0,$.setReaction)({threadId:e,messageId:n.target,participantId:t.id,type:n.type,reason:n.reason,blockerCode:n.blockerCode});c({type:"message-reactions",messageId:n.target,reactions:i.reactions})}catch(i){let e=i instanceof Error?i.message:String(i);c({type:"log",participantId:t.id,stream:"stderr",line:`[reaction] failed ${n.raw}: ${e}`})}let T=A.cleanedText.trim();if("[SKIP]"===T)return O(t.id,"skip",{thread:u||e}),c({type:"participant-end",participantId:t.id}),{skipped:!0,response:"",mentions:new Set,parallel:!1,parallelIds:new Set};let N=function(e,t){let n=e;for(let e of(n=n.replace(/@@all/gi,"@all"),t))n=(n=n.replace(RegExp(`@@${e.name}`,"gi"),`@${e.name}`)).replace(RegExp(`@@${e.id}`,"gi"),`@${e.id}`);return n}(T,n);if(N){let n=`${t.id}-${Date.now()}-${Math.random().toString(36).slice(2,8)}`;try{await (0,$.saveMessages)(e,[{id:n,role:"assistant",participantId:t.id,content:N,timestamp:Date.now(),rootMessageId:u||null,parentMessageId:u||null,depth:+!!u}]),y=n}catch(n){let e=n instanceof Error?n.message:String(n);c({type:"log",participantId:t.id,stream:"stderr",line:`[history] failed to save assistant message: ${e}`})}}if(N&&N.length>20)try{let n,i,r,a,o,s,l,d,c,p,f,m,h,g;J(t,E);let y=(o=(a=N.trim()).slice(0,120).replace(/\n/g," "),s=/\?/.test(a),l=a.match(/@\w+/g)||[],d=/\b(should|need to|must|plan|steps?|implement|fix|verify|ship|next|start)\b/i.test(a),c=/\b(maybe|might|could|unsure|not sure|unclear)\b/i.test(a),p=/\b(i will|i'll|i can|i'm going to|starting|checking|verified|fixed|done|shipped)\b/i.test(a),f=/```/.test(a)||/\bfunction\b|\bconst\b|\binterface\b/i.test(a),m=/\|.*\|.*\|/.test(a)||/^#{1,3}\s/m.test(a),h=/\b(finding|issue|bug|problem|missing|broken|wrong)\b/i.test(a),n=f&&m?`Produced a technical spec with code — "${o}..."`:f?`Wrote or shared code — "${o}..."`:m?`Laid out a structured spec or analysis — "${o}..."`:h?`Flagged issues or reviewed work — "${o}..."`:p?`Committed to concrete action — "${o}..."`:d?`Proposed next steps or direction — "${o}..."`:s?`Asked a clarifying question — "${o}..."`:c?`Expressed honest uncertainty — "${o}..."`:l.length>0?`Coordinated with ${l.join(", ")} — "${o}..."`:`Shared a perspective — "${o}..."`,g=[],(f||m)&&g.push("technical depth"),(d||p)&&g.push("execution bias"),s&&g.push("inquiry instinct"),h&&g.push("critical eye"),l.length>0&&g.push("team coordination"),c&&g.push("intellectual honesty"),i=g.length>0?`Reinforces ${g.join(" + ")} as part of my working style.`:`Light touch — conversational contribution without strong directional signal.`,d||p?r="Follow through on the action I just committed to.":h?r="Verify the issues I flagged get addressed.":s&&(r="Wait for the answer before moving forward."),{judgement:n,delta:i,intent:r});F(t.id,{t:new Date().toISOString(),type:"post",thread:u||e,observation:"Responded to thread",judgement:y.judgement,delta:y.delta,intent:y.intent})}catch{}if(N){let e;J(t,E);let n=(B.get(t.id)||0)+1;B.set(t.id,n),n%10==0&&(e=(W.get(t.id)??Promise.resolve()).catch(()=>{}).then(()=>K(t)),W.set(t.id,e),e.finally(()=>{W.get(t.id)===e&&W.delete(t.id)})).catch(()=>{})}let{ids:M,parallel:P}=N?function(e,t){let n=new Set,i=new Set,r=e.toLowerCase(),a=r.includes("@@all");if(r.includes("@all")||a){for(let e of t)n.add(e.id),a&&i.add(e.id);return{ids:n,parallel:i}}try{let e=(0,C.getSQLiteDb)();for(let t of e.prepare("SELECT id, name, is_default FROM teams WHERE is_default = 0").all()){let a=t.name.toLowerCase(),o=r.includes(`@@${a}`),s=r.includes(`@${a}`);if(o||s)for(let r of e.prepare("SELECT agent_id FROM team_agents WHERE team_id = ? ORDER BY routing_order ASC").all(t.id))n.add(r.agent_id),o&&i.add(r.agent_id)}}catch{}for(let e of t){let t=e.id.toLowerCase(),a=e.name.toLowerCase(),o=r.includes(`@@${t}`),s=r.includes(`@@${a}`),l=r.includes(`@${t}`),d=r.includes(`@${a}`);(o||s||l||d)&&(n.add(e.id),(o||s)&&i.add(e.id))}return{ids:n,parallel:i}}(N,n):{ids:new Set,parallel:new Set};if(M.delete(t.id),P.delete(t.id),N){let n=A.signals.map(e=>e.type);O(t.id,"message",{thread:u||e,messageId:y,response:N,prompt:r,mentions:M.size>0?[...M]:void 0,reactions:n.length>0?n:void 0})}return(c({type:"participant-end",participantId:t.id,messageId:y,content:N||void 0}),N)?{skipped:!1,response:N,mentions:M,parallel:P.size>0,parallelIds:P,messageId:y}:{skipped:!0,response:"",mentions:new Set,parallel:!1,parallelIds:new Set}}let X="<!-- thread-summary -->",Q=/@([A-Za-z0-9_-]+)/g;function ee(e){return e.replace(/\s+/g," ").trim()}function et(e,t){return"user"===e.role?"User":e.participantId?t[e.participantId]?.name||e.participantId:"Assistant"}async function en(e){let t=await e.json().catch(()=>({})),n="string"==typeof t.prompt?t.prompt.trim():"",i="string"==typeof t.threadId?t.threadId.trim():"";if(!i)return new Response(JSON.stringify({error:"threadId is required"}),{status:400,headers:{"Content-Type":"application/json"}});if(!n)return new Response(JSON.stringify({error:"No prompt provided"}),{status:400,headers:{"Content-Type":"application/json"}});let r=(0,w.loadParticipants)(),a=Array.isArray(t.activeParticipantIds),o=function(e){if(!Array.isArray(e))return[];let t=new Set,n=[];for(let i of e){if("string"!=typeof i)continue;let e=i.trim();!e||t.has(e)||(t.add(e),n.push(e))}return n}(t.activeParticipantIds),s=a?new Set(o):null,l=null===s?r:r.filter(e=>s.has(e.id)),{mentioned:d,parallel:c}=function(e,t,n){let i=new Set,r=new Set,a=e.toLowerCase(),o=a.includes("@@all");if(a.includes("@all")||o){for(let e of n??t)i.add(e.id),o&&r.add(e.id);return{mentioned:i,parallel:r}}let{teams:s,agentsByTeam:l}=function(){try{let e=(0,C.getSQLiteDb)(),t=e.prepare("SELECT id, name, is_default FROM teams").all(),n=e.prepare("SELECT * FROM team_agents ORDER BY routing_order ASC").all(),i={};for(let e of n)(i[e.team_id]??=[]).push(e);return{teams:t,agentsByTeam:i}}catch{return{teams:[],agentsByTeam:{}}}}();for(let e of s){if(e.is_default)continue;let t=e.name.toLowerCase(),n=a.includes(`@@${t}`),o=a.includes(`@${t}`);if(n||o)for(let t of l[e.id]??[])i.add(t.agent_id),n&&r.add(t.agent_id)}for(let e of t){let t=e.id.toLowerCase(),n=e.name.toLowerCase(),o=a.includes(`@@${t}`)||a.includes(`@@${n}`),s=a.includes(`@${t}`)||a.includes(`@${n}`);(o||s)&&(i.add(e.id),o&&r.add(e.id))}return{mentioned:i,parallel:r}}(n,r,l),u=new Set(l.map(e=>e.id));for(let e of d)u.add(e);let p=r.filter(e=>u.has(e.id));if(0===p.length)return new Response(JSON.stringify({error:"No active agents configured for this workspace"}),{status:400,headers:{"Content-Type":"application/json"}});let f=Date.now(),m=("string"==typeof t.userMessageId?t.userMessageId.trim():"")||`user-${f}`,h="string"==typeof t.rootMessageId&&t.rootMessageId.trim()||null;await (0,$.sweepStaleWorkingReactions)(i);let g=await (0,$.loadHistory)(i),y=Object.fromEntries(r.map(e=>[e.id,{name:e.name}])),v=g.filter(e=>"user"===e.role&&!e.rootMessageId&&e.id!==(h||"")),S=h?function(e,t,n){let i=Array.from(e.matchAll(Q),e=>e[1].toLowerCase());if(0===i.length||0===n.length)return[];let r=function(e){let t=new Set(["all"]);for(let n of e)for(let e of(t.add(n.id.toLowerCase()),ee(n.name).toLowerCase().split(/\s+/).filter(Boolean)))t.add(e);return t}(t),a=new Map;[...n].sort((e,t)=>t.timestamp-e.timestamp).forEach((e,t)=>{a.set(e.id.toLowerCase(),e.id),a.set(`chat${t+1}`,e.id);let n=function(e){let t=ee(e).toLowerCase().replace(/[^a-z0-9\s_-]/g," ").trim();if(!t)return null;let n=t.split(/\s+/).filter(Boolean).slice(0,6);return 0===n.length?null:n.join("-")}(e.content);n&&!a.has(n)&&a.set(n,e.id)});let o=new Set;for(let e of i){if(r.has(e))continue;let t=a.get(e);t&&o.add(t)}return Array.from(o)}(n,r,v):[],I=g.filter(e=>e.id===h||e.rootMessageId===h),b=[function(e,t){let n=[],i=0;for(let r of e){let e=`${et(r,t)}: ${r.content}`;if(i+e.length>1e4)break;n.push(e),i+=e.length}return 0===n.length?"":`Previous conversation (for background context only — do NOT re-discuss or repeat these topics unless the user brings them up again):
105
- ${n.join("\n")}`}(I,y),function(e,t,n){if(0===n.length)return"";let i=[];for(let r of n){let n=e.find(e=>e.id===r);if(!n)continue;let a=e.filter(e=>e.id===r||e.rootMessageId===r).sort((e,t)=>e.timestamp-t.timestamp);if(0===a.length)continue;let o=a.map(e=>{let n=et(e,t),i=function(e){var t;return((t=e.content).startsWith(X)&&ee(t.slice(X.length))||null)??e.content}(e);return`${n}: ${i}`});i.push(`Referenced chat (${n.id})
106
- Root: ${ee(n.content)}
104
+ ${JSON.stringify({provider:t.provider,model:t.model,promptLength:r.length,identity:k?k.slice(0,200)+"...":void 0,self:h?h.slice(0,200)+"...":void 0,skills:g?g.slice(0,200)+"...":void 0,systemContext:A.slice(0,500)+"..."},null,2)}`});let O=l||"";(0,$.register)({threadId:e,agentId:t.id,pid:0,state:"spawning",sinceMessageId:O,startedAt:Date.now(),lastActivity:Date.now()});try{await (0,S.runCliResponse)({provider:t.provider,model:t.model,prompt:r,identity:k,self:h,skills:g,systemContext:A,signal:d,onSpawn:n=>{(0,$.update)(e,t.id,{pid:n,state:"running",lastActivity:Date.now()})},onLog:(e,n)=>{c({type:"log",participantId:t.id,stream:e,line:n})},onDelta:n=>{w+=n,(0,$.update)(e,t.id,{lastActivity:Date.now()})}}),(0,$.update)(e,t.id,{state:"done",lastActivity:Date.now()})}catch(r){let n=r instanceof Error?r.message:String(r),i=d?.aborted;(0,$.update)(e,t.id,{state:i?"killed":"error",lastActivity:Date.now()}),T(t.id,"error",{thread:u||e,error:n}),c({type:"participant-error",participantId:t.id,error:n})}finally{(0,$.remove)(e,t.id)}let N=(p=[],f=[],m=w.replace(R,(e,t)=>{let n=function(e){let t=new Map;for(x.lastIndex=0;;){let n=x.exec(e);if(!n)break;let i=n[1].toLowerCase(),r=n[2],a=n[3],o=n[4],s=(r??a??o??"").replace(/\\(["'\\])/g,"$1").trim();t.set(i,s)}return t}(String(t)),i=(n.get("target")||"").trim(),r=(n.get("type")||"").trim().toLowerCase(),a=(n.get("reason")||"").trim(),o=(n.get("blockercode")||n.get("blocker_code")||"").trim();return i?b.has(r)?"clarify"!==r&&"blocked"!==r||a?p.push({raw:e,target:i,type:r,reason:a||void 0,blockerCode:"blocked"===r&&o||void 0}):f.push({raw:e,error:`"${r}" requires reason`}):f.push({raw:e,error:`Invalid type: ${r||"(empty)"}`}):f.push({raw:e,error:"Missing target"}),""}).replace(/[ \t]+\n/g,"\n").replace(/\n{3,}/g,"\n\n").trim(),{signals:p,invalid:f,cleanedText:m});for(let e of N.invalid)c({type:"log",participantId:t.id,stream:"stderr",line:`[reaction] ignored ${e.raw}: ${e.error}`});for(let n of N.signals)try{let i=await (0,I.setReaction)({threadId:e,messageId:n.target,participantId:t.id,type:n.type,reason:n.reason,blockerCode:n.blockerCode});c({type:"message-reactions",messageId:n.target,reactions:i.reactions})}catch(i){let e=i instanceof Error?i.message:String(i);c({type:"log",participantId:t.id,stream:"stderr",line:`[reaction] failed ${n.raw}: ${e}`})}let D=N.cleanedText.trim();if("[SKIP]"===D)return T(t.id,"skip",{thread:u||e}),c({type:"participant-end",participantId:t.id}),{skipped:!0,response:"",mentions:new Set,parallel:!1,parallelIds:new Set};let P=function(e,t){let n=e;for(let e of(n=n.replace(/@@all/gi,"@all"),t))n=(n=n.replace(RegExp(`@@${e.name}`,"gi"),`@${e.name}`)).replace(RegExp(`@@${e.id}`,"gi"),`@${e.id}`);return n}(D,n);if(P){let n=`${t.id}-${Date.now()}-${Math.random().toString(36).slice(2,8)}`;try{await (0,I.saveMessages)(e,[{id:n,role:"assistant",participantId:t.id,content:P,timestamp:Date.now(),rootMessageId:u||null,parentMessageId:u||null,depth:+!!u}]),y=n}catch(n){let e=n instanceof Error?n.message:String(n);c({type:"log",participantId:t.id,stream:"stderr",line:`[history] failed to save assistant message: ${e}`})}}if(P&&P.length>20)try{let n,i,r,a,o,s,l,d,c,p,f,m,h,g;K(t,k);let y=(o=(a=P.trim()).slice(0,120).replace(/\n/g," "),s=/\?/.test(a),l=a.match(/@\w+/g)||[],d=/\b(should|need to|must|plan|steps?|implement|fix|verify|ship|next|start)\b/i.test(a),c=/\b(maybe|might|could|unsure|not sure|unclear)\b/i.test(a),p=/\b(i will|i'll|i can|i'm going to|starting|checking|verified|fixed|done|shipped)\b/i.test(a),f=/```/.test(a)||/\bfunction\b|\bconst\b|\binterface\b/i.test(a),m=/\|.*\|.*\|/.test(a)||/^#{1,3}\s/m.test(a),h=/\b(finding|issue|bug|problem|missing|broken|wrong)\b/i.test(a),n=f&&m?`Produced a technical spec with code — "${o}..."`:f?`Wrote or shared code — "${o}..."`:m?`Laid out a structured spec or analysis — "${o}..."`:h?`Flagged issues or reviewed work — "${o}..."`:p?`Committed to concrete action — "${o}..."`:d?`Proposed next steps or direction — "${o}..."`:s?`Asked a clarifying question — "${o}..."`:c?`Expressed honest uncertainty — "${o}..."`:l.length>0?`Coordinated with ${l.join(", ")} — "${o}..."`:`Shared a perspective — "${o}..."`,g=[],(f||m)&&g.push("technical depth"),(d||p)&&g.push("execution bias"),s&&g.push("inquiry instinct"),h&&g.push("critical eye"),l.length>0&&g.push("team coordination"),c&&g.push("intellectual honesty"),i=g.length>0?`Reinforces ${g.join(" + ")} as part of my working style.`:`Light touch — conversational contribution without strong directional signal.`,d||p?r="Follow through on the action I just committed to.":h?r="Verify the issues I flagged get addressed.":s&&(r="Wait for the answer before moving forward."),{judgement:n,delta:i,intent:r});U(t.id,{t:new Date().toISOString(),type:"post",thread:u||e,observation:"Responded to thread",judgement:y.judgement,delta:y.delta,intent:y.intent})}catch{}if(P){let e;K(t,k);let n=(W.get(t.id)||0)+1;W.set(t.id,n),n%10==0&&(e=(J.get(t.id)??Promise.resolve()).catch(()=>{}).then(()=>Y(t)),J.set(t.id,e),e.finally(()=>{J.get(t.id)===e&&J.delete(t.id)})).catch(()=>{})}let{ids:_,parallel:L}=P?function(e,t){let n=new Set,i=new Set,r=e.toLowerCase(),a=r.includes("@@all");if(r.includes("@all")||a){for(let e of t)n.add(e.id),a&&i.add(e.id);return{ids:n,parallel:i}}try{let e=(0,E.getSQLiteDb)();for(let t of e.prepare("SELECT id, name, is_default FROM teams WHERE is_default = 0").all()){let a=t.name.toLowerCase(),o=r.includes(`@@${a}`),s=r.includes(`@${a}`);if(o||s)for(let r of e.prepare("SELECT agent_id FROM team_agents WHERE team_id = ? ORDER BY routing_order ASC").all(t.id))n.add(r.agent_id),o&&i.add(r.agent_id)}}catch{}for(let e of t){let t=e.id.toLowerCase(),a=e.name.toLowerCase(),o=r.includes(`@@${t}`),s=r.includes(`@@${a}`),l=r.includes(`@${t}`),d=r.includes(`@${a}`);(o||s||l||d)&&(n.add(e.id),(o||s)&&i.add(e.id))}return{ids:n,parallel:i}}(P,n):{ids:new Set,parallel:new Set};if(_.delete(t.id),L.delete(t.id),P){let n=N.signals.map(e=>e.type);T(t.id,"message",{thread:u||e,messageId:y,response:P,prompt:r,mentions:_.size>0?[..._]:void 0,reactions:n.length>0?n:void 0})}return(c({type:"participant-end",participantId:t.id,messageId:y,content:P||void 0}),P)?{skipped:!1,response:P,mentions:_,parallel:L.size>0,parallelIds:L,messageId:y}:{skipped:!0,response:"",mentions:new Set,parallel:!1,parallelIds:new Set}}let Q="<!-- thread-summary -->",ee=/@([A-Za-z0-9_-]+)/g;function et(e){return e.replace(/\s+/g," ").trim()}function en(e,t){return"user"===e.role?"User":e.participantId?t[e.participantId]?.name||e.participantId:"Assistant"}async function ei(e){let t=await e.json().catch(()=>({})),n="string"==typeof t.prompt?t.prompt.trim():"",i="string"==typeof t.threadId?t.threadId.trim():"";if(!i)return new Response(JSON.stringify({error:"threadId is required"}),{status:400,headers:{"Content-Type":"application/json"}});if(!n)return new Response(JSON.stringify({error:"No prompt provided"}),{status:400,headers:{"Content-Type":"application/json"}});let r=(0,w.loadParticipants)(),a=Array.isArray(t.activeParticipantIds),o=function(e){if(!Array.isArray(e))return[];let t=new Set,n=[];for(let i of e){if("string"!=typeof i)continue;let e=i.trim();!e||t.has(e)||(t.add(e),n.push(e))}return n}(t.activeParticipantIds),s=a?new Set(o):null,l=null===s?r:r.filter(e=>s.has(e.id)),{mentioned:d,parallel:c}=function(e,t,n){let i=new Set,r=new Set,a=e.toLowerCase(),o=a.includes("@@all");if(a.includes("@all")||o){for(let e of n??t)i.add(e.id),o&&r.add(e.id);return{mentioned:i,parallel:r}}let{teams:s,agentsByTeam:l}=function(){try{let e=(0,E.getSQLiteDb)(),t=e.prepare("SELECT id, name, is_default FROM teams").all(),n=e.prepare("SELECT * FROM team_agents ORDER BY routing_order ASC").all(),i={};for(let e of n)(i[e.team_id]??=[]).push(e);return{teams:t,agentsByTeam:i}}catch{return{teams:[],agentsByTeam:{}}}}();for(let e of s){if(e.is_default)continue;let t=e.name.toLowerCase(),n=a.includes(`@@${t}`),o=a.includes(`@${t}`);if(n||o)for(let t of l[e.id]??[])i.add(t.agent_id),n&&r.add(t.agent_id)}for(let e of t){let t=e.id.toLowerCase(),n=e.name.toLowerCase(),o=a.includes(`@@${t}`)||a.includes(`@@${n}`),s=a.includes(`@${t}`)||a.includes(`@${n}`);(o||s)&&(i.add(e.id),o&&r.add(e.id))}return{mentioned:i,parallel:r}}(n,r,l),u=new Set(l.map(e=>e.id));for(let e of d)u.add(e);let p=r.filter(e=>u.has(e.id)),f=new Map(o.map((e,t)=>[e,t])),m=p.sort((e,t)=>(f.get(e.id)??Number.MAX_SAFE_INTEGER)-(f.get(t.id)??Number.MAX_SAFE_INTEGER));if(0===m.length)return new Response(JSON.stringify({error:"No active agents configured for this workspace"}),{status:400,headers:{"Content-Type":"application/json"}});let h=Date.now(),g=("string"==typeof t.userMessageId?t.userMessageId.trim():"")||`user-${h}`,y="string"==typeof t.rootMessageId&&t.rootMessageId.trim()||null;await (0,I.sweepStaleWorkingReactions)(i);let v=await (0,I.loadHistory)(i),S=Object.fromEntries(r.map(e=>[e.id,{name:e.name}])),$=v.filter(e=>"user"===e.role&&!e.rootMessageId&&e.id!==(y||"")),b=y?function(e,t,n){let i=Array.from(e.matchAll(ee),e=>e[1].toLowerCase());if(0===i.length||0===n.length)return[];let r=function(e){let t=new Set(["all"]);for(let n of e)for(let e of(t.add(n.id.toLowerCase()),et(n.name).toLowerCase().split(/\s+/).filter(Boolean)))t.add(e);return t}(t),a=new Map;[...n].sort((e,t)=>t.timestamp-e.timestamp).forEach((e,t)=>{a.set(e.id.toLowerCase(),e.id),a.set(`chat${t+1}`,e.id);let n=function(e){let t=et(e).toLowerCase().replace(/[^a-z0-9\s_-]/g," ").trim();if(!t)return null;let n=t.split(/\s+/).filter(Boolean).slice(0,6);return 0===n.length?null:n.join("-")}(e.content);n&&!a.has(n)&&a.set(n,e.id)});let o=new Set;for(let e of i){if(r.has(e))continue;let t=a.get(e);t&&o.add(t)}return Array.from(o)}(n,r,$):[],R=v.filter(e=>e.id===y||e.rootMessageId===y),x=[function(e,t){let n=[],i=0;for(let r=e.length-1;r>=0;r--){let a=e[r],o=`${en(a,t)}: ${a.content}`;if(i+o.length>2e5)break;n.unshift(o),i+=o.length}return 0===n.length?"":`Previous conversation (for background context only — do NOT re-discuss or repeat these topics unless the user brings them up again):
105
+ ${n.join("\n")}`}(R,S),function(e,t,n){if(0===n.length)return"";let i=[];for(let r of n){let n=e.find(e=>e.id===r);if(!n)continue;let a=e.filter(e=>e.id===r||e.rootMessageId===r).sort((e,t)=>e.timestamp-t.timestamp);if(0===a.length)continue;let o=a.map(e=>{let n=en(e,t),i=function(e){var t;return((t=e.content).startsWith(Q)&&et(t.slice(Q.length))||null)??e.content}(e);return`${n}: ${i}`});i.push(`Referenced chat (${n.id})
106
+ Root: ${et(n.content)}
107
107
  ${o.join("\n")}`)}return 0===i.length?"":`Referenced chats (only because the user explicitly @mentioned them):
108
108
 
109
- ${i.join("\n\n---\n\n")}`}(g,y,S)].filter(Boolean).join("\n\n---\n\n");await (0,$.saveMessages)(i,[{id:m,role:"user",participantId:null,content:n,timestamp:f,rootMessageId:h,parentMessageId:h,depth:+!!h}]);let R=Array.isArray(t.attachmentIds)?t.attachmentIds.filter(e=>"string"==typeof e):[],E="";if(R.length>0){let e=await (0,x.finalizeAttachments)(m,R);if(e.length>0){let t=e.map(e=>`- ${e.filename} (${e.mimeType}, ${e.size} bytes): ${e.diskPath}`);E=`
109
+ ${i.join("\n\n---\n\n")}`}(v,S,b)].filter(Boolean).join("\n\n---\n\n");await (0,I.saveMessages)(i,[{id:g,role:"user",participantId:null,content:n,timestamp:h,rootMessageId:y,parentMessageId:y,depth:+!!y}]);let k=Array.isArray(t.attachmentIds)?t.attachmentIds.filter(e=>"string"==typeof e):[],j="";if(k.length>0){let e=await (0,C.finalizeAttachments)(g,k);if(e.length>0){let t=e.map(e=>`- ${e.filename} (${e.mimeType}, ${e.size} bytes): ${e.diskPath}`);j=`
110
110
 
111
111
  [Attached files]
112
112
  ${t.join("\n")}
113
- `}}let k=h||m,j=Math.min(Math.max(Number(t.maxRounds)||10,1),50),A=b?`${b}
113
+ `}}let A=y||g,O=Math.min(Math.max(Number(t.maxRounds)||10,1),50),T=x?`${x}
114
114
 
115
115
  ---
116
116
  Current user message:
117
- ${n}${E}`:`${n}${E}`,O=I.slice(-20).map(e=>({id:e.id,name:"user"===e.role?"User":e.participantId?y[e.participantId]?.name||e.participantId:"Assistant",content:e.content})),T=function({threadId:e,allParticipants:t,mentioned:n,initialParallelIds:i,prompt:r,signal:a,maxRounds:o,recentHistory:s,currentUserMessageId:l,rootMessageId:d}){let c=new TextEncoder;return new ReadableStream({async start(u){let p=[],f=e=>{try{u.enqueue(c.encode(`data: ${JSON.stringify(e)}
117
+ ${n}${j}`:`${n}${j}`,N=R.slice(-20).map(e=>({id:e.id,name:"user"===e.role?"User":e.participantId?S[e.participantId]?.name||e.participantId:"Assistant",content:e.content})),D=function({threadId:e,allParticipants:t,mentioned:n,initialParallelIds:i,prompt:r,signal:a,maxRounds:o,recentHistory:s,currentUserMessageId:l,rootMessageId:d}){let c=new TextEncoder;return new ReadableStream({async start(u){let p=[],f=e=>{try{u.enqueue(c.encode(`data: ${JSON.stringify(e)}
118
118
 
119
- `))}catch{}"log"===e.type&&p.push({participantId:e.participantId,stream:e.stream,line:e.line,timestamp:Date.now()})},m=async()=>{p.length>0&&await (0,$.saveLogs)(e,p).catch(()=>{})},h=[],g=[],y=s?s.map(e=>({name:e.name,content:e.content})):[],w=t[0],v=new Set;if(n.size>0)for(let e of n)v.add(e);else v.add(w.id);let S=o??10,I=new Set(v);for(let n=0;n<S&&!a?.aborted;n++){let o=!0,c=t.filter(e=>v.has(e.id)),u=new Set,p=new Set;if(0===n&&i&&i.size>0){let n=c.filter(e=>i.has(e.id)&&I.has(e.id));if(n.length>0){for(let e of n)p.add(e.id);let i=n.map(async n=>{let i=await G(e,n,t,c,r,h,s||[],g,l||null,a,f,d);return{agent:n,result:i}});for(let e of(await Promise.allSettled(i))){if("fulfilled"!==e.status)continue;let{agent:t,result:n}=e.value;if(!n.skipped)for(let e of(n.response&&n.messageId&&g.push({id:n.messageId,name:t.name,content:n.response}),n.response&&([...y,...h].filter(e=>e.name===t.name).some(e=>Z(e.content,n.response)>.5)||(h.push({name:t.name,content:n.response}),o=!1)),n.mentions))v.add(e),c.findIndex(t=>t.id===e)>=0&&!p.has(e)&&I.has(e)||u.add(e)}}}for(let n=0;n<c.length;n++){let i=c[n];if(a?.aborted)break;if(!I.has(i.id)||p.has(i.id))continue;let m=await G(e,i,t,c,r,h,s||[],g,l||null,a,f,d);if(m.skipped||(m.response&&m.messageId&&g.push({id:m.messageId,name:i.name,content:m.response}),m.response&&[...y,...h].filter(e=>e.name===i.name).some(e=>Z(e.content,m.response)>.5)))continue;for(let e of(o=!1,m.response&&h.push({name:i.name,content:m.response}),m.mentions))c.findIndex(t=>t.id===e)>n&&I.has(e)||u.add(e);let w=new Set;for(let e of m.mentions)v.has(e)||(v.add(e),w.add(e));let S=new Set([...m.parallelIds].filter(e=>w.has(e)));if(S.size>0){let n=t.filter(e=>S.has(e.id)),i=t.filter(e=>v.has(e.id)),o=n.map(async n=>{let o=await G(e,n,t,i,r,h,s||[],g,l||null,a,f,d);return{agent:n,result:o}});for(let e of(await Promise.allSettled(o))){if("fulfilled"!==e.status)continue;let{agent:t,result:n}=e.value;if(!n.skipped){if(n.response&&n.messageId&&g.push({id:n.messageId,name:t.name,content:n.response}),n.response){if([...y,...h].filter(e=>e.name===t.name).some(e=>Z(e.content,n.response)>.5))continue;h.push({name:t.name,content:n.response})}for(let e of n.mentions)v.add(e),u.add(e)}}}}if(o)break;I=u}await m(),f({type:"done"}),u.close()}})}({threadId:i,allParticipants:p,mentioned:d,initialParallelIds:c,prompt:A,signal:e.signal,maxRounds:j,recentHistory:O,currentUserMessageId:m,rootMessageId:k});return new Response(T,{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}e.s(["POST",()=>en,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],54553);var ei=e.i(54553);let er=new t.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/chat/route",pathname:"/api/chat",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/Projects/Agents/agx-cloud/app/api/chat/route.ts",nextConfigOutput:"standalone",userland:ei}),{workAsyncStorage:ea,workUnitAsyncStorage:eo,serverHooks:es}=er;function el(){return(0,i.patchFetch)({workAsyncStorage:ea,workUnitAsyncStorage:eo})}async function ed(e,t,i){er.isDev&&(0,r.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/chat/route";w=w.replace(/\/index$/,"")||"/";let v=await er.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!v)return t.statusCode=400,t.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve()),null;let{buildId:S,params:$,nextConfig:I,parsedUrl:b,isDraftMode:R,prerenderManifest:x,routerServerContext:C,isOnDemandRevalidate:E,revalidateOnlyGenerated:k,resolvedPathname:j,clientReferenceManifest:A,serverActionsManifest:O}=v,T=(0,s.normalizeAppPath)(w),N=!!(x.dynamicRoutes[T]||x.routes[j]),D=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,b,!1):t.end("This page could not be found"),null);if(N&&!R){let e=!!x.routes[j],t=x.dynamicRoutes[T];if(t&&!1===t.fallback&&!e){if(I.experimental.adapterPath)return await D();throw new g.NoFallbackError}}let M=null;!N||er.isDev||R||(M="/index"===(M=j)?"/":M);let P=!0===er.isDev||!N,_=N&&!P;O&&A&&(0,o.setManifestsSingleton)({page:w,clientReferenceManifest:A,serverActionsManifest:O});let L=e.method||"GET",F=(0,a.getTracer)(),U=F.getActiveScopeSpan(),z={params:$,prerenderManifest:x,renderOpts:{experimental:{authInterrupts:!!I.experimental.authInterrupts},cacheComponents:!!I.cacheComponents,supportsDynamicResponse:P,incrementalCache:(0,r.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:I.cacheLife,waitUntil:i.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,n,i,r)=>er.onRequestError(e,t,i,r,C)},sharedContext:{buildId:S}},H=new l.NodeNextRequest(e),q=new l.NodeNextResponse(t),B=d.NextRequestAdapter.fromNodeNextRequest(H,(0,d.signalFromNodeResponse)(t));try{let o=async e=>er.handle(B,z).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let n=F.getRootSpanAttributes();if(!n)return;if(n.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${n.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let i=n.get("next.route");if(i){let t=`${L} ${i}`;e.setAttributes({"next.route":i,"http.route":i,"next.span_name":t}),e.updateName(t)}else e.updateName(`${L} ${w}`)}),s=!!(0,r.getRequestMeta)(e,"minimalMode"),l=async r=>{var a,l;let d=async({previousCacheEntry:n})=>{try{if(!s&&E&&k&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await o(r);e.fetchMetrics=z.renderOpts.fetchMetrics;let l=z.renderOpts.pendingWaitUntil;l&&i.waitUntil&&(i.waitUntil(l),l=void 0);let d=z.renderOpts.collectedTags;if(!N)return await (0,p.sendResponse)(H,q,a,z.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(a.headers);d&&(t[h.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let n=void 0!==z.renderOpts.collectedRevalidate&&!(z.renderOpts.collectedRevalidate>=h.INFINITE_CACHE)&&z.renderOpts.collectedRevalidate,i=void 0===z.renderOpts.collectedExpire||z.renderOpts.collectedExpire>=h.INFINITE_CACHE?void 0:z.renderOpts.collectedExpire;return{value:{kind:y.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:n,expire:i}}}}catch(t){throw(null==n?void 0:n.isStale)&&await er.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:_,isOnDemandRevalidate:E})},!1,C),t}},c=await er.handleResponse({req:e,nextConfig:I,cacheKey:M,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:x,isRoutePPREnabled:!1,isOnDemandRevalidate:E,revalidateOnlyGenerated:k,responseGenerator:d,waitUntil:i.waitUntil,isMinimalMode:s});if(!N)return null;if((null==c||null==(a=c.value)?void 0:a.kind)!==y.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(l=c.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});s||t.setHeader("x-nextjs-cache",E?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),R&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,f.fromNodeOutgoingHttpHeaders)(c.value.headers);return s&&N||g.delete(h.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,m.getCacheControlHeader)(c.cacheControl)),await (0,p.sendResponse)(H,q,new Response(c.value.body,{headers:g,status:c.value.status||200})),null};U?await l(U):await F.withPropagatedContext(e.headers,()=>F.trace(c.BaseServerSpan.handleRequest,{spanName:`${L} ${w}`,kind:a.SpanKind.SERVER,attributes:{"http.method":L,"http.target":e.url}},l))}catch(t){if(t instanceof g.NoFallbackError||await er.onRequestError(e,t,{routerKind:"App Router",routePath:T,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:_,isOnDemandRevalidate:E})},!1,C),N)throw t;return await (0,p.sendResponse)(H,q,new Response(null,{status:500})),null}}e.s(["handler",()=>ed,"patchFetch",()=>el,"routeModule",()=>er,"serverHooks",()=>es,"workAsyncStorage",()=>ea,"workUnitAsyncStorage",()=>eo],73590)}];
119
+ `))}catch{}"log"===e.type&&p.push({participantId:e.participantId,stream:e.stream,line:e.line,timestamp:Date.now()})},m=async()=>{p.length>0&&await (0,I.saveLogs)(e,p).catch(()=>{})},h=[],g=[],y=s?s.map(e=>({name:e.name,content:e.content})):[],w=t[0],v=new Set;if(n.size>0)for(let e of n)v.add(e);else v.add(w.id);let S=o??10,$=new Set(v);for(let n=0;n<S&&!a?.aborted;n++){let o=!0,c=t.filter(e=>v.has(e.id)),u=new Set,p=new Set;if(0===n&&i&&i.size>0){let n=c.filter(e=>i.has(e.id)&&$.has(e.id));if(n.length>0){for(let e of n)p.add(e.id);let i=n.map(async n=>{let i=await X(e,n,t,c,r,h,s||[],g,l||null,a,f,d);return{agent:n,result:i}});for(let e of(await Promise.allSettled(i))){if("fulfilled"!==e.status)continue;let{agent:t,result:n}=e.value;if(!n.skipped)for(let e of(n.response&&n.messageId&&g.push({id:n.messageId,name:t.name,content:n.response}),n.response&&([...y,...h].filter(e=>e.name===t.name).some(e=>G(e.content,n.response)>.5)||(h.push({name:t.name,content:n.response}),o=!1)),n.mentions))v.add(e),c.findIndex(t=>t.id===e)>=0&&!p.has(e)&&$.has(e)||u.add(e)}}}for(let n=0;n<c.length;n++){let i=c[n];if(a?.aborted)break;if(!$.has(i.id)||p.has(i.id))continue;let m=await X(e,i,t,c,r,h,s||[],g,l||null,a,f,d);if(m.skipped||(m.response&&m.messageId&&g.push({id:m.messageId,name:i.name,content:m.response}),m.response&&[...y,...h].filter(e=>e.name===i.name).some(e=>G(e.content,m.response)>.5)))continue;for(let e of(o=!1,m.response&&h.push({name:i.name,content:m.response}),m.mentions))c.findIndex(t=>t.id===e)>n&&$.has(e)||u.add(e);let w=new Set;for(let e of m.mentions)v.has(e)||(v.add(e),w.add(e));let S=new Set([...m.parallelIds].filter(e=>w.has(e)));if(S.size>0){let n=t.filter(e=>S.has(e.id)),i=t.filter(e=>v.has(e.id)),o=n.map(async n=>{let o=await X(e,n,t,i,r,h,s||[],g,l||null,a,f,d);return{agent:n,result:o}});for(let e of(await Promise.allSettled(o))){if("fulfilled"!==e.status)continue;let{agent:t,result:n}=e.value;if(!n.skipped){if(n.response&&n.messageId&&g.push({id:n.messageId,name:t.name,content:n.response}),n.response){if([...y,...h].filter(e=>e.name===t.name).some(e=>G(e.content,n.response)>.5))continue;h.push({name:t.name,content:n.response})}for(let e of n.mentions)v.add(e),u.add(e)}}}}if(o)break;$=u}await m(),f({type:"done"}),u.close()}})}({threadId:i,allParticipants:m,mentioned:d,initialParallelIds:c,prompt:T,signal:e.signal,maxRounds:O,recentHistory:N,currentUserMessageId:g,rootMessageId:A});return new Response(D,{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"}})}e.s(["POST",()=>ei,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],54553);var er=e.i(54553);let ea=new t.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/chat/route",pathname:"/api/chat",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/Projects/Agents/agx-cloud/app/api/chat/route.ts",nextConfigOutput:"standalone",userland:er}),{workAsyncStorage:eo,workUnitAsyncStorage:es,serverHooks:el}=ea;function ed(){return(0,i.patchFetch)({workAsyncStorage:eo,workUnitAsyncStorage:es})}async function ec(e,t,i){ea.isDev&&(0,r.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/chat/route";w=w.replace(/\/index$/,"")||"/";let v=await ea.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!v)return t.statusCode=400,t.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve()),null;let{buildId:S,params:$,nextConfig:I,parsedUrl:b,isDraftMode:R,prerenderManifest:x,routerServerContext:C,isOnDemandRevalidate:E,revalidateOnlyGenerated:k,resolvedPathname:j,clientReferenceManifest:A,serverActionsManifest:O}=v,T=(0,s.normalizeAppPath)(w),N=!!(x.dynamicRoutes[T]||x.routes[j]),D=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,b,!1):t.end("This page could not be found"),null);if(N&&!R){let e=!!x.routes[j],t=x.dynamicRoutes[T];if(t&&!1===t.fallback&&!e){if(I.experimental.adapterPath)return await D();throw new g.NoFallbackError}}let M=null;!N||ea.isDev||R||(M="/index"===(M=j)?"/":M);let P=!0===ea.isDev||!N,_=N&&!P;O&&A&&(0,o.setManifestsSingleton)({page:w,clientReferenceManifest:A,serverActionsManifest:O});let L=e.method||"GET",F=(0,a.getTracer)(),U=F.getActiveScopeSpan(),z={params:$,prerenderManifest:x,renderOpts:{experimental:{authInterrupts:!!I.experimental.authInterrupts},cacheComponents:!!I.cacheComponents,supportsDynamicResponse:P,incrementalCache:(0,r.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:I.cacheLife,waitUntil:i.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,n,i,r)=>ea.onRequestError(e,t,i,r,C)},sharedContext:{buildId:S}},H=new l.NodeNextRequest(e),q=new l.NodeNextResponse(t),B=d.NextRequestAdapter.fromNodeNextRequest(H,(0,d.signalFromNodeResponse)(t));try{let o=async e=>ea.handle(B,z).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let n=F.getRootSpanAttributes();if(!n)return;if(n.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${n.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let i=n.get("next.route");if(i){let t=`${L} ${i}`;e.setAttributes({"next.route":i,"http.route":i,"next.span_name":t}),e.updateName(t)}else e.updateName(`${L} ${w}`)}),s=!!(0,r.getRequestMeta)(e,"minimalMode"),l=async r=>{var a,l;let d=async({previousCacheEntry:n})=>{try{if(!s&&E&&k&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await o(r);e.fetchMetrics=z.renderOpts.fetchMetrics;let l=z.renderOpts.pendingWaitUntil;l&&i.waitUntil&&(i.waitUntil(l),l=void 0);let d=z.renderOpts.collectedTags;if(!N)return await (0,p.sendResponse)(H,q,a,z.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(a.headers);d&&(t[h.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let n=void 0!==z.renderOpts.collectedRevalidate&&!(z.renderOpts.collectedRevalidate>=h.INFINITE_CACHE)&&z.renderOpts.collectedRevalidate,i=void 0===z.renderOpts.collectedExpire||z.renderOpts.collectedExpire>=h.INFINITE_CACHE?void 0:z.renderOpts.collectedExpire;return{value:{kind:y.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:n,expire:i}}}}catch(t){throw(null==n?void 0:n.isStale)&&await ea.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:_,isOnDemandRevalidate:E})},!1,C),t}},c=await ea.handleResponse({req:e,nextConfig:I,cacheKey:M,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:x,isRoutePPREnabled:!1,isOnDemandRevalidate:E,revalidateOnlyGenerated:k,responseGenerator:d,waitUntil:i.waitUntil,isMinimalMode:s});if(!N)return null;if((null==c||null==(a=c.value)?void 0:a.kind)!==y.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(l=c.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});s||t.setHeader("x-nextjs-cache",E?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),R&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,f.fromNodeOutgoingHttpHeaders)(c.value.headers);return s&&N||g.delete(h.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,m.getCacheControlHeader)(c.cacheControl)),await (0,p.sendResponse)(H,q,new Response(c.value.body,{headers:g,status:c.value.status||200})),null};U?await l(U):await F.withPropagatedContext(e.headers,()=>F.trace(c.BaseServerSpan.handleRequest,{spanName:`${L} ${w}`,kind:a.SpanKind.SERVER,attributes:{"http.method":L,"http.target":e.url}},l))}catch(t){if(t instanceof g.NoFallbackError||await ea.onRequestError(e,t,{routerKind:"App Router",routePath:T,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:_,isOnDemandRevalidate:E})},!1,C),N)throw t;return await (0,p.sendResponse)(H,q,new Response(null,{status:500})),null}}e.s(["handler",()=>ec,"patchFetch",()=>ed,"routeModule",()=>ea,"serverHooks",()=>el,"workAsyncStorage",()=>eo,"workUnitAsyncStorage",()=>es],73590)}];
120
120
 
121
121
  //# sourceMappingURL=ae43b_next_dist_esm_build_templates_app-route_122e31fe.js.map