daycare-cli 2026.2.23 → 2026.2.25

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 (247) hide show
  1. package/dist/commands/models.d.ts +10 -0
  2. package/dist/commands/models.d.ts.map +1 -0
  3. package/dist/commands/models.js +210 -0
  4. package/dist/commands/models.js.map +1 -0
  5. package/dist/engine/agents/agent.d.ts.map +1 -1
  6. package/dist/engine/agents/agent.js +28 -17
  7. package/dist/engine/agents/agent.js.map +1 -1
  8. package/dist/engine/agents/agentSystem.d.ts.map +1 -1
  9. package/dist/engine/agents/agentSystem.js +7 -3
  10. package/dist/engine/agents/agentSystem.js.map +1 -1
  11. package/dist/engine/agents/ops/agentBackgroundList.d.ts.map +1 -1
  12. package/dist/engine/agents/ops/agentBackgroundList.js +8 -2
  13. package/dist/engine/agents/ops/agentBackgroundList.js.map +1 -1
  14. package/dist/engine/agents/ops/agentDescriptorCacheKey.d.ts.map +1 -1
  15. package/dist/engine/agents/ops/agentDescriptorCacheKey.js +4 -0
  16. package/dist/engine/agents/ops/agentDescriptorCacheKey.js.map +1 -1
  17. package/dist/engine/agents/ops/agentDescriptorCacheKey.spec.js +16 -0
  18. package/dist/engine/agents/ops/agentDescriptorCacheKey.spec.js.map +1 -1
  19. package/dist/engine/agents/ops/agentDescriptorLabel.d.ts.map +1 -1
  20. package/dist/engine/agents/ops/agentDescriptorLabel.js +6 -0
  21. package/dist/engine/agents/ops/agentDescriptorLabel.js.map +1 -1
  22. package/dist/engine/agents/ops/agentDescriptorLabel.spec.js +8 -0
  23. package/dist/engine/agents/ops/agentDescriptorLabel.spec.js.map +1 -1
  24. package/dist/engine/agents/ops/agentDescriptorRoleResolve.d.ts +8 -0
  25. package/dist/engine/agents/ops/agentDescriptorRoleResolve.d.ts.map +1 -0
  26. package/dist/engine/agents/ops/agentDescriptorRoleResolve.js +27 -0
  27. package/dist/engine/agents/ops/agentDescriptorRoleResolve.js.map +1 -0
  28. package/dist/engine/agents/ops/agentDescriptorRoleResolve.spec.d.ts +2 -0
  29. package/dist/engine/agents/ops/agentDescriptorRoleResolve.spec.d.ts.map +1 -0
  30. package/dist/engine/agents/ops/agentDescriptorRoleResolve.spec.js +63 -0
  31. package/dist/engine/agents/ops/agentDescriptorRoleResolve.spec.js.map +1 -0
  32. package/dist/engine/agents/ops/agentDescriptorTypes.d.ts +10 -0
  33. package/dist/engine/agents/ops/agentDescriptorTypes.d.ts.map +1 -1
  34. package/dist/engine/agents/ops/agentLoopRun.d.ts.map +1 -1
  35. package/dist/engine/agents/ops/agentLoopRun.js +7 -3
  36. package/dist/engine/agents/ops/agentLoopRun.js.map +1 -1
  37. package/dist/engine/agents/ops/agentPromptResolve.d.ts.map +1 -1
  38. package/dist/engine/agents/ops/agentPromptResolve.js +8 -1
  39. package/dist/engine/agents/ops/agentPromptResolve.js.map +1 -1
  40. package/dist/engine/agents/ops/agentPromptResolve.spec.js +22 -0
  41. package/dist/engine/agents/ops/agentPromptResolve.spec.js.map +1 -1
  42. package/dist/engine/agents/ops/agentSystemPrompt.d.ts.map +1 -1
  43. package/dist/engine/agents/ops/agentSystemPrompt.js +3 -1
  44. package/dist/engine/agents/ops/agentSystemPrompt.js.map +1 -1
  45. package/dist/engine/agents/ops/agentSystemPrompt.spec.js +9 -0
  46. package/dist/engine/agents/ops/agentSystemPrompt.spec.js.map +1 -1
  47. package/dist/engine/agents/ops/agentSystemPromptSectionAutonomousOperation.d.ts.map +1 -1
  48. package/dist/engine/agents/ops/agentSystemPromptSectionAutonomousOperation.js +3 -2
  49. package/dist/engine/agents/ops/agentSystemPromptSectionAutonomousOperation.js.map +1 -1
  50. package/dist/engine/agents/ops/agentSystemPromptSectionModels.d.ts +7 -0
  51. package/dist/engine/agents/ops/agentSystemPromptSectionModels.d.ts.map +1 -0
  52. package/dist/engine/agents/ops/agentSystemPromptSectionModels.js +42 -0
  53. package/dist/engine/agents/ops/agentSystemPromptSectionModels.js.map +1 -0
  54. package/dist/engine/agents/ops/agentSystemPromptSectionModels.spec.d.ts +2 -0
  55. package/dist/engine/agents/ops/agentSystemPromptSectionModels.spec.d.ts.map +1 -0
  56. package/dist/engine/agents/ops/agentSystemPromptSectionModels.spec.js +54 -0
  57. package/dist/engine/agents/ops/agentSystemPromptSectionModels.spec.js.map +1 -0
  58. package/dist/engine/agents/ops/agentSystemPromptSectionPreamble.d.ts.map +1 -1
  59. package/dist/engine/agents/ops/agentSystemPromptSectionPreamble.js +3 -2
  60. package/dist/engine/agents/ops/agentSystemPromptSectionPreamble.js.map +1 -1
  61. package/dist/engine/agents/ops/agentSystemPromptSectionToolCalling.d.ts.map +1 -1
  62. package/dist/engine/agents/ops/agentSystemPromptSectionToolCalling.js +22 -2
  63. package/dist/engine/agents/ops/agentSystemPromptSectionToolCalling.js.map +1 -1
  64. package/dist/engine/agents/ops/agentSystemPromptSectionToolCalling.spec.d.ts +2 -0
  65. package/dist/engine/agents/ops/agentSystemPromptSectionToolCalling.spec.d.ts.map +1 -0
  66. package/dist/engine/agents/ops/agentSystemPromptSectionToolCalling.spec.js +62 -0
  67. package/dist/engine/agents/ops/agentSystemPromptSectionToolCalling.spec.js.map +1 -0
  68. package/dist/engine/agents/ops/agentToolExecutionAllowlistResolve.d.ts.map +1 -1
  69. package/dist/engine/agents/ops/agentToolExecutionAllowlistResolve.js +8 -0
  70. package/dist/engine/agents/ops/agentToolExecutionAllowlistResolve.js.map +1 -1
  71. package/dist/engine/agents/ops/agentToolExecutionAllowlistResolve.spec.js +8 -0
  72. package/dist/engine/agents/ops/agentToolExecutionAllowlistResolve.spec.js.map +1 -1
  73. package/dist/engine/engine.d.ts.map +1 -1
  74. package/dist/engine/engine.js +8 -0
  75. package/dist/engine/engine.js.map +1 -1
  76. package/dist/engine/ipc/server.d.ts.map +1 -1
  77. package/dist/engine/ipc/server.js +14 -3
  78. package/dist/engine/ipc/server.js.map +1 -1
  79. package/dist/engine/memory/memoryWorker.js +3 -3
  80. package/dist/engine/memory/memoryWorker.js.map +1 -1
  81. package/dist/engine/modules/tools/background.d.ts.map +1 -1
  82. package/dist/engine/modules/tools/background.js +38 -1
  83. package/dist/engine/modules/tools/background.js.map +1 -1
  84. package/dist/engine/modules/tools/channelSendTool.js +6 -0
  85. package/dist/engine/modules/tools/channelSendTool.js.map +1 -1
  86. package/dist/engine/modules/tools/cron.d.ts.map +1 -1
  87. package/dist/engine/modules/tools/cron.js +12 -9
  88. package/dist/engine/modules/tools/cron.js.map +1 -1
  89. package/dist/engine/modules/tools/memoryNodeReadToolBuild.d.ts.map +1 -1
  90. package/dist/engine/modules/tools/memoryNodeReadToolBuild.js +1 -1
  91. package/dist/engine/modules/tools/memoryNodeReadToolBuild.js.map +1 -1
  92. package/dist/engine/modules/tools/memorySearchToolBuild.d.ts +7 -0
  93. package/dist/engine/modules/tools/memorySearchToolBuild.d.ts.map +1 -0
  94. package/dist/engine/modules/tools/memorySearchToolBuild.js +66 -0
  95. package/dist/engine/modules/tools/memorySearchToolBuild.js.map +1 -0
  96. package/dist/engine/modules/tools/sendUserMessageTool.d.ts.map +1 -1
  97. package/dist/engine/modules/tools/sendUserMessageTool.js +3 -1
  98. package/dist/engine/modules/tools/sendUserMessageTool.js.map +1 -1
  99. package/dist/engine/modules/tools/skillToolBuild.d.ts.map +1 -1
  100. package/dist/engine/modules/tools/skillToolBuild.js +17 -5
  101. package/dist/engine/modules/tools/skillToolBuild.js.map +1 -1
  102. package/dist/engine/modules/tools/skillToolBuild.spec.js +50 -0
  103. package/dist/engine/modules/tools/skillToolBuild.spec.js.map +1 -1
  104. package/dist/engine/modules/tools/subuserConfigureToolBuild.d.ts +7 -0
  105. package/dist/engine/modules/tools/subuserConfigureToolBuild.d.ts.map +1 -0
  106. package/dist/engine/modules/tools/subuserConfigureToolBuild.js +95 -0
  107. package/dist/engine/modules/tools/subuserConfigureToolBuild.js.map +1 -0
  108. package/dist/engine/modules/tools/subuserConfigureToolBuild.spec.d.ts +2 -0
  109. package/dist/engine/modules/tools/subuserConfigureToolBuild.spec.d.ts.map +1 -0
  110. package/dist/engine/modules/tools/subuserConfigureToolBuild.spec.js +91 -0
  111. package/dist/engine/modules/tools/subuserConfigureToolBuild.spec.js.map +1 -0
  112. package/dist/engine/modules/tools/subuserCreateToolBuild.d.ts +7 -0
  113. package/dist/engine/modules/tools/subuserCreateToolBuild.d.ts.map +1 -0
  114. package/dist/engine/modules/tools/subuserCreateToolBuild.js +119 -0
  115. package/dist/engine/modules/tools/subuserCreateToolBuild.js.map +1 -0
  116. package/dist/engine/modules/tools/subuserCreateToolBuild.spec.d.ts +2 -0
  117. package/dist/engine/modules/tools/subuserCreateToolBuild.spec.d.ts.map +1 -0
  118. package/dist/engine/modules/tools/subuserCreateToolBuild.spec.js +98 -0
  119. package/dist/engine/modules/tools/subuserCreateToolBuild.spec.js.map +1 -0
  120. package/dist/engine/modules/tools/subuserListToolBuild.d.ts +7 -0
  121. package/dist/engine/modules/tools/subuserListToolBuild.d.ts.map +1 -0
  122. package/dist/engine/modules/tools/subuserListToolBuild.js +69 -0
  123. package/dist/engine/modules/tools/subuserListToolBuild.js.map +1 -0
  124. package/dist/engine/modules/tools/subuserListToolBuild.spec.d.ts +2 -0
  125. package/dist/engine/modules/tools/subuserListToolBuild.spec.d.ts.map +1 -0
  126. package/dist/engine/modules/tools/subuserListToolBuild.spec.js +81 -0
  127. package/dist/engine/modules/tools/subuserListToolBuild.spec.js.map +1 -0
  128. package/dist/engine/modules/tools/topologyToolBuild.d.ts.map +1 -1
  129. package/dist/engine/modules/tools/topologyToolBuild.js +48 -16
  130. package/dist/engine/modules/tools/topologyToolBuild.js.map +1 -1
  131. package/dist/engine/modules/tools/topologyToolBuild.spec.js +98 -0
  132. package/dist/engine/modules/tools/topologyToolBuild.spec.js.map +1 -1
  133. package/dist/main.js +7 -0
  134. package/dist/main.js.map +1 -1
  135. package/dist/plugins/dashboard/site/404.html +1 -1
  136. package/dist/plugins/dashboard/site/_next/static/chunks/app/agent/page-8434e05e02ab5847.js +1 -0
  137. package/dist/plugins/dashboard/site/_next/static/chunks/app/agents/page-70ae793aa3d3a28f.js +1 -0
  138. package/dist/plugins/dashboard/site/_next/static/chunks/app/automations/{page-6a39540c21d6b25b.js → page-6be961a7eafef90d.js} +1 -1
  139. package/dist/plugins/dashboard/site/_next/static/chunks/app/connectors/{page-92a732501885071f.js → page-8e756eb48c3f7c03.js} +1 -1
  140. package/dist/plugins/dashboard/site/_next/static/chunks/app/memory/{page-74c0b70421c567ab.js → page-be87f13a7b6fac14.js} +1 -1
  141. package/dist/plugins/dashboard/site/_next/static/chunks/app/{page-c4cbe1c7aca2ecd7.js → page-bd7cca39bd0f6e71.js} +1 -1
  142. package/dist/plugins/dashboard/site/_next/static/chunks/app/processes/{page-bf7900fe583d361e.js → page-87f7e8a74fbee01f.js} +1 -1
  143. package/dist/plugins/dashboard/site/_next/static/chunks/app/providers/{page-b2e79cb03244c267.js → page-fcedae8d614253d3.js} +1 -1
  144. package/dist/plugins/dashboard/site/_next/static/chunks/app/signals/page-efe599a7802349fa.js +1 -0
  145. package/dist/plugins/dashboard/site/_next/static/chunks/app/tools/page-e669223389d84f30.js +1 -0
  146. package/dist/plugins/dashboard/site/_next/static/css/62b1686547b31a3c.css +5 -0
  147. package/dist/plugins/dashboard/site/agent.html +1 -1
  148. package/dist/plugins/dashboard/site/agent.txt +2 -2
  149. package/dist/plugins/dashboard/site/agents.html +1 -1
  150. package/dist/plugins/dashboard/site/agents.txt +2 -2
  151. package/dist/plugins/dashboard/site/automations.html +1 -1
  152. package/dist/plugins/dashboard/site/automations.txt +2 -2
  153. package/dist/plugins/dashboard/site/connectors.html +1 -1
  154. package/dist/plugins/dashboard/site/connectors.txt +2 -2
  155. package/dist/plugins/dashboard/site/index.html +2 -2
  156. package/dist/plugins/dashboard/site/index.txt +2 -2
  157. package/dist/plugins/dashboard/site/memory.html +1 -1
  158. package/dist/plugins/dashboard/site/memory.txt +2 -2
  159. package/dist/plugins/dashboard/site/processes.html +1 -1
  160. package/dist/plugins/dashboard/site/processes.txt +2 -2
  161. package/dist/plugins/dashboard/site/providers.html +1 -1
  162. package/dist/plugins/dashboard/site/providers.txt +2 -2
  163. package/dist/plugins/dashboard/site/signals.html +1 -1
  164. package/dist/plugins/dashboard/site/signals.txt +2 -2
  165. package/dist/plugins/dashboard/site/telemetry.html +2 -2
  166. package/dist/plugins/dashboard/site/telemetry.txt +1 -1
  167. package/dist/plugins/dashboard/site/tools.html +1 -1
  168. package/dist/plugins/dashboard/site/tools.txt +2 -2
  169. package/dist/plugins/shell/tool.js +4 -2
  170. package/dist/plugins/shell/tool.js.map +1 -1
  171. package/dist/plugins/shell/tool.spec.js +19 -2
  172. package/dist/plugins/shell/tool.spec.js.map +1 -1
  173. package/dist/plugins/telegram/connector.d.ts +2 -0
  174. package/dist/plugins/telegram/connector.d.ts.map +1 -1
  175. package/dist/plugins/telegram/connector.js +9 -0
  176. package/dist/plugins/telegram/connector.js.map +1 -1
  177. package/dist/plugins/telegram/connector.spec.js +60 -0
  178. package/dist/plugins/telegram/connector.spec.js.map +1 -1
  179. package/dist/plugins/telegram/plugin.d.ts +2 -1
  180. package/dist/plugins/telegram/plugin.d.ts.map +1 -1
  181. package/dist/plugins/telegram/plugin.js +43 -3
  182. package/dist/plugins/telegram/plugin.js.map +1 -1
  183. package/dist/plugins/telegram/plugin.spec.d.ts +2 -0
  184. package/dist/plugins/telegram/plugin.spec.d.ts.map +1 -0
  185. package/dist/plugins/telegram/plugin.spec.js +93 -0
  186. package/dist/plugins/telegram/plugin.spec.js.map +1 -0
  187. package/dist/prompts/SYSTEM_MEMORY.md +15 -1
  188. package/dist/prompts/SYSTEM_MODELS.md +42 -0
  189. package/dist/prompts/memory/MEMORY_SEARCH.md +57 -0
  190. package/dist/providers/modelRoleApply.d.ts +13 -0
  191. package/dist/providers/modelRoleApply.d.ts.map +1 -0
  192. package/dist/providers/modelRoleApply.js +27 -0
  193. package/dist/providers/modelRoleApply.js.map +1 -0
  194. package/dist/providers/modelRoleApply.spec.d.ts +2 -0
  195. package/dist/providers/modelRoleApply.spec.d.ts.map +1 -0
  196. package/dist/providers/modelRoleApply.spec.js +36 -0
  197. package/dist/providers/modelRoleApply.spec.js.map +1 -0
  198. package/dist/providers/modelRoleResolve.d.ts +13 -0
  199. package/dist/providers/modelRoleResolve.d.ts.map +1 -0
  200. package/dist/providers/modelRoleResolve.js +23 -0
  201. package/dist/providers/modelRoleResolve.js.map +1 -0
  202. package/dist/providers/modelRoleResolve.spec.d.ts +2 -0
  203. package/dist/providers/modelRoleResolve.spec.d.ts.map +1 -0
  204. package/dist/providers/modelRoleResolve.spec.js +35 -0
  205. package/dist/providers/modelRoleResolve.spec.js.map +1 -0
  206. package/dist/settings.d.ts +7 -0
  207. package/dist/settings.d.ts.map +1 -1
  208. package/dist/settings.js.map +1 -1
  209. package/dist/storage/databaseTypes.d.ts +8 -0
  210. package/dist/storage/databaseTypes.d.ts.map +1 -1
  211. package/dist/storage/migrations/20260222_add_user_parent.d.ts +7 -0
  212. package/dist/storage/migrations/20260222_add_user_parent.d.ts.map +1 -0
  213. package/dist/storage/migrations/20260222_add_user_parent.js +23 -0
  214. package/dist/storage/migrations/20260222_add_user_parent.js.map +1 -0
  215. package/dist/storage/migrations/20260222_add_user_parent.spec.d.ts +2 -0
  216. package/dist/storage/migrations/20260222_add_user_parent.spec.d.ts.map +1 -0
  217. package/dist/storage/migrations/20260222_add_user_parent.spec.js +48 -0
  218. package/dist/storage/migrations/20260222_add_user_parent.spec.js.map +1 -0
  219. package/dist/storage/migrations/20260222_session_ended_at.d.ts +7 -0
  220. package/dist/storage/migrations/20260222_session_ended_at.d.ts.map +1 -0
  221. package/dist/storage/migrations/20260222_session_ended_at.js +18 -0
  222. package/dist/storage/migrations/20260222_session_ended_at.js.map +1 -0
  223. package/dist/storage/migrations/20260222_session_ended_at.spec.d.ts +2 -0
  224. package/dist/storage/migrations/20260222_session_ended_at.spec.d.ts.map +1 -0
  225. package/dist/storage/migrations/20260222_session_ended_at.spec.js +37 -0
  226. package/dist/storage/migrations/20260222_session_ended_at.spec.js.map +1 -0
  227. package/dist/storage/migrations/_migrations.d.ts.map +1 -1
  228. package/dist/storage/migrations/_migrations.js +5 -1
  229. package/dist/storage/migrations/_migrations.js.map +1 -1
  230. package/dist/storage/sessionsRepository.d.ts +5 -0
  231. package/dist/storage/sessionsRepository.d.ts.map +1 -1
  232. package/dist/storage/sessionsRepository.js +9 -1
  233. package/dist/storage/sessionsRepository.js.map +1 -1
  234. package/dist/storage/sessionsRepository.spec.js +31 -1
  235. package/dist/storage/sessionsRepository.spec.js.map +1 -1
  236. package/dist/storage/usersRepository.d.ts +1 -0
  237. package/dist/storage/usersRepository.d.ts.map +1 -1
  238. package/dist/storage/usersRepository.js +18 -2
  239. package/dist/storage/usersRepository.js.map +1 -1
  240. package/package.json +1 -1
  241. package/dist/plugins/dashboard/site/_next/static/chunks/app/agent/page-2d345f6346edc077.js +0 -1
  242. package/dist/plugins/dashboard/site/_next/static/chunks/app/agents/page-326ff3cf564198c7.js +0 -1
  243. package/dist/plugins/dashboard/site/_next/static/chunks/app/signals/page-2992aa1807b6fdab.js +0 -1
  244. package/dist/plugins/dashboard/site/_next/static/chunks/app/tools/page-4a2e5a16190af659.js +0 -1
  245. package/dist/plugins/dashboard/site/_next/static/css/42d76d007d742231.css +0 -5
  246. /package/dist/plugins/dashboard/site/_next/static/{9-NVJBP-YwBbxw-w3gjmQ → Tn0eCf61QYHaE96GNMJsm}/_buildManifest.js +0 -0
  247. /package/dist/plugins/dashboard/site/_next/static/{9-NVJBP-YwBbxw-w3gjmQ → Tn0eCf61QYHaE96GNMJsm}/_ssgManifest.js +0 -0
@@ -1,6 +1,6 @@
1
1
  import { Type } from "@sinclair/typebox";
2
+ import { Context } from "../../agents/context.js";
2
3
  import { agentDescriptorLabel } from "../../agents/ops/agentDescriptorLabel.js";
3
- import { agentList } from "../../agents/ops/agentList.js";
4
4
  const schema = Type.Object({}, { additionalProperties: false });
5
5
  const topologyResultSchema = Type.Object({
6
6
  summary: Type.String(),
@@ -30,25 +30,35 @@ export function topologyTool(crons, signals, channels, exposes) {
30
30
  execute: async (_args, toolContext, toolCall) => {
31
31
  const callerAgentId = toolContext.agent.id;
32
32
  const callerUserId = toolContext.ctx.userId;
33
- const [agentEntries, cronTasks, heartbeatTasks, exposeEndpoints] = await Promise.all([
34
- agentList(toolContext.agentSystem.storage),
33
+ const storage = toolContext.agentSystem.storage;
34
+ // Determine if caller is a subuser (has parent)
35
+ const callerUser = await storage.users.findById(callerUserId);
36
+ const isSubuser = callerUser?.parentUserId != null;
37
+ const [allAgentRecords, cronTasks, heartbeatTasks, exposeEndpoints] = await Promise.all([
38
+ storage.agents.findMany(),
35
39
  crons.listTasks(),
36
40
  toolContext.heartbeats.listTasks(),
37
41
  exposes.list()
38
42
  ]);
39
43
  const signalSubscriptions = await signals.listSubscriptions();
40
44
  const channelEntries = channels.list();
41
- const agents = agentEntries
45
+ // Filter agents by userId for subusers
46
+ const visibleAgentRecords = isSubuser
47
+ ? allAgentRecords.filter((record) => record.userId === callerUserId)
48
+ : allAgentRecords;
49
+ const agents = visibleAgentRecords
42
50
  .slice()
43
51
  .sort((left, right) => right.updatedAt - left.updatedAt)
44
- .map((entry) => ({
45
- id: entry.agentId,
46
- type: entry.descriptor.type,
47
- label: agentDescriptorLabel(entry.descriptor),
48
- lifecycle: entry.lifecycle,
49
- isYou: entry.agentId === callerAgentId
52
+ .map((record) => ({
53
+ id: record.id,
54
+ type: record.descriptor.type,
55
+ label: agentDescriptorLabel(record.descriptor),
56
+ lifecycle: record.lifecycle,
57
+ isYou: record.id === callerAgentId
50
58
  }));
51
- const cronsSummary = cronTasks
59
+ // Build visible agent ID set for subuser filtering of channels
60
+ const visibleAgentIdSet = isSubuser ? new Set(visibleAgentRecords.map((record) => record.id)) : null;
61
+ const cronsSummary = (isSubuser ? cronTasks.filter((t) => t.userId === callerUserId) : cronTasks)
52
62
  .slice()
53
63
  .sort((left, right) => left.id.localeCompare(right.id))
54
64
  .map((task) => ({
@@ -59,7 +69,7 @@ export function topologyTool(crons, signals, channels, exposes) {
59
69
  agentId: task.agentId ?? null,
60
70
  isYou: task.agentId === callerAgentId
61
71
  }));
62
- const heartbeats = heartbeatTasks
72
+ const heartbeats = (isSubuser ? heartbeatTasks.filter((t) => t.userId === callerUserId) : heartbeatTasks)
63
73
  .slice()
64
74
  .sort((left, right) => left.id.localeCompare(right.id))
65
75
  .map((task) => ({
@@ -88,7 +98,11 @@ export function topologyTool(crons, signals, channels, exposes) {
88
98
  silent: subscription.silent,
89
99
  isYou: subscription.ctx.agentId === callerAgentId
90
100
  }));
91
- const channelsSummary = channelEntries
101
+ // Filter channels by agent membership for subusers
102
+ const visibleChannelEntries = isSubuser && visibleAgentIdSet
103
+ ? channelEntries.filter((ch) => ch.members.some((m) => visibleAgentIdSet.has(m.agentId)))
104
+ : channelEntries;
105
+ const channelsSummary = visibleChannelEntries
92
106
  .slice()
93
107
  .sort((left, right) => left.name.localeCompare(right.name))
94
108
  .map((channel) => ({
@@ -103,7 +117,11 @@ export function topologyTool(crons, signals, channels, exposes) {
103
117
  username: member.username
104
118
  }))
105
119
  }));
106
- const exposeSummary = exposeEndpoints
120
+ // For subusers, filter exposes by userId via storage (public type lacks userId)
121
+ const visibleExposeEndpoints = isSubuser
122
+ ? await storage.exposeEndpoints.findMany(new Context(callerAgentId, callerUserId))
123
+ : exposeEndpoints;
124
+ const exposeSummary = visibleExposeEndpoints
107
125
  .slice()
108
126
  .sort((left, right) => left.createdAt - right.createdAt)
109
127
  .map((endpoint) => ({
@@ -116,7 +134,7 @@ export function topologyTool(crons, signals, channels, exposes) {
116
134
  mode: endpoint.mode,
117
135
  authenticated: Boolean(endpoint.auth)
118
136
  }));
119
- const summary = [
137
+ const sections = [
120
138
  `## Agents (${agents.length})`,
121
139
  ...listAgentsLinesBuild(agents),
122
140
  "",
@@ -134,7 +152,21 @@ export function topologyTool(crons, signals, channels, exposes) {
134
152
  "",
135
153
  `## Expose Endpoints (${exposeSummary.length})`,
136
154
  ...listExposeLinesBuild(exposeSummary)
137
- ].join("\n");
155
+ ];
156
+ // Add subusers section for owner users
157
+ if (!isSubuser) {
158
+ const subusers = await storage.users.findByParentUserId(callerUserId);
159
+ if (subusers.length > 0) {
160
+ const subuserLines = subusers.map((subuser) => {
161
+ const gateway = allAgentRecords.find((a) => a.descriptor.type === "subuser" && a.descriptor.id === subuser.id);
162
+ return (`${subuser.id} name="${subuser.name ?? "unnamed"}" ` +
163
+ `gatewayAgent=${gateway?.id ?? "none"} ` +
164
+ `lifecycle=${gateway?.lifecycle ?? "unknown"}`);
165
+ });
166
+ sections.push("", `## Subusers (${subusers.length})`, ...subuserLines);
167
+ }
168
+ }
169
+ const summary = sections.join("\n");
138
170
  const toolMessage = {
139
171
  role: "toolResult",
140
172
  toolCallId: toolCall.id,
@@ -1 +1 @@
1
- {"version":3,"file":"topologyToolBuild.js","sourceRoot":"","sources":["../../../../sources/engine/modules/tools/topologyToolBuild.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"topologyToolBuild.js","sourceRoot":"","sources":["../../../../sources/engine/modules/tools/topologyToolBuild.ts"],"names":[],"mappings":"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"}
@@ -163,6 +163,104 @@ describe("topologyTool", () => {
163
163
  await rm(dir, { recursive: true, force: true });
164
164
  }
165
165
  });
166
+ it("subuser agent sees only their own agents and crons in topology", async () => {
167
+ const dir = await mkdtemp(path.join(os.tmpdir(), "daycare-topology-subuser-"));
168
+ const config = configResolve({ engine: { dataDir: dir } }, path.join(dir, "settings.json"));
169
+ const storage = storageResolve(config);
170
+ try {
171
+ // Find the owner user (created by bootstrap migration)
172
+ const owner = await storage.users.findOwner();
173
+ const ownerUserId = owner.id;
174
+ // Create a subuser
175
+ await storage.users.create({ id: "subuser-1", parentUserId: ownerUserId, name: "my-app" });
176
+ // Create agents for both users
177
+ const ownerHome = new UserHome(config.usersDir, ownerUserId);
178
+ const subuserHome = new UserHome(config.usersDir, "subuser-1");
179
+ const ownerPerms = permissionBuildUser(ownerHome);
180
+ const subuserPerms = permissionBuildUser(subuserHome);
181
+ await agentDescriptorWrite(storage, "owner-agent", { type: "user", connector: "telegram", userId: "u1", channelId: "c1" }, ownerUserId, ownerPerms);
182
+ await agentStateWrite(config, "owner-agent", stateBuild(ownerPerms, 100));
183
+ await agentDescriptorWrite(storage, "subuser-gateway", { type: "subuser", id: "subuser-1", name: "my-app", systemPrompt: "Hello" }, "subuser-1", subuserPerms);
184
+ await agentStateWrite(config, "subuser-gateway", stateBuild(subuserPerms, 50));
185
+ const tool = topologyTool({
186
+ listTasks: async () => [
187
+ cronTaskBuild({ id: "owner-cron", name: "Owner Cron", schedule: "0 0 * * *", enabled: true }),
188
+ {
189
+ ...cronTaskBuild({
190
+ id: "subuser-cron",
191
+ name: "Subuser Cron",
192
+ schedule: "0 6 * * *",
193
+ enabled: true
194
+ }),
195
+ userId: "subuser-1"
196
+ }
197
+ ]
198
+ }, { listSubscriptions: async () => [] }, { list: () => [] }, { list: async () => [] });
199
+ // Call topology as the subuser's agent
200
+ const result = await tool.execute({}, contextBuild(config, {
201
+ callerAgentId: "subuser-gateway",
202
+ callerUserId: "subuser-1",
203
+ heartbeatTasks: []
204
+ }), toolCall);
205
+ const text = contentText(result.toolMessage.content);
206
+ // Subuser sees only their own agent
207
+ expect(text).toContain("## Agents (1)");
208
+ expect(text).toContain("subuser-gateway");
209
+ expect(text).not.toContain("owner-agent");
210
+ // Subuser sees only their own cron tasks
211
+ expect(text).toContain("## Cron Tasks (1)");
212
+ expect(text).toContain("subuser-cron");
213
+ expect(text).not.toContain("owner-cron");
214
+ // No subusers section for subuser agents
215
+ expect(text).not.toContain("## Subusers");
216
+ }
217
+ finally {
218
+ storage.close();
219
+ await rm(dir, { recursive: true, force: true });
220
+ }
221
+ });
222
+ it("owner user sees subusers section in topology", async () => {
223
+ const dir = await mkdtemp(path.join(os.tmpdir(), "daycare-topology-owner-subusers-"));
224
+ const config = configResolve({ engine: { dataDir: dir } }, path.join(dir, "settings.json"));
225
+ const storage = storageResolve(config);
226
+ try {
227
+ // Find the owner user
228
+ const owner = await storage.users.findOwner();
229
+ const ownerUserId = owner.id;
230
+ // Create subusers
231
+ await storage.users.create({ id: "sub-a", parentUserId: ownerUserId, name: "app-a" });
232
+ await storage.users.create({ id: "sub-b", parentUserId: ownerUserId, name: "app-b" });
233
+ // Create gateway agents
234
+ const ownerHome = new UserHome(config.usersDir, ownerUserId);
235
+ const ownerPerms = permissionBuildUser(ownerHome);
236
+ await agentDescriptorWrite(storage, "owner-main", { type: "user", connector: "telegram", userId: "u1", channelId: "c1" }, ownerUserId, ownerPerms);
237
+ await agentStateWrite(config, "owner-main", stateBuild(ownerPerms, 100));
238
+ const subAPerms = permissionBuildUser(new UserHome(config.usersDir, "sub-a"));
239
+ await agentDescriptorWrite(storage, "gateway-a", { type: "subuser", id: "sub-a", name: "app-a", systemPrompt: "Prompt A" }, "sub-a", subAPerms);
240
+ await agentStateWrite(config, "gateway-a", stateBuild(subAPerms, 50));
241
+ const subBPerms = permissionBuildUser(new UserHome(config.usersDir, "sub-b"));
242
+ await agentDescriptorWrite(storage, "gateway-b", { type: "subuser", id: "sub-b", name: "app-b", systemPrompt: "Prompt B" }, "sub-b", subBPerms);
243
+ await agentStateWrite(config, "gateway-b", stateBuild(subBPerms, 50));
244
+ const tool = topologyTool({ listTasks: async () => [] }, { listSubscriptions: async () => [] }, { list: () => [] }, { list: async () => [] });
245
+ // Call topology as the owner's agent
246
+ const result = await tool.execute({}, contextBuild(config, {
247
+ callerAgentId: "owner-main",
248
+ callerUserId: ownerUserId,
249
+ heartbeatTasks: []
250
+ }), toolCall);
251
+ const text = contentText(result.toolMessage.content);
252
+ // Owner sees all agents (including subuser gateways)
253
+ expect(text).toContain("## Agents (3)");
254
+ // Owner sees subusers section
255
+ expect(text).toContain("## Subusers (2)");
256
+ expect(text).toContain('sub-a name="app-a" gatewayAgent=gateway-a');
257
+ expect(text).toContain('sub-b name="app-b" gatewayAgent=gateway-b');
258
+ }
259
+ finally {
260
+ storage.close();
261
+ await rm(dir, { recursive: true, force: true });
262
+ }
263
+ });
166
264
  it("marks caller-owned items with (You) and isYou=true", async () => {
167
265
  const dir = await mkdtemp(path.join(os.tmpdir(), "daycare-topology-tool-"));
168
266
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"topologyToolBuild.spec.js","sourceRoot":"","sources":["../../../../sources/engine/modules/tools/topologyToolBuild.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"topologyToolBuild.spec.js","sourceRoot":"","sources":["../../../../sources/engine/modules/tools/topologyToolBuild.spec.ts"],"names":[],"mappings":"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"}
package/dist/main.js CHANGED
@@ -9,6 +9,7 @@ import { channelRemoveMemberCommand } from "./commands/channelRemoveMember.js";
9
9
  import { channelSendCommand } from "./commands/channelSend.js";
10
10
  import { doctorCommand } from "./commands/doctor.js";
11
11
  import { eventCommand } from "./commands/event.js";
12
+ import { modelsCommand } from "./commands/models.js";
12
13
  import { loadPluginCommand, unloadPluginCommand } from "./commands/plugins.js";
13
14
  import { setDefaultProviderCommand } from "./commands/providers.js";
14
15
  import { removeCommand } from "./commands/remove.js";
@@ -64,6 +65,12 @@ program
64
65
  .description("Select the default provider")
65
66
  .option("-s, --settings <path>", "Path to settings file", DEFAULT_SETTINGS_PATH)
66
67
  .action(setDefaultProviderCommand);
68
+ program
69
+ .command("models")
70
+ .description("View and configure per-role model assignments")
71
+ .option("-s, --settings <path>", "Path to settings file", DEFAULT_SETTINGS_PATH)
72
+ .option("-l, --list", "List current model assignments without prompting")
73
+ .action(modelsCommand);
67
74
  program
68
75
  .command("doctor")
69
76
  .description("Run basic inference checks for configured providers")
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../sources/main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AAE3F,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,WAAW,EAAE,CAAC;AAEd,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAE9E,OAAO;KACF,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,oBAAoB,CAAC;KACjC,MAAM,CAAC,uBAAuB,EAAE,uBAAuB,EAAE,qBAAqB,CAAC;KAC/E,MAAM,CAAC,aAAa,EAAE,gDAAgD,CAAC;KACvE,MAAM,CAAC,eAAe,EAAE,0CAA0C,CAAC;KACnE,MAAM,CAAC,YAAY,CAAC,CAAC;AAE1B,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AAE/E,OAAO;KACF,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,0BAA0B,CAAC;KACvC,MAAM,CAAC,uBAAuB,EAAE,uBAAuB,EAAE,qBAAqB,CAAC;KAC/E,MAAM,CAAC,UAAU,CAAC,CAAC;AAExB,OAAO;KACF,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,6BAA6B,CAAC;KAC1C,MAAM,CAAC,uBAAuB,EAAE,uBAAuB,EAAE,qBAAqB,CAAC;KAC/E,MAAM,CAAC,aAAa,CAAC,CAAC;AAE3B,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;AAE/E,aAAa;KACR,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,eAAe,CAAC;KAC5B,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC;KACnC,QAAQ,CAAC,cAAc,EAAE,qCAAqC,CAAC;KAC/D,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAE/B,aAAa;KACR,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,iBAAiB,CAAC;KAC9B,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAC;KAC9C,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAEjC,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,yBAAyB,CAAC,CAAC;AAEnF,WAAW;KACN,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,wBAAwB,CAAC;KACrC,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;KACjC,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;KACnC,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC;KACvC,MAAM,CAAC,cAAc,CAAC,CAAC;AAE5B,OAAO;KACF,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,6BAA6B,CAAC;KAC1C,MAAM,CAAC,uBAAuB,EAAE,uBAAuB,EAAE,qBAAqB,CAAC;KAC/E,MAAM,CAAC,yBAAyB,CAAC,CAAC;AAEvC,OAAO;KACF,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,qDAAqD,CAAC;KAClE,MAAM,CAAC,uBAAuB,EAAE,uBAAuB,EAAE,qBAAqB,CAAC;KAC/E,MAAM,CAAC,aAAa,CAAC,CAAC;AAE3B,OAAO;KACF,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,wBAAwB,CAAC;KACrC,MAAM,CAAC,uBAAuB,EAAE,uBAAuB,EAAE,qBAAqB,CAAC;KAC/E,MAAM,CAAC,cAAc,CAAC,CAAC;AAE5B,OAAO;KACF,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,+CAA+C,CAAC;KAC5D,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;KAChC,QAAQ,CAAC,WAAW,EAAE,cAAc,CAAC;KACrC,MAAM,CAAC,YAAY,CAAC,CAAC;AAE1B,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;AAEvF,cAAc;KACT,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,sCAAsC,CAAC;KACnD,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;KAClC,cAAc,CAAC,oBAAoB,EAAE,iBAAiB,CAAC;KACvD,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAElC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAEvF,cAAc;KACT,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,2BAA2B,CAAC;KACxC,QAAQ,CAAC,eAAe,EAAE,cAAc,CAAC;KACzC,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC;KACjC,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC;KACzC,MAAM,CAAC,uBAAuB,CAAC,CAAC;AAErC,cAAc;KACT,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,gCAAgC,CAAC;KAC7C,QAAQ,CAAC,eAAe,EAAE,cAAc,CAAC;KACzC,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC;KACjC,MAAM,CAAC,0BAA0B,CAAC,CAAC;AAExC,cAAc;KACT,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,6BAA6B,CAAC;KAC1C,QAAQ,CAAC,eAAe,EAAE,cAAc,CAAC;KACzC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;KAClC,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAEhC,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;IAC3B,OAAO,CAAC,UAAU,EAAE,CAAC;IACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAED,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../sources/main.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/42d76d007d742231.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-ba419df0f2bbc111.js"/><script src="/_next/static/chunks/1dd3208c-8dbf5d579a87cb85.js" async=""></script><script src="/_next/static/chunks/528-ada84a57eb753539.js" async=""></script><script src="/_next/static/chunks/main-app-e47c27dd717b70ea.js" async=""></script><meta name="robots" content="noindex"/><title>404: This page could not be found.</title><title>Daycare Dashboard</title><meta name="description" content="Live status for plugins, agents, and cron tasks from the local engine socket."/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="font-sans text-foreground antialiased"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><script src="/_next/static/chunks/webpack-ba419df0f2bbc111.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0]);self.__next_f.push([2,null])</script><script>self.__next_f.push([1,"1:HL[\"/_next/static/css/42d76d007d742231.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"2:I[11815,[],\"\"]\n4:I[55092,[],\"\"]\n5:I[82023,[],\"\"]\nb:I[91584,[],\"\"]\n6:{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"}\n7:{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"}\n8:{\"display\":\"inline-block\"}\n9:{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0}\nc:[]\n"])</script><script>self.__next_f.push([1,"0:[\"$\",\"$L2\",null,{\"buildId\":\"9-NVJBP-YwBbxw-w3gjmQ\",\"assetPrefix\":\"\",\"urlParts\":[\"\",\"_not-found\"],\"initialTree\":[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],\"initialSeedData\":[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{},[[\"$L3\",[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null],null],null]},[null,[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"/_not-found\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\"}]],null]},[[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/42d76d007d742231.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"className\":\"font-sans text-foreground antialiased\",\"children\":[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$6\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$7\",\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":\"$8\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$9\",\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":[]}]}]}]],null],null],\"couldBeIntercepted\":false,\"initialHead\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],\"$La\"],\"globalErrorComponent\":\"$b\",\"missingSlots\":\"$Wc\"}]\n"])</script><script>self.__next_f.push([1,"a:[[\"$\",\"meta\",\"0\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"1\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"2\",{\"children\":\"Daycare Dashboard\"}],[\"$\",\"meta\",\"3\",{\"name\":\"description\",\"content\":\"Live status for plugins, agents, and cron tasks from the local engine socket.\"}]]\n3:null\n"])</script></body></html>
1
+ <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/62b1686547b31a3c.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-ba419df0f2bbc111.js"/><script src="/_next/static/chunks/1dd3208c-8dbf5d579a87cb85.js" async=""></script><script src="/_next/static/chunks/528-ada84a57eb753539.js" async=""></script><script src="/_next/static/chunks/main-app-e47c27dd717b70ea.js" async=""></script><meta name="robots" content="noindex"/><title>404: This page could not be found.</title><title>Daycare Dashboard</title><meta name="description" content="Live status for plugins, agents, and cron tasks from the local engine socket."/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="font-sans text-foreground antialiased"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><script src="/_next/static/chunks/webpack-ba419df0f2bbc111.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0]);self.__next_f.push([2,null])</script><script>self.__next_f.push([1,"1:HL[\"/_next/static/css/62b1686547b31a3c.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"2:I[11815,[],\"\"]\n4:I[55092,[],\"\"]\n5:I[82023,[],\"\"]\nb:I[91584,[],\"\"]\n6:{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"}\n7:{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"}\n8:{\"display\":\"inline-block\"}\n9:{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0}\nc:[]\n"])</script><script>self.__next_f.push([1,"0:[\"$\",\"$L2\",null,{\"buildId\":\"Tn0eCf61QYHaE96GNMJsm\",\"assetPrefix\":\"\",\"urlParts\":[\"\",\"_not-found\"],\"initialTree\":[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],\"initialSeedData\":[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{},[[\"$L3\",[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null],null],null]},[null,[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"/_not-found\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\"}]],null]},[[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/62b1686547b31a3c.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"className\":\"font-sans text-foreground antialiased\",\"children\":[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$6\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$7\",\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":\"$8\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$9\",\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":[]}]}]}]],null],null],\"couldBeIntercepted\":false,\"initialHead\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],\"$La\"],\"globalErrorComponent\":\"$b\",\"missingSlots\":\"$Wc\"}]\n"])</script><script>self.__next_f.push([1,"a:[[\"$\",\"meta\",\"0\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"1\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"2\",{\"children\":\"Daycare Dashboard\"}],[\"$\",\"meta\",\"3\",{\"name\":\"description\",\"content\":\"Live status for plugins, agents, and cron tasks from the local engine socket.\"}]]\n3:null\n"])</script></body></html>
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[60],{56855:function(e,t,r){Promise.resolve().then(r.bind(r,34272))},34272:function(e,t,r){"use strict";r.d(t,{default:function(){return w}});var n=r(27573),s=r(88146),a=r(81695),l=r(7653);let o=(0,r(50326).Z)("ArrowLeft",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);var i=r(56284),c=r(5363),d=r(16590),u=r(86742),m=r(20942),x=r(46191),p=r(63964),h=r(50027),g=r(48157),f=r(82041),v=r(16273),j=r(26798),y=r(90497),b=r(73581);function w(){var e,t,r,w,M;let E=null!==(t=null===(e=(0,a.useSearchParams)().get("agentId"))||void 0===e?void 0:e.trim())&&void 0!==t?t:"",[O,T]=(0,l.useState)(null),[L,F]=(0,l.useState)([]),[U,P]=(0,l.useState)(null),[z,Y]=(0,l.useState)([]),[B,V]=(0,l.useState)([]),[q,H]=(0,l.useState)(!1),[J,D]=(0,l.useState)(!1),[W,K]=(0,l.useState)(null),[G,Q]=(0,l.useState)(null),X=(0,l.useRef)(null);(0,l.useEffect)(()=>{var e;X.current=null!==(e=null==O?void 0:O.agentId)&&void 0!==e?e:null},[O]);let $=(0,l.useCallback)(async function(){var e,t,r;let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!E){T(null),F([]),Y([]),V([]);return}let s=null!==(e=n.silent)&&void 0!==e&&e;s||D(!0),K(null);try{let[e,n,s]=await Promise.all([(0,y.Sj)(),(0,y._1)(E),(0,y.Sk)()]),a=null!==(t=e.find(e=>e.agentId===E))&&void 0!==t?t:null;T(a),F(n),V(s.filter(e=>e.agentId===E));let l=n.length>0?n[n.length-1]:null,o=U&&n.some(e=>e.id===U)?U:null!==(r=null==l?void 0:l.id)&&void 0!==r?r:null;o!==U&&P(o);let i=o?await (0,y.ab)(E,{sessionId:o}):await (0,y.ab)(E,{limit:100});Y(i),Q(new Date)}catch(e){K(e instanceof Error?e.message:"Failed to load agent")}finally{s||D(!1)}},[E,U]);(0,l.useEffect)(()=>{$()},[$]),(0,l.useEffect)(()=>{let e=new EventSource("/api/v1/engine/events");return e.onopen=()=>{H(!0)},e.onerror=()=>{H(!1)},e.onmessage=e=>{let t=JSON.parse(e.data);if("init"===t.type){$({silent:!0});return}if("agent.created"===t.type||"agent.reset"===t.type||"agent.restored"===t.type||"agent.dead"===t.type){var r;let e=null===(r=t.payload)||void 0===r?void 0:r.agentId,n=X.current;n&&e&&e!==n||$({silent:!0})}},()=>{e.close()}},[$]);let ee=(0,l.useMemo)(()=>[...z].sort((e,t)=>t.at-e.at),[z]),et=(0,l.useMemo)(()=>{let e=0,t=0,r=0,n=0,s=0,a=0,l=0;return z.forEach(o=>{"user_message"===o.type&&(e+=1,l+=o.files.length),"assistant_message"===o.type&&(t+=1,l+=o.files.length),"tool_result"===o.type&&(r+=1,l+=o.output.files.length),("rlm_start"===o.type||"rlm_tool_call"===o.type||"rlm_tool_result"===o.type||"rlm_complete"===o.type)&&(n+=1),"assistant_rewrite"===o.type&&(s+=1),"note"===o.type&&(a+=1)}),{userMessages:e,assistantMessages:t,toolResults:r,rlmEvents:n,rewriteEvents:s,notes:a,files:l}},[z]),er=(0,l.useMemo)(()=>ee.length?Z(ee[0].at):(null==O?void 0:O.updatedAt)?Z(O.updatedAt):"Unknown",[ee,O]),en=(0,l.useMemo)(()=>O?(0,b.PA)(O):null,[O]);return(0,n.jsx)(g.r,{title:(null!==(r=null==O?void 0:O.agentId)&&void 0!==r?r:E)||"Agent detail",subtitle:"Inspect the full conversation history for this agent.",toolbar:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(v.z,{variant:"outline",asChild:!0,className:"gap-2",children:(0,n.jsxs)(s.default,{href:"/agents",children:[(0,n.jsx)(o,{className:"h-4 w-4"}),"Back"]})}),(0,n.jsx)(f.C,{variant:q?"default":"outline",className:q?"bg-emerald-500 text-white":"",children:q?"Live":"Offline"}),(null==O?void 0:O.lifecycle)?(0,n.jsxs)(f.C,{variant:"dead"===O.lifecycle?"destructive":"sleeping"===O.lifecycle?"outline":"secondary",className:"gap-1 capitalize",children:["dead"===O.lifecycle?(0,n.jsx)(i.Z,{className:"h-3 w-3"}):"sleeping"===O.lifecycle?(0,n.jsx)(c.Z,{className:"h-3 w-3"}):(0,n.jsx)(d.Z,{className:"h-3 w-3"}),O.lifecycle]}):null,(0,n.jsxs)(v.z,{onClick:()=>void $(),disabled:J,className:"gap-2",children:[(0,n.jsx)(u.Z,{className:J?"h-4 w-4 animate-spin":"h-4 w-4"}),"Refresh"]})]}),status:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{children:G?"Last synced ".concat(G.toLocaleTimeString()):"Awaiting first sync"}),W?(0,n.jsx)("span",{className:"rounded-full border border-destructive/40 bg-destructive/10 px-2.5 py-1 text-destructive",children:W}):(0,n.jsxs)("span",{children:[ee.length," records"]})]}),children:(0,n.jsxs)("div",{className:"flex flex-1 flex-col gap-6 overflow-hidden px-4 py-6 lg:px-6",children:[!E&&(0,n.jsx)(j.Zb,{children:(0,n.jsxs)(j.Ol,{children:[(0,n.jsx)(j.ll,{children:"Select an agent"}),(0,n.jsx)(j.SZ,{children:"Open this page from the agents table to inspect a specific thread."})]})}),(0,n.jsxs)("div",{className:"grid gap-4 sm:grid-cols-2 lg:grid-cols-4",children:[(0,n.jsxs)(j.Zb,{className:"overflow-hidden bg-gradient-to-br from-primary/10 via-card to-card/80",children:[(0,n.jsxs)(j.Ol,{className:"flex flex-row items-center justify-between",children:[(0,n.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,n.jsx)(j.SZ,{children:"Agent id"}),(0,n.jsx)(j.ll,{className:"truncate text-xl",title:null!==(w=null==O?void 0:O.agentId)&&void 0!==w?w:E,children:null!==(M=null==O?void 0:O.agentId)&&void 0!==M?M:E})]}),(0,n.jsx)("div",{className:"flex h-10 w-10 shrink-0 items-center justify-center rounded-full bg-primary/10 text-primary",children:(0,n.jsx)(d.Z,{className:"h-5 w-5"})})]}),(0,n.jsxs)(j.aY,{className:"truncate text-xs text-muted-foreground",title:O?R(O.descriptor):"Unknown",children:["Descriptor: ",O?R(O.descriptor):"Unknown"]})]}),(0,n.jsxs)(j.Zb,{className:"overflow-hidden bg-gradient-to-br from-accent/10 via-card to-card/80",children:[(0,n.jsxs)(j.Ol,{children:[(0,n.jsx)(j.SZ,{children:"Agent type"}),(0,n.jsx)(j.ll,{className:"text-xl",children:en?(0,b.l8)(en):"Unknown"})]}),(0,n.jsx)(j.aY,{className:"text-[11px] text-muted-foreground",children:(0,n.jsx)("span",{className:"block truncate font-mono",title:en?(0,b.y2)(en):"No context",children:en?(0,b.y2)(en):"No context"})})]}),(0,n.jsxs)(j.Zb,{className:"overflow-hidden bg-gradient-to-br from-slate-100/60 via-card to-card/80",children:[(0,n.jsxs)(j.Ol,{children:[(0,n.jsx)(j.SZ,{children:"Updated"}),(0,n.jsx)(j.ll,{className:"truncate text-xl",children:O?Z(O.updatedAt):"Unknown"})]}),(0,n.jsx)(j.aY,{className:"text-xs text-muted-foreground",children:O?"Lifecycle: ".concat(O.lifecycle):"Waiting for agent data"})]}),(0,n.jsxs)(j.Zb,{className:"overflow-hidden bg-gradient-to-br from-secondary/30 via-card to-card/80",children:[(0,n.jsxs)(j.Ol,{children:[(0,n.jsx)(j.SZ,{children:"Last activity"}),(0,n.jsx)(j.ll,{className:"truncate text-xl",children:er})]}),(0,n.jsx)(j.aY,{className:"text-xs text-muted-foreground",children:ee.length?"Recent history recorded":"Waiting for new activity"})]})]}),L.length>1&&(0,n.jsxs)(j.Zb,{className:"overflow-hidden",children:[(0,n.jsx)(j.Ol,{children:(0,n.jsxs)("div",{className:"flex items-center gap-3",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)(j.ll,{children:"Sessions"}),(0,n.jsx)(j.SZ,{children:"Switch between conversation sessions for this agent."})]}),(0,n.jsx)(f.C,{variant:"secondary",className:"ml-auto text-xs",children:L.length})]})}),(0,n.jsx)(j.aY,{className:"pt-0",children:(0,n.jsx)("div",{className:"flex flex-wrap gap-2",children:L.map((e,t)=>{let r=null===e.endedAt,s=e.id===U;return(0,n.jsxs)(v.z,{variant:s?"default":"outline",size:"sm",className:"gap-1.5",onClick:()=>{P(e.id)},children:["#",t+1,r&&(0,n.jsx)(f.C,{variant:"secondary",className:"text-[10px] px-1 py-0",children:"active"}),(0,n.jsx)("span",{className:"text-[10px] text-muted-foreground",children:Z(e.createdAt)})]},e.id)})})})]}),B.length>0&&(0,n.jsxs)(j.Zb,{className:"overflow-hidden",children:[(0,n.jsx)(j.Ol,{children:(0,n.jsxs)("div",{className:"flex items-center gap-3",children:[(0,n.jsx)("div",{className:"flex h-9 w-9 items-center justify-center rounded-full bg-indigo-500/10 text-indigo-600 dark:text-indigo-400",children:(0,n.jsx)(m.Z,{className:"h-4 w-4"})}),(0,n.jsxs)("div",{children:[(0,n.jsx)(j.ll,{children:"Signal subscriptions"}),(0,n.jsx)(j.SZ,{children:"Patterns this agent is listening to."})]}),(0,n.jsx)(f.C,{variant:"secondary",className:"ml-auto text-xs",children:B.length})]})}),(0,n.jsx)(j.aY,{className:"pt-0 space-y-2",children:B.map(e=>(0,n.jsx)("div",{className:"flex items-center gap-3 rounded-lg border px-3 py-2.5",children:(0,n.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 flex-wrap",children:[(0,n.jsx)("span",{className:"font-mono text-sm font-medium text-foreground",children:e.pattern}),e.silent?(0,n.jsxs)(f.C,{variant:"outline",className:"text-[10px] gap-1 text-muted-foreground",children:[(0,n.jsx)(x.Z,{className:"h-2.5 w-2.5"}),"silent"]}):(0,n.jsxs)(f.C,{variant:"outline",className:"text-[10px] gap-1 text-amber-600 dark:text-amber-400 border-amber-300 dark:border-amber-700",children:[(0,n.jsx)(p.Z,{className:"h-2.5 w-2.5"}),"notify"]})]}),(0,n.jsxs)("div",{className:"mt-1 text-xs text-muted-foreground",children:["subscribed ",Z(e.createdAt)]})]})},"".concat(e.agentId,"::").concat(e.pattern)))})]}),(0,n.jsxs)(j.Zb,{className:"overflow-hidden",children:[(0,n.jsx)(j.Ol,{children:(0,n.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)(j.ll,{children:"Agent history"}),(0,n.jsx)(j.SZ,{children:"Inbound, outbound, and tool activity tracked for this agent."})]}),(0,n.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,n.jsxs)(f.C,{variant:"outline",className:"text-xs",children:[et.userMessages," user"]}),(0,n.jsxs)(f.C,{variant:"outline",className:"text-xs",children:[et.assistantMessages," assistant"]}),(0,n.jsxs)(f.C,{variant:"outline",className:"text-xs",children:[et.toolResults," tools"]}),(0,n.jsxs)(f.C,{variant:"outline",className:"text-xs",children:[et.rlmEvents," rlm"]}),(0,n.jsxs)(f.C,{variant:"outline",className:"text-xs",children:[et.rewriteEvents," rewrites"]}),(0,n.jsxs)(f.C,{variant:"outline",className:"text-xs",children:[et.notes," notes"]}),(0,n.jsxs)(f.C,{variant:"outline",className:"text-xs",children:[et.files," files"]})]})]})}),(0,n.jsx)(j.aY,{className:"pt-0",children:ee.length?(0,n.jsx)("div",{className:"space-y-4",children:ee.map((e,t)=>(0,n.jsxs)("div",{className:"overflow-hidden rounded-lg border bg-background p-4 shadow-sm ".concat(function(e){switch(e.type){case"start":return"border-l-4 border-l-emerald-400";case"reset":return"border-l-4 border-l-rose-400";case"user_message":return"border-l-4 border-l-sky-400";case"assistant_message":return"border-l-4 border-l-indigo-400";case"tool_result":return"border-l-4 border-l-amber-400";case"rlm_start":return"border-l-4 border-l-cyan-400";case"rlm_tool_call":return"border-l-4 border-l-violet-400";case"rlm_tool_result":return"border-l-4 border-l-fuchsia-400";case"rlm_complete":return"border-l-4 border-l-lime-400";case"assistant_rewrite":return"border-l-4 border-l-orange-400";case"note":return"border-l-4 border-l-slate-400";default:return"border-l-4 border-l-muted"}}(e)),children:[(0,n.jsxs)("div",{className:"flex items-center gap-3",children:[(0,n.jsxs)("div",{className:"flex shrink-0 items-center gap-2 text-xs text-muted-foreground",children:[(0,n.jsx)(h.Z,{className:"h-3 w-3 shrink-0"}),(0,n.jsx)("span",{className:"whitespace-nowrap",children:Z(e.at)})]}),(0,n.jsx)(f.C,{variant:"outline",className:"shrink-0 ".concat(function(e){switch(e.type){case"start":return"border-emerald-200 text-emerald-700";case"reset":return"border-rose-200 text-rose-700";case"user_message":return"border-sky-200 text-sky-700";case"assistant_message":return"border-indigo-200 text-indigo-700";case"tool_result":return"border-amber-200 text-amber-700";case"rlm_start":return"border-cyan-200 text-cyan-700";case"rlm_tool_call":return"border-violet-200 text-violet-700";case"rlm_tool_result":return"border-fuchsia-200 text-fuchsia-700";case"rlm_complete":return"border-lime-200 text-lime-700";case"assistant_rewrite":return"border-orange-200 text-orange-700";case"note":return"border-slate-200 text-slate-700";default:return"border-muted-foreground/30 text-muted-foreground"}}(e)),children:function(e){switch(e.type){case"start":return"Started";case"reset":return"Reset";case"user_message":return"User";case"assistant_message":return"Assistant";case"tool_result":return"Tool";case"rlm_start":return"RLM start";case"rlm_tool_call":return"RLM call";case"rlm_tool_result":return"RLM result";case"rlm_complete":return"RLM done";case"assistant_rewrite":return"Rewrite";case"note":return"Note";default:return"Event"}}(e)}),(0,n.jsx)("span",{className:"min-w-0 truncate text-xs text-muted-foreground",children:function(e){switch(e.type){case"start":return"Agent started";case"reset":return e.message?A(e.message,140):"Agent reset";case"user_message":return e.text?A(e.text,140):e.files.length?"".concat(e.files.length," file(s)"):"User message";case"assistant_message":if(e.text)return A(e.text,140);if(e.toolCalls.length)return"".concat(e.toolCalls.length," tool call").concat(1===e.toolCalls.length?"":"s");return"Assistant message";case"tool_result":return"Tool result ".concat(e.toolCallId);case"rlm_start":return"RLM started (".concat(e.toolCallId,")");case"rlm_tool_call":return"".concat(e.toolName," call #").concat(e.toolCallCount+1);case"rlm_tool_result":return e.toolIsError?"".concat(e.toolName," failed"):"".concat(e.toolName," completed");case"rlm_complete":if(e.isError)return e.error?A(e.error,140):"RLM execution failed";return e.output?A(e.output,140):"RLM execution completed";case"assistant_rewrite":return"".concat(S(e.reason)," (").concat(Z(e.assistantAt),")");case"note":return A(e.text,140);default:return"Agent event"}}(e)})]}),(0,n.jsx)("div",{className:"mt-3 grid gap-3",children:function(e){switch(e.type){case"start":return(0,n.jsx)(k,{title:"Status",children:"Agent started."});case"reset":return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(k,{title:"Status",children:"Agent reset."}),e.message?(0,n.jsx)(k,{title:"Reason",children:e.message}):null]});case"user_message":return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(k,{title:"Message",children:e.text?(0,n.jsx)("p",{className:"whitespace-pre-wrap break-words text-sm text-foreground",children:e.text}):(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"No text provided."})}),N(e.files)]});case"assistant_message":var t;return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(k,{title:"Response",children:e.text?(0,n.jsx)("p",{className:"whitespace-pre-wrap break-words text-sm text-foreground",children:e.text}):(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"No assistant text captured."})}),(t=e.toolCalls).length?(0,n.jsx)(k,{title:"Tool calls (".concat(t.length,")"),children:(0,n.jsx)("div",{className:"grid gap-3",children:t.map((e,t)=>{var r,s,a,l;let o=function(e){let t="string"==typeof e.id?e.id:null;return{id:t,name:"string"==typeof e.name?e.name:null,type:"string"==typeof e.type?e.type:null,arguments:Object.prototype.hasOwnProperty.call(e,"arguments")?e.arguments:null}}(e);return(0,n.jsxs)("div",{className:"rounded-md border bg-muted/40 p-3",children:[(0,n.jsxs)("div",{className:"flex flex-wrap items-center gap-2 text-xs",children:[(0,n.jsx)(f.C,{variant:"secondary",className:"font-mono",children:null!==(r=o.name)&&void 0!==r?r:"unknown"}),o.id?(0,n.jsxs)("span",{className:"truncate text-muted-foreground",children:["id: ",o.id]}):null,o.type?(0,n.jsxs)("span",{className:"text-muted-foreground",children:["type: ",o.type]}):null]}),(0,n.jsx)("div",{className:"mt-2",children:(0,n.jsx)(I,{value:null!==(s=o.arguments)&&void 0!==s?s:{}})})]},null!==(l=o.id)&&void 0!==l?l:"".concat(null!==(a=o.name)&&void 0!==a?a:"tool","-").concat(t))})})}):null,N(e.files)]});case"tool_result":return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(k,{title:"Tool result",children:(0,n.jsx)(C,{items:function(e){let t=function(e){let t="string"==typeof e.name?e.name:null;return{name:t,status:"string"==typeof e.status?e.status:null,role:"string"==typeof e.role?e.role:null,type:"string"==typeof e.type?e.type:null}}(e.output.toolMessage);return[{label:"Tool call id",value:e.toolCallId},...t.name?[{label:"Tool name",value:t.name}]:[],...t.status?[{label:"Status",value:t.status}]:[],...t.role?[{label:"Role",value:t.role}]:[],...t.type?[{label:"Type",value:t.type}]:[]]}(e),emptyLabel:"No tool metadata captured."})}),(0,n.jsx)(k,{title:"Tool output",children:(0,n.jsx)(I,{value:e.output.toolMessage})}),N(e.output.files)]});case"rlm_start":return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(k,{title:"Execution",children:(0,n.jsx)(C,{items:[{label:"Tool call id",value:e.toolCallId}],emptyLabel:"No execution metadata captured."})}),(0,n.jsx)(k,{title:"Code",children:(0,n.jsx)("p",{className:"whitespace-pre-wrap break-words font-mono text-xs text-foreground",children:e.code})})]});case"rlm_tool_call":return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(k,{title:"Tool call",children:(0,n.jsx)(C,{items:[{label:"Tool call id",value:e.toolCallId},{label:"Tool name",value:e.toolName},{label:"Call index",value:e.toolCallCount+1}],emptyLabel:"No tool call metadata captured."})}),(0,n.jsx)(k,{title:"Arguments",children:(0,n.jsx)(I,{value:e.toolArgs})}),_(e.printOutput)]});case"rlm_tool_result":return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(k,{title:"Tool result",children:(0,n.jsx)(C,{items:[{label:"Tool call id",value:e.toolCallId},{label:"Tool name",value:e.toolName},{label:"Is error",value:e.toolIsError?"yes":"no"}],emptyLabel:"No tool result metadata captured."})}),(0,n.jsx)(k,{title:"Result",children:(0,n.jsx)("p",{className:"whitespace-pre-wrap break-words text-sm text-foreground",children:e.toolResult})})]});case"rlm_complete":return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(k,{title:"Completion",children:(0,n.jsx)(C,{items:[{label:"Tool call id",value:e.toolCallId},{label:"Tool calls made",value:e.toolCallCount},{label:"Is error",value:e.isError?"yes":"no"}],emptyLabel:"No completion metadata captured."})}),e.error?(0,n.jsx)(k,{title:"Error",children:(0,n.jsx)("p",{className:"whitespace-pre-wrap break-words text-sm text-foreground",children:e.error})}):null,(0,n.jsx)(k,{title:"Output",children:e.output?(0,n.jsx)("p",{className:"whitespace-pre-wrap break-words text-sm text-foreground",children:e.output}):(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"No output captured."})}),_(e.printOutput)]});case"assistant_rewrite":return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(k,{title:"Rewrite",children:(0,n.jsx)(C,{items:[{label:"Assistant timestamp",value:Z(e.assistantAt)},{label:"Reason",value:S(e.reason)}],emptyLabel:"No rewrite metadata captured."})}),(0,n.jsx)(k,{title:"Rewritten text",children:(0,n.jsx)("p",{className:"whitespace-pre-wrap break-words text-sm text-foreground",children:e.text})})]});case"note":return(0,n.jsx)(k,{title:"Note",children:e.text});default:return(0,n.jsx)(k,{title:"Event",children:"Recorded agent activity."})}}(e)})]},"".concat(e.type,"-").concat(e.at,"-").concat(t)))}):(0,n.jsx)("div",{className:"rounded-lg border border-dashed px-4 py-6 text-sm text-muted-foreground",children:"No history recorded yet."})})]})]})})}function N(e){return e.length?(0,n.jsx)(k,{title:"Files (".concat(e.length,")"),children:(0,n.jsx)("div",{className:"grid gap-2",children:e.map(e=>{var t;return(0,n.jsxs)("div",{className:"rounded-md border bg-muted/40 p-2 text-xs",children:[(0,n.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[(0,n.jsx)("span",{className:"font-medium text-foreground",children:e.name}),(0,n.jsx)("span",{className:"text-muted-foreground",children:Number.isFinite(t=e.size)?t<1024?"".concat(t," B"):t<1048576?"".concat((t/1024).toFixed(1)," KB"):"".concat((t/1048576).toFixed(1)," MB"):"Unknown size"})]}),(0,n.jsxs)("div",{className:"mt-1 flex flex-wrap items-center gap-2 text-muted-foreground",children:[(0,n.jsx)("span",{children:e.mimeType}),(0,n.jsx)("span",{className:"truncate font-mono",title:e.path,children:e.path})]})]},e.path)})})}):null}function _(e){return e.length?(0,n.jsx)(k,{title:"Print output (".concat(e.length,")"),children:(0,n.jsx)("pre",{className:"max-h-80 overflow-auto whitespace-pre-wrap break-words rounded-md bg-muted px-3 py-2 text-xs leading-relaxed text-foreground",children:e.join("\n")})}):null}function k(e){let{title:t,children:r}=e;return(0,n.jsxs)("section",{className:"min-w-0 overflow-hidden rounded-md border border-dashed bg-muted/30 p-3",children:[(0,n.jsx)("div",{className:"text-[11px] font-semibold uppercase tracking-wide text-muted-foreground",children:t}),(0,n.jsx)("div",{className:"mt-2 min-w-0 text-sm text-foreground",children:r})]})}function C(e){let{items:t,emptyLabel:r}=e;return t.length?(0,n.jsx)("dl",{className:"grid gap-2 text-sm md:grid-cols-2",children:t.map(e=>(0,n.jsxs)("div",{className:"min-w-0 space-y-1",children:[(0,n.jsx)("dt",{className:"text-[11px] uppercase text-muted-foreground",children:e.label}),(0,n.jsx)("dd",{className:"truncate font-medium text-foreground",title:"string"==typeof e.value?e.value:void 0,children:e.value})]},e.label))}):(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:r})}function I(e){let{value:t}=e;return(0,n.jsx)("pre",{className:"max-h-80 overflow-auto whitespace-pre-wrap break-words rounded-md bg-muted px-3 py-2 text-xs leading-relaxed text-foreground",children:function(e){try{return JSON.stringify(e,null,2)}catch(t){return t instanceof Error?t.message:String(e)}}(t)})}function S(e){switch(e){case"run_python_say_after_trim":return"Trimmed <say> after <run_python>";case"run_python_failure_trim":return"Trimmed content after failed <run_python>";default:return e}}function A(e,t){return e.length<=t?e:"".concat(e.slice(0,t-3),"...")}function R(e){switch(e.type){case"user":return"".concat(e.connector,":").concat(e.userId," / ").concat(e.channelId);case"cron":return"cron:".concat(e.id);case"system":return"system:".concat(e.tag);case"subagent":return e.name?"".concat(e.name," / ").concat(e.id):e.id;case"app":return"".concat(e.name," / ").concat(e.appId);case"permanent":return"".concat(e.name," / ").concat(e.id);case"memory-agent":return"memory-agent:".concat(e.id);case"memory-search":return e.name?"memory-search: ".concat(e.name):"memory-search:".concat(e.id);default:return"system"}}function Z(e){return Number.isFinite(e)?new Date(e).toLocaleString():"Unknown"}},82041:function(e,t,r){"use strict";r.d(t,{C:function(){return o}});var n=r(27573);r(7653);var s=r(49289),a=r(19369);let l=(0,s.j)("inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-medium transition-colors",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground",secondary:"border-transparent bg-secondary text-secondary-foreground",destructive:"border-transparent bg-destructive text-destructive-foreground",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function o(e){let{className:t,variant:r,...s}=e;return(0,n.jsx)("div",{className:(0,a.cn)(l({variant:r}),t),...s})}},73581:function(e,t,r){"use strict";function n(e){let t=e.descriptor;switch(t.type){case"user":return{type:"connection",connector:t.connector,userId:t.userId,channelId:t.channelId};case"cron":return{type:"cron",id:t.id};case"system":if("heartbeat"===t.tag)return{type:"heartbeat"};return{type:"system",tag:t.tag};case"subagent":return{type:"subagent",id:t.id,parentAgentId:t.parentAgentId,name:t.name};case"app":return{type:"app",id:t.id,parentAgentId:t.parentAgentId,name:t.name,appId:t.appId};case"permanent":return{type:"permanent",id:t.id,name:t.name};case"memory-agent":return{type:"memory-agent",id:t.id};case"memory-search":return{type:"memory-search",id:t.id,parentAgentId:t.parentAgentId,name:t.name};default:return{type:"system",tag:"unknown"}}}function s(e){switch(e.type){case"connection":return"Connection";case"cron":return"Cron";case"heartbeat":return"Heartbeat";case"subagent":return"Subagent";case"app":return"App";case"permanent":return"Permanent";case"memory-agent":return"Memory";case"memory-search":return"Memory Search";case"system":return"System";default:return"Agent"}}function a(e){return JSON.stringify(e)}r.d(t,{PA:function(){return n},l8:function(){return s},y2:function(){return a}})},90497:function(e,t,r){"use strict";async function n(e){let t=await fetch(e);if(!t.ok)throw Error("Request failed: ".concat(t.status));return await t.json()}async function s(){var e;return null!==(e=(await n("/api/v1/engine/status")).status)&&void 0!==e?e:{}}async function a(){var e;return null!==(e=(await n("/api/v1/engine/users")).users)&&void 0!==e?e:[]}async function l(){var e;return null!==(e=(await n("/api/v1/engine/cron/tasks")).tasks)&&void 0!==e?e:[]}async function o(){var e;return null!==(e=(await n("/api/v1/engine/heartbeat/tasks")).tasks)&&void 0!==e?e:[]}async function i(){var e;return null!==(e=(await n("/api/v1/engine/processes")).processes)&&void 0!==e?e:[]}async function c(e){let t=await fetch("/api/v1/engine/signals/generate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),r=await t.json();if(!t.ok||!r.ok){var n;throw Error(null!==(n=r.error)&&void 0!==n?n:"Request failed: ".concat(t.status))}return r.signal}async function d(){var e;return null!==(e=(await n("/api/v1/engine/signals/subscriptions")).subscriptions)&&void 0!==e?e:[]}async function u(){var e;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:200,r=new URLSearchParams({limit:String(t)});return null!==(e=(await n("/api/v1/engine/signals/events?".concat(r))).events)&&void 0!==e?e:[]}async function m(){var e;return null!==(e=(await n("/api/v1/engine/agents/background")).agents)&&void 0!==e?e:[]}async function x(){var e;return null!==(e=(await n("/api/v1/engine/agents")).agents)&&void 0!==e?e:[]}async function p(e){var t;let r=encodeURIComponent(e);return null!==(t=(await n("/api/v1/engine/agents/".concat(r,"/sessions"))).sessions)&&void 0!==t?t:[]}async function h(e,t){var r;let s=encodeURIComponent(e),a=new URLSearchParams;return(null==t?void 0:t.limit)&&a.set("limit",String(t.limit)),(null==t?void 0:t.sessionId)&&a.set("sessionId",t.sessionId),null!==(r=(await n("/api/v1/engine/agents/".concat(s,"/history?").concat(a))).records)&&void 0!==r?r:[]}async function g(e){let t=encodeURIComponent(e),r=await n("/api/v1/engine/memory/".concat(t,"/graph"));if(!r.graph)throw Error("Memory graph payload missing");return r.graph}async function f(e,t){var r;let n=encodeURIComponent(e),s=encodeURIComponent(t),a=await fetch("/api/v1/engine/memory/".concat(n,"/node/").concat(s));if(404===a.status)return null;if(!a.ok)throw Error("Request failed: ".concat(a.status));return null!==(r=(await a.json()).node)&&void 0!==r?r:null}r.d(t,{Ip:function(){return u},Sj:function(){return x},Sk:function(){return d},_1:function(){return p},ab:function(){return h},ce:function(){return f},fP:function(){return l},jg:function(){return s},oI:function(){return m},pS:function(){return g},sB:function(){return c},sZ:function(){return o},uh:function(){return a},x3:function(){return i}})},46191:function(e,t,r){"use strict";r.d(t,{Z:function(){return n}});let n=(0,r(50326).Z)("BellOff",[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M17 17H4a1 1 0 0 1-.74-1.673C4.59 13.956 6 12.499 6 8a6 6 0 0 1 .258-1.742",key:"178tsu"}],["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"M8.668 3.01A6 6 0 0 1 18 8c0 2.687.77 4.653 1.707 6.05",key:"1hqiys"}]])},20942:function(e,t,r){"use strict";r.d(t,{Z:function(){return n}});let n=(0,r(50326).Z)("Cable",[["path",{d:"M17 21v-2a1 1 0 0 1-1-1v-1a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v1a1 1 0 0 1-1 1",key:"10bnsj"}],["path",{d:"M19 15V6.5a1 1 0 0 0-7 0v11a1 1 0 0 1-7 0V9",key:"1eqmu1"}],["path",{d:"M21 21v-2h-4",key:"14zm7j"}],["path",{d:"M3 5h4V3",key:"z442eg"}],["path",{d:"M7 5a1 1 0 0 1 1 1v1a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a1 1 0 0 1 1-1V3",key:"ebdjd7"}]])}},function(e){e.O(0,[129,310,315,293,528,744],function(){return e(e.s=56855)}),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[718],{93644:function(e,t,n){Promise.resolve().then(n.bind(n,90542))},90542:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return v}});var a=n(27573),r=n(88146),s=n(7653);let c=(0,n(50326).Z)("Search",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]);var i=n(86742),l=n(16590),o=n(56284),d=n(5363),u=n(48157),m=n(82041),f=n(16273),p=n(26798),h=n(63769),g=n(99587),x=n(90497),y=n(73581);function v(){var e;let[t,n]=(0,s.useState)([]),[v,w]=(0,s.useState)(!1),[S,I]=(0,s.useState)(!1),[A,C]=(0,s.useState)(null),[R,k]=(0,s.useState)(""),[Z,M]=(0,s.useState)("all"),[P,T]=(0,s.useState)(null),E=(0,s.useCallback)(async function(){var e;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},a=null!==(e=t.silent)&&void 0!==e&&e;a||I(!0),C(null);try{let e=await (0,x.Sj)();n(e),T(new Date)}catch(e){C(e instanceof Error?e.message:"Failed to load agents")}finally{a||I(!1)}},[]);(0,s.useEffect)(()=>{E()},[E]),(0,s.useEffect)(()=>{let e=new EventSource("/api/v1/engine/events");return e.onopen=()=>{w(!0)},e.onerror=()=>{w(!1)},e.onmessage=e=>{let t=JSON.parse(e.data);if("init"===t.type){E({silent:!0});return}("agent.created"===t.type||"agent.reset"===t.type||"agent.restored"===t.type||"agent.dead"===t.type)&&E({silent:!0})},()=>{e.close()}},[E]);let O=(0,s.useMemo)(()=>[...t].sort((e,t)=>t.updatedAt-e.updatedAt),[t]),L=(0,s.useMemo)(()=>{let e=R.trim().toLowerCase();return O.filter(t=>{let n=(0,y.PA)(t);return("all"===Z||n.type===Z)&&(!e||(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(0,y.PA)(e);return"".concat(e.agentId," ").concat(b(e.descriptor)," ").concat((0,y.l8)(t)," ").concat(e.lifecycle).toLowerCase()})(t,n).includes(e))})},[O,R,Z]),U=(0,s.useMemo)(()=>new Set(t.map(e=>(0,y.PA)(e).type)),[t]),_=(0,s.useMemo)(()=>["all",...Array.from(U).sort()],[U]),z=(0,s.useMemo)(()=>{let e=new Map;return t.forEach(t=>{var n;let a=(0,y.PA)(t).type;e.set(a,(null!==(n=e.get(a))&&void 0!==n?n:0)+1)}),Array.from(e.entries()).map(e=>{let[t,n]=e;return{type:t,count:n}}).sort((e,t)=>t.count-e.count)},[t]),q=null!==(e=O[0])&&void 0!==e?e:null,D=q?j(q):"No activity";return(0,a.jsx)(u.r,{title:"Agents",subtitle:"Inspect live conversation threads and active agents.",toolbar:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{className:"relative hidden w-56 items-center md:flex",children:[(0,a.jsx)(c,{className:"absolute left-2 h-4 w-4 text-muted-foreground"}),(0,a.jsx)(h.I,{value:R,onChange:e=>k(e.target.value),placeholder:"Search agents",className:"h-9 pl-8","aria-label":"Search agents"})]}),(0,a.jsx)(m.C,{variant:v?"default":"outline",className:v?"bg-emerald-500 text-white":"",children:v?"Live":"Offline"}),(0,a.jsxs)(f.z,{onClick:()=>void E(),disabled:S,className:"gap-2",children:[(0,a.jsx)(i.Z,{className:S?"h-4 w-4 animate-spin":"h-4 w-4"}),"Refresh"]})]}),status:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("span",{children:P?"Last synced ".concat(P.toLocaleTimeString()):"Awaiting first sync"}),A?(0,a.jsx)("span",{className:"rounded-full border border-destructive/40 bg-destructive/10 px-2.5 py-1 text-destructive",children:A}):(0,a.jsxs)("span",{children:["Filtered results: ",L.length]})]}),children:(0,a.jsxs)("div",{className:"flex flex-1 flex-col gap-6 px-4 py-6 lg:px-6",children:[(0,a.jsxs)("div",{className:"grid gap-4 md:grid-cols-3",children:[(0,a.jsxs)(p.Zb,{className:"bg-gradient-to-br from-primary/10 via-card to-card/80",children:[(0,a.jsxs)(p.Ol,{className:"flex flex-row items-center justify-between",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)(p.SZ,{children:"Total agents"}),(0,a.jsx)(p.ll,{className:"text-2xl",children:t.length})]}),(0,a.jsx)("div",{className:"flex h-10 w-10 items-center justify-center rounded-full bg-primary/10 text-primary",children:(0,a.jsx)(l.Z,{className:"h-5 w-5"})})]}),(0,a.jsx)(p.aY,{className:"text-xs text-muted-foreground",children:"Active threads discovered from the engine."})]}),(0,a.jsxs)(p.Zb,{className:"bg-gradient-to-br from-accent/10 via-card to-card/80",children:[(0,a.jsxs)(p.Ol,{children:[(0,a.jsx)(p.SZ,{children:"Agent types"}),(0,a.jsx)(p.ll,{className:"text-2xl",children:U.size})]}),(0,a.jsx)(p.aY,{className:"text-xs text-muted-foreground",children:z.length?z.slice(0,3).map(e=>"".concat(N(e.type)," (").concat(e.count,")")).join(", "):"No agents yet"})]}),(0,a.jsxs)(p.Zb,{className:"bg-gradient-to-br from-secondary/30 via-card to-card/80",children:[(0,a.jsxs)(p.Ol,{children:[(0,a.jsx)(p.SZ,{children:"Latest activity"}),(0,a.jsx)(p.ll,{className:"text-lg",children:D})]}),(0,a.jsx)(p.aY,{className:"text-xs text-muted-foreground",children:q?"Agent ".concat(q.agentId," updated"):"Waiting for the first agent."})]})]}),(0,a.jsxs)(p.Zb,{className:"overflow-hidden",children:[(0,a.jsx)(p.Ol,{children:(0,a.jsxs)("div",{className:"flex flex-col gap-3 md:flex-row md:items-center md:justify-between",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)(p.ll,{children:"Active agents"}),(0,a.jsx)(p.SZ,{children:"All active agent activity from the engine."})]}),(0,a.jsxs)("div",{className:"relative w-full md:hidden",children:[(0,a.jsx)(c,{className:"absolute left-2 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground"}),(0,a.jsx)(h.I,{value:R,onChange:e=>k(e.target.value),placeholder:"Search agents",className:"h-9 pl-8","aria-label":"Search agents"})]}),(0,a.jsx)("div",{className:"flex flex-wrap items-center gap-2",children:_.map(e=>(0,a.jsx)(f.z,{size:"sm",variant:Z===e?"default":"outline",onClick:()=>M(e),className:"capitalize",children:"all"===e?"All":N(e)},e))})]})}),(0,a.jsx)(p.aY,{className:"pt-0",children:L.length?(0,a.jsxs)(g.iA,{children:[(0,a.jsx)(g.xD,{children:(0,a.jsxs)(g.SC,{children:[(0,a.jsx)(g.ss,{children:"Agent"}),(0,a.jsx)(g.ss,{className:"hidden md:table-cell",children:"Updated"}),(0,a.jsx)(g.ss,{className:"hidden lg:table-cell",children:"Descriptor"}),(0,a.jsx)(g.ss,{className:"hidden xl:table-cell",children:"Type"}),(0,a.jsx)(g.ss,{children:"Status"})]})}),(0,a.jsx)(g.RM,{children:L.map(e=>{let t=(0,y.PA)(e);return(0,a.jsxs)(g.SC,{className:"hover:bg-muted/50",children:[(0,a.jsxs)(g.pj,{children:[(0,a.jsx)(r.default,{href:"/agent?agentId=".concat(encodeURIComponent(e.agentId)),className:"text-sm font-medium text-foreground hover:underline",children:e.agentId}),(0,a.jsx)("div",{className:"text-xs text-muted-foreground lg:hidden",children:b(e.descriptor)}),(0,a.jsx)("div",{className:"mt-1 text-[11px] text-muted-foreground lg:hidden",children:(0,y.l8)(t)})]}),(0,a.jsx)(g.pj,{className:"hidden md:table-cell text-xs text-muted-foreground",children:j(e)}),(0,a.jsx)(g.pj,{className:"hidden lg:table-cell",children:(0,a.jsx)("span",{className:"text-xs text-muted-foreground",children:b(e.descriptor)})}),(0,a.jsx)(g.pj,{className:"hidden xl:table-cell",children:(0,a.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,a.jsx)(m.C,{variant:"outline",className:"text-[11px]",children:(0,y.l8)(t)}),(0,a.jsx)("span",{className:"line-clamp-2 font-mono text-[10px] text-muted-foreground",children:(0,y.y2)(t)})]})}),(0,a.jsx)(g.pj,{children:(0,a.jsxs)(m.C,{variant:"dead"===e.lifecycle?"destructive":"sleeping"===e.lifecycle?"outline":"secondary",className:"gap-1 capitalize",children:["dead"===e.lifecycle?(0,a.jsx)(o.Z,{className:"h-3 w-3"}):"sleeping"===e.lifecycle?(0,a.jsx)(d.Z,{className:"h-3 w-3"}):(0,a.jsx)(l.Z,{className:"h-3 w-3"}),e.lifecycle]})})]},e.agentId)})})]}):(0,a.jsx)("div",{className:"rounded-lg border border-dashed px-4 py-6 text-sm text-muted-foreground",children:"No agents match this filter."})})]})]})})}function j(e){return new Date(e.updatedAt).toLocaleString()}function b(e){switch(e.type){case"user":return"".concat(e.connector,":").concat(e.userId," / ").concat(e.channelId);case"cron":return"cron:".concat(e.id);case"system":return"system:".concat(e.tag);case"subagent":return e.name?"".concat(e.name," / ").concat(e.id):e.id;case"app":return"".concat(e.name," / ").concat(e.appId);case"permanent":return"".concat(e.name," / ").concat(e.id);case"memory-agent":return"memory-agent:".concat(e.id);case"memory-search":return e.name?"memory-search: ".concat(e.name):"memory-search:".concat(e.id);default:return"system"}}function N(e){switch(e){case"connection":return"Connection";case"cron":return"Cron";case"heartbeat":return"Heartbeat";case"subagent":return"Subagent";case"app":return"App";case"permanent":return"Permanent";case"memory-agent":return"Memory";case"memory-search":return"Memory Search";case"system":return"System";default:return"Agent"}}},82041:function(e,t,n){"use strict";n.d(t,{C:function(){return i}});var a=n(27573);n(7653);var r=n(49289),s=n(19369);let c=(0,r.j)("inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-medium transition-colors",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground",secondary:"border-transparent bg-secondary text-secondary-foreground",destructive:"border-transparent bg-destructive text-destructive-foreground",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function i(e){let{className:t,variant:n,...r}=e;return(0,a.jsx)("div",{className:(0,s.cn)(c({variant:n}),t),...r})}},99587:function(e,t,n){"use strict";n.d(t,{RM:function(){return l},SC:function(){return o},iA:function(){return c},pj:function(){return u},ss:function(){return d},xD:function(){return i}});var a=n(27573),r=n(7653),s=n(19369);let c=r.forwardRef((e,t)=>{let{className:n,...r}=e;return(0,a.jsx)("div",{className:"w-full overflow-auto",children:(0,a.jsx)("table",{ref:t,className:(0,s.cn)("w-full caption-bottom text-sm",n),...r})})});c.displayName="Table";let i=r.forwardRef((e,t)=>{let{className:n,...r}=e;return(0,a.jsx)("thead",{ref:t,className:(0,s.cn)("[&_tr]:border-b",n),...r})});i.displayName="TableHeader";let l=r.forwardRef((e,t)=>{let{className:n,...r}=e;return(0,a.jsx)("tbody",{ref:t,className:(0,s.cn)("[&_tr:last-child]:border-0",n),...r})});l.displayName="TableBody",r.forwardRef((e,t)=>{let{className:n,...r}=e;return(0,a.jsx)("tfoot",{ref:t,className:(0,s.cn)("border-t bg-muted/50 font-medium",n),...r})}).displayName="TableFooter";let o=r.forwardRef((e,t)=>{let{className:n,...r}=e;return(0,a.jsx)("tr",{ref:t,className:(0,s.cn)("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",n),...r})});o.displayName="TableRow";let d=r.forwardRef((e,t)=>{let{className:n,...r}=e;return(0,a.jsx)("th",{ref:t,className:(0,s.cn)("h-10 px-2 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0",n),...r})});d.displayName="TableHead";let u=r.forwardRef((e,t)=>{let{className:n,...r}=e;return(0,a.jsx)("td",{ref:t,className:(0,s.cn)("p-2 align-middle [&:has([role=checkbox])]:pr-0",n),...r})});u.displayName="TableCell",r.forwardRef((e,t)=>{let{className:n,...r}=e;return(0,a.jsx)("caption",{ref:t,className:(0,s.cn)("mt-4 text-sm text-muted-foreground",n),...r})}).displayName="TableCaption"},73581:function(e,t,n){"use strict";function a(e){let t=e.descriptor;switch(t.type){case"user":return{type:"connection",connector:t.connector,userId:t.userId,channelId:t.channelId};case"cron":return{type:"cron",id:t.id};case"system":if("heartbeat"===t.tag)return{type:"heartbeat"};return{type:"system",tag:t.tag};case"subagent":return{type:"subagent",id:t.id,parentAgentId:t.parentAgentId,name:t.name};case"app":return{type:"app",id:t.id,parentAgentId:t.parentAgentId,name:t.name,appId:t.appId};case"permanent":return{type:"permanent",id:t.id,name:t.name};case"memory-agent":return{type:"memory-agent",id:t.id};case"memory-search":return{type:"memory-search",id:t.id,parentAgentId:t.parentAgentId,name:t.name};default:return{type:"system",tag:"unknown"}}}function r(e){switch(e.type){case"connection":return"Connection";case"cron":return"Cron";case"heartbeat":return"Heartbeat";case"subagent":return"Subagent";case"app":return"App";case"permanent":return"Permanent";case"memory-agent":return"Memory";case"memory-search":return"Memory Search";case"system":return"System";default:return"Agent"}}function s(e){return JSON.stringify(e)}n.d(t,{PA:function(){return a},l8:function(){return r},y2:function(){return s}})},90497:function(e,t,n){"use strict";async function a(e){let t=await fetch(e);if(!t.ok)throw Error("Request failed: ".concat(t.status));return await t.json()}async function r(){var e;return null!==(e=(await a("/api/v1/engine/status")).status)&&void 0!==e?e:{}}async function s(){var e;return null!==(e=(await a("/api/v1/engine/users")).users)&&void 0!==e?e:[]}async function c(){var e;return null!==(e=(await a("/api/v1/engine/cron/tasks")).tasks)&&void 0!==e?e:[]}async function i(){var e;return null!==(e=(await a("/api/v1/engine/heartbeat/tasks")).tasks)&&void 0!==e?e:[]}async function l(){var e;return null!==(e=(await a("/api/v1/engine/processes")).processes)&&void 0!==e?e:[]}async function o(e){let t=await fetch("/api/v1/engine/signals/generate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),n=await t.json();if(!t.ok||!n.ok){var a;throw Error(null!==(a=n.error)&&void 0!==a?a:"Request failed: ".concat(t.status))}return n.signal}async function d(){var e;return null!==(e=(await a("/api/v1/engine/signals/subscriptions")).subscriptions)&&void 0!==e?e:[]}async function u(){var e;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:200,n=new URLSearchParams({limit:String(t)});return null!==(e=(await a("/api/v1/engine/signals/events?".concat(n))).events)&&void 0!==e?e:[]}async function m(){var e;return null!==(e=(await a("/api/v1/engine/agents/background")).agents)&&void 0!==e?e:[]}async function f(){var e;return null!==(e=(await a("/api/v1/engine/agents")).agents)&&void 0!==e?e:[]}async function p(e){var t;let n=encodeURIComponent(e);return null!==(t=(await a("/api/v1/engine/agents/".concat(n,"/sessions"))).sessions)&&void 0!==t?t:[]}async function h(e,t){var n;let r=encodeURIComponent(e),s=new URLSearchParams;return(null==t?void 0:t.limit)&&s.set("limit",String(t.limit)),(null==t?void 0:t.sessionId)&&s.set("sessionId",t.sessionId),null!==(n=(await a("/api/v1/engine/agents/".concat(r,"/history?").concat(s))).records)&&void 0!==n?n:[]}async function g(e){let t=encodeURIComponent(e),n=await a("/api/v1/engine/memory/".concat(t,"/graph"));if(!n.graph)throw Error("Memory graph payload missing");return n.graph}async function x(e,t){var n;let a=encodeURIComponent(e),r=encodeURIComponent(t),s=await fetch("/api/v1/engine/memory/".concat(a,"/node/").concat(r));if(404===s.status)return null;if(!s.ok)throw Error("Request failed: ".concat(s.status));return null!==(n=(await s.json()).node)&&void 0!==n?n:null}n.d(t,{Ip:function(){return u},Sj:function(){return f},Sk:function(){return d},_1:function(){return p},ab:function(){return h},ce:function(){return x},fP:function(){return c},jg:function(){return r},oI:function(){return m},pS:function(){return g},sB:function(){return o},sZ:function(){return i},uh:function(){return s},x3:function(){return l}})}},function(e){e.O(0,[129,310,315,293,528,744],function(){return e(e.s=93644)}),_N_E=e.O()}]);