daycare-cli 2026.2.24 → 2026.2.26

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 (419) hide show
  1. package/dist/engine/agents/agent.d.ts +7 -5
  2. package/dist/engine/agents/agent.d.ts.map +1 -1
  3. package/dist/engine/agents/agent.js +58 -56
  4. package/dist/engine/agents/agent.js.map +1 -1
  5. package/dist/engine/agents/agent.spec.js +95 -46
  6. package/dist/engine/agents/agent.spec.js.map +1 -1
  7. package/dist/engine/agents/agentSystem.d.ts +13 -9
  8. package/dist/engine/agents/agentSystem.d.ts.map +1 -1
  9. package/dist/engine/agents/agentSystem.js +150 -89
  10. package/dist/engine/agents/agentSystem.js.map +1 -1
  11. package/dist/engine/agents/agentSystem.spec.js +89 -32
  12. package/dist/engine/agents/agentSystem.spec.js.map +1 -1
  13. package/dist/engine/agents/agentSystemDurableInbox.spec.js +66 -11
  14. package/dist/engine/agents/agentSystemDurableInbox.spec.js.map +1 -1
  15. package/dist/engine/agents/context.d.ts +21 -2
  16. package/dist/engine/agents/context.d.ts.map +1 -1
  17. package/dist/engine/agents/context.js +41 -4
  18. package/dist/engine/agents/context.js.map +1 -1
  19. package/dist/engine/agents/context.spec.js +15 -5
  20. package/dist/engine/agents/context.spec.js.map +1 -1
  21. package/dist/engine/agents/ops/agentBackgroundList.d.ts.map +1 -1
  22. package/dist/engine/agents/ops/agentBackgroundList.js +3 -1
  23. package/dist/engine/agents/ops/agentBackgroundList.js.map +1 -1
  24. package/dist/engine/agents/ops/agentDescriptorCacheKey.d.ts.map +1 -1
  25. package/dist/engine/agents/ops/agentDescriptorCacheKey.js +2 -0
  26. package/dist/engine/agents/ops/agentDescriptorCacheKey.js.map +1 -1
  27. package/dist/engine/agents/ops/agentDescriptorCacheKey.spec.js +8 -0
  28. package/dist/engine/agents/ops/agentDescriptorCacheKey.spec.js.map +1 -1
  29. package/dist/engine/agents/ops/agentDescriptorLabel.d.ts.map +1 -1
  30. package/dist/engine/agents/ops/agentDescriptorLabel.js +3 -0
  31. package/dist/engine/agents/ops/agentDescriptorLabel.js.map +1 -1
  32. package/dist/engine/agents/ops/agentDescriptorLabel.spec.js +8 -0
  33. package/dist/engine/agents/ops/agentDescriptorLabel.spec.js.map +1 -1
  34. package/dist/engine/agents/ops/agentDescriptorRead.d.ts +2 -2
  35. package/dist/engine/agents/ops/agentDescriptorRead.d.ts.map +1 -1
  36. package/dist/engine/agents/ops/agentDescriptorRead.js +2 -2
  37. package/dist/engine/agents/ops/agentDescriptorRead.js.map +1 -1
  38. package/dist/engine/agents/ops/agentDescriptorRoleResolve.d.ts.map +1 -1
  39. package/dist/engine/agents/ops/agentDescriptorRoleResolve.js +1 -0
  40. package/dist/engine/agents/ops/agentDescriptorRoleResolve.js.map +1 -1
  41. package/dist/engine/agents/ops/agentDescriptorRoleResolve.spec.js +9 -0
  42. package/dist/engine/agents/ops/agentDescriptorRoleResolve.spec.js.map +1 -1
  43. package/dist/engine/agents/ops/agentDescriptorTypes.d.ts +5 -0
  44. package/dist/engine/agents/ops/agentDescriptorTypes.d.ts.map +1 -1
  45. package/dist/engine/agents/ops/agentDescriptorWrite.d.ts +3 -3
  46. package/dist/engine/agents/ops/agentDescriptorWrite.d.ts.map +1 -1
  47. package/dist/engine/agents/ops/agentDescriptorWrite.js +7 -24
  48. package/dist/engine/agents/ops/agentDescriptorWrite.js.map +1 -1
  49. package/dist/engine/agents/ops/agentDescriptorWrite.spec.js +6 -4
  50. package/dist/engine/agents/ops/agentDescriptorWrite.spec.js.map +1 -1
  51. package/dist/engine/agents/ops/agentHistoryAppend.d.ts +2 -2
  52. package/dist/engine/agents/ops/agentHistoryAppend.d.ts.map +1 -1
  53. package/dist/engine/agents/ops/agentHistoryAppend.js +2 -2
  54. package/dist/engine/agents/ops/agentHistoryAppend.js.map +1 -1
  55. package/dist/engine/agents/ops/agentHistoryLoad.d.ts +2 -2
  56. package/dist/engine/agents/ops/agentHistoryLoad.d.ts.map +1 -1
  57. package/dist/engine/agents/ops/agentHistoryLoad.js +2 -2
  58. package/dist/engine/agents/ops/agentHistoryLoad.js.map +1 -1
  59. package/dist/engine/agents/ops/agentHistoryLoad.spec.js +10 -8
  60. package/dist/engine/agents/ops/agentHistoryLoad.spec.js.map +1 -1
  61. package/dist/engine/agents/ops/agentHistoryLoadAll.d.ts +2 -2
  62. package/dist/engine/agents/ops/agentHistoryLoadAll.d.ts.map +1 -1
  63. package/dist/engine/agents/ops/agentHistoryLoadAll.js +2 -2
  64. package/dist/engine/agents/ops/agentHistoryLoadAll.js.map +1 -1
  65. package/dist/engine/agents/ops/agentHistoryLoadAll.spec.js +10 -8
  66. package/dist/engine/agents/ops/agentHistoryLoadAll.spec.js.map +1 -1
  67. package/dist/engine/agents/ops/agentInferencePromptWrite.d.ts +2 -2
  68. package/dist/engine/agents/ops/agentInferencePromptWrite.d.ts.map +1 -1
  69. package/dist/engine/agents/ops/agentInferencePromptWrite.js +2 -6
  70. package/dist/engine/agents/ops/agentInferencePromptWrite.js.map +1 -1
  71. package/dist/engine/agents/ops/agentInferencePromptWrite.spec.js +3 -1
  72. package/dist/engine/agents/ops/agentInferencePromptWrite.spec.js.map +1 -1
  73. package/dist/engine/agents/ops/agentLoopRun.d.ts.map +1 -1
  74. package/dist/engine/agents/ops/agentLoopRun.js +6 -8
  75. package/dist/engine/agents/ops/agentLoopRun.js.map +1 -1
  76. package/dist/engine/agents/ops/agentLoopRun.spec.js +2 -0
  77. package/dist/engine/agents/ops/agentLoopRun.spec.js.map +1 -1
  78. package/dist/engine/agents/ops/agentPath.d.ts +2 -2
  79. package/dist/engine/agents/ops/agentPath.d.ts.map +1 -1
  80. package/dist/engine/agents/ops/agentPath.js +2 -2
  81. package/dist/engine/agents/ops/agentPath.js.map +1 -1
  82. package/dist/engine/agents/ops/agentPromptResolve.js +1 -1
  83. package/dist/engine/agents/ops/agentPromptResolve.js.map +1 -1
  84. package/dist/engine/agents/ops/agentPromptResolve.spec.js +12 -0
  85. package/dist/engine/agents/ops/agentPromptResolve.spec.js.map +1 -1
  86. package/dist/engine/agents/ops/agentStateRead.d.ts +2 -2
  87. package/dist/engine/agents/ops/agentStateRead.d.ts.map +1 -1
  88. package/dist/engine/agents/ops/agentStateRead.js +2 -2
  89. package/dist/engine/agents/ops/agentStateRead.js.map +1 -1
  90. package/dist/engine/agents/ops/agentStateRead.spec.js +13 -9
  91. package/dist/engine/agents/ops/agentStateRead.spec.js.map +1 -1
  92. package/dist/engine/agents/ops/agentStateWrite.d.ts +2 -2
  93. package/dist/engine/agents/ops/agentStateWrite.d.ts.map +1 -1
  94. package/dist/engine/agents/ops/agentStateWrite.js +4 -4
  95. package/dist/engine/agents/ops/agentStateWrite.js.map +1 -1
  96. package/dist/engine/agents/ops/agentSystemPrompt.d.ts +1 -1
  97. package/dist/engine/agents/ops/agentSystemPrompt.d.ts.map +1 -1
  98. package/dist/engine/agents/ops/agentSystemPrompt.js +1 -1
  99. package/dist/engine/agents/ops/agentSystemPrompt.js.map +1 -1
  100. package/dist/engine/agents/ops/agentSystemPrompt.spec.js +6 -2
  101. package/dist/engine/agents/ops/agentSystemPrompt.spec.js.map +1 -1
  102. package/dist/engine/agents/ops/agentSystemPromptContext.d.ts +2 -3
  103. package/dist/engine/agents/ops/agentSystemPromptContext.d.ts.map +1 -1
  104. package/dist/engine/agents/ops/agentSystemPromptSectionAgentsTopologySignalsChannels.d.ts +1 -1
  105. package/dist/engine/agents/ops/agentSystemPromptSectionAgentsTopologySignalsChannels.d.ts.map +1 -1
  106. package/dist/engine/agents/ops/agentSystemPromptSectionAgentsTopologySignalsChannels.js +1 -1
  107. package/dist/engine/agents/ops/agentSystemPromptSectionAgentsTopologySignalsChannels.js.map +1 -1
  108. package/dist/engine/agents/ops/agentSystemPromptSectionAutonomousOperation.d.ts +1 -1
  109. package/dist/engine/agents/ops/agentSystemPromptSectionAutonomousOperation.d.ts.map +1 -1
  110. package/dist/engine/agents/ops/agentSystemPromptSectionAutonomousOperation.js +2 -2
  111. package/dist/engine/agents/ops/agentSystemPromptSectionAutonomousOperation.js.map +1 -1
  112. package/dist/engine/agents/ops/agentSystemPromptSectionEnvironment.d.ts +1 -1
  113. package/dist/engine/agents/ops/agentSystemPromptSectionEnvironment.d.ts.map +1 -1
  114. package/dist/engine/agents/ops/agentSystemPromptSectionEnvironment.js +1 -1
  115. package/dist/engine/agents/ops/agentSystemPromptSectionEnvironment.js.map +1 -1
  116. package/dist/engine/agents/ops/agentSystemPromptSectionFormatting.d.ts +1 -1
  117. package/dist/engine/agents/ops/agentSystemPromptSectionFormatting.d.ts.map +1 -1
  118. package/dist/engine/agents/ops/agentSystemPromptSectionFormatting.js +1 -1
  119. package/dist/engine/agents/ops/agentSystemPromptSectionFormatting.js.map +1 -1
  120. package/dist/engine/agents/ops/agentSystemPromptSectionMemory.d.ts +1 -1
  121. package/dist/engine/agents/ops/agentSystemPromptSectionMemory.d.ts.map +1 -1
  122. package/dist/engine/agents/ops/agentSystemPromptSectionMemory.js +1 -1
  123. package/dist/engine/agents/ops/agentSystemPromptSectionMemory.js.map +1 -1
  124. package/dist/engine/agents/ops/agentSystemPromptSectionModels.d.ts +1 -1
  125. package/dist/engine/agents/ops/agentSystemPromptSectionModels.d.ts.map +1 -1
  126. package/dist/engine/agents/ops/agentSystemPromptSectionModels.js +1 -1
  127. package/dist/engine/agents/ops/agentSystemPromptSectionModels.js.map +1 -1
  128. package/dist/engine/agents/ops/agentSystemPromptSectionModels.spec.js +5 -1
  129. package/dist/engine/agents/ops/agentSystemPromptSectionModels.spec.js.map +1 -1
  130. package/dist/engine/agents/ops/agentSystemPromptSectionPermissions.d.ts +1 -1
  131. package/dist/engine/agents/ops/agentSystemPromptSectionPermissions.d.ts.map +1 -1
  132. package/dist/engine/agents/ops/agentSystemPromptSectionPermissions.js +1 -1
  133. package/dist/engine/agents/ops/agentSystemPromptSectionPermissions.js.map +1 -1
  134. package/dist/engine/agents/ops/agentSystemPromptSectionPreamble.d.ts +1 -1
  135. package/dist/engine/agents/ops/agentSystemPromptSectionPreamble.d.ts.map +1 -1
  136. package/dist/engine/agents/ops/agentSystemPromptSectionPreamble.js +2 -2
  137. package/dist/engine/agents/ops/agentSystemPromptSectionPreamble.js.map +1 -1
  138. package/dist/engine/agents/ops/agentSystemPromptSectionSkills.d.ts +1 -1
  139. package/dist/engine/agents/ops/agentSystemPromptSectionSkills.d.ts.map +1 -1
  140. package/dist/engine/agents/ops/agentSystemPromptSectionSkills.js +1 -1
  141. package/dist/engine/agents/ops/agentSystemPromptSectionSkills.js.map +1 -1
  142. package/dist/engine/agents/ops/agentSystemPromptSectionToolCalling.d.ts +1 -1
  143. package/dist/engine/agents/ops/agentSystemPromptSectionToolCalling.d.ts.map +1 -1
  144. package/dist/engine/agents/ops/agentSystemPromptSectionToolCalling.js +25 -6
  145. package/dist/engine/agents/ops/agentSystemPromptSectionToolCalling.js.map +1 -1
  146. package/dist/engine/agents/ops/agentSystemPromptSectionToolCalling.spec.d.ts +2 -0
  147. package/dist/engine/agents/ops/agentSystemPromptSectionToolCalling.spec.d.ts.map +1 -0
  148. package/dist/engine/agents/ops/agentSystemPromptSectionToolCalling.spec.js +62 -0
  149. package/dist/engine/agents/ops/agentSystemPromptSectionToolCalling.spec.js.map +1 -0
  150. package/dist/engine/agents/ops/agentSystemPromptWrite.d.ts +3 -3
  151. package/dist/engine/agents/ops/agentSystemPromptWrite.d.ts.map +1 -1
  152. package/dist/engine/agents/ops/agentSystemPromptWrite.js +4 -3
  153. package/dist/engine/agents/ops/agentSystemPromptWrite.js.map +1 -1
  154. package/dist/engine/agents/ops/agentSystemPromptWrite.spec.js +5 -3
  155. package/dist/engine/agents/ops/agentSystemPromptWrite.spec.js.map +1 -1
  156. package/dist/engine/apps/appExecute.d.ts.map +1 -1
  157. package/dist/engine/apps/appExecute.js +7 -5
  158. package/dist/engine/apps/appExecute.js.map +1 -1
  159. package/dist/engine/apps/appExecute.spec.js +19 -10
  160. package/dist/engine/apps/appExecute.spec.js.map +1 -1
  161. package/dist/engine/apps/appInstallToolBuild.js +4 -3
  162. package/dist/engine/apps/appInstallToolBuild.js.map +1 -1
  163. package/dist/engine/channels/channels.d.ts.map +1 -1
  164. package/dist/engine/channels/channels.js +9 -11
  165. package/dist/engine/channels/channels.js.map +1 -1
  166. package/dist/engine/channels/channels.spec.js +4 -4
  167. package/dist/engine/channels/channels.spec.js.map +1 -1
  168. package/dist/engine/cron/crons.d.ts.map +1 -1
  169. package/dist/engine/cron/crons.js +2 -1
  170. package/dist/engine/cron/crons.js.map +1 -1
  171. package/dist/engine/cron/crons.spec.js +3 -5
  172. package/dist/engine/cron/crons.spec.js.map +1 -1
  173. package/dist/engine/cron/ops/cronScheduler.js +2 -2
  174. package/dist/engine/cron/ops/cronScheduler.js.map +1 -1
  175. package/dist/engine/engine.d.ts +5 -0
  176. package/dist/engine/engine.d.ts.map +1 -1
  177. package/dist/engine/engine.js +45 -15
  178. package/dist/engine/engine.js.map +1 -1
  179. package/dist/engine/engine.spec.js +9 -4
  180. package/dist/engine/engine.spec.js.map +1 -1
  181. package/dist/engine/expose/exposes.d.ts.map +1 -1
  182. package/dist/engine/expose/exposes.js +9 -2
  183. package/dist/engine/expose/exposes.js.map +1 -1
  184. package/dist/engine/heartbeat/heartbeats.d.ts.map +1 -1
  185. package/dist/engine/heartbeat/heartbeats.js +17 -8
  186. package/dist/engine/heartbeat/heartbeats.js.map +1 -1
  187. package/dist/engine/heartbeat/heartbeats.spec.js +1 -1
  188. package/dist/engine/heartbeat/heartbeats.spec.js.map +1 -1
  189. package/dist/engine/heartbeat/ops/heartbeatScheduler.js +2 -2
  190. package/dist/engine/heartbeat/ops/heartbeatScheduler.js.map +1 -1
  191. package/dist/engine/ipc/server.d.ts.map +1 -1
  192. package/dist/engine/ipc/server.js +24 -5
  193. package/dist/engine/ipc/server.js.map +1 -1
  194. package/dist/engine/ipc/serverMemoryRoutesRegister.d.ts +3 -2
  195. package/dist/engine/ipc/serverMemoryRoutesRegister.d.ts.map +1 -1
  196. package/dist/engine/ipc/serverMemoryRoutesRegister.js +3 -2
  197. package/dist/engine/ipc/serverMemoryRoutesRegister.js.map +1 -1
  198. package/dist/engine/ipc/serverMemoryRoutesRegister.spec.js +3 -2
  199. package/dist/engine/ipc/serverMemoryRoutesRegister.spec.js.map +1 -1
  200. package/dist/engine/memory/memory.d.ts +6 -5
  201. package/dist/engine/memory/memory.d.ts.map +1 -1
  202. package/dist/engine/memory/memory.js +12 -12
  203. package/dist/engine/memory/memory.js.map +1 -1
  204. package/dist/engine/memory/memory.spec.js +10 -6
  205. package/dist/engine/memory/memory.spec.js.map +1 -1
  206. package/dist/engine/memory/memorySessionObserve.spec.js +3 -3
  207. package/dist/engine/memory/memorySessionObserve.spec.js.map +1 -1
  208. package/dist/engine/memory/memoryWorker.d.ts +2 -1
  209. package/dist/engine/memory/memoryWorker.d.ts.map +1 -1
  210. package/dist/engine/memory/memoryWorker.js +4 -2
  211. package/dist/engine/memory/memoryWorker.js.map +1 -1
  212. package/dist/engine/memory/memoryWorker.spec.js +4 -2
  213. package/dist/engine/memory/memoryWorker.spec.js.map +1 -1
  214. package/dist/engine/modules/rlm/rlmTool.spec.js +7 -4
  215. package/dist/engine/modules/rlm/rlmTool.spec.js.map +1 -1
  216. package/dist/engine/modules/rlm/rlmToolsForContextResolve.d.ts.map +1 -1
  217. package/dist/engine/modules/rlm/rlmToolsForContextResolve.js +2 -4
  218. package/dist/engine/modules/rlm/rlmToolsForContextResolve.js.map +1 -1
  219. package/dist/engine/modules/rlm/rlmToolsForContextResolve.spec.js +5 -3
  220. package/dist/engine/modules/rlm/rlmToolsForContextResolve.spec.js.map +1 -1
  221. package/dist/engine/modules/toolResolver.spec.js +2 -2
  222. package/dist/engine/modules/toolResolver.spec.js.map +1 -1
  223. package/dist/engine/modules/tools/agentCompactTool.d.ts.map +1 -1
  224. package/dist/engine/modules/tools/agentCompactTool.js +5 -1
  225. package/dist/engine/modules/tools/agentCompactTool.js.map +1 -1
  226. package/dist/engine/modules/tools/agentCompactTool.spec.js +9 -5
  227. package/dist/engine/modules/tools/agentCompactTool.spec.js.map +1 -1
  228. package/dist/engine/modules/tools/agentModelSetToolBuild.spec.js +5 -8
  229. package/dist/engine/modules/tools/agentModelSetToolBuild.spec.js.map +1 -1
  230. package/dist/engine/modules/tools/agentResetTool.d.ts.map +1 -1
  231. package/dist/engine/modules/tools/agentResetTool.js +5 -1
  232. package/dist/engine/modules/tools/agentResetTool.js.map +1 -1
  233. package/dist/engine/modules/tools/agentResetTool.spec.js +12 -7
  234. package/dist/engine/modules/tools/agentResetTool.spec.js.map +1 -1
  235. package/dist/engine/modules/tools/background.d.ts.map +1 -1
  236. package/dist/engine/modules/tools/background.js +5 -5
  237. package/dist/engine/modules/tools/background.js.map +1 -1
  238. package/dist/engine/modules/tools/background.spec.js +3 -2
  239. package/dist/engine/modules/tools/background.spec.js.map +1 -1
  240. package/dist/engine/modules/tools/channelSendTool.js +3 -0
  241. package/dist/engine/modules/tools/channelSendTool.js.map +1 -1
  242. package/dist/engine/modules/tools/cron.d.ts.map +1 -1
  243. package/dist/engine/modules/tools/cron.js +12 -9
  244. package/dist/engine/modules/tools/cron.js.map +1 -1
  245. package/dist/engine/modules/tools/memoryNodeReadToolBuild.js +2 -2
  246. package/dist/engine/modules/tools/memoryNodeReadToolBuild.js.map +1 -1
  247. package/dist/engine/modules/tools/memoryNodeReadToolBuild.spec.js +3 -4
  248. package/dist/engine/modules/tools/memoryNodeReadToolBuild.spec.js.map +1 -1
  249. package/dist/engine/modules/tools/memoryNodeWriteToolBuild.d.ts.map +1 -1
  250. package/dist/engine/modules/tools/memoryNodeWriteToolBuild.js +2 -3
  251. package/dist/engine/modules/tools/memoryNodeWriteToolBuild.js.map +1 -1
  252. package/dist/engine/modules/tools/memoryNodeWriteToolBuild.spec.js +3 -4
  253. package/dist/engine/modules/tools/memoryNodeWriteToolBuild.spec.js.map +1 -1
  254. package/dist/engine/modules/tools/memorySearchToolBuild.d.ts +2 -2
  255. package/dist/engine/modules/tools/memorySearchToolBuild.d.ts.map +1 -1
  256. package/dist/engine/modules/tools/memorySearchToolBuild.js +6 -6
  257. package/dist/engine/modules/tools/memorySearchToolBuild.js.map +1 -1
  258. package/dist/engine/modules/tools/permanentAgentToolBuild.d.ts.map +1 -1
  259. package/dist/engine/modules/tools/permanentAgentToolBuild.js +12 -10
  260. package/dist/engine/modules/tools/permanentAgentToolBuild.js.map +1 -1
  261. package/dist/engine/modules/tools/permanentAgentToolBuild.spec.js +2 -1
  262. package/dist/engine/modules/tools/permanentAgentToolBuild.spec.js.map +1 -1
  263. package/dist/engine/modules/tools/sendUserMessageTool.d.ts.map +1 -1
  264. package/dist/engine/modules/tools/sendUserMessageTool.js +6 -2
  265. package/dist/engine/modules/tools/sendUserMessageTool.js.map +1 -1
  266. package/dist/engine/modules/tools/sendUserMessageTool.spec.js +5 -4
  267. package/dist/engine/modules/tools/sendUserMessageTool.spec.js.map +1 -1
  268. package/dist/engine/modules/tools/sessionHistoryToolBuild.d.ts.map +1 -1
  269. package/dist/engine/modules/tools/sessionHistoryToolBuild.js +7 -3
  270. package/dist/engine/modules/tools/sessionHistoryToolBuild.js.map +1 -1
  271. package/dist/engine/modules/tools/sessionHistoryToolBuild.spec.js +23 -18
  272. package/dist/engine/modules/tools/sessionHistoryToolBuild.spec.js.map +1 -1
  273. package/dist/engine/modules/tools/skillToolBuild.d.ts.map +1 -1
  274. package/dist/engine/modules/tools/skillToolBuild.js +23 -7
  275. package/dist/engine/modules/tools/skillToolBuild.js.map +1 -1
  276. package/dist/engine/modules/tools/skillToolBuild.spec.js +55 -3
  277. package/dist/engine/modules/tools/skillToolBuild.spec.js.map +1 -1
  278. package/dist/engine/modules/tools/subuserConfigureToolBuild.d.ts +7 -0
  279. package/dist/engine/modules/tools/subuserConfigureToolBuild.d.ts.map +1 -0
  280. package/dist/engine/modules/tools/subuserConfigureToolBuild.js +96 -0
  281. package/dist/engine/modules/tools/subuserConfigureToolBuild.js.map +1 -0
  282. package/dist/engine/modules/tools/subuserConfigureToolBuild.spec.d.ts +2 -0
  283. package/dist/engine/modules/tools/subuserConfigureToolBuild.spec.d.ts.map +1 -0
  284. package/dist/engine/modules/tools/subuserConfigureToolBuild.spec.js +91 -0
  285. package/dist/engine/modules/tools/subuserConfigureToolBuild.spec.js.map +1 -0
  286. package/dist/engine/modules/tools/subuserCreateToolBuild.d.ts +7 -0
  287. package/dist/engine/modules/tools/subuserCreateToolBuild.d.ts.map +1 -0
  288. package/dist/engine/modules/tools/subuserCreateToolBuild.js +120 -0
  289. package/dist/engine/modules/tools/subuserCreateToolBuild.js.map +1 -0
  290. package/dist/engine/modules/tools/subuserCreateToolBuild.spec.d.ts +2 -0
  291. package/dist/engine/modules/tools/subuserCreateToolBuild.spec.d.ts.map +1 -0
  292. package/dist/engine/modules/tools/subuserCreateToolBuild.spec.js +97 -0
  293. package/dist/engine/modules/tools/subuserCreateToolBuild.spec.js.map +1 -0
  294. package/dist/engine/modules/tools/subuserListToolBuild.d.ts +7 -0
  295. package/dist/engine/modules/tools/subuserListToolBuild.d.ts.map +1 -0
  296. package/dist/engine/modules/tools/subuserListToolBuild.js +66 -0
  297. package/dist/engine/modules/tools/subuserListToolBuild.js.map +1 -0
  298. package/dist/engine/modules/tools/subuserListToolBuild.spec.d.ts +2 -0
  299. package/dist/engine/modules/tools/subuserListToolBuild.spec.d.ts.map +1 -0
  300. package/dist/engine/modules/tools/subuserListToolBuild.spec.js +81 -0
  301. package/dist/engine/modules/tools/subuserListToolBuild.spec.js.map +1 -0
  302. package/dist/engine/modules/tools/topologyToolBuild.d.ts.map +1 -1
  303. package/dist/engine/modules/tools/topologyToolBuild.js +48 -16
  304. package/dist/engine/modules/tools/topologyToolBuild.js.map +1 -1
  305. package/dist/engine/modules/tools/topologyToolBuild.spec.js +117 -13
  306. package/dist/engine/modules/tools/topologyToolBuild.spec.js.map +1 -1
  307. package/dist/engine/modules/tools/types.d.ts +1 -2
  308. package/dist/engine/modules/tools/types.d.ts.map +1 -1
  309. package/dist/engine/processes/processes.d.ts.map +1 -1
  310. package/dist/engine/processes/processes.js +7 -2
  311. package/dist/engine/processes/processes.js.map +1 -1
  312. package/dist/engine/signals/signals.js +9 -2
  313. package/dist/engine/signals/signals.js.map +1 -1
  314. package/dist/plugins/dashboard/site/404.html +1 -1
  315. package/dist/plugins/dashboard/site/_next/static/chunks/app/agent/page-8434e05e02ab5847.js +1 -0
  316. package/dist/plugins/dashboard/site/_next/static/chunks/app/agents/page-70ae793aa3d3a28f.js +1 -0
  317. package/dist/plugins/dashboard/site/_next/static/chunks/app/automations/{page-6a39540c21d6b25b.js → page-6be961a7eafef90d.js} +1 -1
  318. package/dist/plugins/dashboard/site/_next/static/chunks/app/connectors/{page-92a732501885071f.js → page-8e756eb48c3f7c03.js} +1 -1
  319. package/dist/plugins/dashboard/site/_next/static/chunks/app/memory/{page-74c0b70421c567ab.js → page-be87f13a7b6fac14.js} +1 -1
  320. package/dist/plugins/dashboard/site/_next/static/chunks/app/{page-c4cbe1c7aca2ecd7.js → page-bd7cca39bd0f6e71.js} +1 -1
  321. package/dist/plugins/dashboard/site/_next/static/chunks/app/processes/{page-bf7900fe583d361e.js → page-87f7e8a74fbee01f.js} +1 -1
  322. package/dist/plugins/dashboard/site/_next/static/chunks/app/providers/{page-b2e79cb03244c267.js → page-fcedae8d614253d3.js} +1 -1
  323. package/dist/plugins/dashboard/site/_next/static/chunks/app/signals/page-efe599a7802349fa.js +1 -0
  324. package/dist/plugins/dashboard/site/_next/static/chunks/app/tools/page-e669223389d84f30.js +1 -0
  325. package/dist/plugins/dashboard/site/_next/static/css/62b1686547b31a3c.css +5 -0
  326. package/dist/plugins/dashboard/site/agent.html +1 -1
  327. package/dist/plugins/dashboard/site/agent.txt +2 -2
  328. package/dist/plugins/dashboard/site/agents.html +1 -1
  329. package/dist/plugins/dashboard/site/agents.txt +2 -2
  330. package/dist/plugins/dashboard/site/automations.html +1 -1
  331. package/dist/plugins/dashboard/site/automations.txt +2 -2
  332. package/dist/plugins/dashboard/site/connectors.html +1 -1
  333. package/dist/plugins/dashboard/site/connectors.txt +2 -2
  334. package/dist/plugins/dashboard/site/index.html +2 -2
  335. package/dist/plugins/dashboard/site/index.txt +2 -2
  336. package/dist/plugins/dashboard/site/memory.html +1 -1
  337. package/dist/plugins/dashboard/site/memory.txt +2 -2
  338. package/dist/plugins/dashboard/site/processes.html +1 -1
  339. package/dist/plugins/dashboard/site/processes.txt +2 -2
  340. package/dist/plugins/dashboard/site/providers.html +1 -1
  341. package/dist/plugins/dashboard/site/providers.txt +2 -2
  342. package/dist/plugins/dashboard/site/signals.html +1 -1
  343. package/dist/plugins/dashboard/site/signals.txt +2 -2
  344. package/dist/plugins/dashboard/site/telemetry.html +2 -2
  345. package/dist/plugins/dashboard/site/telemetry.txt +1 -1
  346. package/dist/plugins/dashboard/site/tools.html +1 -1
  347. package/dist/plugins/dashboard/site/tools.txt +2 -2
  348. package/dist/plugins/database/__tests__/plugin.spec.js +4 -3
  349. package/dist/plugins/database/__tests__/plugin.spec.js.map +1 -1
  350. package/dist/plugins/monty-python/tool.spec.js +4 -2
  351. package/dist/plugins/monty-python/tool.spec.js.map +1 -1
  352. package/dist/plugins/shell/tool.js +4 -2
  353. package/dist/plugins/shell/tool.js.map +1 -1
  354. package/dist/plugins/shell/tool.spec.js +23 -4
  355. package/dist/plugins/shell/tool.spec.js.map +1 -1
  356. package/dist/plugins/telegram/connector.d.ts +2 -0
  357. package/dist/plugins/telegram/connector.d.ts.map +1 -1
  358. package/dist/plugins/telegram/connector.js +9 -0
  359. package/dist/plugins/telegram/connector.js.map +1 -1
  360. package/dist/plugins/telegram/connector.spec.js +60 -0
  361. package/dist/plugins/telegram/connector.spec.js.map +1 -1
  362. package/dist/plugins/telegram/plugin.d.ts +2 -1
  363. package/dist/plugins/telegram/plugin.d.ts.map +1 -1
  364. package/dist/plugins/telegram/plugin.js +43 -3
  365. package/dist/plugins/telegram/plugin.js.map +1 -1
  366. package/dist/plugins/telegram/plugin.spec.d.ts +2 -0
  367. package/dist/plugins/telegram/plugin.spec.d.ts.map +1 -0
  368. package/dist/plugins/telegram/plugin.spec.js +93 -0
  369. package/dist/plugins/telegram/plugin.spec.js.map +1 -0
  370. package/dist/prompts/SYSTEM_MEMORY.md +15 -1
  371. package/dist/storage/databaseTypes.d.ts +8 -0
  372. package/dist/storage/databaseTypes.d.ts.map +1 -1
  373. package/dist/storage/delayedSignalsRepository.d.ts +1 -1
  374. package/dist/storage/delayedSignalsRepository.d.ts.map +1 -1
  375. package/dist/storage/delayedSignalsRepository.js +29 -22
  376. package/dist/storage/delayedSignalsRepository.js.map +1 -1
  377. package/dist/storage/migrations/20260222_add_user_parent.d.ts +7 -0
  378. package/dist/storage/migrations/20260222_add_user_parent.d.ts.map +1 -0
  379. package/dist/storage/migrations/20260222_add_user_parent.js +23 -0
  380. package/dist/storage/migrations/20260222_add_user_parent.js.map +1 -0
  381. package/dist/storage/migrations/20260222_add_user_parent.spec.d.ts +2 -0
  382. package/dist/storage/migrations/20260222_add_user_parent.spec.d.ts.map +1 -0
  383. package/dist/storage/migrations/20260222_add_user_parent.spec.js +48 -0
  384. package/dist/storage/migrations/20260222_add_user_parent.spec.js.map +1 -0
  385. package/dist/storage/migrations/20260222_session_ended_at.d.ts +7 -0
  386. package/dist/storage/migrations/20260222_session_ended_at.d.ts.map +1 -0
  387. package/dist/storage/migrations/20260222_session_ended_at.js +18 -0
  388. package/dist/storage/migrations/20260222_session_ended_at.js.map +1 -0
  389. package/dist/storage/migrations/20260222_session_ended_at.spec.d.ts +2 -0
  390. package/dist/storage/migrations/20260222_session_ended_at.spec.d.ts.map +1 -0
  391. package/dist/storage/migrations/20260222_session_ended_at.spec.js +37 -0
  392. package/dist/storage/migrations/20260222_session_ended_at.spec.js.map +1 -0
  393. package/dist/storage/migrations/_migrations.d.ts.map +1 -1
  394. package/dist/storage/migrations/_migrations.js +5 -1
  395. package/dist/storage/migrations/_migrations.js.map +1 -1
  396. package/dist/storage/sessionsRepository.d.ts +5 -0
  397. package/dist/storage/sessionsRepository.d.ts.map +1 -1
  398. package/dist/storage/sessionsRepository.js +9 -1
  399. package/dist/storage/sessionsRepository.js.map +1 -1
  400. package/dist/storage/sessionsRepository.spec.js +31 -1
  401. package/dist/storage/sessionsRepository.spec.js.map +1 -1
  402. package/dist/storage/signalSubscriptionsRepository.js +3 -3
  403. package/dist/storage/signalSubscriptionsRepository.js.map +1 -1
  404. package/dist/storage/usersRepository.d.ts +1 -0
  405. package/dist/storage/usersRepository.d.ts.map +1 -1
  406. package/dist/storage/usersRepository.js +18 -2
  407. package/dist/storage/usersRepository.js.map +1 -1
  408. package/dist/types.d.ts +1 -1
  409. package/dist/types.d.ts.map +1 -1
  410. package/dist/types.js +1 -1
  411. package/dist/types.js.map +1 -1
  412. package/package.json +1 -1
  413. package/dist/plugins/dashboard/site/_next/static/chunks/app/agent/page-2d345f6346edc077.js +0 -1
  414. package/dist/plugins/dashboard/site/_next/static/chunks/app/agents/page-326ff3cf564198c7.js +0 -1
  415. package/dist/plugins/dashboard/site/_next/static/chunks/app/signals/page-2992aa1807b6fdab.js +0 -1
  416. package/dist/plugins/dashboard/site/_next/static/chunks/app/tools/page-4a2e5a16190af659.js +0 -1
  417. package/dist/plugins/dashboard/site/_next/static/css/42d76d007d742231.css +0 -5
  418. /package/dist/plugins/dashboard/site/_next/static/{spdhxita1pAP4TEpLe5oJ → X_oqQhoSTmj1_qmNPx-r5}/_buildManifest.js +0 -0
  419. /package/dist/plugins/dashboard/site/_next/static/{spdhxita1pAP4TEpLe5oJ → X_oqQhoSTmj1_qmNPx-r5}/_ssgManifest.js +0 -0
@@ -1,35 +1,18 @@
1
- import { createId } from "@paralleldrive/cuid2";
2
1
  /**
3
2
  * Writes an agent descriptor into SQLite storage.
4
3
  * Expects: descriptor has been validated.
5
- * Resolves user ownership as existing agent userId -> provided userId -> owner -> new owner.
4
+ * Uses ctx as the authoritative user/agent identity.
6
5
  */
7
- export async function agentDescriptorWrite(storage, agentId, descriptor, userId, defaultPermissions) {
8
- const existing = await storage.agents.findById(agentId);
9
- // Preserve existing ownership when present, otherwise resolve from caller/owner fallback chain.
10
- let resolvedUserId = existing?.userId ?? userId;
11
- if (!resolvedUserId) {
12
- const users = await storage.users.findMany();
13
- const owner = users.find((entry) => entry.isOwner) ?? users[0];
14
- if (owner) {
15
- resolvedUserId = owner.id;
16
- }
17
- else {
18
- resolvedUserId = createId();
19
- const now = Date.now();
20
- await storage.users.create({
21
- id: resolvedUserId,
22
- isOwner: true,
23
- createdAt: now,
24
- updatedAt: now
25
- });
26
- }
6
+ export async function agentDescriptorWrite(storage, ctx, descriptor, defaultPermissions) {
7
+ const existing = await storage.agents.findById(ctx.agentId);
8
+ if (existing && existing.userId !== ctx.userId) {
9
+ throw new Error(`Agent belongs to another user: ${ctx.agentId}`);
27
10
  }
28
11
  const now = Date.now();
29
12
  const nextPermissions = existing?.permissions ?? defaultPermissions;
30
13
  await storage.agents.create({
31
- id: agentId,
32
- userId: resolvedUserId,
14
+ id: ctx.agentId,
15
+ userId: ctx.userId,
33
16
  type: descriptor.type,
34
17
  descriptor,
35
18
  activeSessionId: existing?.activeSessionId ?? null,
@@ -1 +1 @@
1
- {"version":3,"file":"agentDescriptorWrite.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentDescriptorWrite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAKhD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACtC,OAAgB,EAChB,OAAe,EACf,UAA2B,EAC3B,MAA0B,EAC1B,kBAAsC;IAEtC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACxD,gGAAgG;IAChG,IAAI,cAAc,GAAG,QAAQ,EAAE,MAAM,IAAI,MAAM,CAAC;IAChD,IAAI,CAAC,cAAc,EAAE,CAAC;QAClB,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/D,IAAI,KAAK,EAAE,CAAC;YACR,cAAc,GAAG,KAAK,CAAC,EAAE,CAAC;QAC9B,CAAC;aAAM,CAAC;YACJ,cAAc,GAAG,QAAQ,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;gBACvB,EAAE,EAAE,cAAc;gBAClB,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,GAAG;gBACd,SAAS,EAAE,GAAG;aACjB,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,eAAe,GAAG,QAAQ,EAAE,WAAW,IAAI,kBAAkB,CAAC;IACpE,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;QACxB,EAAE,EAAE,OAAO;QACX,MAAM,EAAE,cAAc;QACtB,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,UAAU;QACV,eAAe,EAAE,QAAQ,EAAE,eAAe,IAAI,IAAI;QAClD,WAAW,EAAE,eAAe;QAC5B,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,IAAI;QAChC,KAAK,EAAE,QAAQ,EAAE,KAAK,IAAI,EAAE;QAC5B,SAAS,EAAE,QAAQ,EAAE,SAAS,IAAI,QAAQ;QAC1C,SAAS,EAAE,QAAQ,EAAE,SAAS,IAAI,GAAG;QACrC,SAAS,EAAE,GAAG;KACjB,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"agentDescriptorWrite.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentDescriptorWrite.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACtC,OAAgB,EAChB,GAAY,EACZ,UAA2B,EAC3B,kBAAsC;IAEtC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC5D,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,kCAAkC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,eAAe,GAAG,QAAQ,EAAE,WAAW,IAAI,kBAAkB,CAAC;IACpE,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;QACxB,EAAE,EAAE,GAAG,CAAC,OAAO;QACf,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,UAAU;QACV,eAAe,EAAE,QAAQ,EAAE,eAAe,IAAI,IAAI;QAClD,WAAW,EAAE,eAAe;QAC5B,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,IAAI;QAChC,KAAK,EAAE,QAAQ,EAAE,KAAK,IAAI,EAAE;QAC5B,SAAS,EAAE,QAAQ,EAAE,SAAS,IAAI,QAAQ;QAC1C,SAAS,EAAE,QAAQ,EAAE,SAAS,IAAI,GAAG;QACrC,SAAS,EAAE,GAAG;KACjB,CAAC,CAAC;AACP,CAAC"}
@@ -7,6 +7,7 @@ import { configResolve } from "../../../config/configResolve.js";
7
7
  import { storageResolve } from "../../../storage/storageResolve.js";
8
8
  import { permissionBuildUser } from "../../permissions/permissionBuildUser.js";
9
9
  import { UserHome } from "../../users/userHome.js";
10
+ import { contextForAgent } from "../context.js";
10
11
  import { agentDescriptorWrite } from "./agentDescriptorWrite.js";
11
12
  describe("agentDescriptorWrite", () => {
12
13
  afterEach(() => {
@@ -20,22 +21,23 @@ describe("agentDescriptorWrite", () => {
20
21
  const storage = storageResolve(config);
21
22
  const userId = createId();
22
23
  const permissions = permissionBuildUser(new UserHome(config.usersDir, userId));
24
+ const ctx = contextForAgent({ userId, agentId });
23
25
  let now = 1000;
24
26
  vi.spyOn(Date, "now").mockImplementation(() => {
25
27
  now += 1;
26
28
  return now;
27
29
  });
28
- await agentDescriptorWrite(storage, agentId, {
30
+ await agentDescriptorWrite(storage, ctx, {
29
31
  type: "cron",
30
32
  id: agentId,
31
33
  name: "first"
32
- }, userId, permissions);
34
+ }, permissions);
33
35
  const firstRecord = await storage.agents.findById(agentId);
34
- await agentDescriptorWrite(storage, agentId, {
36
+ await agentDescriptorWrite(storage, ctx, {
35
37
  type: "cron",
36
38
  id: agentId,
37
39
  name: "second"
38
- }, userId, permissions);
40
+ }, permissions);
39
41
  const secondRecord = await storage.agents.findById(agentId);
40
42
  expect(firstRecord?.createdAt).toBe(firstRecord?.updatedAt);
41
43
  expect(secondRecord?.createdAt).toBe(firstRecord?.createdAt);
@@ -1 +1 @@
1
- {"version":3,"file":"agentDescriptorWrite.spec.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentDescriptorWrite.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE7D,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAC/E,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IAClC,SAAS,CAAC,GAAG,EAAE;QACX,EAAE,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QACzE,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,iCAAiC,CAAC,CAAC,CAAC;QACrF,MAAM,OAAO,GAAG,QAAQ,EAAE,CAAC;QAE3B,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,aAAa,CAAC,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,CAAC;YAC5F,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;YACvC,MAAM,MAAM,GAAG,QAAQ,EAAE,CAAC;YAC1B,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;YAE/E,IAAI,GAAG,GAAG,IAAI,CAAC;YACf,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE;gBAC1C,GAAG,IAAI,CAAC,CAAC;gBACT,OAAO,GAAG,CAAC;YACf,CAAC,CAAC,CAAC;YAEH,MAAM,oBAAoB,CACtB,OAAO,EACP,OAAO,EACP;gBACI,IAAI,EAAE,MAAM;gBACZ,EAAE,EAAE,OAAO;gBACX,IAAI,EAAE,OAAO;aAChB,EACD,MAAM,EACN,WAAW,CACd,CAAC;YACF,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAE3D,MAAM,oBAAoB,CACtB,OAAO,EACP,OAAO,EACP;gBACI,IAAI,EAAE,MAAM;gBACZ,EAAE,EAAE,OAAO;gBACX,IAAI,EAAE,QAAQ;aACjB,EACD,MAAM,EACN,WAAW,CACd,CAAC;YAEF,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC5D,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YAC5D,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YAC7D,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,eAAe,CAAC,WAAW,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC;YAC7E,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC;gBACrC,IAAI,EAAE,MAAM;gBACZ,EAAE,EAAE,OAAO;gBACX,IAAI,EAAE,QAAQ;aACjB,CAAC,CAAC;QACP,CAAC;gBAAS,CAAC;YACP,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACpD,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"agentDescriptorWrite.spec.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentDescriptorWrite.spec.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
- import type { Config } from "@/types";
1
+ import type { Config, Context } from "@/types";
2
2
  import type { Storage } from "../../../storage/storage.js";
3
3
  import type { AgentHistoryRecord } from "./agentTypes.js";
4
4
  /**
5
5
  * Appends a history record to the active session.
6
6
  * Expects: target agent exists.
7
7
  */
8
- export declare function agentHistoryAppend(storageOrConfig: Storage | Config, agentId: string, record: AgentHistoryRecord): Promise<void>;
8
+ export declare function agentHistoryAppend(storageOrConfig: Storage | Config, ctx: Context, record: AgentHistoryRecord): Promise<void>;
9
9
  //# sourceMappingURL=agentHistoryAppend.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agentHistoryAppend.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryAppend.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1D;;;GAGG;AACH,wBAAsB,kBAAkB,CACpC,eAAe,EAAE,OAAO,GAAG,MAAM,EACjC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,kBAAkB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAGf"}
1
+ {"version":3,"file":"agentHistoryAppend.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryAppend.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1D;;;GAGG;AACH,wBAAsB,kBAAkB,CACpC,eAAe,EAAE,OAAO,GAAG,MAAM,EACjC,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,kBAAkB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAGf"}
@@ -3,8 +3,8 @@ import { storageResolve } from "../../../storage/storageResolve.js";
3
3
  * Appends a history record to the active session.
4
4
  * Expects: target agent exists.
5
5
  */
6
- export async function agentHistoryAppend(storageOrConfig, agentId, record) {
6
+ export async function agentHistoryAppend(storageOrConfig, ctx, record) {
7
7
  const storage = storageResolve(storageOrConfig);
8
- await storage.appendHistory(agentId, record);
8
+ await storage.appendHistory(ctx.agentId, record);
9
9
  }
10
10
  //# sourceMappingURL=agentHistoryAppend.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agentHistoryAppend.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryAppend.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAGpE;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACpC,eAAiC,EACjC,OAAe,EACf,MAA0B;IAE1B,MAAM,OAAO,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;IAChD,MAAM,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AACjD,CAAC"}
1
+ {"version":3,"file":"agentHistoryAppend.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryAppend.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAGpE;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACpC,eAAiC,EACjC,GAAY,EACZ,MAA0B;IAE1B,MAAM,OAAO,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;IAChD,MAAM,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AACrD,CAAC"}
@@ -1,9 +1,9 @@
1
- import type { Config } from "@/types";
1
+ import type { Config, Context } from "@/types";
2
2
  import type { Storage } from "../../../storage/storage.js";
3
3
  import type { AgentHistoryRecord } from "./agentTypes.js";
4
4
  /**
5
5
  * Loads history records for the active session.
6
6
  * Expects: records are ordered chronologically from oldest to newest.
7
7
  */
8
- export declare function agentHistoryLoad(storageOrConfig: Storage | Config, agentId: string): Promise<AgentHistoryRecord[]>;
8
+ export declare function agentHistoryLoad(storageOrConfig: Storage | Config, ctx: Context): Promise<AgentHistoryRecord[]>;
9
9
  //# sourceMappingURL=agentHistoryLoad.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agentHistoryLoad.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryLoad.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1D;;;GAGG;AACH,wBAAsB,gBAAgB,CAClC,eAAe,EAAE,OAAO,GAAG,MAAM,EACjC,OAAO,EAAE,MAAM,GAChB,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAO/B"}
1
+ {"version":3,"file":"agentHistoryLoad.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryLoad.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1D;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,eAAe,EAAE,OAAO,GAAG,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAOrH"}
@@ -3,9 +3,9 @@ import { storageResolve } from "../../../storage/storageResolve.js";
3
3
  * Loads history records for the active session.
4
4
  * Expects: records are ordered chronologically from oldest to newest.
5
5
  */
6
- export async function agentHistoryLoad(storageOrConfig, agentId) {
6
+ export async function agentHistoryLoad(storageOrConfig, ctx) {
7
7
  const storage = storageResolve(storageOrConfig);
8
- const agent = await storage.agents.findById(agentId);
8
+ const agent = await storage.agents.findById(ctx.agentId);
9
9
  if (!agent?.activeSessionId) {
10
10
  return [];
11
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agentHistoryLoad.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryLoad.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAGpE;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAClC,eAAiC,EACjC,OAAe;IAEf,MAAM,OAAO,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;IAChD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACrD,IAAI,CAAC,KAAK,EAAE,eAAe,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACd,CAAC;IACD,OAAO,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;AAClE,CAAC"}
1
+ {"version":3,"file":"agentHistoryLoad.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryLoad.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAGpE;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,eAAiC,EAAE,GAAY;IAClF,MAAM,OAAO,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;IAChD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACzD,IAAI,CAAC,KAAK,EAAE,eAAe,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACd,CAAC;IACD,OAAO,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;AAClE,CAAC"}
@@ -8,6 +8,7 @@ import { storageResolve } from "../../../storage/storageResolve.js";
8
8
  import { storageUpgrade } from "../../../storage/storageUpgrade.js";
9
9
  import { permissionBuildUser } from "../../permissions/permissionBuildUser.js";
10
10
  import { UserHome } from "../../users/userHome.js";
11
+ import { contextForAgent } from "../context.js";
11
12
  import { agentDescriptorWrite } from "./agentDescriptorWrite.js";
12
13
  import { agentHistoryAppend } from "./agentHistoryAppend.js";
13
14
  import { agentHistoryLoad } from "./agentHistoryLoad.js";
@@ -22,36 +23,37 @@ describe("agentHistoryLoad", () => {
22
23
  await storageUpgrade(config);
23
24
  const userId = createId();
24
25
  const permissions = permissionBuildUser(new UserHome(config.usersDir, userId));
25
- await agentDescriptorWrite(storageResolve(config), agentId, {
26
+ const ctx = contextForAgent({ userId, agentId });
27
+ await agentDescriptorWrite(storageResolve(config), ctx, {
26
28
  type: "cron",
27
29
  id: agentId,
28
30
  name: "history"
29
- }, userId, permissions);
30
- const initial = await agentStateRead(config, agentId);
31
+ }, permissions);
32
+ const initial = await agentStateRead(config, ctx);
31
33
  if (!initial) {
32
34
  throw new Error("State missing");
33
35
  }
34
36
  const firstSession = await storageResolve(config).sessions.create({ agentId, createdAt: 1 });
35
- await agentStateWrite(config, agentId, { ...initial, activeSessionId: firstSession });
36
- await agentHistoryAppend(config, agentId, {
37
+ await agentStateWrite(config, ctx, { ...initial, activeSessionId: firstSession });
38
+ await agentHistoryAppend(config, ctx, {
37
39
  type: "user_message",
38
40
  at: 2,
39
41
  text: "first",
40
42
  files: []
41
43
  });
42
44
  const secondSession = await storageResolve(config).sessions.create({ agentId, createdAt: 3 });
43
- await agentStateWrite(config, agentId, {
45
+ await agentStateWrite(config, ctx, {
44
46
  ...initial,
45
47
  activeSessionId: secondSession,
46
48
  updatedAt: 3
47
49
  });
48
- await agentHistoryAppend(config, agentId, {
50
+ await agentHistoryAppend(config, ctx, {
49
51
  type: "user_message",
50
52
  at: 4,
51
53
  text: "second",
52
54
  files: []
53
55
  });
54
- const records = await agentHistoryLoad(config, agentId);
56
+ const records = await agentHistoryLoad(config, ctx);
55
57
  expect(records).toHaveLength(1);
56
58
  expect(records[0]).toEqual({ type: "user_message", at: 4, text: "second", files: [] });
57
59
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agentHistoryLoad.spec.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryLoad.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentHistoryLoad.spec.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryLoad.spec.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { Config } from "@/types";
1
+ import type { Config, Context } from "@/types";
2
2
  import type { Storage } from "../../../storage/storage.js";
3
3
  import type { AgentHistoryRecord } from "./agentTypes.js";
4
4
  /**
@@ -6,5 +6,5 @@ import type { AgentHistoryRecord } from "./agentTypes.js";
6
6
  * Expects: records are returned in chronological order across sessions.
7
7
  * When limit is provided, returns at most that many records (oldest first).
8
8
  */
9
- export declare function agentHistoryLoadAll(storageOrConfig: Storage | Config, agentId: string, limit?: number): Promise<AgentHistoryRecord[]>;
9
+ export declare function agentHistoryLoadAll(storageOrConfig: Storage | Config, ctx: Context, limit?: number): Promise<AgentHistoryRecord[]>;
10
10
  //# sourceMappingURL=agentHistoryLoadAll.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agentHistoryLoadAll.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryLoadAll.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1D;;;;GAIG;AACH,wBAAsB,mBAAmB,CACrC,eAAe,EAAE,OAAO,GAAG,MAAM,EACjC,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAG/B"}
1
+ {"version":3,"file":"agentHistoryLoadAll.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryLoadAll.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAE1D;;;;GAIG;AACH,wBAAsB,mBAAmB,CACrC,eAAe,EAAE,OAAO,GAAG,MAAM,EACjC,GAAG,EAAE,OAAO,EACZ,KAAK,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAG/B"}
@@ -4,8 +4,8 @@ import { storageResolve } from "../../../storage/storageResolve.js";
4
4
  * Expects: records are returned in chronological order across sessions.
5
5
  * When limit is provided, returns at most that many records (oldest first).
6
6
  */
7
- export async function agentHistoryLoadAll(storageOrConfig, agentId, limit) {
7
+ export async function agentHistoryLoadAll(storageOrConfig, ctx, limit) {
8
8
  const storage = storageResolve(storageOrConfig);
9
- return storage.history.findByAgentId(agentId, limit);
9
+ return storage.history.findByAgentId(ctx.agentId, limit);
10
10
  }
11
11
  //# sourceMappingURL=agentHistoryLoadAll.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agentHistoryLoadAll.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryLoadAll.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAGpE;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACrC,eAAiC,EACjC,OAAe,EACf,KAAc;IAEd,MAAM,OAAO,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;IAChD,OAAO,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACzD,CAAC"}
1
+ {"version":3,"file":"agentHistoryLoadAll.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryLoadAll.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAGpE;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACrC,eAAiC,EACjC,GAAY,EACZ,KAAc;IAEd,MAAM,OAAO,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;IAChD,OAAO,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AAC7D,CAAC"}
@@ -8,6 +8,7 @@ import { storageResolve } from "../../../storage/storageResolve.js";
8
8
  import { storageUpgrade } from "../../../storage/storageUpgrade.js";
9
9
  import { permissionBuildUser } from "../../permissions/permissionBuildUser.js";
10
10
  import { UserHome } from "../../users/userHome.js";
11
+ import { contextForAgent } from "../context.js";
11
12
  import { agentDescriptorWrite } from "./agentDescriptorWrite.js";
12
13
  import { agentHistoryAppend } from "./agentHistoryAppend.js";
13
14
  import { agentHistoryLoadAll } from "./agentHistoryLoadAll.js";
@@ -22,36 +23,37 @@ describe("agentHistoryLoadAll", () => {
22
23
  await storageUpgrade(config);
23
24
  const userId = createId();
24
25
  const permissions = permissionBuildUser(new UserHome(config.usersDir, userId));
25
- await agentDescriptorWrite(storageResolve(config), agentId, {
26
+ const ctx = contextForAgent({ userId, agentId });
27
+ await agentDescriptorWrite(storageResolve(config), ctx, {
26
28
  type: "cron",
27
29
  id: agentId,
28
30
  name: "history"
29
- }, userId, permissions);
30
- const initial = await agentStateRead(config, agentId);
31
+ }, permissions);
32
+ const initial = await agentStateRead(config, ctx);
31
33
  if (!initial) {
32
34
  throw new Error("State missing");
33
35
  }
34
36
  const firstSession = await storageResolve(config).sessions.create({ agentId, createdAt: 1 });
35
- await agentStateWrite(config, agentId, { ...initial, activeSessionId: firstSession });
36
- await agentHistoryAppend(config, agentId, {
37
+ await agentStateWrite(config, ctx, { ...initial, activeSessionId: firstSession });
38
+ await agentHistoryAppend(config, ctx, {
37
39
  type: "user_message",
38
40
  at: 2,
39
41
  text: "before",
40
42
  files: []
41
43
  });
42
44
  const secondSession = await storageResolve(config).sessions.create({ agentId, createdAt: 3 });
43
- await agentStateWrite(config, agentId, {
45
+ await agentStateWrite(config, ctx, {
44
46
  ...initial,
45
47
  activeSessionId: secondSession,
46
48
  updatedAt: 3
47
49
  });
48
- await agentHistoryAppend(config, agentId, {
50
+ await agentHistoryAppend(config, ctx, {
49
51
  type: "user_message",
50
52
  at: 4,
51
53
  text: "after",
52
54
  files: []
53
55
  });
54
- const records = await agentHistoryLoadAll(config, agentId);
56
+ const records = await agentHistoryLoadAll(config, ctx);
55
57
  expect(records).toEqual([
56
58
  { type: "user_message", at: 2, text: "before", files: [] },
57
59
  { type: "user_message", at: 4, text: "after", files: [] }
@@ -1 +1 @@
1
- {"version":3,"file":"agentHistoryLoadAll.spec.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryLoadAll.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentHistoryLoadAll.spec.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryLoadAll.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAC/E,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,4BAA4B,CAAC,CAAC,CAAC;QAChF,MAAM,OAAO,GAAG,QAAQ,EAAE,CAAC;QAC3B,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,aAAa,CAAC,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,CAAC;YAC5F,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;YAC7B,MAAM,MAAM,GAAG,QAAQ,EAAE,CAAC;YAC1B,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;YAC/E,MAAM,GAAG,GAAG,eAAe,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;YACjD,MAAM,oBAAoB,CACtB,cAAc,CAAC,MAAM,CAAC,EACtB,GAAG,EACH;gBACI,IAAI,EAAE,MAAM;gBACZ,EAAE,EAAE,OAAO;gBACX,IAAI,EAAE,SAAS;aAClB,EACD,WAAW,CACd,CAAC;YAEF,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAClD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;YACrC,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;YAC7F,MAAM,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,CAAC,CAAC;YAClF,MAAM,kBAAkB,CAAC,MAAM,EAAE,GAAG,EAAE;gBAClC,IAAI,EAAE,cAAc;gBACpB,EAAE,EAAE,CAAC;gBACL,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,EAAE;aACZ,CAAC,CAAC;YAEH,MAAM,aAAa,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9F,MAAM,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE;gBAC/B,GAAG,OAAO;gBACV,eAAe,EAAE,aAAa;gBAC9B,SAAS,EAAE,CAAC;aACf,CAAC,CAAC;YACH,MAAM,kBAAkB,CAAC,MAAM,EAAE,GAAG,EAAE;gBAClC,IAAI,EAAE,cAAc;gBACpB,EAAE,EAAE,CAAC;gBACL,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE;aACZ,CAAC,CAAC;YAEH,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YACvD,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;gBACpB,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE;gBAC1D,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE;aAC5D,CAAC,CAAC;QACP,CAAC;gBAAS,CAAC;YACP,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACpD,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { Context } from "@mariozechner/pi-ai";
2
- import type { Config } from "@/types";
2
+ import type { Config, Context as DaycareContext } from "@/types";
3
3
  import type { ProviderSettings } from "../../../settings.js";
4
4
  type AgentInferencePromptWriteOptions = {
5
5
  context: Context;
@@ -11,6 +11,6 @@ type AgentInferencePromptWriteOptions = {
11
11
  * Writes the latest inference request snapshot next to SYSTEM.md.
12
12
  * Expects: options.context is the exact object passed to inferenceRouter.complete().
13
13
  */
14
- export declare function agentInferencePromptWrite(config: Config, agentId: string, options: AgentInferencePromptWriteOptions): Promise<void>;
14
+ export declare function agentInferencePromptWrite(config: Config, ctx: DaycareContext, options: AgentInferencePromptWriteOptions): Promise<void>;
15
15
  export {};
16
16
  //# sourceMappingURL=agentInferencePromptWrite.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agentInferencePromptWrite.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentInferencePromptWrite.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAI7D,KAAK,gCAAgC,GAAG;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;;GAGG;AACH,wBAAsB,yBAAyB,CAC3C,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,gCAAgC,GAC1C,OAAO,CAAC,IAAI,CAAC,CAiCf"}
1
+ {"version":3,"file":"agentInferencePromptWrite.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentInferencePromptWrite.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAI7D,KAAK,gCAAgC,GAAG;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;;GAGG;AACH,wBAAsB,yBAAyB,CAC3C,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,cAAc,EACnB,OAAO,EAAE,gCAAgC,GAC1C,OAAO,CAAC,IAAI,CAAC,CAAC"}
@@ -2,14 +2,10 @@ import { promises as fs } from "node:fs";
2
2
  import path from "node:path";
3
3
  import { atomicWrite } from "../../../util/atomicWrite.js";
4
4
  import { agentPath } from "./agentPath.js";
5
- /**
6
- * Writes the latest inference request snapshot next to SYSTEM.md.
7
- * Expects: options.context is the exact object passed to inferenceRouter.complete().
8
- */
9
- export async function agentInferencePromptWrite(config, agentId, options) {
5
+ export async function agentInferencePromptWrite(config, ctx, options) {
10
6
  const { context, sessionId, providersOverride, iteration } = options;
11
7
  const at = Date.now();
12
- const basePath = agentPath(config, agentId);
8
+ const basePath = agentPath(config, ctx);
13
9
  await fs.mkdir(basePath, { recursive: true });
14
10
  const filePath = path.join(basePath, "INFERENCE.md");
15
11
  const payload = [
@@ -1 +1 @@
1
- {"version":3,"file":"agentInferencePromptWrite.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentInferencePromptWrite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAM7B,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAS3C;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC3C,MAAc,EACd,OAAe,EACf,OAAyC;IAEzC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IACrE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACtB,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IAErD,MAAM,OAAO,GAAG;QACZ,sBAAsB;QACtB,EAAE;QACF,qFAAqF;QACrF,EAAE;QACF,WAAW,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,IAAI;QACzC,kBAAkB,EAAE,IAAI;QACxB,kBAAkB,SAAS,IAAI;QAC/B,kBAAkB,SAAS,IAAI;QAC/B,qBAAqB,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,IAAI;QACtD,kBAAkB,OAAO,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,IAAI;QAChD,+BAA+B,iBAAiB,CAAC,MAAM,IAAI;QAC3D,EAAE;QACF,oBAAoB;QACpB,SAAS;QACT,aAAa,CAAC,OAAO,CAAC;QACtB,KAAK;QACL,EAAE;QACF,uBAAuB;QACvB,SAAS;QACT,aAAa,CAAC,iBAAiB,CAAC;QAChC,KAAK;QACL,EAAE;KACL,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,MAAM,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;AACnF,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACjC,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC1C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,IAAI,CAAC,SAAS,CACjB;YACI,KAAK,EAAE,2BAA2B;YAClC,MAAM,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SACjE,EACD,IAAI,EACJ,CAAC,CACJ,CAAC;IACN,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"agentInferencePromptWrite.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentInferencePromptWrite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAM7B,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAkB3C,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC3C,MAAc,EACd,GAAmB,EACnB,OAAyC;IAEzC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IACrE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACtB,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACxC,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IAErD,MAAM,OAAO,GAAG;QACZ,sBAAsB;QACtB,EAAE;QACF,qFAAqF;QACrF,EAAE;QACF,WAAW,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,IAAI;QACzC,kBAAkB,EAAE,IAAI;QACxB,kBAAkB,SAAS,IAAI;QAC/B,kBAAkB,SAAS,IAAI;QAC/B,qBAAqB,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,IAAI;QACtD,kBAAkB,OAAO,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,IAAI;QAChD,+BAA+B,iBAAiB,CAAC,MAAM,IAAI;QAC3D,EAAE;QACF,oBAAoB;QACpB,SAAS;QACT,aAAa,CAAC,OAAO,CAAC;QACtB,KAAK;QACL,EAAE;QACF,uBAAuB;QACvB,SAAS;QACT,aAAa,CAAC,iBAAiB,CAAC;QAChC,KAAK;QACL,EAAE;KACL,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,MAAM,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;AACnF,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACjC,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC1C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,IAAI,CAAC,SAAS,CACjB;YACI,KAAK,EAAE,2BAA2B;YAClC,MAAM,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SACjE,EACD,IAAI,EACJ,CAAC,CACJ,CAAC;IACN,CAAC;AACL,CAAC"}
@@ -4,6 +4,7 @@ import path from "node:path";
4
4
  import { createId } from "@paralleldrive/cuid2";
5
5
  import { describe, expect, it } from "vitest";
6
6
  import { configResolve } from "../../../config/configResolve.js";
7
+ import { contextForAgent } from "../context.js";
7
8
  import { agentInferencePromptWrite } from "./agentInferencePromptWrite.js";
8
9
  describe("agentInferencePromptWrite", () => {
9
10
  it("writes INFERENCE.md snapshot with the exact request context", async () => {
@@ -22,7 +23,8 @@ describe("agentInferencePromptWrite", () => {
22
23
  ],
23
24
  tools: []
24
25
  };
25
- await agentInferencePromptWrite(config, agentId, {
26
+ const ctx = contextForAgent({ userId: "user-1", agentId });
27
+ await agentInferencePromptWrite(config, ctx, {
26
28
  context,
27
29
  sessionId: "session-1",
28
30
  providersOverride: [{ id: "openai", model: "gpt-5-mini" }],
@@ -1 +1 @@
1
- {"version":3,"file":"agentInferencePromptWrite.spec.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentInferencePromptWrite.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACvC,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QACzE,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,2BAA2B,CAAC,CAAC,CAAC;QAC/E,MAAM,OAAO,GAAG,QAAQ,EAAE,CAAC;QAC3B,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,aAAa,CAAC,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,CAAC;YAC5F,MAAM,OAAO,GAAY;gBACrB,YAAY,EAAE,sBAAsB;gBACpC,QAAQ,EAAE;oBACN;wBACI,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;wBAC1C,SAAS,EAAE,CAAC;qBACf;iBACJ;gBACD,KAAK,EAAE,EAAE;aACZ,CAAC;YAEF,MAAM,yBAAyB,CAAC,MAAM,EAAE,OAAO,EAAE;gBAC7C,OAAO;gBACP,SAAS,EAAE,WAAW;gBACtB,iBAAiB,EAAE,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;gBAC1D,SAAS,EAAE,CAAC;aACf,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;YACtE,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACjD,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;YAClD,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YACzC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,wCAAwC,CAAC,CAAC;YACpE,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;YAC7C,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;YAC5C,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QACvD,CAAC;gBAAS,CAAC;YACP,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACpD,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"agentInferencePromptWrite.spec.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentInferencePromptWrite.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACvC,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QACzE,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,2BAA2B,CAAC,CAAC,CAAC;QAC/E,MAAM,OAAO,GAAG,QAAQ,EAAE,CAAC;QAC3B,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,aAAa,CAAC,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,CAAC;YAC5F,MAAM,OAAO,GAAY;gBACrB,YAAY,EAAE,sBAAsB;gBACpC,QAAQ,EAAE;oBACN;wBACI,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;wBAC1C,SAAS,EAAE,CAAC;qBACf;iBACJ;gBACD,KAAK,EAAE,EAAE;aACZ,CAAC;YACF,MAAM,GAAG,GAAG,eAAe,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;YAE3D,MAAM,yBAAyB,CAAC,MAAM,EAAE,GAAG,EAAE;gBACzC,OAAO;gBACP,SAAS,EAAE,WAAW;gBACtB,iBAAiB,EAAE,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;gBAC1D,SAAS,EAAE,CAAC;aACf,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;YACtE,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACjD,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;YAClD,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YACzC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,wCAAwC,CAAC,CAAC;YACpE,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;YAC7C,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;YAC5C,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QACvD,CAAC;gBAAS,CAAC;YACP,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACpD,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"agentLoopRun.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentLoopRun.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentLoopRun.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentLoopRun.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,6 @@ import { toolArgsFormatVerbose } from "../../modules/tools/toolArgsFormatVerbose
17
17
  import { toolListContextBuild } from "../../modules/tools/toolListContextBuild.js";
18
18
  import { toolResultFormatVerbose } from "../../modules/tools/toolResultFormatVerbose.js";
19
19
  import { toolExecutionResultOutcome } from "../../modules/tools/toolReturnOutcome.js";
20
- import { Context } from "../context.js";
21
20
  import { agentDescriptorTargetResolve } from "./agentDescriptorTargetResolve.js";
22
21
  import { agentHistoryPendingToolResults } from "./agentHistoryPendingToolResults.js";
23
22
  import { agentInferencePromptWrite } from "./agentInferencePromptWrite.js";
@@ -50,12 +49,11 @@ export async function agentLoopRun(options) {
50
49
  agent.descriptor.type === "memory-search";
51
50
  let childAgentNudged = false;
52
51
  let childAgentResponded = false;
53
- const agentKind = agent.descriptor.type === "user" ? "foreground" : "background";
52
+ const agentKind = agent.descriptor.type === "user" || agent.descriptor.type === "subuser" ? "foreground" : "background";
54
53
  const target = agentDescriptorTargetResolve(agent.descriptor);
55
54
  const targetId = target?.targetId ?? null;
56
55
  const toolVisibilityContext = {
57
- userId: agent.userId,
58
- agentId: agent.id,
56
+ ctx: agent.ctx,
59
57
  descriptor: agent.descriptor
60
58
  };
61
59
  const allowedToolNames = agentToolExecutionAllowlistResolve(agent.descriptor, {
@@ -92,7 +90,7 @@ export async function agentLoopRun(options) {
92
90
  logger.debug(`event: Inference loop iteration=${iteration} agentId=${agent.id} messageCount=${context.messages.length}`);
93
91
  const inferenceSessionId = agent.state.inferenceSessionId ?? agent.id;
94
92
  try {
95
- await agentInferencePromptWrite(agentSystem.config.current, agent.id, {
93
+ await agentInferencePromptWrite(agentSystem.config.current, agent.ctx, {
96
94
  context,
97
95
  sessionId: inferenceSessionId,
98
96
  providersOverride: providersForAgent,
@@ -351,7 +349,7 @@ export async function agentLoopRun(options) {
351
349
  assistant,
352
350
  permissions: agent.state.permissions,
353
351
  agent,
354
- ctx: new Context(agent.id, agent.userId),
352
+ ctx: agent.ctx,
355
353
  source,
356
354
  messageContext: entry.context,
357
355
  agentSystem,
@@ -462,7 +460,7 @@ export async function agentLoopRun(options) {
462
460
  assistant,
463
461
  permissions: agent.state.permissions,
464
462
  agent,
465
- ctx: new Context(agent.id, agent.userId),
463
+ ctx: agent.ctx,
466
464
  source,
467
465
  messageContext: entry.context,
468
466
  agentSystem,
@@ -727,7 +725,7 @@ async function subagentDeliverResponse(agentSystem, agent, text, logger) {
727
725
  return;
728
726
  }
729
727
  try {
730
- await agentSystem.post({ agentId: parentAgentId }, { type: "system_message", text, origin: agent.id });
728
+ await agentSystem.post(agent.ctx, { agentId: parentAgentId }, { type: "system_message", text, origin: agent.id });
731
729
  logger.debug("event: Child agent <response> delivered to parent");
732
730
  }
733
731
  catch (error) {