constellai 0.3.5 → 0.3.6

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 (273) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +3 -3
  3. package/.next/build-manifest.json +2 -2
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/server/app/(app)/activity/page.js +2 -2
  6. package/.next/server/app/(app)/activity/page.js.nft.json +1 -1
  7. package/.next/server/app/(app)/activity/page_client-reference-manifest.js +1 -1
  8. package/.next/server/app/(app)/agents/[handle]/page.js +2 -2
  9. package/.next/server/app/(app)/agents/[handle]/page.js.nft.json +1 -1
  10. package/.next/server/app/(app)/agents/[handle]/page_client-reference-manifest.js +1 -1
  11. package/.next/server/app/(app)/code/page.js +2 -2
  12. package/.next/server/app/(app)/code/page.js.nft.json +1 -1
  13. package/.next/server/app/(app)/code/page_client-reference-manifest.js +1 -1
  14. package/.next/server/app/(app)/config/page.js +2 -2
  15. package/.next/server/app/(app)/config/page.js.nft.json +1 -1
  16. package/.next/server/app/(app)/config/page_client-reference-manifest.js +1 -1
  17. package/.next/server/app/(app)/costs/page.js +2 -2
  18. package/.next/server/app/(app)/costs/page.js.nft.json +1 -1
  19. package/.next/server/app/(app)/costs/page_client-reference-manifest.js +1 -1
  20. package/.next/server/app/(app)/cron/page.js +2 -2
  21. package/.next/server/app/(app)/cron/page.js.nft.json +1 -1
  22. package/.next/server/app/(app)/cron/page_client-reference-manifest.js +1 -1
  23. package/.next/server/app/(app)/dashboard/page.js +2 -2
  24. package/.next/server/app/(app)/dashboard/page.js.nft.json +1 -1
  25. package/.next/server/app/(app)/dashboard/page_client-reference-manifest.js +1 -1
  26. package/.next/server/app/(app)/design/page.js +5 -5
  27. package/.next/server/app/(app)/design/page.js.nft.json +1 -1
  28. package/.next/server/app/(app)/design/page_client-reference-manifest.js +1 -1
  29. package/.next/server/app/(app)/docs/[id]/page.js +2 -2
  30. package/.next/server/app/(app)/docs/[id]/page.js.nft.json +1 -1
  31. package/.next/server/app/(app)/docs/[id]/page_client-reference-manifest.js +1 -1
  32. package/.next/server/app/(app)/docs/page.js +2 -2
  33. package/.next/server/app/(app)/docs/page.js.nft.json +1 -1
  34. package/.next/server/app/(app)/docs/page_client-reference-manifest.js +1 -1
  35. package/.next/server/app/(app)/github/page.js +2 -2
  36. package/.next/server/app/(app)/github/page.js.nft.json +1 -1
  37. package/.next/server/app/(app)/github/page_client-reference-manifest.js +1 -1
  38. package/.next/server/app/(app)/goals/page.js +2 -2
  39. package/.next/server/app/(app)/goals/page.js.nft.json +1 -1
  40. package/.next/server/app/(app)/goals/page_client-reference-manifest.js +1 -1
  41. package/.next/server/app/(app)/inbox/page.js +2 -2
  42. package/.next/server/app/(app)/inbox/page.js.nft.json +1 -1
  43. package/.next/server/app/(app)/inbox/page_client-reference-manifest.js +1 -1
  44. package/.next/server/app/(app)/knowledge/page.js +3 -3
  45. package/.next/server/app/(app)/knowledge/page.js.nft.json +1 -1
  46. package/.next/server/app/(app)/knowledge/page_client-reference-manifest.js +1 -1
  47. package/.next/server/app/(app)/models/page.js +2 -2
  48. package/.next/server/app/(app)/models/page.js.nft.json +1 -1
  49. package/.next/server/app/(app)/models/page_client-reference-manifest.js +1 -1
  50. package/.next/server/app/(app)/notifications/page.js +2 -2
  51. package/.next/server/app/(app)/notifications/page.js.nft.json +1 -1
  52. package/.next/server/app/(app)/notifications/page_client-reference-manifest.js +1 -1
  53. package/.next/server/app/(app)/org/page.js +3 -3
  54. package/.next/server/app/(app)/org/page.js.nft.json +1 -1
  55. package/.next/server/app/(app)/org/page_client-reference-manifest.js +1 -1
  56. package/.next/server/app/(app)/organizations/page.js +2 -2
  57. package/.next/server/app/(app)/organizations/page.js.nft.json +1 -1
  58. package/.next/server/app/(app)/organizations/page_client-reference-manifest.js +1 -1
  59. package/.next/server/app/(app)/page.js +3 -3
  60. package/.next/server/app/(app)/page.js.nft.json +1 -1
  61. package/.next/server/app/(app)/page_client-reference-manifest.js +1 -1
  62. package/.next/server/app/(app)/planner/page.js +3 -3
  63. package/.next/server/app/(app)/planner/page.js.nft.json +1 -1
  64. package/.next/server/app/(app)/planner/page_client-reference-manifest.js +1 -1
  65. package/.next/server/app/(app)/plugins/page.js +2 -2
  66. package/.next/server/app/(app)/plugins/page.js.nft.json +1 -1
  67. package/.next/server/app/(app)/plugins/page_client-reference-manifest.js +1 -1
  68. package/.next/server/app/(app)/pm/page.js +2 -2
  69. package/.next/server/app/(app)/pm/page.js.nft.json +1 -1
  70. package/.next/server/app/(app)/pm/page_client-reference-manifest.js +1 -1
  71. package/.next/server/app/(app)/prepare-deploy/page.js +6 -6
  72. package/.next/server/app/(app)/prepare-deploy/page.js.nft.json +1 -1
  73. package/.next/server/app/(app)/prepare-deploy/page_client-reference-manifest.js +1 -1
  74. package/.next/server/app/(app)/profile/page.js +2 -2
  75. package/.next/server/app/(app)/profile/page.js.nft.json +1 -1
  76. package/.next/server/app/(app)/profile/page_client-reference-manifest.js +1 -1
  77. package/.next/server/app/(app)/pulse/page.js +2 -2
  78. package/.next/server/app/(app)/pulse/page.js.nft.json +1 -1
  79. package/.next/server/app/(app)/pulse/page_client-reference-manifest.js +1 -1
  80. package/.next/server/app/(app)/reports/[id]/page.js +3 -3
  81. package/.next/server/app/(app)/reports/[id]/page.js.nft.json +1 -1
  82. package/.next/server/app/(app)/reports/[id]/page_client-reference-manifest.js +1 -1
  83. package/.next/server/app/(app)/reports/page.js +2 -2
  84. package/.next/server/app/(app)/reports/page.js.nft.json +1 -1
  85. package/.next/server/app/(app)/reports/page_client-reference-manifest.js +1 -1
  86. package/.next/server/app/(app)/routines/page.js +2 -2
  87. package/.next/server/app/(app)/routines/page.js.nft.json +1 -1
  88. package/.next/server/app/(app)/routines/page_client-reference-manifest.js +1 -1
  89. package/.next/server/app/(app)/search/page.js +2 -2
  90. package/.next/server/app/(app)/search/page.js.nft.json +1 -1
  91. package/.next/server/app/(app)/search/page_client-reference-manifest.js +1 -1
  92. package/.next/server/app/(app)/security/page.js +2 -2
  93. package/.next/server/app/(app)/security/page.js.nft.json +1 -1
  94. package/.next/server/app/(app)/security/page_client-reference-manifest.js +1 -1
  95. package/.next/server/app/(app)/skills/page.js +2 -2
  96. package/.next/server/app/(app)/skills/page.js.nft.json +1 -1
  97. package/.next/server/app/(app)/skills/page_client-reference-manifest.js +1 -1
  98. package/.next/server/app/(app)/tasks/page.js +2 -2
  99. package/.next/server/app/(app)/tasks/page.js.nft.json +1 -1
  100. package/.next/server/app/(app)/tasks/page_client-reference-manifest.js +1 -1
  101. package/.next/server/app/(app)/test-dev/page.js +2 -2
  102. package/.next/server/app/(app)/test-dev/page.js.nft.json +1 -1
  103. package/.next/server/app/(app)/test-dev/page_client-reference-manifest.js +1 -1
  104. package/.next/server/app/(app)/update/page.js +3 -3
  105. package/.next/server/app/(app)/update/page.js.nft.json +1 -1
  106. package/.next/server/app/(app)/update/page_client-reference-manifest.js +1 -1
  107. package/.next/server/app/(auth)/login/page.js +2 -2
  108. package/.next/server/app/(auth)/login/page.js.nft.json +1 -1
  109. package/.next/server/app/(auth)/login/page_client-reference-manifest.js +1 -1
  110. package/.next/server/app/(auth)/onboarding/page.js +2 -2
  111. package/.next/server/app/(auth)/onboarding/page.js.nft.json +1 -1
  112. package/.next/server/app/(auth)/onboarding/page_client-reference-manifest.js +1 -1
  113. package/.next/server/app/_global-error/page.js +1 -1
  114. package/.next/server/app/_global-error/page.js.nft.json +1 -1
  115. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  116. package/.next/server/app/_global-error.html +1 -1
  117. package/.next/server/app/_global-error.rsc +3 -3
  118. package/.next/server/app/_global-error.segments/_full.segment.rsc +3 -3
  119. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  120. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  121. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  122. package/.next/server/app/_global-error.segments/_index.segment.rsc +2 -2
  123. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  124. package/.next/server/app/_not-found/page.js +1 -1
  125. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  126. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  127. package/.next/server/app/api/cron/tick/route.js +16 -16
  128. package/.next/server/app/api/locks/acquire/route.js +1 -1
  129. package/.next/server/app/api/sync/file/route.js +2 -2
  130. package/.next/server/app/api/telegram/poll/route.js +10 -10
  131. package/.next/server/app/api/upload/route.js +1 -1
  132. package/.next/server/app/api/v1/[[...path]]/route.js +1 -1
  133. package/.next/server/app-paths-manifest.json +3 -3
  134. package/.next/server/chunks/1249.js +14 -14
  135. package/.next/server/chunks/158.js +21 -0
  136. package/.next/server/chunks/1765.js +1 -0
  137. package/.next/server/chunks/1845.js +1 -1
  138. package/.next/server/chunks/2495.js +1 -0
  139. package/.next/server/chunks/2517.js +1 -1
  140. package/.next/server/chunks/259.js +9 -9
  141. package/.next/server/chunks/260.js +1 -1
  142. package/.next/server/chunks/2867.js +2 -2
  143. package/.next/server/chunks/2960.js +1 -1
  144. package/.next/server/chunks/3131.js +1 -1
  145. package/.next/server/chunks/3234.js +4 -4
  146. package/.next/server/chunks/4467.js +12 -0
  147. package/.next/server/chunks/4619.js +1 -1
  148. package/.next/server/chunks/4979.js +12 -12
  149. package/.next/server/chunks/535.js +1 -0
  150. package/.next/server/chunks/6431.js +1 -1
  151. package/.next/server/chunks/7225.js +4 -0
  152. package/.next/server/chunks/7336.js +1 -1
  153. package/.next/server/chunks/7589.js +3 -3
  154. package/.next/server/chunks/7989.js +1 -1
  155. package/.next/server/chunks/850.js +1 -1
  156. package/.next/server/chunks/8561.js +3 -3
  157. package/.next/server/chunks/8623.js +1 -1
  158. package/.next/server/chunks/8719.js +417 -0
  159. package/.next/server/chunks/8762.js +15 -417
  160. package/.next/server/chunks/8823.js +1 -1
  161. package/.next/server/chunks/9783.js +3 -3
  162. package/.next/server/chunks/9969.js +1 -1
  163. package/.next/server/instrumentation.js +1 -1
  164. package/.next/server/middleware-build-manifest.js +1 -1
  165. package/.next/server/pages/500.html +1 -1
  166. package/.next/server/server-reference-manifest.js +1 -1
  167. package/.next/server/server-reference-manifest.json +1 -1
  168. package/.next/static/chunks/2831-d7f6495bf43f4f9d.js +4 -0
  169. package/.next/static/chunks/{3219-b4941c7ff967e904.js → 3219-486bddbf87074d04.js} +1 -1
  170. package/.next/static/chunks/3775-82dcdf23109aa5bf.js +1 -0
  171. package/.next/static/chunks/6836-341614c5418e2aa4.js +1 -0
  172. package/.next/static/chunks/8306-7418693cd7fd5861.js +1 -0
  173. package/.next/static/chunks/{8370-2733742abf5f3ddf.js → 8370-8b3e7106703024ce.js} +2 -2
  174. package/.next/static/chunks/9690-ea874aec65263b9d.js +1 -0
  175. package/.next/static/chunks/app/(app)/activity/{page-29e80a32c02f376b.js → page-cf8d67941440bdce.js} +1 -1
  176. package/.next/static/chunks/app/(app)/agents/[handle]/page-7baa24f1ae8bc400.js +1 -0
  177. package/.next/static/chunks/app/(app)/code/page-b342d74807e8b914.js +1 -0
  178. package/.next/static/chunks/app/(app)/config/page-1e68ba8d20215d67.js +1 -0
  179. package/.next/static/chunks/app/(app)/costs/page-a58d759eec6048df.js +1 -0
  180. package/.next/static/chunks/app/(app)/cron/page-cc7f4e3d8ab5618f.js +1 -0
  181. package/.next/static/chunks/app/(app)/dashboard/page-7757c33acf751c4c.js +1 -0
  182. package/.next/static/chunks/app/(app)/design/{page-238be90d78d22780.js → page-f48c0487d240248e.js} +3 -3
  183. package/.next/static/chunks/app/(app)/docs/[id]/page-95c52cf457d869ef.js +1 -0
  184. package/.next/static/chunks/app/(app)/docs/page-fbc50cd357d5e2ca.js +1 -0
  185. package/.next/static/chunks/app/(app)/github/page-dac138256ed91e65.js +1 -0
  186. package/.next/static/chunks/app/(app)/goals/page-f87d40f6832d63b3.js +1 -0
  187. package/.next/static/chunks/app/(app)/inbox/page-49c1293e0d98874f.js +12 -0
  188. package/.next/static/chunks/app/(app)/knowledge/page-18fca436883ed5cc.js +1 -0
  189. package/.next/static/chunks/app/(app)/layout-c9778f98c0103f74.js +1 -0
  190. package/.next/static/chunks/app/(app)/models/page-030c085cd7767495.js +1 -0
  191. package/.next/static/chunks/app/(app)/notifications/page-12af3fee8b36a00e.js +12 -0
  192. package/.next/static/chunks/app/(app)/org/page-576001ff4a820744.js +12 -0
  193. package/.next/static/chunks/app/(app)/organizations/page-b973e1eee6e56baf.js +1 -0
  194. package/.next/static/chunks/app/(app)/page-cef52fc5f4fd4418.js +1 -0
  195. package/.next/static/chunks/app/(app)/planner/page-da2db56914346192.js +1 -0
  196. package/.next/static/chunks/app/(app)/plugins/{page-d10239fcbabdf4fa.js → page-3b78b76ecb21d616.js} +1 -1
  197. package/.next/static/chunks/app/(app)/pm/{page-61ad11558f241cf1.js → page-78303379c1ea5dc5.js} +1 -1
  198. package/.next/static/chunks/app/(app)/prepare-deploy/page-98b1bd3bf712bb60.js +1 -0
  199. package/.next/static/chunks/app/(app)/profile/page-de24af53de0ef2b2.js +1 -0
  200. package/.next/static/chunks/app/(app)/pulse/page-db7fd63369c01fa2.js +1 -0
  201. package/.next/static/chunks/app/(app)/reports/[id]/page-cc7f4e3d8ab5618f.js +1 -0
  202. package/.next/static/chunks/app/(app)/reports/page-97ab95e6f8b77b62.js +1 -0
  203. package/.next/static/chunks/app/(app)/routines/page-cf6a3331775ca11b.js +1 -0
  204. package/.next/static/chunks/app/(app)/search/page-3960825f66b05606.js +1 -0
  205. package/.next/static/chunks/app/(app)/security/page-53b0770355cf7aa4.js +1 -0
  206. package/.next/static/chunks/app/(app)/skills/{page-72691864856c9906.js → page-809a73b94861f8b8.js} +1 -1
  207. package/.next/static/chunks/app/(app)/tasks/page-b2497927d127f7aa.js +1 -0
  208. package/.next/static/chunks/app/(app)/test-dev/page-93ec5d89e2afb612.js +1 -0
  209. package/.next/static/chunks/app/(app)/update/page-a23322af4e59a93c.js +1 -0
  210. package/.next/static/chunks/app/(auth)/login/page-446681bfb762cb05.js +1 -0
  211. package/.next/static/chunks/app/(auth)/onboarding/page-2b8cb3e0b024c995.js +1 -0
  212. package/.next/trace-build +1 -1
  213. package/CHANGELOG.md +37 -0
  214. package/README.md +7 -1
  215. package/README.pt-BR.md +7 -1
  216. package/bin/constella-update.mjs +19 -7
  217. package/bin/constella.mjs +1 -1
  218. package/bin/worker.mjs +1 -0
  219. package/docs/UPDATE.md +11 -2
  220. package/docs/roadmap.md +36 -0
  221. package/package.json +1 -1
  222. package/scripts/i18n-parity.mjs +1 -1
  223. package/scripts/install.sh +4 -2
  224. package/scripts/publish-public.mjs +12 -3
  225. package/scripts/vps-clean.sh +1 -1
  226. package/scripts/vps-install.sh +19 -5
  227. package/scripts/vps-update.sh +26 -17
  228. package/.next/server/chunks/212.js +0 -1
  229. package/.next/server/chunks/6381.js +0 -15
  230. package/.next/server/chunks/6853.js +0 -12
  231. package/.next/server/chunks/6954.js +0 -1
  232. package/.next/server/chunks/9215.js +0 -4
  233. package/.next/server/chunks/9229.js +0 -1
  234. package/.next/server/chunks/9310.js +0 -21
  235. package/.next/static/chunks/2692-7fee6e06b3c93940.js +0 -1
  236. package/.next/static/chunks/2997-ec8b18227849683e.js +0 -1
  237. package/.next/static/chunks/6602-f26d109fd94cee1d.js +0 -4
  238. package/.next/static/chunks/9112-c37628abc8a164cd.js +0 -1
  239. package/.next/static/chunks/9690-53d5222618cbeddb.js +0 -1
  240. package/.next/static/chunks/app/(app)/agents/[handle]/page-83277413debb3b25.js +0 -1
  241. package/.next/static/chunks/app/(app)/code/page-1f954f7688bc24e4.js +0 -1
  242. package/.next/static/chunks/app/(app)/config/page-eee4f8736608afa5.js +0 -1
  243. package/.next/static/chunks/app/(app)/costs/page-0beac688917eaa30.js +0 -1
  244. package/.next/static/chunks/app/(app)/cron/page-a4dd65c78173b872.js +0 -1
  245. package/.next/static/chunks/app/(app)/dashboard/page-519a934ccfcce6fa.js +0 -1
  246. package/.next/static/chunks/app/(app)/docs/[id]/page-e29afa1ba1a086e1.js +0 -1
  247. package/.next/static/chunks/app/(app)/docs/page-b4462f9ca2118f8b.js +0 -1
  248. package/.next/static/chunks/app/(app)/github/page-cf8501e45fe38663.js +0 -1
  249. package/.next/static/chunks/app/(app)/goals/page-75c36155c162df5b.js +0 -1
  250. package/.next/static/chunks/app/(app)/inbox/page-f40bdb457609ddad.js +0 -12
  251. package/.next/static/chunks/app/(app)/knowledge/page-dc5dd15e4f0ad22e.js +0 -1
  252. package/.next/static/chunks/app/(app)/layout-408976a4d35f06a8.js +0 -1
  253. package/.next/static/chunks/app/(app)/models/page-a54e0b8ffed0085c.js +0 -1
  254. package/.next/static/chunks/app/(app)/notifications/page-1f84d74bc53c2c6c.js +0 -12
  255. package/.next/static/chunks/app/(app)/org/page-d17c62b7a668b399.js +0 -12
  256. package/.next/static/chunks/app/(app)/organizations/page-b55445f226cf8c61.js +0 -1
  257. package/.next/static/chunks/app/(app)/page-c7dd52ecc2da529d.js +0 -1
  258. package/.next/static/chunks/app/(app)/planner/page-920e439e6f88c238.js +0 -1
  259. package/.next/static/chunks/app/(app)/prepare-deploy/page-8d25f86b26ab0d2e.js +0 -1
  260. package/.next/static/chunks/app/(app)/profile/page-236673e1a8c1e6c6.js +0 -1
  261. package/.next/static/chunks/app/(app)/pulse/page-f2c6049a967b93a3.js +0 -1
  262. package/.next/static/chunks/app/(app)/reports/[id]/page-a4dd65c78173b872.js +0 -1
  263. package/.next/static/chunks/app/(app)/reports/page-5c07fa3a8b5ba553.js +0 -1
  264. package/.next/static/chunks/app/(app)/routines/page-0193e84e6a60a06a.js +0 -1
  265. package/.next/static/chunks/app/(app)/search/page-07e037c487f14c35.js +0 -1
  266. package/.next/static/chunks/app/(app)/security/page-71e5d992b5ddf79a.js +0 -1
  267. package/.next/static/chunks/app/(app)/tasks/page-5c9ca8f83d4c904f.js +0 -1
  268. package/.next/static/chunks/app/(app)/test-dev/page-5aee630d9bc73a0b.js +0 -1
  269. package/.next/static/chunks/app/(app)/update/page-2c9bcdb65bd2f597.js +0 -1
  270. package/.next/static/chunks/app/(auth)/login/page-50033813b56469ee.js +0 -1
  271. package/.next/static/chunks/app/(auth)/onboarding/page-075fd9673f7ab241.js +0 -1
  272. /package/.next/static/{vaEtsAmUuKf_DngRqwRUn → fb-rRThu8P8AXEQQBbLgT}/_buildManifest.js +0 -0
  273. /package/.next/static/{vaEtsAmUuKf_DngRqwRUn → fb-rRThu8P8AXEQQBbLgT}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3775],{1281:(e,n,a)=>{a.d(n,{P:()=>r});var s=a(7814);let r=(0,s.createServerReference)("00d707af504f1a0491ca9dcf763ef015da594b49f3",s.callServer,void 0,s.findSourceMapURL,"approvePlan")},1709:(e,n,a)=>{a.d(n,{B:()=>r});var s=a(7814);let r=(0,s.createServerReference)("40ced2f71e662e1884c830a2cb80626a57aa8be42c",s.callServer,void 0,s.findSourceMapURL,"approveSpec")},2978:(e,n,a)=>{a.d(n,{AgentRunLive:()=>o});var s=a(5076),r=a(8488),t=a(9860),l=a(8576),i=a(3653),c=a(5629);let d=["read","create","edit","run","search","thinking","done","error"];function o({channel:e,resume:n=!1,sinceSeq:a=0,onFinish:p}){let u=(0,c.k)(),h=(0,t.useRouter)(),[g,v]=(0,r.useState)(n),[m,f]=(0,r.useState)([]),[x,j]=(0,r.useState)(0),b=(0,r.useRef)(n?a:0),k=(0,r.useRef)(!1),N=(0,r.useRef)(0);if((0,r.useEffect)(()=>{n&&(b.current=a,k.current=!1,N.current=a>0?a:Date.now(),f([]),j(Math.max(0,Math.floor((Date.now()-N.current)/1e3))),v(!0))},[n,a]),(0,r.useEffect)(()=>{function n(n){let a=n.detail;a?.channel===e&&(b.current=Date.now()-1,k.current=!1,N.current=Date.now(),f([]),j(0),v(!0))}return window.addEventListener("constella:agent-run",n),()=>window.removeEventListener("constella:agent-run",n)},[e]),(0,r.useEffect)(()=>{if(!g)return;N.current||(N.current=Date.now());let e=setInterval(()=>j(Math.floor((Date.now()-N.current)/1e3)),1e3);return()=>clearInterval(e)},[g]),(0,r.useEffect)(()=>{if(!g)return;let n=!0,a=Date.now();async function s(){let s=await (0,i.k)(e,b.current);n&&(s.length&&(b.current=Math.max(b.current,...s.map(e=>e.seq)),f(e=>{let n=new Set(e.map(e=>e.id));return[...e,...s.filter(e=>!n.has(e.id))]}),s.some(e=>"done"===e.kind||"error"===e.kind)&&(k.current||(k.current=!0,h.refresh(),p?.()),setTimeout(()=>{n&&v(!1)},2500))),Date.now()-a>96e4&&v(!1))}s();let r=setInterval(s,700);return()=>{n=!1,clearInterval(r)}},[g,e,h,p]),!g&&0===m.length)return null;let y=function(e){let n=[];for(let a of e)if("text"===a.kind){let e=(a.detail||"").replace(/\s+/g," ").trim();if(!e)continue;let s=n[n.length-1];s&&"text"===s.kind?s.content=(s.content+" "+e).slice(-600):n.push({id:a.id,kind:"text",content:e})}else if("thinking"===a.kind){let e=(a.detail||a.target||"").replace(/\s+/g," ").trim();e&&n.push({id:a.id,kind:"thinking",content:e})}else n.push({id:a.id,kind:a.kind,content:function(e){if(!e)return"";let n=e.split(/[\\/]/);return n.length>1?n.slice(-2).join("/"):e}(a.target)||a.detail||""});return n}(m),S=y.slice(-5),w=y.length-S.length,I=m.some(e=>"done"===e.kind||"error"===e.kind),R=m.some(e=>"error"===e.kind),z=String(Math.floor(x/60)).padStart(2,"0"),C=String(x%60).padStart(2,"0");return(0,s.jsxs)("div",{className:"card live-stream",style:{marginBottom:16,borderColor:R?"var(--sx-keyword)":"var(--accent)"},children:[(0,s.jsxs)("div",{className:"set-desc",style:{marginBottom:8,display:"flex",alignItems:"center",gap:7},children:[g&&!I?(0,s.jsx)("span",{className:"dotpulse"}):(0,s.jsx)(l.I,{name:R?"close":"check",size:13,style:{color:R?"var(--sx-keyword)":"var(--sx-string)"}}),g&&!I?u("agent.run.working"):R?u("agent.run.failed"):u("agent.run.finished"),y.length>0&&(0,s.jsxs)("span",{style:{color:"var(--text-faint)"},children:["\xb7 ",u(1===y.length?"agent.run.steps.one":"agent.run.steps.other",{n:y.length})]}),(0,s.jsxs)("span",{className:"live-elapsed",style:{marginLeft:"auto"},children:[z,":",C]})]}),0===S.length?(0,s.jsxs)("div",{className:"muted",style:{fontSize:12,display:"flex",alignItems:"center",gap:7},children:[(0,s.jsx)("span",{className:"sync-spin",children:(0,s.jsx)(l.I,{name:"refresh",size:12})})," ",u("agent.run.reading")]}):(0,s.jsxs)(s.Fragment,{children:[w>0&&(0,s.jsx)("div",{className:"live-more",children:u(1===w?"agent.run.earlier.one":"agent.run.earlier.other",{n:w})}),(0,s.jsx)("div",{className:"live-stream-lines",children:S.map(e=>(0,s.jsxs)("div",{className:"live-line "+e.kind,children:["text"!==e.kind&&(0,s.jsx)("span",{className:"ll-k",children:d.includes(e.kind)?u(`agent.verb.${e.kind}`):e.kind}),(0,s.jsxs)("span",{className:"ll-c",children:[e.content,!I&&e===S[S.length-1]&&"text"===e.kind&&(0,s.jsx)("span",{className:"ll-caret"})]})]},e.id))})]})]})}},3371:(e,n,a)=>{a.d(n,{J:()=>r});var s=a(7814);let r=(0,s.createServerReference)("40e8f30a047d0f241003dcbb3194b872639e110c96",s.callServer,void 0,s.findSourceMapURL,"rejectSpec")},3653:(e,n,a)=>{a.d(n,{k:()=>r});var s=a(7814);let r=(0,s.createServerReference)("60dba9908002f3000f3e7e8a0a7750d94f4e462c3d",s.callServer,void 0,s.findSourceMapURL,"getEvents")},3775:(e,n,a)=>{a.d(n,{IssueApprove:()=>y,PlanGate:()=>k,PlanGateLive:()=>b,Run247Button:()=>S,p:()=>N});var s=a(5076),r=a(8488),t=a(9860),l=a(8576),i=a(5629),c=a(2978),d=a(7814);let o=(0,d.createServerReference)("40a8b5e4223fa4e2f64798e3c4f10e2052d74263a0",d.callServer,void 0,d.findSourceMapURL,"generatePlan"),p=(0,d.createServerReference)("0089bb3aeea0ab3018bc9c6c3d254bc32927017ade",d.callServer,void 0,d.findSourceMapURL,"requestPlanChanges");var u=a(1281),h=a(1709),g=a(3371),v=a(8941),m=a(4541);let f=(0,d.createServerReference)("4038b15099bf2fe9a8f44cea08bfedf104a01c187e",d.callServer,void 0,d.findSourceMapURL,"setAuto247"),x=(0,d.createServerReference)("000d2475a828032e63b1cbb99501b270d46c86c4d9",d.callServer,void 0,d.findSourceMapURL,"skipDesignGate");function j(e,n){window.dispatchEvent(new CustomEvent("constella:open-dm",{detail:{handle:e,text:n}}))}function b({planning:e,planSince:n,designRecommended:a=!1,designPending:d=!1}){let p=(0,i.k)(),[u,h]=(0,r.useTransition)(),g=(0,t.useRouter)(),[v,m]=(0,r.useState)(!1),[f,j]=(0,r.useState)(""),k=e||v;function N(){j(""),m(!0),window.dispatchEvent(new CustomEvent("constella:agent-run",{detail:{channel:"planner"}})),h(async()=>{try{let e=await o();(!e?.ok||!1===e.started)&&(m(!1),e?.error&&j(e.error)),g.refresh()}catch{m(!1),j(p("planner.gate.staleTab"))}})}return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(c.AgentRunLive,{channel:"planner",resume:e,sinceSeq:e?n-1:0,onFinish:()=>m(!1)}),k?(0,s.jsxs)("div",{className:"plan-gate",children:[(0,s.jsx)("div",{className:"plan-gate-bar","aria-hidden":!0}),(0,s.jsx)("div",{className:"pg-ic",children:(0,s.jsx)(l.I,{name:"bot",size:20})}),(0,s.jsxs)("div",{className:"pg-main",children:[(0,s.jsx)("div",{className:"pg-t",children:p("planner.gate.drafting.t")}),(0,s.jsx)("div",{className:"pg-d",children:p("planner.gate.drafting.d")})]})]}):a||d?(0,s.jsxs)("div",{className:"plan-gate",style:{borderColor:"rgba(99,102,241,.45)"},children:[(0,s.jsx)("div",{className:"plan-gate-bar","aria-hidden":!0,style:{background:"#6366f1"}}),(0,s.jsx)("div",{className:"pg-ic",style:{background:"rgba(99,102,241,.16)",color:"#6366f1"},children:(0,s.jsx)(l.I,{name:"skill",size:20})}),(0,s.jsxs)("div",{className:"pg-main",children:[(0,s.jsx)("div",{className:"pg-t",children:d?"Design step pending":"Recommended: prototype the design first"}),(0,s.jsx)("div",{className:"pg-d",children:d?"Ada is holding the plan on the design step. Open the Design module, build & approve the prototype with Grace, then Send to execution — Ada turns the approved design into specs & issues (zero drift).":"This is a frontend product. Prototype & approve the UI in the Design module before generating the plan — Grace turns the brief into a real visual reference, so the specs are precise and you avoid rework."}),f&&(0,s.jsx)("div",{className:"pg-d",style:{color:"var(--sx-keyword)",marginTop:6},children:f})]}),(0,s.jsxs)("div",{className:"pg-actions",children:[(0,s.jsxs)("button",{className:"btn-accent",onClick:()=>g.push("/design"),children:[(0,s.jsx)(l.I,{name:"skill",size:14})," Open Design"]}),(0,s.jsxs)("button",{className:"btn-ghost",disabled:u,onClick:function(){h(async()=>{try{await x()}catch{}}),N()},style:{fontSize:12},children:[(0,s.jsx)(l.I,{name:u?"refresh":"bot",size:13,className:u?"sync-spin":""})," ",u?p("planner.gate.analyzing"):"Skip design & plan anyway"]})]})]}):(0,s.jsxs)("div",{className:"plan-gate",children:[(0,s.jsx)("div",{className:"plan-gate-bar","aria-hidden":!0}),(0,s.jsx)("div",{className:"pg-ic",children:(0,s.jsx)(l.I,{name:"bot",size:20})}),(0,s.jsxs)("div",{className:"pg-main",children:[(0,s.jsx)("div",{className:"pg-t",children:p("planner.gate.noPlan.t")}),(0,s.jsx)("div",{className:"pg-d",children:p("planner.gate.noPlan.d")}),f&&(0,s.jsx)("div",{className:"pg-d",style:{color:"var(--sx-keyword)",marginTop:6},children:f})]}),(0,s.jsxs)("div",{className:"pg-actions",children:[(0,s.jsxs)("div",{className:"plan-hint",children:[(0,s.jsx)("div",{className:"plan-hint-t",children:p("planner.gate.hint.t")}),(0,s.jsx)("div",{className:"plan-hint-d",children:p("planner.gate.hint.d")})]}),(0,s.jsxs)("button",{className:"btn-accent",disabled:u,onClick:N,children:[(0,s.jsx)(l.I,{name:u?"refresh":"bot",size:14,className:u?"sync-spin":""})," ",u?p("planner.gate.analyzing"):p("planner.gate.generate")]})]})]})]})}function k({specs:e,total:n}){let a=(0,i.k)(),[t,c]=(0,r.useTransition)();return(0,s.jsxs)("div",{className:"plan-gate",children:[(0,s.jsx)("div",{className:"pg-ic",children:(0,s.jsx)(l.I,{name:"bot",size:20})}),(0,s.jsxs)("div",{className:"pg-main",children:[(0,s.jsx)("div",{className:"pg-t",children:a("planner.gate.ready.t")}),(0,s.jsx)("div",{className:"pg-d",children:a("planner.gate.ready.d",{specs:e,total:n})})]}),(0,s.jsxs)("div",{className:"pg-actions",children:[(0,s.jsxs)("button",{className:"btn-ghost",disabled:t,onClick:()=>c(async()=>{await p(),j("ada",a("planner.gate.rejectPlanDm"))}),children:[(0,s.jsx)(l.I,{name:"refresh",size:13})," ",a("planner.gate.requestChanges")]}),(0,s.jsxs)("button",{className:"btn-accent",disabled:t,onClick:()=>c(()=>(0,u.P)()),children:[(0,s.jsx)(l.I,{name:"check",size:14})," ",a("planner.gate.approvePlan")]})]})]})}function N({specId:e,specKey:n,approved:a}){let t=(0,i.k)(),[c,d]=(0,r.useTransition)();return a?(0,s.jsxs)("span",{className:"pill",style:{background:"var(--sx-string)22",color:"var(--sx-string)"},children:[(0,s.jsx)(l.I,{name:"check",size:11})," ",t("planner.approved")]}):(0,s.jsxs)("span",{style:{display:"inline-flex",gap:6},children:[(0,s.jsxs)("button",{className:"sc2-btn",disabled:c,onClick:()=>d(()=>(0,h.B)(e)),children:[(0,s.jsx)(l.I,{name:"check",size:11})," ",t("planner.approve")]}),(0,s.jsxs)("button",{className:"sc2-btn danger",disabled:c,onClick:()=>d(async()=>{j((await (0,g.J)(e)).handle,t("planner.rejectItemDm",{key:n}))}),children:[(0,s.jsx)(l.I,{name:"refresh",size:11})," ",t("planner.reject")]})]})}function y({issueId:e,issueKey:n,approved:a}){let t=(0,i.k)(),[c,d]=(0,r.useTransition)();return a?(0,s.jsxs)("span",{className:"pill",style:{background:"var(--sx-string)22",color:"var(--sx-string)"},children:[(0,s.jsx)(l.I,{name:"check",size:11})," ",t("planner.approved")]}):(0,s.jsxs)("span",{style:{display:"inline-flex",gap:6},children:[(0,s.jsxs)("button",{className:"sc2-btn",disabled:c,onClick:()=>d(()=>(0,v.t)(e)),children:[(0,s.jsx)(l.I,{name:"check",size:11})," ",t("planner.approve")]}),(0,s.jsxs)("button",{className:"sc2-btn danger",disabled:c,onClick:()=>d(async()=>{j((await (0,m.d)(e)).handle,t("planner.rejectItemDm",{key:n}))}),children:[(0,s.jsx)(l.I,{name:"refresh",size:11})," ",t("planner.reject")]})]})}function S({auto:e,approved:n,state:a}){let t=(0,i.k)(),[c,d]=(0,r.useTransition)(),o=t(c?e?"planner.run247.pausing":"planner.run247.starting":"waiting-approval"===a?"planner.run247.approveToRun":"all-done"===a?"planner.run247.allDone":e?"planner.run247.pause":"planner.run247.run"),p="blocked"===a?t("planner.run247.blockedTip"):void 0,u="off"===a&&!c;return(0,s.jsxs)("button",{className:"btn-"+(e?"ghost":"accent")+(u?" run-attn":""),disabled:!n||"all-done"===a||c,title:p,onClick:()=>d(()=>f(!e)),children:[(0,s.jsx)(l.I,{name:c?"refresh":"waiting-approval"===a?"bot":"all-done"===a?"check":e?"close":"play",size:14,className:c?"sync-spin":""})," ",o,("running"===a||u)&&(0,s.jsx)("span",{className:"dotpulse",style:{marginLeft:6}})]})}},4541:(e,n,a)=>{a.d(n,{d:()=>r});var s=a(7814);let r=(0,s.createServerReference)("40beac2559eab1128341c145e31826c3b57f094595",s.callServer,void 0,s.findSourceMapURL,"rejectIssue")},8941:(e,n,a)=>{a.d(n,{t:()=>r});var s=a(7814);let r=(0,s.createServerReference)("4023169ed85000187a7267198eab5e95902c9af1b9",s.callServer,void 0,s.findSourceMapURL,"approveIssue")}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6836],{181:(e,t,r)=>{r.r(t),r.d(t,{AnimToggle:()=>l});var s=r(5076),h=r(8488),c=r(9860),x=r(8576),a=r(5629),n=r(7814);let i=(0,n.createServerReference)("008bd27139e00f9f5be3394c6584b5c1e0fae6947f",n.callServer,void 0,n.findSourceMapURL,"toggleAnim");function l({labeled:e}){let t=(0,a.k)(),r=(0,c.useRouter)(),[n,d]=(0,h.useState)(!0),[j,M]=(0,h.useTransition)();(0,h.useEffect)(()=>{d(!/(?:^|;\s*)cn-anim=off/.test(document.cookie))},[]);let o=()=>M(async()=>{await i(),d(e=>!e),r.refresh()});return e?(0,s.jsxs)("button",{className:"btn-ghost",onClick:o,disabled:j,type:"button",style:{gap:8},children:[(0,s.jsx)(x.I,{name:"pulse",size:14,style:{opacity:n?1:.4}})," ",t("chrome.anim.label",{state:t(n?"common.on":"common.off")})]}):(0,s.jsx)("button",{className:"top-btn",onClick:o,disabled:j,type:"button",title:t(n?"chrome.anim.titleOn":"chrome.anim.titleOff"),children:(0,s.jsx)(x.I,{name:"pulse",size:17,style:{opacity:n?1:.4}})})}},5629:(e,t,r)=>{r.d(t,{LangProvider:()=>a,k:()=>n});var s=r(5076),h=r(8488),c=r(3219);let x=(0,h.createContext)("en");function a({lang:e,children:t}){return(0,s.jsx)(x.Provider,{value:e,children:t})}function n(){let e=(0,h.useContext)(x);return(t,r)=>(0,c.t)(e,t,r)}},6824:(e,t,r)=>{r.d(t,{LangSwitch:()=>n});var s=r(5076),h=r(8488),c=r(9860),x=r(7814);let a=(0,x.createServerReference)("40de90f6895a7d0c2b8a88e0680804e983f69fc7a0",x.callServer,void 0,x.findSourceMapURL,"setLang");function n(){let e=(0,c.useRouter)(),[t,r]=(0,h.useState)("en"),[x,n]=(0,h.useTransition)();return(0,h.useEffect)(()=>{r(/(?:^|;\s*)cn-lang=pt/.test(document.cookie)?"pt":"en")},[]),(0,s.jsx)("div",{style:{display:"inline-flex",border:"1px solid var(--border)",borderRadius:7,overflow:"hidden"},children:["en","pt"].map(h=>(0,s.jsx)("button",{type:"button",disabled:x,onClick:()=>{h===t||x||n(async()=>{await a(h),r(h),e.refresh()})},title:"en"===h?"English":"Portugu\xeas (BR)",style:{padding:"3px 8px",fontSize:11,fontWeight:600,cursor:"pointer",border:"none",background:t===h?"var(--accent)":"transparent",color:t===h?"var(--accent-fg)":"var(--text-dim)"},children:h.toUpperCase()},h))})}},8576:(e,t,r)=>{r.d(t,{I:()=>c});var s=r(5076);let h={files:(0,s.jsx)("path",{d:"M3 3.5h5l1.5 2H13a1 1 0 0 1 1 1V12a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V4.5a1 1 0 0 1 1-1z"}),search:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("circle",{cx:"7",cy:"7",r:"4.2"}),(0,s.jsx)("path",{d:"M10.2 10.2 14 14"})]}),git:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("circle",{cx:"4",cy:"4",r:"1.8"}),(0,s.jsx)("circle",{cx:"4",cy:"12",r:"1.8"}),(0,s.jsx)("circle",{cx:"12",cy:"9.5",r:"1.8"}),(0,s.jsx)("path",{d:"M4 5.8v4.4M5.8 4H9a2 2 0 0 1 2 2v1.6"})]}),debug:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("circle",{cx:"8",cy:"8.5",r:"3.5"}),(0,s.jsx)("path",{d:"M8 5V3M4.5 8.5H2m12 0h-2.5M4.8 11.8 3.4 13M11.2 11.8l1.4 1.2M5.2 5 3.8 3.6M10.8 5l1.4-1.4"})]}),ext:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("rect",{x:"2.5",y:"2.5",width:"4.5",height:"4.5",rx:"1"}),(0,s.jsx)("rect",{x:"9",y:"2.5",width:"4.5",height:"4.5",rx:"1"}),(0,s.jsx)("rect",{x:"2.5",y:"9",width:"4.5",height:"4.5",rx:"1"}),(0,s.jsx)("path",{d:"M9 11.2h4.5M11.2 9v4.5"})]}),settings:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("circle",{cx:"8",cy:"8",r:"2.2"}),(0,s.jsx)("path",{d:"M8 1.5v2M8 12.5v2M14.5 8h-2M3.5 8h-2M12.6 3.4l-1.4 1.4M4.8 11.2l-1.4 1.4M12.6 12.6l-1.4-1.4M4.8 4.8 3.4 3.4"})]}),account:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("circle",{cx:"8",cy:"5.5",r:"2.8"}),(0,s.jsx)("path",{d:"M2.8 14c0-2.8 2.3-4.5 5.2-4.5s5.2 1.7 5.2 4.5"})]}),chevronRight:(0,s.jsx)("path",{d:"M6 4l4 4-4 4"}),chevronDown:(0,s.jsx)("path",{d:"M4 6l4 4 4-4"}),chevronUp:(0,s.jsx)("path",{d:"M4 10l4-4 4 4"}),close:(0,s.jsx)("path",{d:"M4 4l8 8M12 4l-8 8"}),add:(0,s.jsx)("path",{d:"M8 3v10M3 8h10"}),newFile:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("path",{d:"M9 2H4a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V6L9 2z"}),(0,s.jsx)("path",{d:"M9 2v4h4M8 8v4M6 10h4"})]}),newFolder:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("path",{d:"M2 5.5a1 1 0 0 1 1-1h3l1.2 1.5H13a1 1 0 0 1 1 1V12a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V5.5z"}),(0,s.jsx)("path",{d:"M8 8v3M6.5 9.5h3"})]}),refresh:(0,s.jsx)("path",{d:"M13 8a5 5 0 1 1-1.5-3.5M13 2.5V5h-2.5"}),collapse:(0,s.jsx)("path",{d:"M3 5h6M3 8h6M3 11h6M12 6l-1.5 1.5L12 9"}),more:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("circle",{cx:"3.5",cy:"8",r:"1"}),(0,s.jsx)("circle",{cx:"8",cy:"8",r:"1"}),(0,s.jsx)("circle",{cx:"12.5",cy:"8",r:"1"})]}),split:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("rect",{x:"2",y:"3",width:"12",height:"10",rx:"1"}),(0,s.jsx)("path",{d:"M8 3v10"})]}),terminal:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("rect",{x:"2",y:"3",width:"12",height:"10",rx:"1.5"}),(0,s.jsx)("path",{d:"M4.5 6.5 6.5 8l-2 1.5M8 10h3.5"})]}),panelBottom:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("rect",{x:"2",y:"3",width:"12",height:"10",rx:"1.5"}),(0,s.jsx)("path",{d:"M2 10h12"})]}),sidebarIcon:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("rect",{x:"2",y:"3",width:"12",height:"10",rx:"1.5"}),(0,s.jsx)("path",{d:"M6 3v10"})]}),bell:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("path",{d:"M8 2a3.5 3.5 0 0 0-3.5 3.5c0 3-1.3 4-1.3 4h9.6s-1.3-1-1.3-4A3.5 3.5 0 0 0 8 2z"}),(0,s.jsx)("path",{d:"M6.7 12a1.4 1.4 0 0 0 2.6 0"})]}),check:(0,s.jsx)("path",{d:"M3 8.5 6.5 12 13 4"}),error:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("circle",{cx:"8",cy:"8",r:"6"}),(0,s.jsx)("path",{d:"M8 5v4M8 11h.01"})]}),warn:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("path",{d:"M8 2.5 14.5 13.5h-13z"}),(0,s.jsx)("path",{d:"M8 7v3M8 12h.01"})]}),branch:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("circle",{cx:"4",cy:"4",r:"1.6"}),(0,s.jsx)("circle",{cx:"4",cy:"12",r:"1.6"}),(0,s.jsx)("circle",{cx:"12",cy:"9",r:"1.6"}),(0,s.jsx)("path",{d:"M4 5.6v4.8M5.6 4H9a1.8 1.8 0 0 1 1.8 1.8v1.6"})]}),sync:(0,s.jsx)("path",{d:"M3 6a5 5 0 0 1 8.5-2M13 10a5 5 0 0 1-8.5 2M11.5 2.5V4h-1.5M4.5 13.5V12h1.5"}),command:(0,s.jsx)("path",{d:"M5.5 3.5A1.5 1.5 0 1 1 4 5h8a1.5 1.5 0 1 1-1.5 1.5v3A1.5 1.5 0 1 1 12 11H4a1.5 1.5 0 1 1 1.5-1.5v-3z"}),goto:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("path",{d:"M3 8h8M7.5 4.5 11 8l-3.5 3.5"}),(0,s.jsx)("path",{d:"M13 3v10"})]}),sun:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("circle",{cx:"8",cy:"8",r:"3"}),(0,s.jsx)("path",{d:"M8 1.5v1.5M8 13v1.5M14.5 8H13M3 8H1.5M12.6 3.4l-1 1M4.4 11.6l-1 1M12.6 12.6l-1-1M4.4 4.4l-1-1"})]}),moon:(0,s.jsx)("path",{d:"M13 9.2A5.5 5.5 0 0 1 6.8 3 5.5 5.5 0 1 0 13 9.2z"}),play:(0,s.jsx)("path",{d:"M5 3.5v9l7-4.5z"}),trash:(0,s.jsx)("path",{d:"M3.5 4.5h9M6 4.5V3h4v1.5M5 4.5l.5 8.5h5l.5-8.5"}),dot:(0,s.jsx)("circle",{cx:"8",cy:"8",r:"3"}),fileTs:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("path",{d:"M9 2H4a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V6L9 2z"}),(0,s.jsx)("path",{d:"M9 2v4h4"})]}),arrowUp:(0,s.jsx)("path",{d:"M8 13V3M4 7l4-4 4 4"}),arrowDown:(0,s.jsx)("path",{d:"M8 3v10M4 9l4 4 4-4"}),agents:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("circle",{cx:"5.5",cy:"6",r:"2.2"}),(0,s.jsx)("circle",{cx:"11",cy:"6.5",r:"1.8"}),(0,s.jsx)("path",{d:"M2 13c0-2 1.6-3.2 3.5-3.2S9 11 9 13M9.5 12.5c.2-1.6 1.3-2.5 2.8-2.5 1.3 0 2.4.8 2.4 2.3"})]}),bot:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("rect",{x:"3",y:"5.5",width:"10",height:"7",rx:"2"}),(0,s.jsx)("path",{d:"M8 3v2.5M5.8 9h.01M10.2 9h.01M6 12h4"}),(0,s.jsx)("circle",{cx:"8",cy:"3",r:"1"})]}),send:(0,s.jsx)("path",{d:"M14 2 7 9M14 2l-4.5 12-2.5-5L2 6.5z"}),at:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("circle",{cx:"8",cy:"8",r:"3"}),(0,s.jsx)("path",{d:"M11 8v1.2a1.8 1.8 0 0 0 3.5.6A6.5 6.5 0 1 0 11 13.2"})]}),chevronLeft:(0,s.jsx)("path",{d:"M10 4 6 8l4 4"}),dockRight:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("rect",{x:"2",y:"3",width:"12",height:"10",rx:"1.5"}),(0,s.jsx)("path",{d:"M10 3v10"}),(0,s.jsx)("rect",{x:"10.5",y:"3.5",width:"3",height:"9",rx:"1",fill:"currentColor",stroke:"none",opacity:"0.25"})]}),dockLeft:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("rect",{x:"2",y:"3",width:"12",height:"10",rx:"1.5"}),(0,s.jsx)("path",{d:"M6 3v10"}),(0,s.jsx)("rect",{x:"2.5",y:"3.5",width:"3",height:"9",rx:"1",fill:"currentColor",stroke:"none",opacity:"0.25"})]}),chat:(0,s.jsx)("path",{d:"M3 4.5h10a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1H7l-3 2.5V11.5H3a1 1 0 0 1-1-1v-5a1 1 0 0 1 1-1z"}),grid:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("rect",{x:"2.5",y:"2.5",width:"4.5",height:"4.5",rx:"1"}),(0,s.jsx)("rect",{x:"9",y:"2.5",width:"4.5",height:"4.5",rx:"1"}),(0,s.jsx)("rect",{x:"2.5",y:"9",width:"4.5",height:"4.5",rx:"1"}),(0,s.jsx)("rect",{x:"9",y:"9",width:"4.5",height:"4.5",rx:"1"})]}),inbox:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("path",{d:"M2 9h3l1 2h4l1-2h3"}),(0,s.jsx)("path",{d:"M2.5 9 4 3.5h8L13.5 9v3.5a1 1 0 0 1-1 1h-9a1 1 0 0 1-1-1z"})]}),calendar:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("rect",{x:"2.5",y:"3.5",width:"11",height:"10",rx:"1.5"}),(0,s.jsx)("path",{d:"M2.5 6.5h11M5.5 2v3M10.5 2v3"})]}),repeat:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("path",{d:"M3 6a4 4 0 0 1 7-2.5L12 5M13 10a4 4 0 0 1-7 2.5L4 11"}),(0,s.jsx)("path",{d:"M12 2v3H9M4 14v-3h3"})]}),doc:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("path",{d:"M9 2H4.5a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h7a1 1 0 0 0 1-1V5.5L9 2z"}),(0,s.jsx)("path",{d:"M9 2v3.5h3.5M6 8.5h4M6 11h4"})]}),skill:(0,s.jsx)("path",{d:"M8 2.5l1.4 3.1 3.4.4-2.5 2.3.7 3.3L8 9.9 5 11.6l.7-3.3L3.2 6l3.4-.4z"}),pulse:(0,s.jsx)("path",{d:"M2 8h3l1.5-4 2.5 8 1.5-4H14"}),coins:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("ellipse",{cx:"6",cy:"4.5",rx:"3.5",ry:"1.8"}),(0,s.jsx)("path",{d:"M2.5 4.5v3c0 1 1.6 1.8 3.5 1.8s3.5-.8 3.5-1.8v-3"}),(0,s.jsx)("ellipse",{cx:"10",cy:"9.5",rx:"3.5",ry:"1.8"}),(0,s.jsx)("path",{d:"M6.5 9.5c.4.9 1.8 1.5 3.5 1.5s3.5-.8 3.5-1.8v-1.2"})]}),cpu:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("rect",{x:"4",y:"4",width:"8",height:"8",rx:"1.5"}),(0,s.jsx)("rect",{x:"6.3",y:"6.3",width:"3.4",height:"3.4",rx:".5"}),(0,s.jsx)("path",{d:"M6 2v2M10 2v2M6 12v2M10 12v2M2 6h2M2 10h2M12 6h2M12 10h2"})]}),shield:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("path",{d:"M8 2 3 4v4c0 3 2.2 5 5 6 2.8-1 5-3 5-6V4z"}),(0,s.jsx)("path",{d:"M5.8 8 7.3 9.5 10.4 6.3"})]}),target:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("circle",{cx:"8",cy:"8",r:"5.5"}),(0,s.jsx)("circle",{cx:"8",cy:"8",r:"2.4"})]}),selectParent:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("rect",{x:"2",y:"2.5",width:"12",height:"11",rx:"1.5"}),(0,s.jsx)("path",{d:"M8 11V6.5M5.5 9 8 6.5l2.5 2.5"})]})};function c({name:e,size:t=16,className:r="",strokeWidth:x=1.4,style:a}){let n=h[e];return n?(0,s.jsx)("svg",{width:t,height:t,viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:x,strokeLinecap:"round",strokeLinejoin:"round",className:r,style:a,children:"play"===e||"dot"===e?(0,s.jsx)("g",{fill:"currentColor",stroke:"none",children:n}):n}):null}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8306],{891:(e,t,a)=>{a.d(t,{m:()=>n});var s=a(5076);let c={working:{c:"var(--sx-string)",pulse:!0,label:"working"},review:{c:"#e0a44e",label:"review"},blocked:{c:"#e8688f",label:"blocked"},idle:{c:"var(--text-faint)",label:"idle"}};function n({status:e,label:t=!1,size:a=8}){let l=c[e]??c.idle;return(0,s.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:5},title:l.label,children:[l.pulse?(0,s.jsx)("span",{className:"dotpulse"}):(0,s.jsx)("span",{style:{width:a,height:a,borderRadius:"50%",background:l.c,display:"inline-block",flex:`0 0 ${a}px`}}),t&&(0,s.jsx)("span",{style:{fontSize:11,color:l.c,fontWeight:600},children:l.label})]})}},2140:(e,t,a)=>{a.d(t,{_:()=>c});var s=a(7814);let c=(0,s.createServerReference)("705bb57bae647e5b0983590ed14a5926a22e285733",s.callServer,void 0,s.findSourceMapURL,"sendMessage")},4276:(e,t,a)=>{a.d(t,{K:()=>c});var s=a(7814);let c=(0,s.createServerReference)("00ab9927a86440472b5cf26fdd4def0f285a68079c",s.callServer,void 0,s.findSourceMapURL,"disconnectTelegram")},4305:(e,t,a)=>{a.d(t,{H:()=>c});var s=a(7814);let c=(0,s.createServerReference)("4037371c47b3e43e6b878942db9705b7d9c6962e8a",s.callServer,void 0,s.findSourceMapURL,"clearConversation")},6693:(e,t,a)=>{a.d(t,{M:()=>c});var s=a(7814);let c=(0,s.createServerReference)("70c7731b108f014faf75e2ba778682d83c81ad6646",s.callServer,void 0,s.findSourceMapURL,"connectTelegram")},8306:(e,t,a)=>{a.d(t,{uG:()=>U,QE:()=>T,CZ:()=>A});var s=a(5076),c=a(8488),n=a(7814);let l=(0,n.createServerReference)("00ad3ff5b743f7808199b27e76248692706b96f718",n.callServer,void 0,n.findSourceMapURL,"listChatRefs");var r=a(616);let i=(0,n.createServerReference)("40afa32b6c37457e72bff11c25b8cb3acfad4e3d2d",n.callServer,void 0,n.findSourceMapURL,"listSessions"),o=(0,n.createServerReference)("60f9632ed57030592852ca206eb7d314c4bd1c4650",n.callServer,void 0,n.findSourceMapURL,"createSession"),d=(0,n.createServerReference)("60bdbc934306dcff3e399beddf0cac16ca1290c000",n.callServer,void 0,n.findSourceMapURL,"switchSession"),h=(0,n.createServerReference)("60761f3f2a77c81adf9da9b9d32b82e6d23912ccb9",n.callServer,void 0,n.findSourceMapURL,"renameSession"),m=(0,n.createServerReference)("60b839ac7ca9a330595b14f8e699f9d128893bea16",n.callServer,void 0,n.findSourceMapURL,"deleteSession");var u=a(8551),f=a(4305),x=a(2140),g=a(9289),v=a(5629),p=a(6693),b=a(9768),j=a(4276),k=a(3653),N=a(4772),S=a(1139);let y=(0,n.createServerReference)("00716b109ea97d20c9f19b65b246d9ef7ef16cbddf",n.callServer,void 0,n.findSourceMapURL,"getChatNotifications"),w=(0,n.createServerReference)("00a77165f7dac9a25c366aaf49ac70c5ed0cb6a63d",n.callServer,void 0,n.findSourceMapURL,"getUnreadCounts"),C=(0,n.createServerReference)("4022a1ccf1ac607c0265da4f487775990a4b8caded",n.callServer,void 0,n.findSourceMapURL,"markChannelRead"),R=(0,n.createServerReference)("406ea9546f1236fb07b7a24e792f794a0bbfb38d1b",n.callServer,void 0,n.findSourceMapURL,"markNotifRead");var I=a(4552),L=a(8576),z=a(891),E=a(8163),M=a(3286);function T({agents:e,previews:t,onOpenDM:a}){let n=(0,v.k)(),[l,r]=(0,c.useState)(""),i=l.trim().toLowerCase(),o=e.filter(e=>!i||e.name.toLowerCase().includes(i)||e.handle.includes(i)||e.role.toLowerCase().includes(i));return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"dm-search",children:[(0,s.jsx)(L.I,{name:"search",size:13}),(0,s.jsx)("input",{placeholder:n("chat.searchAgents"),value:l,onChange:e=>r(e.target.value),autoFocus:!0})]}),(0,s.jsxs)("div",{className:"people-list scroll",children:[0===o.length&&(0,s.jsx)("div",{className:"mention-empty",children:n("chat.noAgentMatch",{q:l})}),o.map(e=>{let c=t[e.handle];return(0,s.jsxs)("div",{className:"people-row",onClick:()=>a(e.handle),children:[(0,s.jsx)(I.e,{name:e.name,color:e.color,image:e.image,size:36,health:e.health}),(0,s.jsxs)("div",{className:"people-meta",children:[(0,s.jsxs)("div",{className:"people-name",style:{display:"flex",alignItems:"center",gap:6},children:[e.name," ",(0,s.jsxs)("span",{className:"agent-handle",children:["@",e.handle]})," ","idle"!==e.status&&(0,s.jsx)(z.m,{status:e.status})]}),(0,s.jsx)("div",{className:"people-sub"+(c?" preview":""),children:c?(c.mine?n("chat.youPrefix"):"")+(c.text||"…"):`${e.role} \xb7 ${e.adapter}`})]}),(0,s.jsx)("span",{className:"people-go",children:(0,s.jsx)(L.I,{name:c?"chat":"chevronRight",size:14})})]},e.handle)})]})]})}function A({onConnected:e}){let t=(0,v.k)(),[a,n]=(0,c.useState)(""),[l,r]=(0,c.useState)(""),[i,o]=(0,c.useState)(""),[d,h]=(0,c.useState)(""),[m,u]=(0,c.useState)(""),[f,x]=(0,c.useTransition)();return(0,s.jsx)("div",{className:"tg-connect scroll",children:(0,s.jsxs)("div",{className:"tg-card",children:[(0,s.jsxs)("div",{className:"tg-card-head",children:[(0,s.jsx)("span",{className:"tg-card-ico",children:(0,s.jsx)(L.I,{name:"send",size:18})}),(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:"tg-card-title",children:t("chat.tg.connectTitle")}),(0,s.jsx)("div",{className:"tg-card-sub",children:t("chat.tg.connectSub")})]})]}),(0,s.jsxs)("ol",{className:"tg-steps",children:[(0,s.jsxs)("li",{children:[t("chat.tg.step1.a")," ",(0,s.jsx)("b",{children:"@BotFather"})," ",t("chat.tg.step1.b")," → ",(0,s.jsx)("code",{children:"/newbot"})," → ",t("chat.tg.step1.c")," ",(0,s.jsx)("b",{children:t("chat.tg.step1.token")}),"."]}),(0,s.jsxs)("li",{children:[t("chat.tg.step2.a")," ",(0,s.jsx)("b",{children:"@userinfobot"})," → ",t("chat.tg.step2.b")," ",(0,s.jsx)("b",{children:t("chat.tg.step2.chatId")})," ",t("chat.tg.step2.c")]}),(0,s.jsx)("li",{children:t("chat.tg.step3")})]}),(0,s.jsxs)("label",{className:"tg-field",children:[(0,s.jsx)("span",{children:t("chat.tg.botToken")}),(0,s.jsx)("input",{className:"form-input",placeholder:"123456789:AA…",value:a,onChange:e=>n(e.target.value)})]}),(0,s.jsxs)("div",{className:"tg-field-row",children:[(0,s.jsxs)("label",{className:"tg-field",children:[(0,s.jsx)("span",{children:t("chat.tg.yourChatId")}),(0,s.jsx)("input",{className:"form-input",placeholder:"123456789",value:l,onChange:e=>r(e.target.value)})]}),(0,s.jsxs)("label",{className:"tg-field",children:[(0,s.jsx)("span",{children:t("chat.tg.yourName")}),(0,s.jsx)("input",{className:"form-input",placeholder:t("chat.tg.namePlaceholder"),value:i,onChange:e=>o(e.target.value)})]})]}),d&&(0,s.jsx)("div",{className:"tg-msg err",children:d}),m&&(0,s.jsx)("div",{className:"tg-msg ok",children:m}),(0,s.jsxs)("button",{className:"btn-accent tg-save",disabled:f||!a.trim()||!l.trim(),onClick:function(){h(""),u(""),x(async()=>{let s=await (0,p.M)(a,l,i);s.ok?(u(t("chat.tg.botConnected",{bot:"@"+(s.username??"bot")})),n(""),r(""),o(""),e()):h(s.error??t("chat.tg.connectionFailed"))})},children:[f?(0,s.jsx)("span",{className:"spin",children:(0,s.jsx)(L.I,{name:"refresh",size:13})}):(0,s.jsx)(L.I,{name:"send",size:13})," ",t("chat.tg.connectBot")]}),(0,s.jsxs)("div",{className:"tg-note",children:[(0,s.jsx)(L.I,{name:"bot",size:12})," ",t("chat.tg.isolatedNote")]})]})})}function U({agents:e,operator:t}){let a,n,p,z,[D,q]=(0,c.useState)(!1),[F,H]=(0,c.useState)("right"),[O,P]=(0,c.useState)(380),[W,$]=(0,c.useState)("room"),[_,B]=(0,c.useState)("all"),[K,V]=(0,c.useState)(""),G=(0,v.k)(),[J,X]=(0,c.useState)([]),[Q,Y]=(0,c.useState)([]),[Z,ee]=(0,c.useState)([]),[et,ea]=(0,c.useState)(!1),[es,ec]=(0,c.useState)(null),[en,el]=(0,c.useState)(!1),[er,ei]=(0,c.useState)([]),[eo,ed]=(0,c.useState)({}),[eh,em]=(0,c.useState)(!1),[eu,ef]=(0,c.useState)(null),[ex,eg]=(0,c.useState)({}),[ev,ep]=(0,c.useState)(""),[eb,ej]=(0,c.useState)(0),[ek,eN]=(0,c.useState)([]),[eS,ey]=(0,c.useState)(null),[ew,eC]=(0,c.useState)(0),[eR,eI]=(0,c.useState)([]),[,eL]=(0,c.useTransition)(),ez=(0,c.useRef)(0),eE=(0,c.useRef)(0),eM=(0,c.useRef)(null),eT=(0,c.useRef)({}),eA=(0,c.useRef)([]),[eU,eD]=(0,c.useState)(null),eq=Object.fromEntries(e.map(e=>[e.handle,e])),eF=W.startsWith("dm:");(0,c.useEffect)(()=>{D&&!eR.length&&l().then(eI).catch(()=>{})},[D]);let eH="people"===W,eO="telegram"===W,eP=eF?W.slice(3):null,eW=eP?eq[eP]:null,e$=eF?W:eO?"telegram":"room";function e_(){delete eT.current[e$],eC(e=>e+1)}(0,c.useEffect)(()=>{function e(){q(e=>!e)}function t(e){q(!0);let t=e.detail?.channel;("room"===t||"telegram"===t||t&&t.startsWith("dm:"))&&$(t)}return window.addEventListener("constella:toggle-chat",e),window.addEventListener("constella:open-chat",t),()=>{window.removeEventListener("constella:toggle-chat",e),window.removeEventListener("constella:open-chat",t)}},[]),(0,c.useEffect)(()=>{try{"1"===localStorage.getItem("bx.chatOpen")&&q(!0);let e=localStorage.getItem("bx.chatSide");("left"===e||"right"===e)&&H(e);let t=Number(localStorage.getItem("bx.chatWidth"));t>=320&&t<=640&&P(t)}catch{}},[]),(0,c.useEffect)(()=>{try{localStorage.setItem("bx.chatOpen",D?"1":"0")}catch{}},[D]),(0,c.useEffect)(()=>{try{localStorage.setItem("bx.chatSide",F)}catch{}},[F]),(0,c.useEffect)(()=>{try{localStorage.setItem("bx.chatWidth",String(O))}catch{}},[O]),(0,c.useEffect)(()=>{function e(e){let t=e.detail;t?.handle&&(q(!0),$("dm:"+t.handle),t.text&&(ep(t.text),ej(e=>e+1)))}return window.addEventListener("constella:open-dm",e),()=>window.removeEventListener("constella:open-dm",e)},[]),(0,c.useEffect)(()=>{if(!D||eH)return;let e=!1,t=()=>({msgs:[],events:[],evSeq:0,msgCursor:0}),a=e=>e.length>250?e.slice(-250):e;for(eA.current=[...eA.current.filter(e=>e!==e$),e$];eA.current.length>6;){let e=eA.current.shift();e&&e!==e$&&delete eT.current[e]}let s=eT.current[e$];async function c(){let[t,a]=await Promise.all([(0,r.V)(e$),(0,k.k)(e$,0)]);e||(X(t),Y(a),ez.current=a.reduce((e,t)=>Math.max(e,t.seq),0),eE.current=t.reduce((e,t)=>Math.max(e,t.createdAt?new Date(t.createdAt).getTime():0),0),eT.current[e$]={msgs:t,events:a,evSeq:ez.current,msgCursor:eE.current})}function n(){if(e||document.hidden||eM.current)return;let s=new EventSource(`/api/stream?channel=${encodeURIComponent(e$)}&evCursor=${ez.current}&msgCursor=${eE.current}`);eM.current=s,s.addEventListener("ev",e=>{let s=JSON.parse(e.data);s.seq>ez.current&&(ez.current=s.seq),Y(e=>e.some(e=>e.id===s.id)?e:a([...e,s]));let c=eT.current[e$]??t();c.events.some(e=>e.id===s.id)||(eT.current[e$]={...c,events:a([...c.events,s]),evSeq:ez.current})}),s.addEventListener("msg",e=>{let s=JSON.parse(e.data),c=s.createdAt?new Date(s.createdAt).getTime():0;if(c>eE.current&&(eE.current=c),"cleared"===s.kind){X([s]),Y([]),ee([]),eT.current[e$]={...t(),msgs:[s],msgCursor:eE.current,evSeq:ez.current};return}X(e=>e.some(e=>e.id===s.id)?e:a([...e,s])),Y(e=>e.filter(e=>e.runId!==s.id||"text"!==e.kind));let n=eT.current[e$]??t();eT.current[e$]={...n,msgs:n.msgs.some(e=>e.id===s.id)?n.msgs:a([...n.msgs,s]),events:n.events.filter(e=>e.runId!==s.id||"text"!==e.kind),msgCursor:eE.current}})}function l(){eM.current&&(eM.current.close(),eM.current=null)}s?(X(s.msgs),Y(s.events),ez.current=s.evSeq,eE.current=s.msgCursor,ea(!1)):(X([]),Y([]),ez.current=0,eE.current=0,ea(!0)),s?document.hidden||n():c().catch(()=>{}).finally(()=>{!e&&(ea(!1),document.hidden||n())});let i=()=>{document.hidden?l():n()};return document.addEventListener("visibilitychange",i),()=>{e=!0,document.removeEventListener("visibilitychange",i),l()}},[D,W,ew]),(0,c.useEffect)(()=>{D&&eF?i(e$).then(eN).catch(()=>{}):eN([])},[D,W,ew]);let eB=()=>(0,u.b)().then(e=>eg(e));(0,c.useEffect)(()=>{D&&eB()},[D,W]);let eK=()=>(0,b.G)().then(e=>eD(e)).catch(()=>eD({connected:!1}));(0,c.useEffect)(()=>{D&&eO&&eK()},[D,W]);let eV=async()=>{if(!eH)try{let e=await (0,N.p)(e$);if(e.used>=e.max&&!en){el(!0);try{await (0,S.L)(e$),e=await (0,N.p)(e$)}finally{el(!1)}}ec(e)}catch{}};async function eG(){if(!en){el(!0);try{await (0,S.L)(e$),await eV()}finally{el(!1)}}}function eJ(){ey({title:G("chat.dock.clearTitle"),body:G("chat.dock.clearBody"),confirmLabel:G("common.clear"),onConfirm:()=>eL(async()=>{await (0,f.H)(e$).catch(()=>{}),X([]),Y([]),ee([]),delete eT.current[e$],ez.current=0,eE.current=0,await eV(),eF&&await eB()})})}(0,c.useEffect)(()=>{D&&!eH?eV():eH&&ec(null)},[D,W,J.length]);let eX=async()=>{try{let[e,t]=await Promise.all([y(),w()]);ei(e),ed(t)}catch{}};async function eQ(e){em(!1),e.channel&&$(e.channel.startsWith("dm:")?e.channel:"room"),e.messageId&&(ef(e.messageId),setTimeout(()=>ef(null),2600));try{await R(e.id)}catch{}eX()}function eY(e,t){eL(async()=>{let{responders:a}=await (0,x._)(e$,e,t);if(a.length){for(let e of(ee(a),a))await (0,g.n)(e$,e),ee(t=>t.filter(t=>t!==e));ee([])}eF&&await eB()})}if((0,c.useEffect)(()=>{D&&eX()},[D,W,J.length]),(0,c.useEffect)(()=>{D&&!eH&&C(e$).then(eX).catch(()=>{})},[D,W,J.length]),!D)return(0,s.jsx)("button",{className:"chat-fab",style:{display:"grid",placeItems:"center"},onClick:()=>q(!0),title:G("chrome.chat.agentRoom"),children:(0,s.jsx)(L.I,{name:"chat",size:20})});let eZ={};for(let e of Q)(eZ[e.runId]??=[]).push(e);let e0=new Set(J.map(e=>e.id)),e1=Object.entries(eZ).filter(([e])=>!e0.has(e)),e6=Object.keys(ex).length,e2=eo.room??0,e7=Object.entries(eo).reduce((e,[t,a])=>t.startsWith("dm:")?e+a:e,0),e8=eo.telegram??0;return(0,s.jsxs)("div",{className:"chat-dock "+F,style:{width:O},children:[(0,s.jsx)("div",{className:"dock-resizer "+F,onMouseDown:function(e){e.preventDefault();let t=e.clientX;function a(e){let a=e.clientX-t;P(Math.max(320,Math.min(640,"right"===F?O-a:O+a)))}document.body.style.cursor="col-resize",window.addEventListener("mousemove",a),window.addEventListener("mouseup",function e(){window.removeEventListener("mousemove",a),window.removeEventListener("mouseup",e),document.body.style.cursor=""})}}),(0,s.jsxs)("div",{className:"dock-toolbar",children:[(0,s.jsxs)("span",{className:"dock-toolbar-title",children:[(0,s.jsx)(L.I,{name:"agents",size:15,style:{color:"var(--accent)"}})," ",G("chat.dock.agents")]}),(0,s.jsxs)("div",{className:"dock-tools",children:[(0,s.jsxs)("div",{className:"dock-bell-wrap",children:[(0,s.jsxs)("button",{className:"dock-tool",title:G("top.notifications"),onClick:()=>em(e=>!e),children:[(0,s.jsx)(L.I,{name:"bell",size:15}),er.length>0&&(0,s.jsx)("span",{className:"dock-bell-badge",children:er.length})]}),eh&&(0,s.jsxs)("div",{className:"dock-notif-pop",children:[(0,s.jsxs)("div",{className:"dock-notif-head",children:[G("top.notifications")," ",er.length>0&&(0,s.jsxs)("span",{children:["(",er.length,")"]})]}),0===er.length&&(0,s.jsx)("div",{className:"dock-notif-empty",children:G("chat.dock.nothingNeedsYou")}),er.map(e=>(0,s.jsxs)("button",{className:"dock-notif-row"+("approval"===e.kind?" approval":""),onClick:()=>eQ(e),children:[(0,s.jsx)("span",{className:"dn-ico",children:(0,s.jsx)(L.I,{name:"approval"===e.kind?"check":"at",size:13})}),(0,s.jsxs)("span",{className:"dn-body",children:[(0,s.jsx)("span",{className:"dn-text",children:e.text}),e.detail&&(0,s.jsx)("span",{className:"dn-detail",children:e.detail})]}),(0,s.jsx)("span",{className:"dn-go",children:(0,s.jsx)(L.I,{name:"chevronRight",size:12})})]},e.id))]})]}),(0,s.jsx)("button",{className:"dock-tool",title:"right"===F?G("chat.dock.moveLeft"):G("chat.dock.moveRight"),onClick:()=>H(e=>"right"===e?"left":"right"),children:(0,s.jsx)(L.I,{name:"right"===F?"dockLeft":"dockRight",size:15})}),(0,s.jsx)("button",{className:"dock-tool",title:G("chat.dock.hide"),onClick:()=>q(!1),children:(0,s.jsx)(L.I,{name:"close",size:15})})]})]}),(0,s.jsxs)("div",{className:"dock-tabs",children:[(0,s.jsxs)("button",{className:"dock-tab"+(eF||eH||eO?"":" on"),onClick:()=>$("room"),children:[(0,s.jsx)(L.I,{name:"agents",size:14})," ",G("chat.dock.tabRoom"),e2>0&&(0,s.jsx)("span",{className:"dt-badge",children:e2})]}),(0,s.jsxs)("button",{className:"dock-tab"+(eH||eF?" on":""),onClick:()=>$("people"),children:[(0,s.jsx)(L.I,{name:"chat",size:14})," ",G("chat.dock.tabDirect"),(e7||e6)>0&&(0,s.jsx)("span",{className:"dt-badge",children:e7||e6})]}),(0,s.jsxs)("button",{className:"dock-tab"+(eO?" on":""),onClick:()=>$("telegram"),children:[(0,s.jsx)(L.I,{name:"send",size:14})," Telegram",e8>0&&(0,s.jsx)("span",{className:"dt-badge",children:e8})]})]}),!eH&&!(eO&&eU&&!eU.connected)&&(0,s.jsxs)("div",{className:"ctx-bar",children:[es?(0,s.jsx)(E.m,{stat:es,onCompact:eG,compacting:en}):(0,s.jsx)("span",{}),eO?(0,s.jsxs)("span",{className:"ctx-hint",title:G("chat.dock.tgIsolatedTip"),children:[(0,s.jsx)(L.I,{name:"bot",size:12})," ",G("chat.dock.isolatedThreadAda")]}):(0,s.jsxs)("span",{className:"ctx-hint",title:G("chat.dock.dmAdaTip"),children:[(0,s.jsx)(L.I,{name:"bot",size:12})," ",G("home.chat.dmAda")]})]}),eF&&eW?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"dm-back-row",children:[(0,s.jsxs)("button",{className:"dm-back-btn",onClick:()=>$("people"),children:[(0,s.jsx)(L.I,{name:"chevronLeft",size:14})," ",G("chat.dock.allAgents")]}),(0,s.jsxs)("div",{style:{marginLeft:"auto",display:"flex",alignItems:"center",gap:5,flexWrap:"wrap",justifyContent:"flex-end"},children:[ek.map(e=>(0,s.jsxs)("span",{className:"sess-pill",children:[(0,s.jsx)("button",{className:"sess-tab"+(e.active?" active":""),title:e.active?G("chat.dock.sessActiveTip"):G("chat.dock.sessSwitchTip"),onClick:()=>{var t;return t=e.id,void(!ek.find(e=>e.id===t)?.active&&eL(async()=>{await d(e$,t).catch(()=>{}),e_()}))},onDoubleClick:()=>{var t,a;let s;return t=e.id,a=e.title,void(null!=(s=prompt(G("chat.dock.renameSession"),a))&&eL(async()=>{await h(t,s).catch(()=>{}),i(e$).then(eN).catch(()=>{})}))},children:e.title}),ek.length>1&&(0,s.jsx)("button",{className:"sess-del",title:G("chat.dock.sessDelete"),onClick:()=>{var t,a;return t=e.id,a=e.title,void ey({title:G("chat.dock.deleteSessionTitle"),body:G("chat.dock.deleteSessionBody",{title:a}),confirmLabel:G("common.delete"),onConfirm:()=>eL(async()=>{await m(e$,t).catch(()=>{}),e_(),i(e$).then(eN).catch(()=>{})})})},children:(0,s.jsx)(L.I,{name:"close",size:11})})]},e.id)),(0,s.jsxs)("button",{className:"sess-new",title:G("chat.dock.sessNewTip"),onClick:function(){eL(async()=>{await o(e$).catch(()=>{}),e_()})},children:[(0,s.jsx)(L.I,{name:"add",size:12})," ",G("chat.dock.sessNew")]})]})]}),(0,s.jsxs)("div",{className:"chat-header dm",children:[(0,s.jsx)(I.e,{name:eW.name,color:eW.color,image:eW.image,size:34,health:eW.health}),(0,s.jsxs)("div",{children:[(0,s.jsxs)("div",{className:"chat-title",children:[eW.name," ",(0,s.jsxs)("span",{className:"agent-handle",children:["@",eW.handle]})]}),(0,s.jsxs)("div",{className:"chat-sub",children:[eW.role," \xb7 ",eW.adapter]})]}),(0,s.jsxs)("div",{style:{marginLeft:"auto",display:"flex",alignItems:"center",gap:8},children:[(0,s.jsx)(M.qs,{status:eW.status}),(0,s.jsx)("button",{className:"dock-tool",title:G("chat.dock.clearConversation"),onClick:eJ,children:(0,s.jsx)(L.I,{name:"trash",size:15})})]})]}),(0,s.jsxs)("div",{className:"dm-context-note",children:[(0,s.jsx)("span",{className:"ico",children:(0,s.jsx)(L.I,{name:"bot",size:14})}),G("chat.dock.dmContextNote",{name:eW.name})]}),(0,s.jsx)(M.H8,{msgs:J,typing:Z,agents:e,byRun:eZ,liveRuns:e1,loading:et,highlightId:eu,operator:t,markdownAgent:!0}),(0,s.jsx)(M.V4,{onSend:eY,agents:e,defaultText:ev,placeholder:G("chat.dock.messageAgent",{name:eW.name})},"dm:"+eP+":"+eb)]}):eH?(0,s.jsx)(T,{agents:e,previews:ex,onOpenDM:e=>{$("dm:"+e)}}):eO?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"chat-header room",children:[(0,s.jsx)("div",{className:"brand-ico",style:{background:"linear-gradient(150deg,#2aabee,#229ed9)",color:"#fff"},children:(0,s.jsx)(L.I,{name:"send",size:16})}),(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:"chat-title",children:"Telegram"}),(0,s.jsx)("div",{className:"chat-sub",children:eU?.connected?G("chat.tg.connectedSub",{name:eU.allowedName||G("chat.tg.you"),chatId:eU.chatIdMasked??""}):G("chat.tg.connectPrompt")})]}),eU?.connected&&(0,s.jsxs)("div",{style:{marginLeft:"auto",display:"flex",gap:6},children:[(0,s.jsx)("button",{className:"dock-tool",title:G("chat.dock.clearConversation"),onClick:eJ,children:(0,s.jsx)(L.I,{name:"trash",size:15})}),(0,s.jsx)("button",{className:"dock-tool",title:G("chat.tg.disconnect"),onClick:()=>{confirm(G("chat.tg.disconnectConfirm"))&&eL(async()=>{await (0,j.K)(),eK()})},children:(0,s.jsx)(L.I,{name:"close",size:15})})]})]}),eU&&!eU.connected?(0,s.jsx)(A,{onConnected:eK}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"dm-context-note",children:[(0,s.jsx)("span",{className:"ico",children:(0,s.jsx)(L.I,{name:"send",size:14})}),G("chat.tg.isolatedThreadNote")]}),(0,s.jsx)(M.H8,{msgs:J,typing:Z,agents:e,byRun:eZ,liveRuns:e1,loading:et||!eU,highlightId:eu,operator:t,markdownAgent:!0}),(0,s.jsx)(M.V4,{onSend:eY,agents:e,placeholder:G("chat.tg.composerPlaceholder")},"telegram:"+eb)]})]}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"chat-header room",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:"chat-title",children:G("chat.dock.teamChannel")}),(0,s.jsx)("div",{className:"chat-sub",children:G("chat.dock.teamChannelSub",{n:e.length})})]}),(0,s.jsxs)("div",{className:"chat-members",children:[e.slice(0,6).map(e=>(0,s.jsx)("button",{className:"member-btn",title:G("chat.dock.dmName",{name:e.name}),onClick:()=>{$("dm:"+e.handle)},children:(0,s.jsx)(I.e,{name:e.name,color:e.color,size:26})},e.handle)),e.length>6&&(0,s.jsxs)("button",{className:"more",title:G("chat.dock.allAgents"),onClick:()=>$("people"),children:["+",e.length-6]})]})]}),(a=Array.from(new Set(e.map(e=>e.role))).sort(),n="all"===_?J:"type:work"===_?J.filter(e=>(eZ[e.id]?.length??0)>0||!!e.kind):"type:chat"===_?J.filter(e=>!eZ[e.id]?.length&&!e.kind):_.startsWith("role:")?J.filter(e=>"operator"===e.fromKind||e.fromHandle&&eq[e.fromHandle]?.role===_.slice(5)):J.filter(e=>"operator"===e.fromKind||e.fromHandle===_),z=(p=K.trim().toLowerCase())?n.filter(e=>(e.text??"").toLowerCase().includes(p)):n,(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"room-filter",children:[(0,s.jsx)("span",{className:"rf-label",children:G("chat.filter")}),(0,s.jsx)("button",{type:"button",className:"rf-chip"+("all"===_?" on":""),onClick:()=>B("all"),children:G("common.all")}),(0,s.jsx)("button",{type:"button",className:"rf-chip rf-lane"+("type:work"===_?" on":""),title:G("chat.filter.work"),onClick:()=>B("type:work"===_?"all":"type:work"),children:G("chat.filter.work")}),(0,s.jsx)("button",{type:"button",className:"rf-chip rf-lane"+("type:chat"===_?" on":""),title:G("chat.filter.discussion"),onClick:()=>B("type:chat"===_?"all":"type:chat"),children:G("chat.filter.discussion")}),a.map(e=>(0,s.jsx)("button",{type:"button",className:"rf-chip rf-role"+(_==="role:"+e?" on":""),title:G("chat.filter.byRole"),onClick:()=>B(_==="role:"+e?"all":"role:"+e),children:e},"role:"+e)),e.map(e=>(0,s.jsxs)("button",{type:"button",className:"rf-chip"+(_===e.handle?" on":""),title:e.name,onClick:()=>B(_===e.handle?"all":e.handle),children:["@",e.handle]},e.handle)),(0,s.jsxs)("span",{className:"rf-search",children:[(0,s.jsx)(L.I,{name:"search",size:12}),(0,s.jsx)("input",{value:K,onChange:e=>V(e.target.value),placeholder:G("chat.filter.search"),"aria-label":G("chat.filter.search")}),K&&(0,s.jsx)("button",{type:"button",className:"rf-clear",onClick:()=>V(""),"aria-label":G("common.dismiss"),children:(0,s.jsx)(L.I,{name:"close",size:11})})]})]}),(0,s.jsx)(M.H8,{msgs:z,typing:Z,agents:e,byRun:eZ,liveRuns:e1,loading:et,highlightId:eu,operator:t,markdownAgent:!0,refs:eR})]})),(0,s.jsx)(M.V4,{onSend:eY,agents:e,defaultText:"room"===W?ev:"",requireMention:!0,placeholder:G("chat.dock.roomPlaceholder"),refs:eR},"room:"+eb)]}),eS&&(0,s.jsx)("div",{className:"modal-overlay",onMouseDown:()=>ey(null),children:(0,s.jsxs)("div",{className:"modal",style:{width:380},onMouseDown:e=>e.stopPropagation(),children:[(0,s.jsx)("div",{className:"modal-head",children:(0,s.jsxs)("div",{className:"modal-title",children:[(0,s.jsx)(L.I,{name:"trash",size:15,style:{color:"var(--sx-keyword)"}})," ",eS.title]})}),(0,s.jsx)("div",{className:"modal-body",children:(0,s.jsx)("div",{style:{fontSize:13,color:"var(--text-dim)",lineHeight:1.55},children:eS.body})}),(0,s.jsxs)("div",{className:"modal-foot",children:[(0,s.jsx)("button",{className:"btn-ghost",onClick:()=>ey(null),children:G("common.cancel")}),(0,s.jsx)("button",{className:"btn-accent",style:{background:"var(--sx-keyword)",borderColor:"var(--sx-keyword)",color:"#fff"},onClick:()=>{eS.onConfirm(),ey(null)},children:eS.confirmLabel})]})]})})]})}},8551:(e,t,a)=>{a.d(t,{b:()=>c});var s=a(7814);let c=(0,s.createServerReference)("004502b97d8e3fe943f13c3b5ade91831b1f1e77aa",s.callServer,void 0,s.findSourceMapURL,"getDmPreviews")},9289:(e,t,a)=>{a.d(t,{n:()=>c});var s=a(7814);let c=(0,s.createServerReference)("60da28e0e8059b61b3e22ba0d80a0bc367b5f79ae2",s.callServer,void 0,s.findSourceMapURL,"agentRespond")},9768:(e,t,a)=>{a.d(t,{G:()=>c});var s=a(7814);let c=(0,s.createServerReference)("00a8998940c2cf6566eea709d291cf65481f19b54b",s.callServer,void 0,s.findSourceMapURL,"telegramStatus")}}]);
@@ -1,4 +1,4 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8370],{972:(e,t,i)=>{i.d(t,{E:()=>o,e:()=>n});let o=["Cockpit","Hierarchy","Execution","Product","Knowledge","Operations","Inbox","System"],n=[{id:"home",title:"Home",href:"/",group:"Cockpit",tile:"Welcome — canonical knowledge & quick navigation",icon:"grid"},{id:"dashboard",title:"Dashboard",href:"/dashboard",group:"Cockpit",tile:"Cockpit hub — status at a glance",icon:"pulse"},{id:"organizations",title:"Organizations",href:"/organizations",group:"Hierarchy",tile:"Manage organizations & workspaces",icon:"grid"},{id:"org",title:"Org Chart",href:"/org",group:"Hierarchy",tile:"Hierarchy & delegation",icon:"agents"},{id:"agents",title:"Agent Studio",href:"/agents/ada",group:"Hierarchy",tile:"Configure each agent",icon:"bot"},{id:"code",title:"Code",href:"/code",group:"Execution",tile:"Code editor & repo files",icon:"terminal"},{id:"tasks",title:"Tasks",href:"/tasks",group:"Execution",tile:"Team kanban board",icon:"files"},{id:"cron",title:"Cron",href:"/cron",group:"Execution",tile:"Scheduled tasks & history",icon:"calendar"},{id:"routines",title:"Routines",href:"/routines",group:"Execution",tile:"Recurring automations",icon:"repeat"},{id:"goals",title:"Goals",href:"/goals",group:"Execution",tile:"Objective tree",icon:"target"},{id:"design",title:"Design",href:"/design",group:"Execution",tile:"Prototype the UI with the frontend agent before the plan",icon:"grid"},{id:"planner",title:"CEO Planner",href:"/planner",group:"Execution",tile:"Specs → issues → approval → 24/7",icon:"command"},{id:"test-dev",title:"Test Dev",href:"/test-dev",group:"Execution",tile:"Boot, navigate + validate the project",icon:"play"},{id:"pm",title:"Product Manager",href:"/pm",group:"Product",tile:"Sprints & backlog (PO)",icon:"goto"},{id:"reports",title:"Reports",href:"/reports",group:"Knowledge",tile:"Plans, reviews, audits",icon:"doc"},{id:"docs",title:"Docs",href:"/docs",group:"Knowledge",tile:"Architecture, API & PO docs",icon:"doc"},{id:"skills",title:"Skills",href:"/skills",group:"Knowledge",tile:"Agent procedure library",icon:"skill"},{id:"activity",title:"Activity",href:"/activity",group:"Knowledge",tile:"Agent action timeline",icon:"pulse"},{id:"knowledge",title:"Knowledge",href:"/knowledge",group:"Knowledge",tile:"KB index, coverage, gaps & agent recall",icon:"branch"},{id:"costs",title:"Costs",href:"/costs",group:"Operations",tile:"Spend by agent/provider",icon:"coins"},{id:"security",title:"Security",href:"/security",group:"Operations",tile:"Findings & security score",icon:"shield"},{id:"pulse",title:"Pulse",href:"/pulse",group:"Operations",tile:"Agent health & validation",icon:"pulse"},{id:"github",title:"Commit GitHub",href:"/github",group:"Operations",tile:"Push workspace to remote",icon:"git"},{id:"prepare-deploy",title:"Prepare Deploy",href:"/prepare-deploy",group:"Operations",tile:"Prod-prep + export clean source to a deploy repo",icon:"goto"},{id:"models",title:"Models",href:"/models",group:"Operations",tile:"Providers & local models",icon:"cpu"},{id:"update",title:"Update",href:"/update",group:"Operations",tile:"Detect & apply new versions",icon:"goto"},{id:"plugins",title:"Plugins",href:"/plugins",group:"Operations",tile:"Extensions & integrations",icon:"ext"},{id:"inbox",title:"Inbox",href:"/inbox",group:"Inbox",tile:"Approvals & escalations",icon:"inbox"},{id:"notifications",title:"Notifications",href:"/notifications",group:"Inbox",tile:"Passive alert feed",icon:"bell"},{id:"config",title:"Config",href:"/config",group:"System",tile:"Platform settings",icon:"settings"},{id:"profile",title:"Profile",href:"/profile",group:"System",tile:"Account & preferences",icon:"account"}]},1917:(e,t,i)=>{i.d(t,{P:()=>n});var o=i(7814);let n=(0,o.createServerReference)("009378c403e9e324f0ea88a71d85dfea0ed41709af",o.callServer,void 0,o.findSourceMapURL,"runUpdate")},2393:(e,t,i)=>{i.d(t,{H4:()=>l,Uy:()=>s,st:()=>a});let o=/Failed to find Server Action|older or newer deployment|ChunkLoadError|Loading chunk [\w-]+ failed|error loading dynamically imported module/i,n=/invariant expected layout router to be mounted/i;function r(e){return e?e instanceof Error?`${e.name} ${e.message}`:"string"==typeof e?e:String(e?.message??e):""}function a(e){return o.test(r(e))}function l(e){let t=r(e);return o.test(t)||n.test(t)}function s(){try{let e="cn-skew-reload-at",t=Number(window.sessionStorage.getItem(e)||0);if(Date.now()-t<2e4)return;window.sessionStorage.setItem(e,String(Date.now()))}catch{}try{let e=new URL(window.location.href);e.searchParams.set("_r",String(Date.now())),window.location.replace(e.toString())}catch{window.location.reload()}}},2444:(e,t,i)=>{i.d(t,{UpdateHeaderBadge:()=>p});var o=i(5076),n=i(8488),r=i(9860),a=i(8576),l=i(5629),s=i(7775),d=i(1917),c=i(3655),u=i(2393);function p(){let e=(0,l.k)(),t=(0,r.useRouter)(),[i,p]=(0,n.useState)(null),[g,h]=(0,n.useState)(!1),[f,b]=(0,n.useState)("available"),[v,m]=(0,n.useState)(!1),[y,x]=(0,n.useState)(""),w=(0,n.useRef)(null);async function k(){if(!v){m(!0),x("");try{let t=await (0,s.l)(!0);p(t.info.updateAvailable&&t.info.latest?t.info.latest:null),h(t.busy),t.info.updateAvailable||x(e("chrome.update.upToDate"))}catch{}finally{m(!1)}}}async function S(){if("updating"!==f&&!g){if("done"===f)return void t.refresh();b("updating"),x("");try{let i=await (0,d.P)();if(i.blocked){b("available"),h(!0),x(e("chrome.update.busy"));return}i.started?w.current=setInterval(async()=>{let t=await (0,c.e)().catch(e=>((0,u.st)(e)&&(w.current&&clearInterval(w.current),(0,u.Uy)()),null));t&&("done"===t.status?(w.current&&clearInterval(w.current),window.location.reload()):"error"===t.status&&(w.current&&clearInterval(w.current),b("error"),x(e("chrome.update.failed"))))},3e3):(b("available"),x(i.message||""),t.push("/update"))}catch{b("error"),x(e("chrome.update.failed"))}}}(0,n.useEffect)(()=>{let e=!1,t=async t=>{try{let i=await (0,s.l)(t);if(e)return;p(i.info.updateAvailable&&i.info.latest?i.info.latest:null),h(i.busy)}catch{}};t(!1);let i=setInterval(()=>t(!1),12e3),o=setInterval(()=>t(!0),18e4);return()=>{e=!0,clearInterval(i),clearInterval(o),w.current&&clearInterval(w.current)}},[]);let C=(0,o.jsx)("button",{type:"button",className:"top-btn",onClick:k,disabled:v,title:y||e("chrome.update.check"),children:(0,o.jsx)("span",{className:v?"sync-spin":"",style:{display:"inline-flex"},children:(0,o.jsx)(a.I,{name:"sync",size:17})})});if(!i)return C;let I="updating"===f?e("chrome.update.updating"):"done"===f?e("chrome.update.restart"):"error"===f?e("chrome.update.failed"):g?`v${i}`:`${e("chrome.update.update")} v${i}`,j="updating"===f||g;return(0,o.jsxs)(o.Fragment,{children:[C,(0,o.jsxs)("button",{type:"button",onClick:S,disabled:j,title:g?e("chrome.update.busy"):y||`${e("chrome.update.available")} — v${i}`,style:{display:"inline-flex",alignItems:"center",gap:6,width:"auto",padding:"0 11px",height:30,background:"error"===f?"var(--sx-keyword)":g?"var(--bg-active)":"var(--accent)",color:g?"var(--text-dim)":"var(--accent-fg)",borderRadius:999,fontSize:12,fontWeight:600,border:"none",opacity:"updating"===f?.75:1,cursor:j?"default":"pointer"},children:["updating"===f?(0,o.jsx)("span",{className:"sync-spin",style:{display:"inline-flex"},children:(0,o.jsx)(a.I,{name:"sync",size:14})}):(0,o.jsx)(a.I,{name:"updating"===f?"sync":"done"===f?"refresh":"error"===f?"bell":"arrowUp",size:14}),(0,o.jsx)("span",{children:I})]})]})}},3655:(e,t,i)=>{i.d(t,{e:()=>n});var o=i(7814);let n=(0,o.createServerReference)("0042ee277c4926ed16da4986433df2a10d31d9c1e3",o.callServer,void 0,o.findSourceMapURL,"pollUpdateResult")},4414:(e,t,i)=>{i.d(t,{ChatToggle:()=>a});var o=i(5076),n=i(8576),r=i(5629);function a(){let e=(0,r.k)();return(0,o.jsx)("button",{className:"top-btn",title:`${e("chrome.chat.agentRoom")} (⌘J)`,type:"button",onClick:()=>window.dispatchEvent(new CustomEvent("constella:toggle-chat")),children:(0,o.jsx)(n.I,{name:"chat",size:17})})}},4942:(e,t,i)=>{i.d(t,{SidebarToggle:()=>l});var o=i(5076),n=i(8488),r=i(8576);let a=`
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8370],{972:(e,t,i)=>{i.d(t,{E:()=>o,e:()=>n});let o=["Cockpit","Hierarchy","Execution","Product","Knowledge","Operations","Inbox","System"],n=[{id:"home",title:"Home",href:"/",group:"Cockpit",tile:"Welcome — canonical knowledge & quick navigation",icon:"grid"},{id:"dashboard",title:"Dashboard",href:"/dashboard",group:"Cockpit",tile:"Cockpit hub — status at a glance",icon:"pulse"},{id:"organizations",title:"Organizations",href:"/organizations",group:"Hierarchy",tile:"Manage organizations & workspaces",icon:"grid"},{id:"org",title:"Org Chart",href:"/org",group:"Hierarchy",tile:"Hierarchy & delegation",icon:"agents"},{id:"agents",title:"Agent Studio",href:"/agents/ada",group:"Hierarchy",tile:"Configure each agent",icon:"bot"},{id:"code",title:"Code",href:"/code",group:"Execution",tile:"Code editor & repo files",icon:"terminal"},{id:"tasks",title:"Tasks",href:"/tasks",group:"Execution",tile:"Team kanban board",icon:"files"},{id:"cron",title:"Cron",href:"/cron",group:"Execution",tile:"Scheduled tasks & history",icon:"calendar"},{id:"routines",title:"Routines",href:"/routines",group:"Execution",tile:"Recurring automations",icon:"repeat"},{id:"goals",title:"Goals",href:"/goals",group:"Execution",tile:"Objective tree",icon:"target"},{id:"design",title:"Design",href:"/design",group:"Execution",tile:"Prototype the UI with the frontend agent before the plan",icon:"grid"},{id:"planner",title:"CEO Planner",href:"/planner",group:"Execution",tile:"Specs → issues → approval → 24/7",icon:"command"},{id:"test-dev",title:"Test Dev",href:"/test-dev",group:"Execution",tile:"Boot, navigate + validate the project",icon:"play"},{id:"pm",title:"Product Manager",href:"/pm",group:"Product",tile:"Sprints & backlog (PO)",icon:"goto"},{id:"reports",title:"Reports",href:"/reports",group:"Knowledge",tile:"Plans, reviews, audits",icon:"doc"},{id:"docs",title:"Docs",href:"/docs",group:"Knowledge",tile:"Architecture, API & PO docs",icon:"doc"},{id:"skills",title:"Skills",href:"/skills",group:"Knowledge",tile:"Agent procedure library",icon:"skill"},{id:"activity",title:"Activity",href:"/activity",group:"Knowledge",tile:"Agent action timeline",icon:"pulse"},{id:"knowledge",title:"Knowledge",href:"/knowledge",group:"Knowledge",tile:"KB index, coverage, gaps & agent recall",icon:"branch"},{id:"costs",title:"Costs",href:"/costs",group:"Operations",tile:"Spend by agent/provider",icon:"coins"},{id:"security",title:"Security",href:"/security",group:"Operations",tile:"Findings & security score",icon:"shield"},{id:"pulse",title:"Pulse",href:"/pulse",group:"Operations",tile:"Agent health & validation",icon:"pulse"},{id:"github",title:"Commit GitHub",href:"/github",group:"Operations",tile:"Push workspace to remote",icon:"git"},{id:"prepare-deploy",title:"Prepare Deploy",href:"/prepare-deploy",group:"Operations",tile:"Prod-prep + export clean source to a deploy repo",icon:"goto"},{id:"models",title:"Models",href:"/models",group:"Operations",tile:"Providers & local models",icon:"cpu"},{id:"update",title:"Update",href:"/update",group:"Operations",tile:"Detect & apply new versions",icon:"goto"},{id:"plugins",title:"Plugins",href:"/plugins",group:"Operations",tile:"Extensions & integrations",icon:"ext"},{id:"inbox",title:"Inbox",href:"/inbox",group:"Inbox",tile:"Approvals & escalations",icon:"inbox"},{id:"notifications",title:"Notifications",href:"/notifications",group:"Inbox",tile:"Passive alert feed",icon:"bell"},{id:"config",title:"Config",href:"/config",group:"System",tile:"Platform settings",icon:"settings"},{id:"profile",title:"Profile",href:"/profile",group:"System",tile:"Account & preferences",icon:"account"}]},1352:(e,t,i)=>{i.d(t,{e:()=>n});var o=i(7814);let n=(0,o.createServerReference)("001e9ef8a66d3ec2113043b24ab8849578169f7b7f",o.callServer,void 0,o.findSourceMapURL,"pollUpdateResult")},1870:(e,t,i)=>{i.d(t,{l:()=>n});var o=i(7814);let n=(0,o.createServerReference)("40c4dec4c26a6ed0bdf72098c743c4c2cb18ed1cd1",o.callServer,void 0,o.findSourceMapURL,"getUpdateState")},2282:(e,t,i)=>{i.d(t,{P:()=>n});var o=i(7814);let n=(0,o.createServerReference)("00a23e99d4e912da3ad1b266a22b1a141df6bc8b94",o.callServer,void 0,o.findSourceMapURL,"runUpdate")},2393:(e,t,i)=>{i.d(t,{H4:()=>l,Uy:()=>s,st:()=>a});let o=/Failed to find Server Action|older or newer deployment|ChunkLoadError|Loading chunk [\w-]+ failed|error loading dynamically imported module/i,n=/invariant expected layout router to be mounted/i;function r(e){return e?e instanceof Error?`${e.name} ${e.message}`:"string"==typeof e?e:String(e?.message??e):""}function a(e){return o.test(r(e))}function l(e){let t=r(e);return o.test(t)||n.test(t)}function s(){try{let e="cn-skew-reload-at",t=Number(window.sessionStorage.getItem(e)||0);if(Date.now()-t<2e4)return;window.sessionStorage.setItem(e,String(Date.now()))}catch{}try{let e=new URL(window.location.href);e.searchParams.set("_r",String(Date.now())),window.location.replace(e.toString())}catch{window.location.reload()}}},2444:(e,t,i)=>{i.d(t,{UpdateHeaderBadge:()=>p});var o=i(5076),n=i(8488),r=i(9860),a=i(8576),l=i(5629),s=i(1870),d=i(2282),c=i(1352),u=i(2393);function p(){let e=(0,l.k)(),t=(0,r.useRouter)(),[i,p]=(0,n.useState)(null),[g,h]=(0,n.useState)(!1),[f,b]=(0,n.useState)("available"),[v,m]=(0,n.useState)(!1),[y,x]=(0,n.useState)(""),w=(0,n.useRef)(null);async function k(){if(!v){m(!0),x("");try{let t=await (0,s.l)(!0);p(t.info.updateAvailable&&t.info.latest?t.info.latest:null),h(t.busy),t.info.updateAvailable||x(e("chrome.update.upToDate"))}catch{}finally{m(!1)}}}async function S(){if("updating"!==f&&!g){if("done"===f)return void t.refresh();b("updating"),x("");try{let i=await (0,d.P)();if(i.blocked){b("available"),h(!0),x(e("chrome.update.busy"));return}i.started?w.current=setInterval(async()=>{let t=await (0,c.e)().catch(e=>((0,u.st)(e)&&(w.current&&clearInterval(w.current),(0,u.Uy)()),null));t&&("done"===t.status?(w.current&&clearInterval(w.current),window.location.reload()):"error"===t.status&&(w.current&&clearInterval(w.current),b("error"),x(e("chrome.update.failed"))))},3e3):(b("available"),x(i.message||""),t.push("/update"))}catch{b("error"),x(e("chrome.update.failed"))}}}(0,n.useEffect)(()=>{let e=!1,t=async t=>{try{let i=await (0,s.l)(t);if(e)return;p(i.info.updateAvailable&&i.info.latest?i.info.latest:null),h(i.busy)}catch{}};t(!1);let i=setInterval(()=>t(!1),12e3),o=setInterval(()=>t(!0),18e4);return()=>{e=!0,clearInterval(i),clearInterval(o),w.current&&clearInterval(w.current)}},[]);let C=(0,o.jsx)("button",{type:"button",className:"top-btn",onClick:k,disabled:v,title:y||e("chrome.update.check"),children:(0,o.jsx)("span",{className:v?"sync-spin":"",style:{display:"inline-flex"},children:(0,o.jsx)(a.I,{name:"sync",size:17})})});if(!i)return C;let I="updating"===f?e("chrome.update.updating"):"done"===f?e("chrome.update.restart"):"error"===f?e("chrome.update.failed"):g?`v${i}`:`${e("chrome.update.update")} v${i}`,j="updating"===f||g;return(0,o.jsxs)(o.Fragment,{children:[C,(0,o.jsxs)("button",{type:"button",onClick:S,disabled:j,title:g?e("chrome.update.busy"):y||`${e("chrome.update.available")} — v${i}`,style:{display:"inline-flex",alignItems:"center",gap:6,width:"auto",padding:"0 11px",height:30,background:"error"===f?"var(--sx-keyword)":g?"var(--bg-active)":"var(--accent)",color:g?"var(--text-dim)":"var(--accent-fg)",borderRadius:999,fontSize:12,fontWeight:600,border:"none",opacity:"updating"===f?.75:1,cursor:j?"default":"pointer"},children:["updating"===f?(0,o.jsx)("span",{className:"sync-spin",style:{display:"inline-flex"},children:(0,o.jsx)(a.I,{name:"sync",size:14})}):(0,o.jsx)(a.I,{name:"updating"===f?"sync":"done"===f?"refresh":"error"===f?"bell":"arrowUp",size:14}),(0,o.jsx)("span",{children:I})]})]})}},4414:(e,t,i)=>{i.d(t,{ChatToggle:()=>a});var o=i(5076),n=i(8576),r=i(5629);function a(){let e=(0,r.k)();return(0,o.jsx)("button",{className:"top-btn",title:`${e("chrome.chat.agentRoom")} (⌘J)`,type:"button",onClick:()=>window.dispatchEvent(new CustomEvent("constella:toggle-chat")),children:(0,o.jsx)(n.I,{name:"chat",size:17})})}},4942:(e,t,i)=>{i.d(t,{SidebarToggle:()=>l});var o=i(5076),n=i(8488),r=i(8576);let a=`
2
2
  body.side-collapsed .side{width:58px!important;flex:0 0 58px!important;}
3
3
  body.side-collapsed .side .nav-item{justify-content:center;padding-left:0;padding-right:0;position:relative;}
4
4
  body.side-collapsed .side .nav-item>span:not(.nv-badge),
@@ -9,4 +9,4 @@ body.side-collapsed .side .nav-search{justify-content:center;}
9
9
  body.side-collapsed .side .side-brand-wrap{overflow:hidden;}
10
10
  body.side-collapsed .side .side-foot{justify-content:center;flex-wrap:wrap;gap:6px;}
11
11
  body.side-collapsed .side .nv-badge{position:absolute;top:2px;right:6px;}
12
- `;function l(){let[e,t]=(0,n.useState)(!1);return(0,n.useEffect)(()=>{if(!document.getElementById("side-rail-style")){let e=document.createElement("style");e.id="side-rail-style",e.textContent=a,document.head.appendChild(e)}let e=!1;try{e="1"===localStorage.getItem("bx.sideCollapsed")}catch{}t(e),document.body.classList.toggle("side-collapsed",e)},[]),(0,o.jsx)("button",{className:"top-btn"+(e?" on":""),onClick:function(){t(e=>{let t=!e;document.body.classList.toggle("side-collapsed",t);try{localStorage.setItem("bx.sideCollapsed",t?"1":"0")}catch{}return t})},title:e?"Expand sidebar":"Collapse sidebar","aria-label":"Toggle sidebar",children:(0,o.jsx)(r.I,{name:"sidebarIcon",size:17})})}},5787:(e,t,i)=>{i.d(t,{ViewChrome:()=>l});var o=i(5076),n=i(8576),r=i(972),a=i(5629);function l({title:e,sub:t,right:i,icon:s,flush:d,children:c}){let u=(0,a.k)(),p=r.e.find(t=>t.title===e),g=s??p?.icon,h=p?u(`mod.${p.id}`):e;return(0,o.jsxs)("div",{className:"app-view",children:[(0,o.jsxs)("div",{className:"view-head",children:[g&&(0,o.jsx)("div",{className:"vh-icon",children:(0,o.jsx)(n.I,{name:g,size:18})}),(0,o.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,o.jsx)("div",{className:"view-title",children:h}),t&&(0,o.jsx)("div",{className:"view-sub",children:t})]}),i]}),(0,o.jsx)("div",{className:"view-body",style:d?{padding:0,overflow:"hidden"}:void 0,children:c})]})}},6588:(e,t,i)=>{i.d(t,{BackButton:()=>l});var o=i(5076),n=i(9860),r=i(8576),a=i(5629);function l(){let e=(0,a.k)(),t=(0,n.useRouter)();return(0,o.jsx)("button",{className:"top-btn",title:e("common.back"),style:{marginRight:2},onClick:()=>{window.history.length>1?t.back():t.push("/")},children:(0,o.jsx)(r.I,{name:"chevronLeft",size:18})})}},7775:(e,t,i)=>{i.d(t,{l:()=>n});var o=i(7814);let n=(0,o.createServerReference)("40e75079f4b731afb27cbf4de46348e1c26461bbb5",o.callServer,void 0,o.findSourceMapURL,"getUpdateState")}}]);
12
+ `;function l(){let[e,t]=(0,n.useState)(!1);return(0,n.useEffect)(()=>{if(!document.getElementById("side-rail-style")){let e=document.createElement("style");e.id="side-rail-style",e.textContent=a,document.head.appendChild(e)}let e=!1;try{e="1"===localStorage.getItem("bx.sideCollapsed")}catch{}t(e),document.body.classList.toggle("side-collapsed",e)},[]),(0,o.jsx)("button",{className:"top-btn"+(e?" on":""),onClick:function(){t(e=>{let t=!e;document.body.classList.toggle("side-collapsed",t);try{localStorage.setItem("bx.sideCollapsed",t?"1":"0")}catch{}return t})},title:e?"Expand sidebar":"Collapse sidebar","aria-label":"Toggle sidebar",children:(0,o.jsx)(r.I,{name:"sidebarIcon",size:17})})}},5787:(e,t,i)=>{i.d(t,{ViewChrome:()=>l});var o=i(5076),n=i(8576),r=i(972),a=i(5629);function l({title:e,sub:t,right:i,icon:s,flush:d,children:c}){let u=(0,a.k)(),p=r.e.find(t=>t.title===e),g=s??p?.icon,h=p?u(`mod.${p.id}`):e;return(0,o.jsxs)("div",{className:"app-view",children:[(0,o.jsxs)("div",{className:"view-head",children:[g&&(0,o.jsx)("div",{className:"vh-icon",children:(0,o.jsx)(n.I,{name:g,size:18})}),(0,o.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,o.jsx)("div",{className:"view-title",children:h}),t&&(0,o.jsx)("div",{className:"view-sub",children:t})]}),i]}),(0,o.jsx)("div",{className:"view-body",style:d?{padding:0,overflow:"hidden"}:void 0,children:c})]})}},6588:(e,t,i)=>{i.d(t,{BackButton:()=>l});var o=i(5076),n=i(9860),r=i(8576),a=i(5629);function l(){let e=(0,a.k)(),t=(0,n.useRouter)();return(0,o.jsx)("button",{className:"top-btn",title:e("common.back"),style:{marginRight:2},onClick:()=>{window.history.length>1?t.back():t.push("/")},children:(0,o.jsx)(r.I,{name:"chevronLeft",size:18})})}}}]);