@meetquinn/animactl 0.1.2 → 0.1.3

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 (289) hide show
  1. package/README.md +11 -6
  2. package/dist/server/{runtime/activity-payload.d.ts → activities/format.d.ts} +4 -1
  3. package/dist/server/activities/format.d.ts.map +1 -0
  4. package/dist/server/{runtime/activity-payload.js → activities/format.js} +16 -1
  5. package/dist/server/agents/agent-skills.d.ts +7 -3
  6. package/dist/server/agents/agent-skills.d.ts.map +1 -1
  7. package/dist/server/agents/agent-skills.js +243 -38
  8. package/dist/server/agents/agent-slack.service.d.ts +15 -0
  9. package/dist/server/agents/agent-slack.service.d.ts.map +1 -1
  10. package/dist/server/agents/agent-slack.service.js +43 -6
  11. package/dist/server/agents/default-skills.d.ts +9 -0
  12. package/dist/server/agents/default-skills.d.ts.map +1 -0
  13. package/dist/server/agents/default-skills.js +52 -0
  14. package/dist/server/cli/runtime-cli.d.ts +7 -1
  15. package/dist/server/cli/runtime-cli.d.ts.map +1 -1
  16. package/dist/server/cli/runtime-cli.js +107 -3
  17. package/dist/server/cli/services-cli.d.ts.map +1 -1
  18. package/dist/server/cli/services-cli.js +39 -0
  19. package/dist/server/inbox/slack-subscriber.d.ts +2 -0
  20. package/dist/server/inbox/slack-subscriber.d.ts.map +1 -1
  21. package/dist/server/inbox/slack-subscriber.js +28 -2
  22. package/dist/server/inbox/slack-subscription.service.d.ts.map +1 -1
  23. package/dist/server/inbox/slack-subscription.service.js +13 -1
  24. package/dist/server/inbox/wake-queue.service.d.ts +3 -1
  25. package/dist/server/inbox/wake-queue.service.d.ts.map +1 -1
  26. package/dist/server/inbox/wake-queue.service.js +5 -3
  27. package/dist/server/provider-usage/http.d.ts +1 -0
  28. package/dist/server/provider-usage/http.d.ts.map +1 -1
  29. package/dist/server/provider-usage/http.js +23 -1
  30. package/dist/server/provider-usage/provider-usage.service.d.ts +1 -4
  31. package/dist/server/provider-usage/provider-usage.service.d.ts.map +1 -1
  32. package/dist/server/provider-usage/provider-usage.service.js +1 -18
  33. package/dist/server/provider-usage/providers/claude.d.ts +1 -1
  34. package/dist/server/provider-usage/providers/claude.d.ts.map +1 -1
  35. package/dist/server/provider-usage/providers/claude.js +1 -1
  36. package/dist/server/provider-usage/providers/codex.d.ts +1 -1
  37. package/dist/server/provider-usage/providers/codex.d.ts.map +1 -1
  38. package/dist/server/provider-usage/providers/codex.js +1 -1
  39. package/dist/server/provider-usage/providers/kimi.d.ts +1 -1
  40. package/dist/server/provider-usage/providers/kimi.d.ts.map +1 -1
  41. package/dist/server/provider-usage/providers/kimi.js +4 -4
  42. package/dist/server/provider-usage/result.d.ts +5 -0
  43. package/dist/server/provider-usage/result.d.ts.map +1 -0
  44. package/dist/server/provider-usage/result.js +18 -0
  45. package/dist/server/providers/active-runtime.d.ts +1 -1
  46. package/dist/server/providers/active-runtime.d.ts.map +1 -1
  47. package/dist/server/providers/claude-events.d.ts +1 -1
  48. package/dist/server/providers/claude-events.d.ts.map +1 -1
  49. package/dist/server/providers/claude-events.js +2 -2
  50. package/dist/server/providers/claude.d.ts +1 -1
  51. package/dist/server/providers/claude.d.ts.map +1 -1
  52. package/dist/server/providers/claude.js +2 -2
  53. package/dist/server/providers/codex-app-server.d.ts +1 -1
  54. package/dist/server/providers/codex-app-server.d.ts.map +1 -1
  55. package/dist/server/providers/codex-app-server.js +1 -1
  56. package/dist/server/providers/codex-events.js +1 -1
  57. package/dist/server/providers/codex.d.ts +1 -1
  58. package/dist/server/providers/codex.d.ts.map +1 -1
  59. package/dist/server/providers/codex.js +2 -2
  60. package/dist/server/{runtime/provider-contract.d.ts → providers/contract.d.ts} +1 -1
  61. package/dist/server/providers/contract.d.ts.map +1 -0
  62. package/dist/server/providers/factory.d.ts +1 -1
  63. package/dist/server/providers/factory.d.ts.map +1 -1
  64. package/dist/server/providers/kimi-events.d.ts +1 -1
  65. package/dist/server/providers/kimi-events.d.ts.map +1 -1
  66. package/dist/server/providers/kimi-events.js +1 -1
  67. package/dist/server/providers/kimi.d.ts +1 -1
  68. package/dist/server/providers/kimi.d.ts.map +1 -1
  69. package/dist/server/providers/kimi.js +3 -2
  70. package/dist/server/providers/reasoning-events.js +1 -1
  71. package/dist/server/runtime/active-run-control.d.ts +19 -0
  72. package/dist/server/runtime/active-run-control.d.ts.map +1 -0
  73. package/dist/server/runtime/active-run-control.js +89 -0
  74. package/dist/server/runtime/activity.js +1 -1
  75. package/dist/server/runtime/agent-runner.d.ts +1 -1
  76. package/dist/server/runtime/agent-runner.d.ts.map +1 -1
  77. package/dist/server/runtime/delivery-prompt.d.ts +6 -0
  78. package/dist/server/runtime/delivery-prompt.d.ts.map +1 -1
  79. package/dist/server/runtime/delivery-prompt.js +53 -34
  80. package/dist/server/runtime/followup-appender.d.ts +20 -0
  81. package/dist/server/runtime/followup-appender.d.ts.map +1 -0
  82. package/dist/server/runtime/followup-appender.js +128 -0
  83. package/dist/server/runtime/host.d.ts +2 -0
  84. package/dist/server/runtime/host.d.ts.map +1 -1
  85. package/dist/server/runtime/host.js +8 -0
  86. package/dist/server/runtime/provider-runner.d.ts +16 -0
  87. package/dist/server/runtime/provider-runner.d.ts.map +1 -0
  88. package/dist/server/runtime/provider-runner.js +86 -0
  89. package/dist/server/runtime/runtime-bridge.d.ts +1 -1
  90. package/dist/server/runtime/runtime-bridge.d.ts.map +1 -1
  91. package/dist/server/runtime/runtime-session.service.d.ts +1 -1
  92. package/dist/server/runtime/runtime-session.service.d.ts.map +1 -1
  93. package/dist/server/runtime/runtime-session.service.js +1 -1
  94. package/dist/server/runtime/runtime-worker.d.ts +2 -10
  95. package/dist/server/runtime/runtime-worker.d.ts.map +1 -1
  96. package/dist/server/runtime/runtime-worker.js +60 -286
  97. package/dist/server/runtime-management/managed-runtime.d.ts.map +1 -0
  98. package/dist/server/runtime-management/runtime-release.d.ts.map +1 -0
  99. package/dist/server/{runtime → runtime-management}/runtime-upgrade.d.ts +1 -0
  100. package/dist/server/runtime-management/runtime-upgrade.d.ts.map +1 -0
  101. package/dist/server/{runtime → runtime-management}/runtime-upgrade.js +14 -0
  102. package/dist/server/services/system.service.d.ts +41 -0
  103. package/dist/server/services/system.service.d.ts.map +1 -0
  104. package/dist/server/services/system.service.js +154 -0
  105. package/dist/server/settings/settings.service.d.ts +2 -1
  106. package/dist/server/settings/settings.service.d.ts.map +1 -1
  107. package/dist/server/settings/settings.service.js +9 -1
  108. package/dist/server/slack/shortcuts.d.ts +0 -3
  109. package/dist/server/slack/shortcuts.d.ts.map +1 -1
  110. package/dist/server/slack/shortcuts.js +0 -3
  111. package/dist/server/slack-interactions/shortcut-ids.d.ts +4 -0
  112. package/dist/server/slack-interactions/shortcut-ids.d.ts.map +1 -0
  113. package/dist/server/slack-interactions/shortcut-ids.js +3 -0
  114. package/dist/server/slack-interactions/shortcut-views.d.ts +65 -0
  115. package/dist/server/slack-interactions/shortcut-views.d.ts.map +1 -0
  116. package/dist/server/slack-interactions/shortcut-views.js +211 -0
  117. package/dist/server/{slack → slack-interactions}/shortcut.service.d.ts +2 -47
  118. package/dist/server/slack-interactions/shortcut.service.d.ts.map +1 -0
  119. package/dist/server/slack-interactions/shortcut.service.js +227 -0
  120. package/dist/server/storage/jsonl-log.d.ts +9 -0
  121. package/dist/server/storage/jsonl-log.d.ts.map +1 -1
  122. package/dist/server/storage/jsonl-log.js +36 -1
  123. package/dist/server/storage/schema/server.store.d.ts +5 -0
  124. package/dist/server/storage/schema/server.store.d.ts.map +1 -1
  125. package/dist/server/storage/schema/server.store.js +2 -1
  126. package/dist/server/storage/schema/wake-queue.store.d.ts +15 -1
  127. package/dist/server/storage/schema/wake-queue.store.d.ts.map +1 -1
  128. package/dist/server/storage/schema/wake-queue.store.js +5 -3
  129. package/dist/server/tests/agent-config.test.d.ts +2 -0
  130. package/dist/server/tests/agent-config.test.d.ts.map +1 -0
  131. package/dist/server/tests/agent-config.test.js +229 -0
  132. package/dist/server/tests/agent-runtime.test.d.ts +2 -0
  133. package/dist/server/tests/agent-runtime.test.d.ts.map +1 -0
  134. package/dist/server/tests/agent-runtime.test.js +1110 -0
  135. package/dist/server/tests/agent-seed-memory.test.d.ts +2 -0
  136. package/dist/server/tests/agent-seed-memory.test.d.ts.map +1 -0
  137. package/dist/server/tests/agent-seed-memory.test.js +16 -0
  138. package/dist/server/tests/agent-skills.test.d.ts +2 -0
  139. package/dist/server/tests/agent-skills.test.d.ts.map +1 -0
  140. package/dist/server/tests/agent-skills.test.js +140 -0
  141. package/dist/server/tests/anima-home.d.ts +2 -0
  142. package/dist/server/tests/anima-home.d.ts.map +1 -0
  143. package/dist/server/tests/anima-home.js +4 -0
  144. package/dist/server/tests/cli-file.test.d.ts +2 -0
  145. package/dist/server/tests/cli-file.test.d.ts.map +1 -0
  146. package/dist/server/tests/cli-file.test.js +596 -0
  147. package/dist/server/tests/cli-message.test.d.ts +2 -0
  148. package/dist/server/tests/cli-message.test.d.ts.map +1 -0
  149. package/dist/server/tests/cli-message.test.js +1196 -0
  150. package/dist/server/tests/client-error-routes.test.d.ts +2 -0
  151. package/dist/server/tests/client-error-routes.test.d.ts.map +1 -0
  152. package/dist/server/tests/client-error-routes.test.js +163 -0
  153. package/dist/server/tests/config.test.d.ts +2 -0
  154. package/dist/server/tests/config.test.d.ts.map +1 -0
  155. package/dist/server/tests/config.test.js +497 -0
  156. package/dist/server/tests/default-skills.test.d.ts +2 -0
  157. package/dist/server/tests/default-skills.test.d.ts.map +1 -0
  158. package/dist/server/tests/default-skills.test.js +57 -0
  159. package/dist/server/tests/helpers/inbox.d.ts +10 -0
  160. package/dist/server/tests/helpers/inbox.d.ts.map +1 -0
  161. package/dist/server/tests/helpers/inbox.js +21 -0
  162. package/dist/server/tests/helpers/slack.d.ts +11 -0
  163. package/dist/server/tests/helpers/slack.d.ts.map +1 -0
  164. package/dist/server/tests/helpers/slack.js +17 -0
  165. package/dist/server/tests/helpers/state.d.ts +19 -0
  166. package/dist/server/tests/helpers/state.d.ts.map +1 -0
  167. package/dist/server/tests/helpers/state.js +69 -0
  168. package/dist/server/tests/inbox-slack-events.test.d.ts +2 -0
  169. package/dist/server/tests/inbox-slack-events.test.d.ts.map +1 -0
  170. package/dist/server/tests/inbox-slack-events.test.js +271 -0
  171. package/dist/server/tests/inbox.test.d.ts +2 -0
  172. package/dist/server/tests/inbox.test.d.ts.map +1 -0
  173. package/dist/server/tests/inbox.test.js +144 -0
  174. package/dist/server/tests/interactive-ask.test.d.ts +2 -0
  175. package/dist/server/tests/interactive-ask.test.d.ts.map +1 -0
  176. package/dist/server/tests/interactive-ask.test.js +387 -0
  177. package/dist/server/tests/kb.test.d.ts +2 -0
  178. package/dist/server/tests/kb.test.d.ts.map +1 -0
  179. package/dist/server/tests/kb.test.js +371 -0
  180. package/dist/server/tests/message.service.test.d.ts +2 -0
  181. package/dist/server/tests/message.service.test.d.ts.map +1 -0
  182. package/dist/server/tests/message.service.test.js +151 -0
  183. package/dist/server/tests/messages.test.d.ts +2 -0
  184. package/dist/server/tests/messages.test.d.ts.map +1 -0
  185. package/dist/server/tests/messages.test.js +12 -0
  186. package/dist/server/tests/prompt-attachments.test.d.ts +2 -0
  187. package/dist/server/tests/prompt-attachments.test.d.ts.map +1 -0
  188. package/dist/server/tests/prompt-attachments.test.js +274 -0
  189. package/dist/server/tests/provider-usage.test.d.ts +2 -0
  190. package/dist/server/tests/provider-usage.test.d.ts.map +1 -0
  191. package/dist/server/tests/provider-usage.test.js +97 -0
  192. package/dist/server/tests/reminders.test.d.ts +2 -0
  193. package/dist/server/tests/reminders.test.d.ts.map +1 -0
  194. package/dist/server/tests/reminders.test.js +383 -0
  195. package/dist/server/tests/runtime-cli.test.d.ts +2 -0
  196. package/dist/server/tests/runtime-cli.test.d.ts.map +1 -0
  197. package/dist/server/tests/runtime-cli.test.js +21 -0
  198. package/dist/server/tests/runtime-upgrade.test.d.ts +2 -0
  199. package/dist/server/tests/runtime-upgrade.test.d.ts.map +1 -0
  200. package/dist/server/tests/runtime-upgrade.test.js +307 -0
  201. package/dist/server/tests/runtime-worker.test.d.ts +2 -0
  202. package/dist/server/tests/runtime-worker.test.d.ts.map +1 -0
  203. package/dist/server/tests/runtime-worker.test.js +1021 -0
  204. package/dist/server/tests/runtime.test.d.ts +2 -0
  205. package/dist/server/tests/runtime.test.d.ts.map +1 -0
  206. package/dist/server/tests/runtime.test.js +354 -0
  207. package/dist/server/tests/services.test.d.ts +2 -0
  208. package/dist/server/tests/services.test.d.ts.map +1 -0
  209. package/dist/server/tests/services.test.js +636 -0
  210. package/dist/server/tests/slack-files.test.d.ts +2 -0
  211. package/dist/server/tests/slack-files.test.d.ts.map +1 -0
  212. package/dist/server/tests/slack-files.test.js +118 -0
  213. package/dist/server/tests/slack-shortcuts.test.d.ts +2 -0
  214. package/dist/server/tests/slack-shortcuts.test.d.ts.map +1 -0
  215. package/dist/server/tests/slack-shortcuts.test.js +310 -0
  216. package/dist/server/tests/slack.test.d.ts +2 -0
  217. package/dist/server/tests/slack.test.d.ts.map +1 -0
  218. package/dist/server/tests/slack.test.js +213 -0
  219. package/dist/server/tests/state-cache.test.d.ts +2 -0
  220. package/dist/server/tests/state-cache.test.d.ts.map +1 -0
  221. package/dist/server/tests/state-cache.test.js +184 -0
  222. package/dist/server/tests/subscriptions.test.d.ts +2 -0
  223. package/dist/server/tests/subscriptions.test.d.ts.map +1 -0
  224. package/dist/server/tests/subscriptions.test.js +292 -0
  225. package/dist/server/tests/system-service.test.d.ts +2 -0
  226. package/dist/server/tests/system-service.test.d.ts.map +1 -0
  227. package/dist/server/tests/system-service.test.js +20 -0
  228. package/dist/server/tests/url-routes.test.d.ts +2 -0
  229. package/dist/server/tests/url-routes.test.d.ts.map +1 -0
  230. package/dist/server/tests/url-routes.test.js +217 -0
  231. package/dist/server/tests/web-api.test.d.ts +2 -0
  232. package/dist/server/tests/web-api.test.d.ts.map +1 -0
  233. package/dist/server/tests/web-api.test.js +1759 -0
  234. package/dist/server/web/app.d.ts.map +1 -1
  235. package/dist/server/web/app.js +2 -0
  236. package/dist/server/web/client-error-routes.d.ts +3 -0
  237. package/dist/server/web/client-error-routes.d.ts.map +1 -0
  238. package/dist/server/web/client-error-routes.js +101 -0
  239. package/dist/server/web/system-routes.d.ts.map +1 -1
  240. package/dist/server/web/system-routes.js +21 -131
  241. package/dist/shared/agent-config.d.ts +8 -18
  242. package/dist/shared/agent-config.d.ts.map +1 -1
  243. package/dist/shared/agent-config.js +3 -4
  244. package/dist/shared/inbox.d.ts +27 -0
  245. package/dist/shared/inbox.d.ts.map +1 -1
  246. package/dist/shared/inbox.js +1 -0
  247. package/dist/shared/server-info.d.ts +6 -5
  248. package/dist/shared/server-info.d.ts.map +1 -1
  249. package/dist/shared/server-info.js +3 -1
  250. package/dist/shared/server-settings.d.ts +6 -0
  251. package/dist/shared/server-settings.d.ts.map +1 -1
  252. package/dist/shared/server-settings.js +1 -0
  253. package/dist/shared/skills.d.ts +24 -3
  254. package/dist/shared/skills.d.ts.map +1 -1
  255. package/dist/web/assets/activity-DHjip8tY.js +7 -0
  256. package/dist/web/assets/clipboard-D2NSC52v.js +1 -0
  257. package/dist/web/assets/{external-link-Dt0qTpmV.js → external-link-Bhr1WdRS.js} +1 -1
  258. package/dist/web/assets/{file-text-Dd9ys6py.js → file-text-CYMA_SMA.js} +1 -1
  259. package/dist/web/assets/{index-CzAQnbuO.js → index-CVpew409.js} +5 -5
  260. package/dist/web/assets/index-mh0uJTkY.css +2 -0
  261. package/dist/web/assets/kb-DDVpYkT9.js +35 -0
  262. package/dist/web/assets/profile-CBy6GNzp.js +1 -0
  263. package/dist/web/assets/reminders-Bbwb9QNT.js +1 -0
  264. package/dist/web/favicon.svg +1 -1
  265. package/dist/web/index.html +2 -2
  266. package/package.json +1 -1
  267. package/templates/runtime-standing-prompt.md +16 -2
  268. package/templates/skills/find-skills/SKILL.md +133 -0
  269. package/dist/server/runtime/activity-payload.d.ts.map +0 -1
  270. package/dist/server/runtime/activity-text.d.ts +0 -4
  271. package/dist/server/runtime/activity-text.d.ts.map +0 -1
  272. package/dist/server/runtime/activity-text.js +0 -16
  273. package/dist/server/runtime/managed-runtime.d.ts.map +0 -1
  274. package/dist/server/runtime/provider-contract.d.ts.map +0 -1
  275. package/dist/server/runtime/runtime-release.d.ts.map +0 -1
  276. package/dist/server/runtime/runtime-upgrade.d.ts.map +0 -1
  277. package/dist/server/slack/shortcut.service.d.ts.map +0 -1
  278. package/dist/server/slack/shortcut.service.js +0 -493
  279. package/dist/web/assets/activity-BP0C81IV.js +0 -7
  280. package/dist/web/assets/globe-DmDZSgDP.js +0 -1
  281. package/dist/web/assets/index-DKecrvN0.css +0 -2
  282. package/dist/web/assets/kb-3wFeP2Jt.js +0 -32
  283. package/dist/web/assets/profile-D7wPZXW_.js +0 -1
  284. package/dist/web/assets/reminders-DOhroVwo.js +0 -1
  285. /package/dist/server/{runtime/provider-contract.js → providers/contract.js} +0 -0
  286. /package/dist/server/{runtime → runtime-management}/managed-runtime.d.ts +0 -0
  287. /package/dist/server/{runtime → runtime-management}/managed-runtime.js +0 -0
  288. /package/dist/server/{runtime → runtime-management}/runtime-release.d.ts +0 -0
  289. /package/dist/server/{runtime → runtime-management}/runtime-release.js +0 -0
@@ -1 +0,0 @@
1
- import{t as e}from"./external-link-Dt0qTpmV.js";import{t}from"./globe-DmDZSgDP.js";import{$ as n,B as r,C as i,Ct as a,D as o,E as s,G as c,H as l,L as u,Mt as d,O as f,Ot as p,Q as m,T as h,U as g,V as _,W as v,_ as y,_t as b,a as x,b as S,bt as C,c as w,ct as T,d as E,dt as D,f as O,ft as k,g as ee,gt as A,h as j,ht as te,i as M,it as N,kt as P,l as F,lt as I,m as ne,mt as re,n as L,o as R,p as ie,pt as ae,r as oe,s as z,tt as B,u as V,ut as se,v as ce,vt as H,w as U,x as le,xt as W,y as ue}from"./index-CzAQnbuO.js";var de=B(`bot`,[[`path`,{d:`M12 8V4H8`,key:`hb8ula`}],[`rect`,{width:`16`,height:`12`,x:`4`,y:`8`,rx:`2`,key:`enze0r`}],[`path`,{d:`M2 14h2`,key:`vft8re`}],[`path`,{d:`M20 14h2`,key:`4cs60a`}],[`path`,{d:`M15 13v2`,key:`1xurst`}],[`path`,{d:`M9 13v2`,key:`rq6x2g`}]]),fe=B(`clipboard`,[[`rect`,{width:`8`,height:`4`,x:`8`,y:`2`,rx:`1`,ry:`1`,key:`tgr4d6`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2`,key:`116196`}]]),pe=B(`pencil`,[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}]]),G=d(P(),1),K=a(),q=(0,G.forwardRef)(function({label:e,children:t,highlight:n},r){return(0,K.jsxs)(`div`,{ref:r,className:[`grid grid-cols-[6rem_1fr] md:grid-cols-[8rem_1fr] items-start gap-3 md:gap-4 rounded-sm py-2.5 md:py-3 transition-[box-shadow] duration-300`,n?`shadow-[0_0_0_2px_var(--color-accent)]`:`shadow-none`].join(` `),children:[(0,K.jsx)(`span`,{className:`chrome pt-1 text-[11px] tracking-wide text-text-muted`,children:e}),(0,K.jsx)(`div`,{className:`min-w-0`,children:t})]})});function J({value:e,mono:t=!1}){return e==null?(0,K.jsx)(`span`,{className:`font-serif italic text-[14px] text-text-subtle`,children:`—`}):(0,K.jsx)(`span`,{className:t?`font-mono text-[12px] md:text-[13px] text-text`:`font-serif text-[13px] md:text-[15px] text-text`,children:e})}function Y({title:e,children:t}){return(0,K.jsxs)(`section`,{className:`mt-10 first:mt-0`,children:[(0,K.jsxs)(`div`,{className:`mb-3 flex items-baseline gap-3`,children:[(0,K.jsx)(`h2`,{className:`caps text-text-muted`,children:e}),(0,K.jsx)(`span`,{className:`h-px flex-1 bg-border-soft`})]}),(0,K.jsx)(`div`,{children:t})]})}function me({onEdit:e,children:t}){return(0,K.jsxs)(`div`,{role:`button`,tabIndex:0,onClick:e,onKeyDown:t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),e())},className:`group -mx-2 -my-1 flex min-w-0 cursor-text items-center gap-2 rounded-sm px-2 py-1 outline-none transition-colors hover:bg-surface-elevated focus-visible:bg-surface-elevated`,children:[(0,K.jsx)(`span`,{className:`min-w-0`,children:t}),(0,K.jsx)(pe,{className:`size-3.5 shrink-0 text-text-subtle opacity-0 transition-opacity group-hover:opacity-100 group-focus-visible:opacity-100 [@media(hover:none)]:opacity-50`})]})}function X(){return(0,K.jsx)(`span`,{className:`font-sans text-[11px] tracking-wide text-health-ok`,children:`Saved`})}function Z({message:e}){return(0,K.jsx)(`span`,{className:`font-sans text-[11px] tracking-wide text-health-error`,children:e})}function he(e){return e instanceof Error?e.message:String(e)}var ge=G.forwardRef(function(e,t){let{render:n,className:r,id:a,name:o,value:s,disabled:c=!1,onValueChange:l,defaultValue:u,autoFocus:d=!1,style:f,...p}=e,{state:m,name:g,disabled:_,setTouched:v,setDirty:b,validityData:x,setFocused:S,setFilled:C,validationMode:w,validation:T}=ie(),D=_||c,k=g??o,A={...m,disabled:D},{labelId:te}=E(),M=V({id:a});U(()=>{let e=s!=null;T.inputRef.current?.value||e&&s!==``?C(!0):e&&s===``&&C(!1)},[T.inputRef,C,s]);let N=G.useRef(null);U(()=>{d&&N.current===y(ce(N.current))&&S(!0)},[d,S]);let[P]=ue({controlled:s,default:u,name:`FieldControl`,state:`value`}),F=s!==void 0,I=F?P:void 0,re=h(()=>T.inputRef.current?.value);return O(T.inputRef,M,I,re),i(`input`,e,{ref:[t,N],state:A,props:[{id:M,disabled:D,name:k,ref:T.inputRef,"aria-labelledby":te,autoFocus:d,...F?{value:I}:{defaultValue:u},onChange(e){let t=e.currentTarget.value;l?.(t,j(ee,e.nativeEvent)),b(t!==x.initialValue),C(t!==``)},onFocus(){S(!0)},onBlur(e){v(!0),S(!1),w===`onBlur`&&T.commit(e.currentTarget.value)},onKeyDown(e){e.currentTarget.tagName===`INPUT`&&e.key===`Enter`&&(v(!0),T.commit(e.currentTarget.value))}},T.getInputValidationProps(),p],stateAttributesMapping:ne})}),_e=G.forwardRef(function(e,t){return(0,K.jsx)(ge,{ref:t,...e})});function Q({className:e,type:t,...n}){return(0,K.jsx)(_e,{type:t,"data-slot":`input`,className:le(`h-8 w-full min-w-0 rounded-lg border border-input bg-transparent px-2.5 py-1 text-base transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40`,e),...n})}function ve(e,t){return t.find(t=>t.kind===e)?.label??e}function $(e){return e?e===`xhigh`?`Extra High`:/^[a-z]+$/.test(e)?`${e.charAt(0).toUpperCase()}${e.slice(1)}`:e:``}var ye=new Set(s);function be({label:e,value:t,placeholder:r,onCommit:i}){let[a,o]=(0,G.useState)(!1),[s,c]=(0,G.useState)(``),[l,u]=(0,G.useState)(!1),[d,f]=(0,G.useState)(),[p,m]=(0,G.useState)(!1);function h(){c(t),f(void 0),m(!1),o(!0)}async function _(){if(!l){if(s===t){o(!1);return}u(!0),f(void 0);try{await i(s),o(!1),m(!0),setTimeout(()=>m(!1),3e3)}catch(e){f(e instanceof Error?e.message:String(e))}finally{u(!1)}}}return(0,K.jsx)(q,{label:e,children:a?(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,K.jsx)(Q,{autoFocus:!0,value:s,placeholder:r,disabled:l,onChange:e=>c(e.currentTarget.value),onKeyDown:e=>{e.key===`Enter`?(e.preventDefault(),_()):e.key===`Escape`&&(e.preventDefault(),o(!1))},className:`h-8 w-64 max-w-full font-serif text-[15px]`}),(0,K.jsxs)(S,{size:`xs`,disabled:l,onClick:()=>void _(),children:[(0,K.jsx)(n,{}),l?`Saving…`:`Save`]}),(0,K.jsxs)(S,{size:`xs`,variant:`ghost`,disabled:l,onClick:()=>o(!1),children:[(0,K.jsx)(g,{}),`Cancel`]}),d&&(0,K.jsx)(Z,{message:d})]}):(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,K.jsx)(me,{onEdit:h,children:t?(0,K.jsx)(`span`,{className:`block break-all font-serif text-[13px] md:text-[15px] text-text`,children:t}):(0,K.jsx)(`span`,{className:`font-serif italic text-[14px] text-text-subtle`,children:r??`—`})}),p&&(0,K.jsx)(X,{})]})})}function xe({startPath:e,onChoose:t,onClose:n}){return(0,G.useEffect)(()=>{function e(e){e.key===`Escape`&&n()}return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[n]),(0,K.jsx)(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center bg-page/70 backdrop-blur-sm`,onClick:n,children:(0,K.jsxs)(`div`,{role:`dialog`,"aria-modal":`true`,"aria-label":`Choose workspace`,className:`mx-4 w-full max-w-2xl rounded-sm border border-border bg-surface p-5 shadow-deep`,onClick:e=>e.stopPropagation(),children:[(0,K.jsx)(`div`,{className:`mb-4 font-serif text-[16px] font-semibold text-text`,children:`Choose home folder`}),(0,K.jsx)(x,{startPath:e,onChoose:t,onCancel:n,confirmLabel:`Choose`})]})})}function Se({value:e,onCommit:t}){let[n,r]=(0,G.useState)(!1),[i,a]=(0,G.useState)(null),[o,s]=(0,G.useState)(!1),[c,l]=(0,G.useState)(),[u,d]=(0,G.useState)(!1);async function f(){if(!(!i||o)){s(!0),l(void 0);try{await t(i),a(null),d(!0),setTimeout(()=>d(!1),4e3)}catch(e){l(e instanceof Error?e.message:String(e))}finally{s(!1)}}}function p(){d(!1),l(void 0),r(!0)}return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(q,{label:`Home`,children:i===null?(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,K.jsxs)(`div`,{role:`button`,tabIndex:0,onClick:p,onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),p())},className:`group -mx-2 -my-1 flex min-w-0 cursor-pointer items-center gap-2 rounded-sm px-2 py-1 outline-none transition-colors hover:bg-surface-elevated focus-visible:bg-surface-elevated`,children:[e?(0,K.jsx)(`span`,{className:`block break-all font-serif text-[13px] md:text-[15px] text-text`,children:e}):(0,K.jsx)(`span`,{className:`font-serif italic text-[14px] text-text-subtle`,children:`Not configured`}),(0,K.jsx)(`span`,{className:`font-sans text-[12px] text-accent opacity-0 transition-opacity group-hover:opacity-100 group-focus-visible:opacity-100 [@media(hover:none)]:opacity-50`,children:`Change`})]}),u&&(0,K.jsx)(X,{}),c&&(0,K.jsx)(Z,{message:c})]}):(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`span`,{className:`block break-all font-mono text-[13px] text-text`,children:i}),(0,K.jsx)(`span`,{className:`font-sans text-[11px] tracking-wide text-text-muted`,children:`Applies automatically when this agent is idle.`})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,K.jsx)(S,{size:`xs`,disabled:o,onClick:()=>void f(),className:`min-h-[44px]`,children:o?`Saving…`:`Save`}),(0,K.jsx)(S,{size:`xs`,variant:`ghost`,disabled:o,onClick:()=>a(null),className:`min-h-[44px]`,children:`Cancel`}),c&&(0,K.jsx)(Z,{message:c})]})]})}),n&&(0,K.jsx)(xe,{startPath:e||void 0,onChoose:e=>{r(!1),a(e)},onClose:()=>r(!1)})]})}function Ce({kind:e,model:t,effort:r,providerOptions:i,onRequestSave:a}){let[o,s]=(0,G.useState)(!1),[c,l]=(0,G.useState)(``),[u,d]=(0,G.useState)(``),[f,p]=(0,G.useState)(``),m=i.find(e=>e.kind===c),h=m?.models??[],_=m?.reasoningEfforts??[],v=_.length>0,y=(i.find(t=>t.kind===e)?.reasoningEfforts??[]).length>0,b=c!==e;function x(){l(e),d(t),p(y?r:``),s(!0)}function C(e){if(!e)return;let t=i.find(t=>t.kind===e);t&&(l(t.kind),d(t.defaultModel),p(we(t)))}function T(){let n=v?f:void 0;if(c===e&&u===t&&n===(y?r:void 0)){s(!1);return}s(!1),a(c,u,n)}return(0,K.jsx)(q,{label:`Provider`,children:o?(0,K.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,K.jsxs)(R,{value:c,onValueChange:C,children:[(0,K.jsx)(F,{className:`h-8 w-40 font-serif text-[14px]`,children:ve(c,i)}),(0,K.jsx)(z,{children:i.map(e=>(0,K.jsx)(w,{value:e.kind,className:`font-serif text-[14px]`,children:e.label},e.kind))})]}),(0,K.jsxs)(R,{value:u,onValueChange:e=>{e&&d(e)},children:[(0,K.jsx)(F,{className:`h-8 w-52 font-serif text-[14px]`,children:$(u)}),(0,K.jsx)(z,{children:h.map(e=>(0,K.jsx)(w,{value:e,className:`font-serif text-[14px]`,children:$(e)},e))})]}),v&&(0,K.jsxs)(R,{value:f,onValueChange:e=>{e&&p(e)},children:[(0,K.jsx)(F,{className:`h-8 w-36 font-serif text-[14px]`,children:$(f)}),(0,K.jsx)(z,{children:_.map(e=>(0,K.jsx)(w,{value:e,className:`font-serif text-[14px]`,children:$(e)},e))})]})]}),b&&(0,K.jsx)(`div`,{className:`max-w-xl font-sans text-[11px] leading-snug text-text-muted`,children:`Switching provider starts a fresh provider session. MEMORY.md, notes, and activity history stay intact; the old provider session is archived.`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsxs)(S,{size:`xs`,onClick:T,children:[(0,K.jsx)(n,{}),`Save`]}),(0,K.jsxs)(S,{size:`xs`,variant:`ghost`,onClick:()=>s(!1),children:[(0,K.jsx)(g,{}),`Cancel`]})]})]}):(0,K.jsx)(`div`,{className:`flex flex-wrap items-baseline`,children:(0,K.jsxs)(me,{onEdit:x,children:[(0,K.jsx)(`span`,{className:`font-serif text-[13px] md:text-[15px] text-text-muted`,children:ve(e,i)}),(0,K.jsx)(`span`,{className:`font-sans mx-1.5 text-[12px] text-text-subtle`,children:`·`}),(0,K.jsx)(`span`,{className:`font-serif text-[13px] md:text-[15px] text-text`,children:$(t)||`—`}),y&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`font-sans mx-1.5 text-[12px] text-text-subtle`,children:`·`}),(0,K.jsx)(`span`,{className:`font-serif text-[13px] md:text-[15px] text-text-muted`,children:$(r)})]})]})})})}function we(e){return e.reasoningEfforts.length===0?``:e.reasoningEfforts.includes(`xhigh`)?o:e.reasoningEfforts[0]??``}function Te({env:e,onCommit:t}){let[r,i]=(0,G.useState)(!1),[a,o]=(0,G.useState)(()=>De(e)),[s,c]=(0,G.useState)(!1),[l,u]=(0,G.useState)(),[d,f]=(0,G.useState)(!1),p=Object.keys(e??{}).sort();function m(e,t){o(n=>n.map(n=>n.id===e?{...n,...t}:n)),u(void 0),f(!1)}function h(){o(e=>[...e,{id:`new-${Date.now()}-${e.length}`,key:``,value:``}]),u(void 0),f(!1)}async function _(){if(s)return;let e=Oe(a);if(`error`in e){u(e.error);return}if(Object.keys(e.patch).length===0){i(!1);return}c(!0),u(void 0);try{await t(e.patch),i(!1),f(!0),setTimeout(()=>f(!1),3e3)}catch(e){u(e instanceof Error?e.message:String(e))}finally{c(!1)}}return(0,K.jsx)(q,{label:`Launch env`,children:r?(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsxs)(`div`,{className:`space-y-2`,children:[a.length===0&&(0,K.jsx)(`div`,{className:`font-serif text-[14px] italic text-text-subtle`,children:`No launch environment variables.`}),a.map(e=>(0,K.jsxs)(`div`,{className:[`grid grid-cols-1 gap-2 sm:grid-cols-[minmax(0,13rem)_minmax(0,1fr)_auto]`,e.deleted?`opacity-45`:``].join(` `),children:[(0,K.jsx)(Q,{value:e.key,disabled:s||e.deleted,placeholder:`KEY`,onChange:t=>m(e.id,{key:t.currentTarget.value}),className:`h-8 font-mono text-[12px]`}),(0,K.jsx)(Q,{value:e.value,disabled:s||e.deleted,placeholder:e.originalKey?`Leave blank to keep current value`:`value`,onChange:t=>m(e.id,{value:t.currentTarget.value}),className:`h-8 font-mono text-[12px]`}),(0,K.jsx)(S,{type:`button`,size:`xs`,variant:`ghost`,disabled:s,onClick:()=>{e.originalKey?m(e.id,{deleted:!e.deleted}):o(t=>t.filter(t=>t.id!==e.id))},children:e.deleted?`Keep`:`Remove`}),ye.has(e.key.trim())&&!e.deleted&&(0,K.jsxs)(`div`,{className:`font-sans text-[11px] text-health-warn sm:col-span-3`,children:[e.key.trim(),` is managed by Anima and cannot be set here.`]})]},e.id))]}),(0,K.jsx)(`div`,{className:`font-sans text-[11px] leading-snug text-text-muted`,children:`Values are write-only after save. Anima-managed keys are not saved here; PATH is allowed, with Anima's bin directory prepended at launch.`}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,K.jsx)(S,{type:`button`,size:`xs`,variant:`outline`,disabled:s,onClick:h,children:`Add var`}),(0,K.jsxs)(S,{type:`button`,size:`xs`,disabled:s,onClick:()=>void _(),children:[(0,K.jsx)(n,{}),s?`Saving…`:`Save`]}),(0,K.jsxs)(S,{type:`button`,size:`xs`,variant:`ghost`,disabled:s,onClick:()=>i(!1),children:[(0,K.jsx)(g,{}),`Cancel`]}),l&&(0,K.jsx)(Z,{message:l})]})]}):(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,K.jsxs)(`button`,{type:`button`,onClick:()=>{o(De(e)),u(void 0),i(!0)},className:`group -mx-2 -my-1 flex min-w-0 cursor-pointer items-baseline gap-2 rounded-sm px-2 py-1 outline-none transition-colors hover:bg-surface-elevated focus-visible:bg-surface-elevated`,children:[(0,K.jsx)(`span`,{className:`font-serif text-[13px] md:text-[15px] text-text`,children:p.length===0?`None`:`${p.length} variable${p.length===1?``:`s`}`}),p.length>0&&(0,K.jsx)(`span`,{className:`max-w-sm truncate font-mono text-[12px] text-text-muted`,children:p.join(`, `)}),(0,K.jsx)(`span`,{className:`font-sans text-[12px] text-accent opacity-0 transition-opacity group-hover:opacity-100 group-focus-visible:opacity-100 [@media(hover:none)]:opacity-50`,children:`Advanced`})]}),d&&(0,K.jsx)(X,{})]})})}function Ee({isActive:e,kindChanged:t=!1,saving:n,onConfirm:r,onCancel:i}){let a=t?` Switching provider starts a fresh provider session; MEMORY.md, notes, and activity history stay intact.`:``;return(0,K.jsx)(L,{open:!0,title:e?`Save and apply when idle?`:`Apply provider change?`,description:e?`Anima is mid-item. Save this config now; this agent will reload itself after the item finishes.${a}`:`Save this config now; this agent will reload itself automatically.${a}`,variant:`warn`,busy:n,confirmLabel:`Save`,busyLabel:`Saving…`,confirmVariant:`default`,onConfirm:r,onCancel:i})}function De(e){return Object.keys(e??{}).sort().map(e=>({id:`existing-${e}`,key:e,originalKey:e,value:``}))}function Oe(e){let t={},n=new Set;for(let r of e){let e=r.key.trim(),i=r.originalKey;if(r.deleted){i&&(t[i]=null);continue}if(!e&&!r.value.trim()&&!i)continue;if(!e)return{error:`Every env var needs a key.`};if(!/^[A-Za-z_][A-Za-z0-9_]*$/.test(e))return{error:`${e} is not a valid environment variable key.`};if(ye.has(e))return{error:`${e} is managed by Anima and cannot be set here.`};if(n.has(e))return{error:`${e} is listed more than once.`};n.add(e);let a=r.value;if(i&&i!==e){if(!a)return{error:`Enter a value to rename ${i}.`};t[i]=null,t[e]=a;continue}if(!i&&!a)return{error:`Enter a value for ${e}.`};a&&(t[e]=a)}return{patch:t}}function ke({stats:e}){if(!e||e.currentContextTokens===void 0){let t=e?.autoCompactWindow&&e.autoCompactWindow>0?`awaiting next item`:null;return(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsx)(`span`,{className:`font-serif italic text-[14px] text-text-subtle`,children:`—`}),t&&(0,K.jsx)(`div`,{className:`font-sans mt-1 text-[11px] tracking-wide text-text-subtle`,children:t})]})}let t=e.currentContextTokens,n=e.autoCompactWindow,i=e.contextWindow,a=n&&n>0?{denom:n,label:`to compact`,detail:[`${r(t)} / ${r(n)}`,i?`model window ${r(i)}`:null,`as of latest activity`].filter(Boolean).join(` · `)}:i&&i>0?{denom:i,label:`full`,detail:`${r(t)} / ${r(i)} model window · as of latest activity`}:null;if(a){let e=Math.min(100,Math.round(t/a.denom*100)),n=e>=90?`bg-health-error`:e>=75?`bg-health-warn`:`bg-accent`;return(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-baseline gap-1.5`,children:[(0,K.jsxs)(`span`,{className:`font-serif text-[18px] leading-none text-text`,children:[e,`%`]}),(0,K.jsx)(`span`,{className:`font-sans text-[11px] tracking-wide text-text-muted`,children:a.label})]}),(0,K.jsx)(`div`,{className:`mt-2 h-1 w-44 max-w-full overflow-hidden rounded-full bg-border-soft`,children:(0,K.jsx)(`span`,{className:`block h-full rounded-full ${n}`,style:{width:`${e}%`}})}),(0,K.jsx)(`div`,{className:`font-sans mt-1.5 text-[11px] tracking-wide text-text-subtle`,children:a.detail})]})}return(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsxs)(`div`,{className:`font-mono text-[13px] text-text`,children:[r(t),` tokens`]}),(0,K.jsx)(`div`,{className:`font-sans mt-1 text-[11px] tracking-wide text-text-subtle`,children:`as of latest activity`})]})}function Ae({stats:e,session:t,now:n}){let r=t?.current?.updatedAt,i=t?.currentStartedAt??t?.createdAt;return(0,K.jsxs)(`div`,{className:`divide-y divide-border-soft`,children:[(0,K.jsx)(q,{label:`Context`,children:(0,K.jsx)(ke,{stats:e})}),(0,K.jsx)(q,{label:`Compactions`,children:(0,K.jsx)(J,{value:e?.sessionCompactionCount===void 0?void 0:String(e.sessionCompactionCount),mono:!0})}),(0,K.jsx)(q,{label:`Started`,children:i?(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsx)(`span`,{className:`font-serif text-[15px] text-text`,children:l(i)}),(0,K.jsxs)(`span`,{className:`font-sans ml-2 text-[11px] tracking-wide text-text-subtle`,children:[`up `,_(i,n)]})]}):(0,K.jsx)(J,{})}),(0,K.jsx)(q,{label:`Latest activity`,children:r?(0,K.jsx)(`span`,{className:`font-serif text-[15px] text-text`,title:new Date(r).toLocaleString(),children:u(r,n)}):(0,K.jsx)(J,{})})]})}function je({agentId:t}){let{data:r}=W({queryKey:H.agentSlackManifestUpdate(t),queryFn:()=>se(t)}),[i,a]=(0,G.useState)(``),[o,s]=(0,G.useState)(!1),[l,u]=(0,G.useState)(!1),[d,f]=(0,G.useState)(null),[p,h]=(0,G.useState)(!1),[_,v]=(0,G.useState)(null);if(!r?.needsUpdate)return null;async function y(){if(r){f(null);try{await Me(r.manifestUpdateYaml),s(!0),setTimeout(()=>s(!1),2500)}catch{u(!0),f(`Copy failed. Manifest details are open below so you can copy the full YAML manually.`)}}}async function x(){if(!(!i.trim()||p)){h(!0),v(null);try{await b(t,{botToken:i.trim()}),a(``),k(t),C.invalidateQueries({queryKey:H.agentSlackManifestUpdate(t)})}catch(e){v(he(e))}finally{h(!1)}}}return(0,K.jsxs)(`div`,{className:`rounded-sm border border-health-warn/30 bg-health-warn-soft px-4 py-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsx)(`div`,{className:`font-serif text-[14px] font-semibold text-text`,children:`Slack app update available`}),(0,K.jsx)(`div`,{className:`mt-1 font-serif text-[13px] leading-snug text-text-muted`,children:`Shortcuts and other new features require a one-time Slack app reinstall.`})]}),(0,K.jsxs)(`span`,{className:`shrink-0 rounded-sm border border-health-warn/30 px-1.5 py-0.5 font-mono text-[10px] text-health-warn`,children:[`v`,r.agentVersion,`→v`,r.currentVersion]})]}),(0,K.jsxs)(`div`,{className:`mt-4 space-y-4`,children:[(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,K.jsx)(`div`,{className:`font-sans text-[11px] font-semibold uppercase tracking-wide text-text-subtle`,children:`Step 1 · Update app manifest`}),(0,K.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,K.jsxs)(`button`,{type:`button`,onClick:()=>void y(),className:`inline-flex items-center gap-1 rounded-sm border border-border-soft px-2 py-1 font-sans text-[11px] text-text hover:border-border hover:bg-surface`,children:[o?(0,K.jsx)(n,{className:`h-3 w-3`}):(0,K.jsx)(fe,{className:`h-3 w-3`}),o?`Copied`:`Copy full manifest`]}),r.appManifestUrl&&(0,K.jsxs)(`a`,{href:r.appManifestUrl,target:`_blank`,rel:`noreferrer`,className:`inline-flex items-center gap-1 font-sans text-[11px] text-accent underline decoration-accent/40 underline-offset-2 hover:decoration-accent`,children:[`Open App Manifest `,(0,K.jsx)(e,{className:`h-3 w-3`})]})]})]}),(0,K.jsx)(`div`,{className:`font-serif text-[13px] leading-snug text-text-muted`,children:`Open the Slack app manifest editor, replace its YAML with the copied manifest, then save.`}),(0,K.jsxs)(`button`,{type:`button`,onClick:()=>u(e=>!e),className:`inline-flex items-center gap-1 font-sans text-[11px] text-text-subtle underline decoration-text-subtle/40 underline-offset-2 hover:text-text-muted hover:decoration-text-muted/40`,children:[(0,K.jsx)(m,{className:`h-3 w-3 transition-transform ${l?`rotate-180`:``}`}),l?`Hide manifest details`:`Show manifest details`]}),l&&(0,K.jsx)(`pre`,{className:`max-h-52 overflow-auto rounded-sm border border-border-soft bg-surface px-3 py-2 font-mono text-[11px] leading-relaxed text-text-muted`,children:r.manifestUpdateYaml}),d&&(0,K.jsxs)(`div`,{className:`flex items-start gap-1.5 font-sans text-[12px] text-health-error`,children:[(0,K.jsx)(g,{className:`mt-px h-3.5 w-3.5 shrink-0`}),(0,K.jsx)(`span`,{children:d})]})]}),(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,K.jsx)(`div`,{className:`font-sans text-[11px] font-semibold uppercase tracking-wide text-text-subtle`,children:`Step 2 · Reinstall and save token`}),r.reinstallUrl&&(0,K.jsxs)(`a`,{href:r.reinstallUrl,target:`_blank`,rel:`noreferrer`,className:`inline-flex shrink-0 items-center gap-1 font-sans text-[11px] text-accent underline decoration-accent/40 underline-offset-2 hover:decoration-accent`,children:[`Reinstall `,(0,K.jsx)(e,{className:`h-3 w-3`})]})]}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row`,children:[(0,K.jsx)(`input`,{type:`text`,value:i,onChange:e=>{a(e.target.value),v(null)},placeholder:`Paste new xoxb-… Bot User OAuth Token`,className:`min-w-0 flex-1 rounded-sm border border-border bg-muted/30 px-3 py-1.5 font-mono text-[12px] text-text placeholder:font-sans placeholder:text-text-muted focus:outline-none focus:ring-1 focus:ring-ring`}),(0,K.jsx)(S,{onClick:()=>void x(),disabled:p||!i.trim(),children:p?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(c,{className:`h-3.5 w-3.5 animate-spin`}),`Saving`]}):`Save`})]}),_&&(0,K.jsxs)(`div`,{className:`flex items-start gap-1.5 font-sans text-[12px] text-health-error`,children:[(0,K.jsx)(g,{className:`mt-px h-3.5 w-3.5 shrink-0`}),(0,K.jsx)(`span`,{children:_})]})]})]})]})}async function Me(e){if(navigator.clipboard?.writeText)try{await navigator.clipboard.writeText(e);return}catch{}let t=document.createElement(`textarea`);t.value=e,t.setAttribute(`readonly`,`true`),t.style.position=`fixed`,t.style.left=`-9999px`,t.style.top=`0`,document.body.appendChild(t),t.select();try{if(!document.execCommand(`copy`))throw Error(`execCommand copy returned false`)}finally{document.body.removeChild(t)}}function Ne({skill:e}){return(0,K.jsxs)(`div`,{className:`py-2.5`,children:[(0,K.jsx)(`div`,{className:`font-serif text-[14px] leading-snug text-text`,children:e.name}),e.description&&(0,K.jsx)(`div`,{className:`mt-0.5 line-clamp-2 font-sans text-[12px] leading-relaxed text-text-muted`,children:e.description})]})}function Pe({label:e,icon:t,path:n,skills:r}){return(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`mb-1 flex items-center gap-1.5`,children:[(0,K.jsx)(t,{className:`h-3 w-3 shrink-0 text-text-subtle`}),(0,K.jsx)(`span`,{className:`caps text-text-subtle`,children:e})]}),(0,K.jsx)(`div`,{className:`mb-2 font-mono text-[11px] text-text-subtle/60 leading-snug truncate`,title:n,children:n}),r.length===0?(0,K.jsx)(`p`,{className:`font-serif italic text-[13px] text-text-subtle`,children:`None`}):(0,K.jsx)(`div`,{className:`divide-y divide-border-soft/60`,children:r.map(e=>(0,K.jsx)(Ne,{skill:e},e.dirName))})]})}function Fe({agentId:e}){let{data:n,isLoading:r}=W({queryKey:H.agentSkills(e),queryFn:()=>I(e),enabled:!!e,staleTime:6e4});return r||!n?(0,K.jsx)(`div`,{className:`space-y-1`,children:[1,2,3].map(e=>(0,K.jsx)(`div`,{className:`h-4 w-32 animate-pulse rounded bg-surface-elevated`},e))}):(0,K.jsxs)(`div`,{className:`space-y-6`,children:[(0,K.jsx)(Pe,{label:`Global skills`,icon:t,path:n.globalPath,skills:n.global}),(0,K.jsx)(Pe,{label:`This agent's skills`,icon:de,path:n.localPath,skills:n.local})]})}function Ie(){let t=(0,G.useRef)(null),{agentId:n}=p();(0,G.useEffect)(()=>{t.current?.scrollTo(0,0)},[n]);let{data:r,isError:i}=W({queryKey:H.agent(n??``),queryFn:()=>N(n),enabled:!!n,retry:!1}),{data:a=[]}=W({queryKey:H.agentStatuses(),queryFn:D}),o=a.find(e=>e.agentId===n)?.currentItemId,{data:s}=W({queryKey:H.agentSession(n??``,o),queryFn:()=>T(n),enabled:!!n}),[c,u]=(0,G.useState)(!1),[d,m]=(0,G.useState)(!1),[h,_]=(0,G.useState)(null),[y,b]=(0,G.useState)(!1),[x,S]=(0,G.useState)(null),[C,w]=(0,G.useState)(null);function E(e=`Saved. This agent will apply the change when the current item finishes.`){w(e),setTimeout(()=>w(null),6e3)}function O(e){I&&E(e)}let[ee,j]=(0,G.useState)(()=>new Date);(0,G.useEffect)(()=>{let e=setInterval(()=>j(new Date),6e4);return()=>clearInterval(e)},[]);let P=f();if(!n)return null;if(i)return(0,K.jsx)(`div`,{className:`absolute inset-0 flex items-center justify-center bg-surface`,children:(0,K.jsx)(`span`,{className:`font-serif text-[14px] text-text-muted`,children:`Agent not found.`})});if(!r)return(0,K.jsx)(`div`,{className:`absolute inset-0 flex items-center justify-center bg-surface`,children:(0,K.jsx)(`div`,{className:`h-6 w-28 animate-pulse rounded bg-surface-elevated`})});if(!r.provider)return null;let F=s?.latestProviderStats,I=!!a.find(e=>e.agentId===n)?.currentItemId,ne=s?.archived?.length??0,L=r.createdAt??s?.createdAt;async function R(e){if(!n)return;let t={},r={};(`displayName`in e||`role`in e)&&(`displayName`in e&&(t.displayName=e.displayName),`role`in e&&(t.role=e.role)),(`kind`in e||`model`in e||`reasoningEffort`in e)&&(`kind`in e&&(r.kind=e.kind),`model`in e&&(r.model=e.model),`reasoningEffort`in e&&(r.reasoningEffort=e.reasoningEffort)),(Object.keys(t).length>0||Object.keys(r).length>0)&&(Object.keys(t).length>0&&await te(n,t),Object.keys(r).length>0&&await A(n,r),O(),k(n))}async function ie(){if(!(!n||c)){u(!0);try{await ae(n),k(n)}catch{}finally{u(!1)}}}async function z(e){n&&(await re(n,{homePath:e}),O(),k(n))}async function B(e){n&&(await A(n,{env:e}),O(`Saved. This agent will apply launch env changes when the current item finishes.`),k(n))}async function V(){if(!(!h||y||!n)){b(!0),S(null);try{await A(n,{kind:h.kind,model:h.model,...h.effort?{reasoningEffort:h.effort}:{}}),_(null),O(),k(n)}catch(e){S(he(e)),_(null)}finally{b(!1)}}}return(0,K.jsxs)(`div`,{ref:t,className:`absolute inset-0 overflow-y-auto bg-surface px-6 py-8 md:px-10 md:py-8`,children:[(0,K.jsxs)(`div`,{className:`max-w-3xl`,children:[C&&(0,K.jsxs)(`div`,{className:`relative mb-8 rounded-sm border border-health-warn/30 bg-health-warn-soft px-4 py-3 pl-5`,children:[(0,K.jsx)(`span`,{"aria-hidden":!0,className:`absolute left-0 top-2 bottom-2 w-px bg-health-warn/60`}),(0,K.jsx)(`span`,{className:`font-serif text-[14px] text-text`,children:C})]}),(0,K.jsxs)(`div`,{className:`divide-y divide-border-soft`,children:[(0,K.jsx)(be,{label:`Name`,value:r.profile?.displayName??``,placeholder:`Unnamed`,onCommit:e=>R({displayName:e})}),(0,K.jsx)(be,{label:`Role`,value:r.profile?.role??``,placeholder:`No role`,onCommit:e=>R({role:e})}),(0,K.jsx)(Se,{value:r.homePath??``,onCommit:z}),(0,K.jsx)(Ce,{kind:r.provider.kind,model:r.provider.model??``,effort:(`reasoningEffort`in r.provider?r.provider.reasoningEffort:void 0)??``,providerOptions:P,onRequestSave:(e,t,n)=>_({kind:e,model:t,effort:n})}),(0,K.jsx)(Te,{env:r.provider.env,onCommit:B}),(0,K.jsx)(q,{label:`Created`,children:L?(0,K.jsx)(`span`,{className:`font-serif text-[15px] text-text`,title:new Date(L).toLocaleString(),children:l(L)}):(0,K.jsx)(J,{})}),(0,K.jsx)(q,{label:`Owner`,children:r.owner?(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[r.owner.avatarUrl?(0,K.jsx)(`img`,{src:r.owner.avatarUrl,alt:``,className:`h-5 w-5 shrink-0 rounded-full object-cover`}):(0,K.jsx)(`span`,{className:`flex h-5 w-5 shrink-0 items-center justify-center rounded-full bg-muted font-sans text-[10px] font-bold text-text-muted`,children:r.owner.displayName.charAt(0).toUpperCase()}),(0,K.jsxs)(`span`,{className:`font-serif text-[15px] text-text`,children:[r.owner.displayName,r.owner.handle&&(0,K.jsxs)(`span`,{className:`font-sans text-[13px] text-text-muted`,children:[` @`,r.owner.handle]})]}),r.slack?.connected===!0&&(0,K.jsx)(`button`,{type:`button`,onClick:()=>m(!0),className:`font-sans ml-1 text-[11px] text-text-subtle underline decoration-text-subtle/40 underline-offset-2 hover:text-text hover:decoration-text/40 transition-colors`,children:`Change`})]}):r.slack?.connected===!0?(0,K.jsx)(`button`,{type:`button`,onClick:()=>m(!0),className:`font-sans text-[13px] text-accent underline decoration-accent/40 underline-offset-2 hover:decoration-accent transition-colors`,children:`Assign owner →`}):(0,K.jsx)(J,{})}),d&&r.slack?.connected===!0&&(0,K.jsx)(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center bg-page/70 backdrop-blur-sm`,children:(0,K.jsxs)(`div`,{className:`relative w-full max-w-md rounded-sm border border-border-soft bg-surface shadow-deep`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between border-b border-border-soft px-5 py-4`,children:[(0,K.jsx)(`span`,{className:`font-serif text-[15px] font-semibold text-text`,children:r.owner?`Change owner`:`Assign owner`}),(0,K.jsx)(`button`,{onClick:()=>m(!1),className:`flex h-8 w-8 items-center justify-center rounded-sm text-text-muted hover:bg-surface-elevated hover:text-text`,children:(0,K.jsx)(g,{className:`h-4 w-4`})})]}),(0,K.jsx)(`div`,{className:`p-5`,children:(0,K.jsx)(oe,{agentId:n,onConfirm:()=>{m(!1),k(n)},submitLabel:r.owner?`Change owner →`:`Assign owner →`,autoFocus:!0,showRationale:!0},n)})]})}),r.slack?.connected===!0&&(0,K.jsx)(q,{label:`Sessions archived`,children:(0,K.jsx)(J,{value:String(ne),mono:!0})})]}),(0,K.jsx)(Y,{title:`Slack`,children:r.slack?.connected===!0?(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3 overflow-hidden rounded-sm border border-border-soft bg-surface-elevated px-4 py-3`,children:[r.slack.avatarUrl?(0,K.jsx)(`img`,{src:r.slack.avatarUrl,alt:``,className:`h-9 w-9 shrink-0 rounded-sm object-cover`}):(0,K.jsx)(`span`,{className:`flex h-9 w-9 shrink-0 items-center justify-center rounded-sm bg-muted font-serif text-[17px] font-semibold text-text-muted`,children:(r.profile?.displayName??r.id).charAt(0).toUpperCase()}),(0,K.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,K.jsxs)(`div`,{className:`font-serif text-[15px] font-semibold leading-snug text-text`,children:[`@`,r.id]}),r.slack.workspaceName&&(0,K.jsx)(`div`,{className:`font-sans mt-0.5 text-[13px] text-text-muted`,children:r.slack.workspaceName})]}),(0,K.jsxs)(`div`,{className:`flex shrink-0 items-center gap-0.5`,children:[r.slack.appId&&(0,K.jsx)(`a`,{href:`https://api.slack.com/apps/${r.slack.appId}/general`,target:`_blank`,rel:`noreferrer`,title:`Slack App Settings`,className:`flex h-7 w-7 items-center justify-center rounded-sm text-text-subtle opacity-40 transition-all hover:bg-page hover:opacity-100`,children:(0,K.jsx)(e,{className:`h-3.5 w-3.5`})}),(0,K.jsx)(`button`,{onClick:()=>void ie(),disabled:c,title:`Sync avatar from Slack`,className:`flex h-7 w-7 items-center justify-center rounded-sm text-text-subtle opacity-40 transition-all hover:bg-page hover:opacity-100 disabled:opacity-20`,children:(0,K.jsx)(v,{className:`h-3.5 w-3.5 ${c?`animate-spin`:``}`})})]})]}),(0,K.jsx)(je,{agentId:n})]}):(0,K.jsx)(M,{agentId:n,onConnect:()=>k(n)})}),r.slack?.connected===!0&&(0,K.jsx)(Y,{title:`This session`,children:(0,K.jsx)(Ae,{stats:F,session:s??void 0,now:ee})}),(0,K.jsx)(Y,{title:`Skills`,children:(0,K.jsx)(Fe,{agentId:n})})]}),h&&(0,K.jsx)(Ee,{isActive:I,kindChanged:h.kind!==r.provider.kind,saving:y,onConfirm:()=>void V(),onCancel:()=>_(null)}),x&&(0,K.jsxs)(`div`,{className:`fixed bottom-4 left-1/2 z-50 -translate-x-1/2 rounded-sm border border-health-error/40 bg-health-error-soft px-4 py-2 shadow-deep`,children:[(0,K.jsx)(`span`,{className:`font-sans text-[12px] text-health-error`,children:x}),(0,K.jsx)(`button`,{className:`ml-3 font-sans text-[11px] text-text-muted hover:text-text`,onClick:()=>S(null),children:`Dismiss`})]})]})}export{Ie as default};
@@ -1 +0,0 @@
1
- import{Ct as e,Dt as t,Mt as n,Ot as r,R as i,X as a,kt as o,st as s,vt as c,xt as l}from"./index-CzAQnbuO.js";var u=n(o(),1),d=e();function f(e,t){if(e.kind===`once`)return t?new Date(t).toLocaleString(void 0,{month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`}):`One-shot`;if(e.kind===`interval`){let t=Math.round(e.intervalMs/6e4);if(t<60)return`Every ${t} minute${t===1?``:`s`}`;let n=Math.round(t/60);if(n<24)return`Every ${n} hour${n===1?``:`s`}`;let r=Math.round(n/24);return`Every ${r} day${r===1?``:`s`}`}return e.kind===`daily`?`Daily at ${e.time}`:`Weekly ${e.weekdays.map(e=>e.charAt(0).toUpperCase()+e.slice(1,3)).join(`, `)} at ${e.time}`}function p({reminder:e,onViewStream:t}){return(0,d.jsxs)(`div`,{className:`space-y-4 rounded-sm border border-border-soft bg-surface-raised p-4`,children:[(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`div`,{className:`caps text-text-muted`,children:`Instructions`}),(0,d.jsx)(`div`,{className:`font-serif mt-1.5 whitespace-pre-wrap break-words text-[14px] leading-[1.6] text-text`,children:e.instructions})]}),(0,d.jsxs)(`div`,{className:`font-sans grid grid-cols-2 gap-x-4 gap-y-1 text-[11px] tracking-wide text-text-muted`,children:[(0,d.jsxs)(`div`,{children:[(0,d.jsx)(`span`,{className:`text-text-subtle`,children:`Fired`}),` `,(0,d.jsx)(`span`,{className:`font-mono ml-1`,children:e.firedCount})]}),e.lastFiredAt&&(0,d.jsxs)(`div`,{className:`col-span-2`,children:[(0,d.jsx)(`span`,{className:`text-text-subtle`,children:`Last fired`}),` `,new Date(e.lastFiredAt).toLocaleString()]}),e.provenance&&(0,d.jsxs)(`div`,{className:`col-span-2`,children:[(0,d.jsx)(`span`,{className:`text-text-subtle`,children:`Provenance`}),` `,(0,d.jsxs)(`span`,{className:`font-mono`,children:[e.provenance.channelId,` / `,e.provenance.messageTs]})]})]}),e.lastFiredAt&&(0,d.jsx)(`button`,{onClick:t,className:`chrome text-[11px] uppercase tracking-[0.12em] text-text-muted underline decoration-border-soft underline-offset-4 hover:text-accent hover:decoration-accent`,children:`View activity stream →`})]})}function m({reminder:e,now:t,onViewStream:n}){let[r,o]=(0,u.useState)(!1),s=e.schedule.kind!==`once`,c=e.nextDueAt;return(0,d.jsxs)(`div`,{className:`border-b border-border-soft last:border-b-0`,children:[(0,d.jsxs)(`button`,{onClick:()=>o(e=>!e),className:`grid w-full grid-cols-[1fr_auto] items-start gap-3 px-1 py-3.5 text-left hover:bg-surface-elevated/40`,children:[(0,d.jsxs)(`div`,{className:`min-w-0`,children:[(0,d.jsx)(`div`,{className:`font-serif text-[15px] leading-snug text-text`,children:e.title}),(0,d.jsxs)(`div`,{className:`font-sans mt-1 flex flex-wrap items-baseline gap-x-2 gap-y-0.5 text-[11px] tracking-wide text-text-muted`,children:[(0,d.jsx)(`span`,{children:f(e.schedule,e.nextDueAt)}),c&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(`span`,{className:`text-text-subtle`,children:`·`}),(0,d.jsxs)(`span`,{children:[`next `,i(c,t)]})]}),s&&e.lastFiredAt&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(`span`,{className:`text-text-subtle`,children:`·`}),(0,d.jsxs)(`span`,{children:[`last fired `,i(e.lastFiredAt,t)]})]})]})]}),(0,d.jsx)(a,{className:`mt-1.5 h-3.5 w-3.5 shrink-0 text-text-subtle transition-transform ${r?`rotate-90`:``}`})]}),r&&(0,d.jsx)(`div`,{className:`px-1 pb-4`,children:(0,d.jsx)(p,{reminder:e,onViewStream:n})})]})}function h({reminder:e,now:t,onViewStream:n}){let[r,o]=(0,u.useState)(!1),s=e.cancelledAt??e.lastFiredAt??e.updatedAt;return(0,d.jsxs)(`div`,{className:`border-b border-border-soft last:border-b-0`,children:[(0,d.jsxs)(`button`,{onClick:()=>o(e=>!e),className:`grid w-full grid-cols-[1fr_auto] items-start gap-3 px-1 py-3.5 text-left hover:bg-surface-elevated/40`,children:[(0,d.jsxs)(`div`,{className:`min-w-0 flex flex-wrap items-baseline gap-x-2 gap-y-0.5`,children:[(0,d.jsx)(`span`,{className:`font-serif text-[15px] leading-snug text-text`,children:e.title}),(0,d.jsx)(`span`,{className:`chrome shrink-0 rounded-sm border border-border-soft bg-surface-elevated px-1.5 py-0.5 text-[10px] uppercase tracking-[0.1em] text-text`,children:e.status}),(0,d.jsx)(`span`,{className:`font-sans text-[11px] tracking-wide text-text-muted`,children:i(s,t)})]}),(0,d.jsx)(a,{className:`mt-1.5 h-3.5 w-3.5 shrink-0 text-text-subtle transition-transform ${r?`rotate-90`:``}`})]}),r&&(0,d.jsx)(`div`,{className:`px-1 pb-4`,children:(0,d.jsx)(p,{reminder:e,onViewStream:n})})]})}function g({title:e,count:t}){return(0,d.jsxs)(`div`,{className:`mb-3 flex items-baseline gap-4`,children:[(0,d.jsxs)(`h2`,{className:`caps text-text-muted`,children:[e,(0,d.jsx)(`span`,{className:`ml-2 font-mono text-[11px] tracking-normal text-text-subtle`,children:t})]}),(0,d.jsx)(`span`,{className:`h-px flex-1 bg-border-soft`})]})}function _(){let e=(0,u.useRef)(null),{agentId:n}=r(),i=t();(0,u.useEffect)(()=>{e.current?.scrollTo(0,0)},[n]);let[a,o]=(0,u.useState)(()=>new Date);(0,u.useEffect)(()=>{let e=setInterval(()=>o(new Date),6e4);return()=>clearInterval(e)},[]);let{data:f=[],error:p}=l({queryKey:c.agentReminders(n??``),queryFn:()=>s(n),enabled:!!n}),{active:_,past:v}=(0,u.useMemo)(()=>({active:f.filter(e=>e.status===`scheduled`).sort((e,t)=>(e.nextDueAt??e.updatedAt).localeCompare(t.nextDueAt??t.updatedAt)),past:f.filter(e=>e.status===`fired`||e.status===`cancelled`).sort((e,t)=>t.updatedAt.localeCompare(e.updatedAt))}),[f]);return n?(0,d.jsx)(`div`,{ref:e,className:`bg-surface h-full overflow-y-auto px-6 py-8 md:px-10 md:py-10`,children:(0,d.jsxs)(`div`,{className:`max-w-3xl`,children:[p&&(0,d.jsx)(`div`,{className:`mb-6 rounded-sm border border-border-soft bg-surface-raised px-4 py-3 text-[13px] text-text-subtle`,children:p instanceof Error?p.message:String(p)}),(0,d.jsxs)(`section`,{className:`first:mt-0`,children:[(0,d.jsx)(g,{title:`Active`,count:_.length}),_.length===0?(0,d.jsx)(`div`,{className:`font-serif italic py-3 text-[14px] text-text-subtle`,children:`No active reminders.`}):(0,d.jsx)(`div`,{className:`divide-y divide-border-soft border-b border-border-soft`,children:_.map(e=>(0,d.jsx)(m,{reminder:e,now:a,onViewStream:()=>i(`/agents/${n}/activity`)},e.reminderId))})]}),v.length>0&&(0,d.jsxs)(`section`,{className:`mt-10`,children:[(0,d.jsx)(g,{title:`Past`,count:v.length}),(0,d.jsx)(`div`,{className:`divide-y divide-border-soft border-b border-border-soft`,children:v.map(e=>(0,d.jsx)(h,{reminder:e,now:a,onViewStream:()=>i(`/agents/${n}/activity`)},e.reminderId))})]})]})}):null}export{_ as default};