daycare-cli 2026.2.3 → 2026.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (313) hide show
  1. package/dist/commands/upgrade.d.ts +5 -0
  2. package/dist/commands/upgrade.d.ts.map +1 -0
  3. package/dist/commands/upgrade.js +22 -0
  4. package/dist/commands/upgrade.js.map +1 -0
  5. package/dist/config/configResolve.d.ts.map +1 -1
  6. package/dist/config/configResolve.js +2 -0
  7. package/dist/config/configResolve.js.map +1 -1
  8. package/dist/config/configResolve.spec.js +11 -0
  9. package/dist/config/configResolve.spec.js.map +1 -1
  10. package/dist/config/configSettingsParse.d.ts.map +1 -1
  11. package/dist/config/configSettingsParse.js +2 -1
  12. package/dist/config/configSettingsParse.js.map +1 -1
  13. package/dist/config/configSettingsParse.spec.js +8 -0
  14. package/dist/config/configSettingsParse.spec.js.map +1 -1
  15. package/dist/config/configTypes.d.ts +1 -0
  16. package/dist/config/configTypes.d.ts.map +1 -1
  17. package/dist/engine/agents/agent.d.ts +1 -1
  18. package/dist/engine/agents/agent.d.ts.map +1 -1
  19. package/dist/engine/agents/agent.js +34 -20
  20. package/dist/engine/agents/agent.js.map +1 -1
  21. package/dist/engine/agents/agent.spec.js +40 -41
  22. package/dist/engine/agents/agent.spec.js.map +1 -1
  23. package/dist/engine/agents/agentSystem.d.ts +7 -1
  24. package/dist/engine/agents/agentSystem.d.ts.map +1 -1
  25. package/dist/engine/agents/agentSystem.js +28 -16
  26. package/dist/engine/agents/agentSystem.js.map +1 -1
  27. package/dist/engine/agents/ops/agentBackgroundList.d.ts +1 -1
  28. package/dist/engine/agents/ops/agentBackgroundList.d.ts.map +1 -1
  29. package/dist/engine/agents/ops/agentBackgroundList.js +8 -34
  30. package/dist/engine/agents/ops/agentBackgroundList.js.map +1 -1
  31. package/dist/engine/agents/ops/agentDescriptorRead.d.ts +2 -2
  32. package/dist/engine/agents/ops/agentDescriptorRead.d.ts.map +1 -1
  33. package/dist/engine/agents/ops/agentDescriptorRead.js +5 -72
  34. package/dist/engine/agents/ops/agentDescriptorRead.js.map +1 -1
  35. package/dist/engine/agents/ops/agentDescriptorWrite.d.ts +1 -1
  36. package/dist/engine/agents/ops/agentDescriptorWrite.d.ts.map +1 -1
  37. package/dist/engine/agents/ops/agentDescriptorWrite.js +17 -10
  38. package/dist/engine/agents/ops/agentDescriptorWrite.js.map +1 -1
  39. package/dist/engine/agents/ops/agentDescriptorWrite.spec.d.ts +2 -0
  40. package/dist/engine/agents/ops/agentDescriptorWrite.spec.d.ts.map +1 -0
  41. package/dist/engine/agents/ops/agentDescriptorWrite.spec.js +49 -0
  42. package/dist/engine/agents/ops/agentDescriptorWrite.spec.js.map +1 -0
  43. package/dist/engine/agents/ops/agentHistoryAppend.d.ts +2 -2
  44. package/dist/engine/agents/ops/agentHistoryAppend.d.ts.map +1 -1
  45. package/dist/engine/agents/ops/agentHistoryAppend.js +23 -10
  46. package/dist/engine/agents/ops/agentHistoryAppend.js.map +1 -1
  47. package/dist/engine/agents/ops/agentHistoryContext.d.ts.map +1 -1
  48. package/dist/engine/agents/ops/agentHistoryContext.js +0 -11
  49. package/dist/engine/agents/ops/agentHistoryContext.js.map +1 -1
  50. package/dist/engine/agents/ops/agentHistoryContext.spec.js +4 -7
  51. package/dist/engine/agents/ops/agentHistoryContext.spec.js.map +1 -1
  52. package/dist/engine/agents/ops/agentHistoryLoad.d.ts +1 -1
  53. package/dist/engine/agents/ops/agentHistoryLoad.d.ts.map +1 -1
  54. package/dist/engine/agents/ops/agentHistoryLoad.js +6 -19
  55. package/dist/engine/agents/ops/agentHistoryLoad.js.map +1 -1
  56. package/dist/engine/agents/ops/agentHistoryLoad.spec.js +38 -8
  57. package/dist/engine/agents/ops/agentHistoryLoad.spec.js.map +1 -1
  58. package/dist/engine/agents/ops/agentHistoryLoadAll.d.ts +1 -1
  59. package/dist/engine/agents/ops/agentHistoryLoadAll.js +3 -3
  60. package/dist/engine/agents/ops/agentHistoryLoadAll.js.map +1 -1
  61. package/dist/engine/agents/ops/agentHistoryLoadAll.spec.js +33 -14
  62. package/dist/engine/agents/ops/agentHistoryLoadAll.spec.js.map +1 -1
  63. package/dist/engine/agents/ops/agentHistoryPendingRlmResolve.spec.js +1 -1
  64. package/dist/engine/agents/ops/agentHistoryPendingRlmResolve.spec.js.map +1 -1
  65. package/dist/engine/agents/ops/agentHistorySummary.js +0 -2
  66. package/dist/engine/agents/ops/agentHistorySummary.js.map +1 -1
  67. package/dist/engine/agents/ops/agentHistorySummary.spec.js +2 -7
  68. package/dist/engine/agents/ops/agentHistorySummary.spec.js.map +1 -1
  69. package/dist/engine/agents/ops/agentInbox.d.ts +14 -1
  70. package/dist/engine/agents/ops/agentInbox.d.ts.map +1 -1
  71. package/dist/engine/agents/ops/agentInbox.js +21 -0
  72. package/dist/engine/agents/ops/agentInbox.js.map +1 -1
  73. package/dist/engine/agents/ops/agentInbox.spec.js +36 -0
  74. package/dist/engine/agents/ops/agentInbox.spec.js.map +1 -1
  75. package/dist/engine/agents/ops/agentList.d.ts +1 -1
  76. package/dist/engine/agents/ops/agentList.d.ts.map +1 -1
  77. package/dist/engine/agents/ops/agentList.js +9 -35
  78. package/dist/engine/agents/ops/agentList.js.map +1 -1
  79. package/dist/engine/agents/ops/agentLoopRun.d.ts.map +1 -1
  80. package/dist/engine/agents/ops/agentLoopRun.js +59 -73
  81. package/dist/engine/agents/ops/agentLoopRun.js.map +1 -1
  82. package/dist/engine/agents/ops/agentLoopRun.spec.js +46 -2
  83. package/dist/engine/agents/ops/agentLoopRun.spec.js.map +1 -1
  84. package/dist/engine/agents/ops/agentPermanentList.d.ts +1 -1
  85. package/dist/engine/agents/ops/agentPermanentList.d.ts.map +1 -1
  86. package/dist/engine/agents/ops/agentPermanentList.js +8 -31
  87. package/dist/engine/agents/ops/agentPermanentList.js.map +1 -1
  88. package/dist/engine/agents/ops/agentStateRead.d.ts +2 -2
  89. package/dist/engine/agents/ops/agentStateRead.d.ts.map +1 -1
  90. package/dist/engine/agents/ops/agentStateRead.js +19 -74
  91. package/dist/engine/agents/ops/agentStateRead.js.map +1 -1
  92. package/dist/engine/agents/ops/agentStateRead.spec.js +25 -28
  93. package/dist/engine/agents/ops/agentStateRead.spec.js.map +1 -1
  94. package/dist/engine/agents/ops/agentStateWrite.d.ts +2 -2
  95. package/dist/engine/agents/ops/agentStateWrite.d.ts.map +1 -1
  96. package/dist/engine/agents/ops/agentStateWrite.js +16 -16
  97. package/dist/engine/agents/ops/agentStateWrite.js.map +1 -1
  98. package/dist/engine/agents/ops/agentTypes.d.ts +7 -7
  99. package/dist/engine/agents/ops/agentTypes.d.ts.map +1 -1
  100. package/dist/engine/apps/appExecute.spec.js +39 -20
  101. package/dist/engine/apps/appExecute.spec.js.map +1 -1
  102. package/dist/engine/engine.d.ts.map +1 -1
  103. package/dist/engine/engine.js +7 -1
  104. package/dist/engine/engine.js.map +1 -1
  105. package/dist/engine/engine.spec.js +2 -0
  106. package/dist/engine/engine.spec.js.map +1 -1
  107. package/dist/engine/modules/rlm/rlmExecute.d.ts +10 -1
  108. package/dist/engine/modules/rlm/rlmExecute.d.ts.map +1 -1
  109. package/dist/engine/modules/rlm/rlmExecute.js +35 -1
  110. package/dist/engine/modules/rlm/rlmExecute.js.map +1 -1
  111. package/dist/engine/modules/rlm/rlmRestore.d.ts +2 -2
  112. package/dist/engine/modules/rlm/rlmRestore.d.ts.map +1 -1
  113. package/dist/engine/modules/rlm/rlmRestore.js +35 -1
  114. package/dist/engine/modules/rlm/rlmRestore.js.map +1 -1
  115. package/dist/engine/modules/rlm/rlmTool.d.ts.map +1 -1
  116. package/dist/engine/modules/rlm/rlmTool.js +9 -1
  117. package/dist/engine/modules/rlm/rlmTool.js.map +1 -1
  118. package/dist/engine/modules/tools/agentCompactTool.d.ts +7 -0
  119. package/dist/engine/modules/tools/agentCompactTool.d.ts.map +1 -0
  120. package/dist/engine/modules/tools/agentCompactTool.js +63 -0
  121. package/dist/engine/modules/tools/agentCompactTool.js.map +1 -0
  122. package/dist/engine/modules/tools/agentCompactTool.spec.d.ts +2 -0
  123. package/dist/engine/modules/tools/agentCompactTool.spec.d.ts.map +1 -0
  124. package/dist/engine/modules/tools/agentCompactTool.spec.js +54 -0
  125. package/dist/engine/modules/tools/agentCompactTool.spec.js.map +1 -0
  126. package/dist/engine/modules/tools/agentResetTool.d.ts +7 -0
  127. package/dist/engine/modules/tools/agentResetTool.d.ts.map +1 -0
  128. package/dist/engine/modules/tools/agentResetTool.js +68 -0
  129. package/dist/engine/modules/tools/agentResetTool.js.map +1 -0
  130. package/dist/engine/modules/tools/agentResetTool.spec.d.ts +2 -0
  131. package/dist/engine/modules/tools/agentResetTool.spec.d.ts.map +1 -0
  132. package/dist/engine/modules/tools/agentResetTool.spec.js +62 -0
  133. package/dist/engine/modules/tools/agentResetTool.spec.js.map +1 -0
  134. package/dist/engine/modules/tools/background.d.ts.map +1 -1
  135. package/dist/engine/modules/tools/background.js +40 -2
  136. package/dist/engine/modules/tools/background.js.map +1 -1
  137. package/dist/engine/modules/tools/permanentAgentToolBuild.d.ts.map +1 -1
  138. package/dist/engine/modules/tools/permanentAgentToolBuild.js +8 -2
  139. package/dist/engine/modules/tools/permanentAgentToolBuild.js.map +1 -1
  140. package/dist/engine/modules/tools/sessionHistoryToolBuild.js +1 -9
  141. package/dist/engine/modules/tools/sessionHistoryToolBuild.js.map +1 -1
  142. package/dist/engine/modules/tools/sessionHistoryToolBuild.spec.js +3 -3
  143. package/dist/engine/modules/tools/sessionHistoryToolBuild.spec.js.map +1 -1
  144. package/dist/engine/modules/tools/toolListContextBuild.d.ts.map +1 -1
  145. package/dist/engine/modules/tools/toolListContextBuild.js +3 -1
  146. package/dist/engine/modules/tools/toolListContextBuild.js.map +1 -1
  147. package/dist/engine/modules/tools/toolListContextBuild.spec.js +19 -0
  148. package/dist/engine/modules/tools/toolListContextBuild.spec.js.map +1 -1
  149. package/dist/main.js +6 -0
  150. package/dist/main.js.map +1 -1
  151. package/dist/plugins/dashboard/site/404.html +1 -1
  152. package/dist/plugins/dashboard/site/agent.html +1 -1
  153. package/dist/plugins/dashboard/site/agent.txt +1 -1
  154. package/dist/plugins/dashboard/site/agents.html +1 -1
  155. package/dist/plugins/dashboard/site/agents.txt +1 -1
  156. package/dist/plugins/dashboard/site/automations.html +1 -1
  157. package/dist/plugins/dashboard/site/automations.txt +1 -1
  158. package/dist/plugins/dashboard/site/connectors.html +1 -1
  159. package/dist/plugins/dashboard/site/connectors.txt +1 -1
  160. package/dist/plugins/dashboard/site/index.html +1 -1
  161. package/dist/plugins/dashboard/site/index.txt +1 -1
  162. package/dist/plugins/dashboard/site/processes.html +1 -1
  163. package/dist/plugins/dashboard/site/processes.txt +1 -1
  164. package/dist/plugins/dashboard/site/providers.html +1 -1
  165. package/dist/plugins/dashboard/site/providers.txt +1 -1
  166. package/dist/plugins/dashboard/site/signals.html +1 -1
  167. package/dist/plugins/dashboard/site/signals.txt +1 -1
  168. package/dist/plugins/dashboard/site/telemetry.html +1 -1
  169. package/dist/plugins/dashboard/site/telemetry.txt +1 -1
  170. package/dist/plugins/dashboard/site/tools.html +1 -1
  171. package/dist/plugins/dashboard/site/tools.txt +1 -1
  172. package/dist/plugins/shell/tool.js +2 -2
  173. package/dist/plugins/shell/tool.js.map +1 -1
  174. package/dist/plugins/telegram/connector.d.ts.map +1 -1
  175. package/dist/plugins/telegram/connector.js +3 -2
  176. package/dist/plugins/telegram/connector.js.map +1 -1
  177. package/dist/plugins/upgrade/plugin.spec.js +12 -1
  178. package/dist/plugins/upgrade/plugin.spec.js.map +1 -1
  179. package/dist/prompts/SYSTEM_AGENCY.md +10 -1
  180. package/dist/settings.d.ts +1 -0
  181. package/dist/settings.d.ts.map +1 -1
  182. package/dist/settings.js.map +1 -1
  183. package/dist/storage/agentDb.spec.d.ts +2 -0
  184. package/dist/storage/agentDb.spec.d.ts.map +1 -0
  185. package/dist/storage/agentDb.spec.js +113 -0
  186. package/dist/storage/agentDb.spec.js.map +1 -0
  187. package/dist/storage/agentDbList.d.ts +8 -0
  188. package/dist/storage/agentDbList.d.ts.map +1 -0
  189. package/dist/storage/agentDbList.js +17 -0
  190. package/dist/storage/agentDbList.js.map +1 -0
  191. package/dist/storage/agentDbParse.d.ts +7 -0
  192. package/dist/storage/agentDbParse.d.ts.map +1 -0
  193. package/dist/storage/agentDbParse.js +19 -0
  194. package/dist/storage/agentDbParse.js.map +1 -0
  195. package/dist/storage/agentDbRead.d.ts +8 -0
  196. package/dist/storage/agentDbRead.d.ts.map +1 -0
  197. package/dist/storage/agentDbRead.js +20 -0
  198. package/dist/storage/agentDbRead.js.map +1 -0
  199. package/dist/storage/agentDbWrite.d.ts +8 -0
  200. package/dist/storage/agentDbWrite.d.ts.map +1 -0
  201. package/dist/storage/agentDbWrite.js +38 -0
  202. package/dist/storage/agentDbWrite.js.map +1 -0
  203. package/dist/storage/databaseOpen.d.ts +7 -0
  204. package/dist/storage/databaseOpen.d.ts.map +1 -0
  205. package/dist/storage/databaseOpen.js +21 -0
  206. package/dist/storage/databaseOpen.js.map +1 -0
  207. package/dist/storage/databaseOpen.spec.d.ts +2 -0
  208. package/dist/storage/databaseOpen.spec.d.ts.map +1 -0
  209. package/dist/storage/databaseOpen.spec.js +27 -0
  210. package/dist/storage/databaseOpen.spec.js.map +1 -0
  211. package/dist/storage/databaseOpenEnsured.d.ts +7 -0
  212. package/dist/storage/databaseOpenEnsured.d.ts.map +1 -0
  213. package/dist/storage/databaseOpenEnsured.js +17 -0
  214. package/dist/storage/databaseOpenEnsured.js.map +1 -0
  215. package/dist/storage/databaseTypes.d.ts +47 -0
  216. package/dist/storage/databaseTypes.d.ts.map +1 -0
  217. package/dist/storage/databaseTypes.js +2 -0
  218. package/dist/storage/databaseTypes.js.map +1 -0
  219. package/dist/storage/migrations/20260219_import_files.d.ts +3 -0
  220. package/dist/storage/migrations/20260219_import_files.d.ts.map +1 -0
  221. package/dist/storage/migrations/20260219_import_files.js +205 -0
  222. package/dist/storage/migrations/20260219_import_files.js.map +1 -0
  223. package/dist/storage/migrations/20260219_initial.d.ts +3 -0
  224. package/dist/storage/migrations/20260219_initial.d.ts.map +1 -0
  225. package/dist/storage/migrations/20260219_initial.js +42 -0
  226. package/dist/storage/migrations/20260219_initial.js.map +1 -0
  227. package/dist/storage/migrations/_migrations.d.ts +3 -0
  228. package/dist/storage/migrations/_migrations.d.ts.map +1 -0
  229. package/dist/storage/migrations/_migrations.js +7 -0
  230. package/dist/storage/migrations/_migrations.js.map +1 -0
  231. package/dist/storage/migrations/migrationPending.d.ts +8 -0
  232. package/dist/storage/migrations/migrationPending.d.ts.map +1 -0
  233. package/dist/storage/migrations/migrationPending.js +18 -0
  234. package/dist/storage/migrations/migrationPending.js.map +1 -0
  235. package/dist/storage/migrations/migrationPending.spec.d.ts +2 -0
  236. package/dist/storage/migrations/migrationPending.spec.d.ts.map +1 -0
  237. package/dist/storage/migrations/migrationPending.spec.js +42 -0
  238. package/dist/storage/migrations/migrationPending.spec.js.map +1 -0
  239. package/dist/storage/migrations/migrationRun.d.ts +7 -0
  240. package/dist/storage/migrations/migrationRun.d.ts.map +1 -0
  241. package/dist/storage/migrations/migrationRun.js +31 -0
  242. package/dist/storage/migrations/migrationRun.js.map +1 -0
  243. package/dist/storage/migrations/migrationRun.spec.d.ts +2 -0
  244. package/dist/storage/migrations/migrationRun.spec.d.ts.map +1 -0
  245. package/dist/storage/migrations/migrationRun.spec.js +41 -0
  246. package/dist/storage/migrations/migrationRun.spec.js.map +1 -0
  247. package/dist/storage/migrations/migrationTypes.d.ts +6 -0
  248. package/dist/storage/migrations/migrationTypes.d.ts.map +1 -0
  249. package/dist/storage/migrations/migrationTypes.js +2 -0
  250. package/dist/storage/migrations/migrationTypes.js.map +1 -0
  251. package/dist/storage/sessionDb.spec.d.ts +2 -0
  252. package/dist/storage/sessionDb.spec.d.ts.map +1 -0
  253. package/dist/storage/sessionDb.spec.js +94 -0
  254. package/dist/storage/sessionDb.spec.js.map +1 -0
  255. package/dist/storage/sessionDbCreate.d.ts +14 -0
  256. package/dist/storage/sessionDbCreate.d.ts.map +1 -0
  257. package/dist/storage/sessionDbCreate.js +27 -0
  258. package/dist/storage/sessionDbCreate.js.map +1 -0
  259. package/dist/storage/sessionDbListForAgent.d.ts +8 -0
  260. package/dist/storage/sessionDbListForAgent.d.ts.map +1 -0
  261. package/dist/storage/sessionDbListForAgent.js +19 -0
  262. package/dist/storage/sessionDbListForAgent.js.map +1 -0
  263. package/dist/storage/sessionDbParse.d.ts +7 -0
  264. package/dist/storage/sessionDbParse.d.ts.map +1 -0
  265. package/dist/storage/sessionDbParse.js +14 -0
  266. package/dist/storage/sessionDbParse.js.map +1 -0
  267. package/dist/storage/sessionDbRead.d.ts +8 -0
  268. package/dist/storage/sessionDbRead.d.ts.map +1 -0
  269. package/dist/storage/sessionDbRead.js +20 -0
  270. package/dist/storage/sessionDbRead.js.map +1 -0
  271. package/dist/storage/sessionHistoryDb.spec.d.ts +2 -0
  272. package/dist/storage/sessionHistoryDb.spec.d.ts.map +1 -0
  273. package/dist/storage/sessionHistoryDb.spec.js +100 -0
  274. package/dist/storage/sessionHistoryDb.spec.js.map +1 -0
  275. package/dist/storage/sessionHistoryDbAppend.d.ts +12 -0
  276. package/dist/storage/sessionHistoryDbAppend.d.ts.map +1 -0
  277. package/dist/storage/sessionHistoryDbAppend.js +19 -0
  278. package/dist/storage/sessionHistoryDbAppend.js.map +1 -0
  279. package/dist/storage/sessionHistoryDbLoad.d.ts +7 -0
  280. package/dist/storage/sessionHistoryDbLoad.d.ts.map +1 -0
  281. package/dist/storage/sessionHistoryDbLoad.js +21 -0
  282. package/dist/storage/sessionHistoryDbLoad.js.map +1 -0
  283. package/dist/storage/sessionHistoryDbLoadAll.d.ts +7 -0
  284. package/dist/storage/sessionHistoryDbLoadAll.d.ts.map +1 -0
  285. package/dist/storage/sessionHistoryDbLoadAll.js +27 -0
  286. package/dist/storage/sessionHistoryDbLoadAll.js.map +1 -0
  287. package/dist/storage/sessionHistoryRecordParse.d.ts +8 -0
  288. package/dist/storage/sessionHistoryRecordParse.d.ts.map +1 -0
  289. package/dist/storage/sessionHistoryRecordParse.js +18 -0
  290. package/dist/storage/sessionHistoryRecordParse.js.map +1 -0
  291. package/dist/storage/sessionHistoryRecordParse.spec.d.ts +2 -0
  292. package/dist/storage/sessionHistoryRecordParse.spec.d.ts.map +1 -0
  293. package/dist/storage/sessionHistoryRecordParse.spec.js +29 -0
  294. package/dist/storage/sessionHistoryRecordParse.spec.js.map +1 -0
  295. package/dist/storage/storageUpgrade.d.ts +11 -0
  296. package/dist/storage/storageUpgrade.d.ts.map +1 -0
  297. package/dist/storage/storageUpgrade.js +27 -0
  298. package/dist/storage/storageUpgrade.js.map +1 -0
  299. package/dist/storage/storageUpgrade.spec.d.ts +2 -0
  300. package/dist/storage/storageUpgrade.spec.d.ts.map +1 -0
  301. package/dist/storage/storageUpgrade.spec.js +27 -0
  302. package/dist/storage/storageUpgrade.spec.js.map +1 -0
  303. package/package.json +1 -1
  304. package/dist/engine/agents/ops/agentHistoryRecordsLoad.d.ts +0 -8
  305. package/dist/engine/agents/ops/agentHistoryRecordsLoad.d.ts.map +0 -1
  306. package/dist/engine/agents/ops/agentHistoryRecordsLoad.js +0 -179
  307. package/dist/engine/agents/ops/agentHistoryRecordsLoad.js.map +0 -1
  308. package/dist/engine/agents/ops/agentHistoryRecordsLoad.spec.d.ts +0 -2
  309. package/dist/engine/agents/ops/agentHistoryRecordsLoad.spec.d.ts.map +0 -1
  310. package/dist/engine/agents/ops/agentHistoryRecordsLoad.spec.js +0 -114
  311. package/dist/engine/agents/ops/agentHistoryRecordsLoad.spec.js.map +0 -1
  312. /package/dist/plugins/dashboard/site/_next/static/{yMBYZ8deK2p0mAiBZ2gXo → QaLNk-eKmEa2hNSDaTRmr}/_buildManifest.js +0 -0
  313. /package/dist/plugins/dashboard/site/_next/static/{yMBYZ8deK2p0mAiBZ2gXo → QaLNk-eKmEa2hNSDaTRmr}/_ssgManifest.js +0 -0
@@ -4,35 +4,54 @@ import path from "node:path";
4
4
  import { describe, expect, it } from "vitest";
5
5
  import { createId } from "@paralleldrive/cuid2";
6
6
  import { configResolve } from "../../../config/configResolve.js";
7
+ import { storageUpgrade } from "../../../storage/storageUpgrade.js";
8
+ import { sessionDbCreate } from "../../../storage/sessionDbCreate.js";
9
+ import { agentDescriptorWrite } from "./agentDescriptorWrite.js";
10
+ import { agentStateRead } from "./agentStateRead.js";
11
+ import { agentStateWrite } from "./agentStateWrite.js";
7
12
  import { agentHistoryAppend } from "./agentHistoryAppend.js";
8
13
  import { agentHistoryLoadAll } from "./agentHistoryLoadAll.js";
9
- const buildRecord = (record) => record;
10
14
  describe("agentHistoryLoadAll", () => {
11
- it("returns records across reset markers", async () => {
15
+ it("returns records across all sessions", async () => {
12
16
  const dir = await mkdtemp(path.join(os.tmpdir(), "daycare-agent-history-all-"));
13
17
  const agentId = createId();
14
18
  try {
15
19
  const config = configResolve({ engine: { dataDir: dir }, assistant: { workspaceDir: dir } }, path.join(dir, "settings.json"));
16
- await agentHistoryAppend(config, agentId, buildRecord({ type: "start", at: 1 }));
17
- await agentHistoryAppend(config, agentId, buildRecord({ type: "user_message", at: 2, text: "before reset", files: [] }));
18
- await agentHistoryAppend(config, agentId, buildRecord({ type: "reset", at: 3 }));
19
- await agentHistoryAppend(config, agentId, buildRecord({ type: "user_message", at: 4, text: "after reset", files: [] }));
20
- const records = await agentHistoryLoadAll(config, agentId);
21
- expect(records).toHaveLength(4);
22
- expect(records[0]).toEqual({ type: "start", at: 1 });
23
- expect(records[1]).toEqual({
20
+ await storageUpgrade(config);
21
+ await agentDescriptorWrite(config, agentId, {
22
+ type: "cron",
23
+ id: agentId,
24
+ name: "history"
25
+ });
26
+ const initial = await agentStateRead(config, agentId);
27
+ if (!initial) {
28
+ throw new Error("State missing");
29
+ }
30
+ const firstSession = await sessionDbCreate(config, { agentId, createdAt: 1 });
31
+ await agentStateWrite(config, agentId, { ...initial, activeSessionId: firstSession });
32
+ await agentHistoryAppend(config, agentId, {
24
33
  type: "user_message",
25
34
  at: 2,
26
- text: "before reset",
35
+ text: "before",
27
36
  files: []
28
37
  });
29
- expect(records[2]).toEqual({ type: "reset", at: 3 });
30
- expect(records[3]).toEqual({
38
+ const secondSession = await sessionDbCreate(config, { agentId, createdAt: 3 });
39
+ await agentStateWrite(config, agentId, {
40
+ ...initial,
41
+ activeSessionId: secondSession,
42
+ updatedAt: 3
43
+ });
44
+ await agentHistoryAppend(config, agentId, {
31
45
  type: "user_message",
32
46
  at: 4,
33
- text: "after reset",
47
+ text: "after",
34
48
  files: []
35
49
  });
50
+ const records = await agentHistoryLoadAll(config, agentId);
51
+ expect(records).toEqual([
52
+ { type: "user_message", at: 2, text: "before", files: [] },
53
+ { type: "user_message", at: 4, text: "after", files: [] }
54
+ ]);
36
55
  }
37
56
  finally {
38
57
  await rm(dir, { recursive: true, force: true });
@@ -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":"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"}
@@ -2,7 +2,7 @@ import { describe, expect, it } from "vitest";
2
2
  import { agentHistoryPendingRlmResolve } from "./agentHistoryPendingRlmResolve.js";
3
3
  describe("agentHistoryPendingRlmResolve", () => {
4
4
  it("returns null when no RLM start record exists", () => {
5
- const records = [{ type: "start", at: 1 }];
5
+ const records = [{ type: "note", at: 1, text: "noop" }];
6
6
  expect(agentHistoryPendingRlmResolve(records)).toBeNull();
7
7
  });
8
8
  it("returns null when RLM execution is already complete", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"agentHistoryPendingRlmResolve.spec.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryPendingRlmResolve.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentHistoryPendingRlmResolve.spec.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistoryPendingRlmResolve.spec.ts"],"names":[],"mappings":"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"}
@@ -50,8 +50,6 @@ export function agentHistorySummary(records) {
50
50
  }
51
51
  function buildEmptyCounts() {
52
52
  return {
53
- start: 0,
54
- reset: 0,
55
53
  user_message: 0,
56
54
  assistant_message: 0,
57
55
  tool_result: 0,
@@ -1 +1 @@
1
- {"version":3,"file":"agentHistorySummary.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistorySummary.ts"],"names":[],"mappings":"AAgBA;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAA6B;IAC/D,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;IAClC,IAAI,OAAO,GAAkB,IAAI,CAAC;IAClC,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,IAAI,eAAe,GAAkB,IAAI,CAAC;IAC1C,IAAI,oBAAoB,GAAkB,IAAI,CAAC;IAC/C,IAAI,QAAQ,GAAkB,IAAI,CAAC;IACnC,IAAI,YAAY,GAAkB,IAAI,CAAC;IAEvC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,OAAO,GAAG,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QACtE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QAEnE,IAAI,MAAM,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACnC,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC;YAC9B,SAAS;QACX,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YACxC,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAAC;YACnC,SAAS;QACX,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YACxC,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAAC;YACnC,SAAS;QACX,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC3B,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC;YACvB,SAAS;QACX,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC;YACpD,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/D,YAAY,GAAG,QAAQ,CAAC;YAC1B,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,WAAW,EAAE,OAAO,CAAC,MAAM;QAC3B,OAAO;QACP,MAAM;QACN,MAAM;QACN,eAAe;QACf,oBAAoB;QACpB,QAAQ;QACR,YAAY;KACb,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB;IACvB,OAAO;QACL,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,CAAC;QACR,YAAY,EAAE,CAAC;QACf,iBAAiB,EAAE,CAAC;QACpB,WAAW,EAAE,CAAC;QACd,SAAS,EAAE,CAAC;QACZ,aAAa,EAAE,CAAC;QAChB,eAAe,EAAE,CAAC;QAClB,YAAY,EAAE,CAAC;QACf,iBAAiB,EAAE,CAAC;QACpB,IAAI,EAAE,CAAC;KACR,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"agentHistorySummary.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistorySummary.ts"],"names":[],"mappings":"AAgBA;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAA6B;IAC/D,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;IAClC,IAAI,OAAO,GAAkB,IAAI,CAAC;IAClC,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,IAAI,eAAe,GAAkB,IAAI,CAAC;IAC1C,IAAI,oBAAoB,GAAkB,IAAI,CAAC;IAC/C,IAAI,QAAQ,GAAkB,IAAI,CAAC;IACnC,IAAI,YAAY,GAAkB,IAAI,CAAC;IAEvC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,OAAO,GAAG,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QACtE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QAEnE,IAAI,MAAM,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACnC,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC;YAC9B,SAAS;QACX,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YACxC,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAAC;YACnC,SAAS;QACX,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YACxC,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAAC;YACnC,SAAS;QACX,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC3B,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC;YACvB,SAAS;QACX,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC;YACpD,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/D,YAAY,GAAG,QAAQ,CAAC;YAC1B,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,WAAW,EAAE,OAAO,CAAC,MAAM;QAC3B,OAAO;QACP,MAAM;QACN,MAAM;QACN,eAAe;QACf,oBAAoB;QACpB,QAAQ;QACR,YAAY;KACb,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB;IACvB,OAAO;QACL,YAAY,EAAE,CAAC;QACf,iBAAiB,EAAE,CAAC;QACpB,WAAW,EAAE,CAAC;QACd,SAAS,EAAE,CAAC;QACZ,aAAa,EAAE,CAAC;QAChB,eAAe,EAAE,CAAC;QAClB,YAAY,EAAE,CAAC;QACf,iBAAiB,EAAE,CAAC;QACpB,IAAI,EAAE,CAAC;KACR,CAAC;AACJ,CAAC"}
@@ -10,8 +10,6 @@ describe("agentHistorySummary", () => {
10
10
  expect(summary.firstAt).toBeNull();
11
11
  expect(summary.lastAt).toBeNull();
12
12
  expect(summary.counts).toEqual({
13
- start: 0,
14
- reset: 0,
15
13
  user_message: 0,
16
14
  assistant_message: 0,
17
15
  tool_result: 0,
@@ -25,7 +23,6 @@ describe("agentHistorySummary", () => {
25
23
  });
26
24
  it("tracks counts, time range, and latest text snapshots", () => {
27
25
  const records = [
28
- buildRecord({ type: "start", at: 100 }),
29
26
  buildRecord({ type: "user_message", at: 110, text: "hi", files: [] }),
30
27
  buildRecord({
31
28
  type: "assistant_message",
@@ -61,12 +58,10 @@ describe("agentHistorySummary", () => {
61
58
  buildRecord({ type: "note", at: 140, text: "done" })
62
59
  ];
63
60
  const summary = agentHistorySummary(records);
64
- expect(summary.recordCount).toBe(6);
65
- expect(summary.firstAt).toBe(100);
61
+ expect(summary.recordCount).toBe(5);
62
+ expect(summary.firstAt).toBe(110);
66
63
  expect(summary.lastAt).toBe(140);
67
64
  expect(summary.counts).toEqual({
68
- start: 1,
69
- reset: 0,
70
65
  user_message: 1,
71
66
  assistant_message: 1,
72
67
  tool_result: 1,
@@ -1 +1 @@
1
- {"version":3,"file":"agentHistorySummary.spec.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistorySummary.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentHistorySummary.spec.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentHistorySummary.spec.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { AgentInboxCompletion, AgentInboxEntry, AgentInboxItem } from "./agentTypes.js";
1
+ import type { AgentInboxCompletion, AgentInboxEntry, AgentInboxItem, AgentInboxSteering } from "./agentTypes.js";
2
2
  /**
3
3
  * AgentInbox is a single-consumer queue for agent work items.
4
4
  * Expects: only one agent attaches to an inbox at a time.
@@ -8,6 +8,7 @@ export declare class AgentInbox {
8
8
  private items;
9
9
  private waiters;
10
10
  private attached;
11
+ private steeringMessage;
11
12
  constructor(agentId: string);
12
13
  attach(): void;
13
14
  detach(): void;
@@ -21,5 +22,17 @@ export declare class AgentInbox {
21
22
  * Expects: caller owns synchronization for queue mutation.
22
23
  */
23
24
  drainPending(): AgentInboxEntry[];
25
+ /**
26
+ * Store a steering message. Replaces any previous steering message.
27
+ */
28
+ steer(item: AgentInboxSteering): void;
29
+ /**
30
+ * Returns and clears the current steering message.
31
+ */
32
+ consumeSteering(): AgentInboxSteering | null;
33
+ /**
34
+ * Check if there is a pending steering message.
35
+ */
36
+ hasSteering(): boolean;
24
37
  }
25
38
  //# sourceMappingURL=agentInbox.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agentInbox.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentInbox.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,oBAAoB,EACpB,eAAe,EACf,cAAc,EAEf,MAAM,iBAAiB,CAAC;AAEzB;;;GAGG;AACH,qBAAa,UAAU;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,KAAK,CAAyB;IACtC,OAAO,CAAC,OAAO,CAA+C;IAC9D,OAAO,CAAC,QAAQ,CAAS;gBAEb,OAAO,EAAE,MAAM;IAI3B,MAAM,IAAI,IAAI;IAOd,MAAM,IAAI,IAAI;IAId,IAAI,CACF,IAAI,EAAE,cAAc,EACpB,UAAU,GAAE,oBAAoB,GAAG,IAAW,GAC7C,eAAe;IAsBlB,OAAO,CAAC,mBAAmB;IAarB,IAAI,IAAI,OAAO,CAAC,eAAe,CAAC;IAUtC,IAAI,IAAI,MAAM;IAId,WAAW,IAAI,eAAe,EAAE;IAIhC;;;OAGG;IACH,YAAY,IAAI,eAAe,EAAE;CAKlC"}
1
+ {"version":3,"file":"agentInbox.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentInbox.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,oBAAoB,EACpB,eAAe,EACf,cAAc,EAEd,kBAAkB,EACnB,MAAM,iBAAiB,CAAC;AAEzB;;;GAGG;AACH,qBAAa,UAAU;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,KAAK,CAAyB;IACtC,OAAO,CAAC,OAAO,CAA+C;IAC9D,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,eAAe,CAAmC;gBAE9C,OAAO,EAAE,MAAM;IAI3B,MAAM,IAAI,IAAI;IAOd,MAAM,IAAI,IAAI;IAId,IAAI,CACF,IAAI,EAAE,cAAc,EACpB,UAAU,GAAE,oBAAoB,GAAG,IAAW,GAC7C,eAAe;IAsBlB,OAAO,CAAC,mBAAmB;IAarB,IAAI,IAAI,OAAO,CAAC,eAAe,CAAC;IAUtC,IAAI,IAAI,MAAM;IAId,WAAW,IAAI,eAAe,EAAE;IAIhC;;;OAGG;IACH,YAAY,IAAI,eAAe,EAAE;IAMjC;;OAEG;IACH,KAAK,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI;IAIrC;;OAEG;IACH,eAAe,IAAI,kBAAkB,GAAG,IAAI;IAM5C;;OAEG;IACH,WAAW,IAAI,OAAO;CAGvB"}
@@ -8,6 +8,7 @@ export class AgentInbox {
8
8
  items = [];
9
9
  waiters = [];
10
10
  attached = false;
11
+ steeringMessage = null;
11
12
  constructor(agentId) {
12
13
  this.agentId = agentId;
13
14
  }
@@ -74,6 +75,26 @@ export class AgentInbox {
74
75
  this.items = [];
75
76
  return pending;
76
77
  }
78
+ /**
79
+ * Store a steering message. Replaces any previous steering message.
80
+ */
81
+ steer(item) {
82
+ this.steeringMessage = item;
83
+ }
84
+ /**
85
+ * Returns and clears the current steering message.
86
+ */
87
+ consumeSteering() {
88
+ const message = this.steeringMessage;
89
+ this.steeringMessage = null;
90
+ return message;
91
+ }
92
+ /**
93
+ * Check if there is a pending steering message.
94
+ */
95
+ hasSteering() {
96
+ return this.steeringMessage !== null;
97
+ }
77
98
  }
78
99
  function messageItemMerge(left, right) {
79
100
  const files = [...(left.message.files ?? []), ...(right.message.files ?? [])];
@@ -1 +1 @@
1
- {"version":3,"file":"agentInbox.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentInbox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentInbox.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentInbox.ts"],"names":[],"mappings":"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"}
@@ -70,5 +70,41 @@ describe("AgentInbox", () => {
70
70
  expect(rejectFirst).not.toHaveBeenCalled();
71
71
  expect(rejectSecond).not.toHaveBeenCalled();
72
72
  });
73
+ describe("steering", () => {
74
+ it("steer() stores a steering message", () => {
75
+ const inbox = new AgentInbox("agent-6");
76
+ inbox.steer({ type: "steering", text: "stop what you are doing" });
77
+ expect(inbox.hasSteering()).toBe(true);
78
+ });
79
+ it("consumeSteering() returns and clears the steering message", () => {
80
+ const inbox = new AgentInbox("agent-7");
81
+ inbox.steer({ type: "steering", text: "redirect", origin: "user-123" });
82
+ const steering = inbox.consumeSteering();
83
+ expect(steering).toEqual({
84
+ type: "steering",
85
+ text: "redirect",
86
+ origin: "user-123"
87
+ });
88
+ expect(inbox.hasSteering()).toBe(false);
89
+ expect(inbox.consumeSteering()).toBeNull();
90
+ });
91
+ it("hasSteering() returns false when no steering is pending", () => {
92
+ const inbox = new AgentInbox("agent-8");
93
+ expect(inbox.hasSteering()).toBe(false);
94
+ });
95
+ it("multiple steer() calls keep only the last one", () => {
96
+ const inbox = new AgentInbox("agent-9");
97
+ inbox.steer({ type: "steering", text: "first" });
98
+ inbox.steer({ type: "steering", text: "second" });
99
+ inbox.steer({ type: "steering", text: "third", cancelReason: "user cancelled" });
100
+ const steering = inbox.consumeSteering();
101
+ expect(steering).toEqual({
102
+ type: "steering",
103
+ text: "third",
104
+ cancelReason: "user cancelled"
105
+ });
106
+ expect(inbox.hasSteering()).toBe(false);
107
+ });
108
+ });
73
109
  });
74
110
  //# sourceMappingURL=agentInbox.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agentInbox.spec.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentInbox.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentInbox.spec.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentInbox.spec.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import type { AgentDescriptor } from "./agentDescriptorTypes.js";
3
3
  import type { AgentLifecycleState } from "./agentTypes.js";
4
4
  /**
5
5
  * Lists persisted agents with descriptors and last-updated timestamps.
6
- * Expects: agentsDir may be missing when no agents have been created yet.
6
+ * Expects: storage migrations are applied before listing.
7
7
  */
8
8
  export declare function agentList(config: Config): Promise<Array<{
9
9
  agentId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"agentList.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentList.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAI3D;;;GAGG;AACH,wBAAsB,SAAS,CAC7B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,KAAK,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,eAAe,CAAC;IAAC,SAAS,EAAE,mBAAmB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CA+BrH"}
1
+ {"version":3,"file":"agentList.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentList.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAG3D;;;GAGG;AACH,wBAAsB,SAAS,CAC7B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,KAAK,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,eAAe,CAAC;IAAC,SAAS,EAAE,mBAAmB,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAQrH"}
@@ -1,41 +1,15 @@
1
- import { promises as fs } from "node:fs";
2
- import { agentDescriptorRead } from "./agentDescriptorRead.js";
3
- import { agentStateRead } from "./agentStateRead.js";
1
+ import { agentDbList } from "../../../storage/agentDbList.js";
4
2
  /**
5
3
  * Lists persisted agents with descriptors and last-updated timestamps.
6
- * Expects: agentsDir may be missing when no agents have been created yet.
4
+ * Expects: storage migrations are applied before listing.
7
5
  */
8
6
  export async function agentList(config) {
9
- let entries = [];
10
- try {
11
- entries = await fs.readdir(config.agentsDir, { withFileTypes: true });
12
- }
13
- catch (error) {
14
- if (error.code === "ENOENT") {
15
- return [];
16
- }
17
- throw error;
18
- }
19
- const results = [];
20
- for (const entry of entries) {
21
- if (!entry.isDirectory()) {
22
- continue;
23
- }
24
- const agentId = entry.name;
25
- let descriptor = null;
26
- let state = null;
27
- try {
28
- descriptor = await agentDescriptorRead(config, agentId);
29
- state = await agentStateRead(config, agentId);
30
- }
31
- catch {
32
- continue;
33
- }
34
- if (!descriptor || !state) {
35
- continue;
36
- }
37
- results.push({ agentId, descriptor, lifecycle: state.state, updatedAt: state.updatedAt });
38
- }
39
- return results;
7
+ const records = await agentDbList(config);
8
+ return records.map((record) => ({
9
+ agentId: record.id,
10
+ descriptor: record.descriptor,
11
+ lifecycle: record.lifecycle,
12
+ updatedAt: record.updatedAt
13
+ }));
40
14
  }
41
15
  //# sourceMappingURL=agentList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agentList.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AAKzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,MAAc;IAEd,IAAI,OAAO,GAAwD,EAAE,CAAC;IACtE,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACxE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvD,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAA+G,EAAE,CAAC;IAC/H,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACzB,SAAS;QACX,CAAC;QACD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC;QAC3B,IAAI,UAAU,GAA2B,IAAI,CAAC;QAC9C,IAAI,KAAK,GAA+C,IAAI,CAAC;QAC7D,IAAI,CAAC;YACH,UAAU,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACxD,KAAK,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChD,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK,EAAE,CAAC;YAC1B,SAAS;QACX,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IAC5F,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"agentList.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentList.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,MAAc;IAEd,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC9B,OAAO,EAAE,MAAM,CAAC,EAAE;QAClB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC,CAAC,CAAC;AACN,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"agentLoopRun.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentLoopRun.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAczE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAWrD,KAAK,mBAAmB,GAAG;IACzB,KAAK,EAAE,YAAY,CAAC;IACpB,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;IAC5B,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,eAAe,EAAE,eAAe,CAAC;IACjC,YAAY,EAAE,eAAe,CAAC;IAC9B,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,cAAc,CAAC;IACzB,SAAS,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACpC,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,qBAAqB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3E,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,EAAE,kBAAkB,EAAE,CAAC;IACrC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,KAAK,CAAC;QACvB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,MAAM,CAAC;YACf,SAAS,EAAE,MAAM,CAAC;YAClB,UAAU,EAAE,MAAM,CAAC;YACnB,KAAK,EAAE,MAAM,CAAC;SACf,CAAC;KACH,CAAC,CAAC;CACJ,CAAC;AAEF;;;GAGG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC,CAipBzF"}
1
+ {"version":3,"file":"agentLoopRun.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentLoopRun.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,qBAAqB,CAAC;AAEtE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAezE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAWrD,KAAK,mBAAmB,GAAG;IACzB,KAAK,EAAE,YAAY,CAAC;IACpB,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;IAC5B,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,eAAe,EAAE,eAAe,CAAC;IACjC,YAAY,EAAE,eAAe,CAAC;IAC9B,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,cAAc,CAAC;IACzB,SAAS,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACpC,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,qBAAqB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3E,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,EAAE,kBAAkB,EAAE,CAAC;IACrC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,KAAK,CAAC;QACvB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,MAAM,CAAC;YACf,SAAS,EAAE,MAAM,CAAC;YAClB,UAAU,EAAE,MAAM,CAAC;YACnB,KAAK,EAAE,MAAM,CAAC;SACf,CAAC;KACH,CAAC,CAAC;CACJ,CAAC;AAEF;;;GAGG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC,CA0sBzF"}
@@ -5,6 +5,7 @@ import { messageNoMessageIs } from "../../messages/messageNoMessageIs.js";
5
5
  import { toolArgsFormatVerbose } from "../../modules/tools/toolArgsFormatVerbose.js";
6
6
  import { toolResultFormatVerbose } from "../../modules/tools/toolResultFormatVerbose.js";
7
7
  import { toolListContextBuild } from "../../modules/tools/toolListContextBuild.js";
8
+ import { toolExecutionResultOutcome } from "../../modules/tools/toolReturnOutcome.js";
8
9
  import { rlmExecute } from "../../modules/rlm/rlmExecute.js";
9
10
  import { rlmHistoryCompleteErrorRecordBuild } from "../../modules/rlm/rlmHistoryCompleteErrorRecordBuild.js";
10
11
  import { rlmNoToolsExtract } from "../../modules/rlm/rlmNoToolsExtract.js";
@@ -340,8 +341,20 @@ export async function agentLoopRun(options) {
340
341
  const runPythonCode = runPythonCodes[index];
341
342
  const toolCallId = createId();
342
343
  try {
343
- const result = await rlmExecute(runPythonCode, preamble, executionContext, toolResolver, toolCallId, appendHistoryRecord);
344
+ // Create steering check callback that consumes steering if present
345
+ const checkSteering = () => {
346
+ const steering = agent.inbox.consumeSteering();
347
+ if (steering) {
348
+ return { text: steering.text, origin: steering.origin };
349
+ }
350
+ return null;
351
+ };
352
+ const result = await rlmExecute(runPythonCode, preamble, executionContext, toolResolver, toolCallId, appendHistoryRecord, checkSteering);
344
353
  context.messages.push(rlmNoToolsResultMessageBuild({ result }));
354
+ // If steering interrupted, break out of the loop
355
+ if (result.steeringInterrupt) {
356
+ break;
357
+ }
345
358
  }
346
359
  catch (error) {
347
360
  const message = error instanceof Error ? error.message : String(error);
@@ -397,7 +410,8 @@ export async function agentLoopRun(options) {
397
410
  logger.debug(`event: No tool calls, breaking inference loop iteration=${iteration}`);
398
411
  break;
399
412
  }
400
- for (const toolCall of toolCalls) {
413
+ for (let toolIndex = 0; toolIndex < toolCalls.length; toolIndex++) {
414
+ const toolCall = toolCalls[toolIndex];
401
415
  const argsPreview = JSON.stringify(toolCall.arguments).slice(0, 200);
402
416
  logger.debug(`execute: Executing tool call toolName=${toolCall.name} toolCallId=${toolCall.id} args=${argsPreview}`);
403
417
  if (verbose && !suppressUserOutput && connector && targetId) {
@@ -438,6 +452,49 @@ export async function agentLoopRun(options) {
438
452
  toolCallId: toolCall.id,
439
453
  output: toolResult
440
454
  }, appendHistoryRecord);
455
+ // Check for steering after each tool call
456
+ if (agent.inbox.hasSteering()) {
457
+ const steering = agent.inbox.consumeSteering();
458
+ if (steering) {
459
+ logger.debug(`event: Steering received, cancelling remaining tool calls steeringOrigin=${steering.origin ?? "unknown"}`);
460
+ // Cancel remaining tool calls with steering reason
461
+ const cancelReason = steering.cancelReason ?? "Task redirected by steering message";
462
+ for (let cancelIndex = toolIndex + 1; cancelIndex < toolCalls.length; cancelIndex++) {
463
+ const cancelledCall = toolCalls[cancelIndex];
464
+ const cancelledMessage = {
465
+ role: "toolResult",
466
+ toolCallId: cancelledCall.id,
467
+ toolName: cancelledCall.name,
468
+ content: [{ type: "text", text: cancelReason }],
469
+ isError: true,
470
+ timestamp: Date.now()
471
+ };
472
+ const cancelledResult = toolExecutionResultOutcome(cancelledMessage);
473
+ context.messages.push(cancelledMessage);
474
+ await historyRecordAppend(historyRecords, {
475
+ type: "tool_result",
476
+ at: Date.now(),
477
+ toolCallId: cancelledCall.id,
478
+ output: cancelledResult
479
+ }, appendHistoryRecord);
480
+ logger.debug(`event: Tool call cancelled by steering toolName=${cancelledCall.name} toolCallId=${cancelledCall.id}`);
481
+ }
482
+ // Inject steering message into context as a system message
483
+ // The steering message will be processed by the agent's runLoop on next iteration
484
+ context.messages.push({
485
+ role: "user",
486
+ content: [
487
+ {
488
+ type: "text",
489
+ text: `<system_message origin="${steering.origin ?? "steering"}">\n${steering.text}\n</system_message>`
490
+ }
491
+ ],
492
+ timestamp: Date.now()
493
+ });
494
+ // Break out of tool loop - steering message will drive next inference
495
+ break;
496
+ }
497
+ }
441
498
  }
442
499
  if (iteration === MAX_TOOL_ITERATIONS - 1) {
443
500
  logger.debug(`event: Tool loop limit reached iteration=${iteration}`);
@@ -453,10 +510,6 @@ export async function agentLoopRun(options) {
453
510
  logger.info({ agentId: agent.id }, "event: Inference aborted");
454
511
  return { responseText: finalResponseText, historyRecords, tokenStatsUpdates };
455
512
  }
456
- if (isContextOverflowError(error)) {
457
- logger.warn({ agentId: agent.id, error }, "event: Inference context overflow detected");
458
- return { responseText: finalResponseText, historyRecords, contextOverflow: true, tokenStatsUpdates };
459
- }
460
513
  await historyPendingToolCallsComplete(historyRecords, "session_crashed", appendHistoryRecord);
461
514
  logger.warn({ connector: source, error }, "error: Inference failed");
462
515
  const message = error instanceof Error && error.message === "No inference provider available"
@@ -487,10 +540,6 @@ export async function agentLoopRun(options) {
487
540
  return { responseText: finalResponseText, historyRecords, tokenStatsUpdates };
488
541
  }
489
542
  if (response.message.stopReason === "error") {
490
- if (isContextOverflowError(response.message.errorMessage ?? "")) {
491
- logger.warn({ agentId: agent.id, error: response.message.errorMessage }, "event: Inference context overflow detected");
492
- return { responseText: finalResponseText, historyRecords, contextOverflow: true, tokenStatsUpdates };
493
- }
494
543
  const message = "Inference failed.";
495
544
  const errorDetail = response.message.errorMessage && response.message.errorMessage.length > 0
496
545
  ? response.message.errorMessage
@@ -645,69 +694,6 @@ function messageAssistantTextRewrite(message, text) {
645
694
  }
646
695
  message.content = nextContent;
647
696
  }
648
- function isContextOverflowError(error) {
649
- const candidates = new Set();
650
- const add = (value) => {
651
- if (typeof value === "string" && value.trim().length > 0) {
652
- candidates.add(value);
653
- }
654
- };
655
- if (error instanceof Error) {
656
- add(error.message);
657
- add(error.code);
658
- add(error.type);
659
- add(error.name);
660
- add(error.status);
661
- add(error.statusCode);
662
- add(error.error);
663
- add(error.reason);
664
- add(error.details);
665
- add(error.cause);
666
- }
667
- else if (typeof error === "object" && error !== null) {
668
- const record = error;
669
- add(record.message);
670
- add(record.code);
671
- add(record.type);
672
- add(record.name);
673
- add(record.status);
674
- add(record.statusCode);
675
- add(record.error);
676
- add(record.reason);
677
- add(record.details);
678
- add(record.cause);
679
- }
680
- else {
681
- add(error);
682
- }
683
- const patterns = [
684
- "context_length_exceeded",
685
- "context length exceeded",
686
- "maximum context length",
687
- "max context length",
688
- "context window",
689
- "context limit",
690
- "context too long",
691
- "prompt too long",
692
- "prompt is too long",
693
- "input too long",
694
- "input is too long",
695
- "input token limit",
696
- "maximum number of tokens",
697
- "max tokens",
698
- "exceeds the maximum context",
699
- "exceeds context",
700
- "token limit exceeded",
701
- "too many tokens"
702
- ];
703
- for (const value of candidates) {
704
- const normalized = value.toLowerCase();
705
- if (patterns.some((pattern) => normalized.includes(pattern))) {
706
- return true;
707
- }
708
- }
709
- return false;
710
- }
711
697
  function isInferenceAbortError(error, signal) {
712
698
  if (signal?.aborted) {
713
699
  return true;