@xopcai/xopc 0.0.180 → 0.0.188

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 (838) hide show
  1. package/README.md +1 -1
  2. package/README.zh-CN.md +1 -1
  3. package/dist/browser-ext/manifest.json +1 -1
  4. package/dist/extensions/demo-memory/src/index.js +1 -0
  5. package/dist/extensions/feishu/src/streaming/streaming-adapter.js +1 -3
  6. package/dist/extensions/telegram/src/adapters/streaming-adapter.js +0 -2
  7. package/dist/extensions/telegram/src/draft-stream.d.ts +0 -4
  8. package/dist/extensions/telegram/src/draft-stream.js +1 -53
  9. package/dist/extensions/telegram/xopc.extension.json +1 -1
  10. package/dist/gateway/static/root/assets/{activity-store-DFKtQDgE.js → activity-store--QoUGhiS.js} +1 -1
  11. package/dist/gateway/static/root/assets/{agent-avatar-dicebear-CcTvB_4W.js → agent-avatar-dicebear-B0yweLNQ.js} +1 -1
  12. package/dist/gateway/static/root/assets/agents-C6OV-gMm.js +2 -0
  13. package/dist/gateway/static/root/assets/{api-CUClAvuL.js → api-5laWqfiE.js} +1 -1
  14. package/dist/gateway/static/root/assets/{app-management-settings-panel-Ib-cWKHM.js → app-management-settings-panel-BXJ8Jiv_.js} +1 -1
  15. package/dist/gateway/static/root/assets/{appearance-settings-CRSN8WuA.js → appearance-settings-DG9n9D1M.js} +1 -1
  16. package/dist/gateway/static/root/assets/apps-page-Ci14lDeO.js +1 -0
  17. package/dist/gateway/static/root/assets/{archive-plugin-BBF9zspN.js → archive-plugin-Ceh5qrZf.js} +1 -1
  18. package/dist/gateway/static/root/assets/{attachment-load-D3QQfA7w.js → attachment-load-jFW7uYf7.js} +1 -1
  19. package/dist/gateway/static/root/assets/automations-page-Q1xmb4Rh.js +6 -0
  20. package/dist/gateway/static/root/assets/{binary-plugins-D78XOjJ3.js → binary-plugins-XDlkI1r4.js} +1 -1
  21. package/dist/gateway/static/root/assets/{block-editor-D_VVXlYX.js → block-editor-kyKc2IhE.js} +46 -46
  22. package/dist/gateway/static/root/assets/browser-settings-page-DbowrHXD.js +8 -0
  23. package/dist/gateway/static/root/assets/browser-workflow-inputs-BJa5Iz_v.js +1 -0
  24. package/dist/gateway/static/root/assets/{browser-workflows-page-58DBMXgG.js → browser-workflows-page-CTQQOsn5.js} +2 -2
  25. package/dist/gateway/static/root/assets/capabilities-settings-panel-DoZPFdKF.js +7 -0
  26. package/dist/gateway/static/root/assets/capability-presets-api-Dn-7MMEo.js +1 -0
  27. package/dist/gateway/static/root/assets/capability-presets-settings-panel-Bt8Hnx0h.js +1 -0
  28. package/dist/gateway/static/root/assets/{channel-recipient-api-DYtoNV5A.js → channel-recipient-api-BgIkWq01.js} +1 -1
  29. package/dist/gateway/static/root/assets/channels-settings-Bpsebsru.js +1 -0
  30. package/dist/gateway/static/root/assets/channels-status-swr-DFmdYRE5.js +1 -0
  31. package/dist/gateway/static/root/assets/{connector-logo-CxIXnifA.js → connector-logo-TRr9ybf6.js} +1 -1
  32. package/dist/gateway/static/root/assets/connectors-page-Tg5kl22i.js +2 -0
  33. package/dist/gateway/static/root/assets/desktop-pet-CSwd00CV.js +1 -0
  34. package/dist/gateway/static/root/assets/{desktop-pet-settings-BOIp4q0Z.js → desktop-pet-settings-CuNQvHGu.js} +1 -1
  35. package/dist/gateway/static/root/assets/{directory-picker-path-field-C8_lsW6S.js → directory-picker-path-field-ct0n5Rje.js} +1 -1
  36. package/dist/gateway/static/root/assets/{extension-debug-page-CMNnSJP6.js → extension-debug-page-BeRBuMUU.js} +1 -1
  37. package/dist/gateway/static/root/assets/{extension-page-t0pJqLvM.js → extension-page-DbK-Cwao.js} +1 -1
  38. package/dist/gateway/static/root/assets/{extension-settings-page-aiR-tKnW.js → extension-settings-page-C9ag5tb5.js} +1 -1
  39. package/dist/gateway/static/root/assets/{gateway-config-api-CkyQBD6r.js → gateway-config-api-CC7EvEFp.js} +1 -1
  40. package/dist/gateway/static/root/assets/{gateway-settings-BIZfAgfB.js → gateway-settings-9g8uIry9.js} +1 -1
  41. package/dist/gateway/static/root/assets/{gateway-startup-retry-CSU7UvzG.js → gateway-startup-retry-B2DmdlwO.js} +1 -1
  42. package/dist/gateway/static/root/assets/heartbeat-settings-fl1oC_-5.js +1 -0
  43. package/dist/gateway/static/root/assets/home-page-Bao9jq_z.js +3 -0
  44. package/dist/gateway/static/root/assets/{image-generation-api-BR6Kb77X.js → image-generation-api-GMTaS6eI.js} +1 -1
  45. package/dist/gateway/static/root/assets/index-Cl5n1f_U.css +1 -0
  46. package/dist/gateway/static/root/assets/index-OJgiMh07.js +223 -0
  47. package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-D76uYKeQ.js → keyboard-shortcuts-settings-DhGYddbI.js} +1 -1
  48. package/dist/gateway/static/root/assets/local-app-workbench-page-B69NvtvH.js +2 -0
  49. package/dist/gateway/static/root/assets/{local-apps-page-BsLnojTh.js → local-apps-page-CmnrBmWi.js} +1 -1
  50. package/dist/gateway/static/root/assets/{locale-store-BNC8HUCI.js → locale-store-D6hs74o5.js} +1 -1
  51. package/dist/gateway/static/root/assets/logs-page-Cq3cABqg.js +7 -0
  52. package/dist/gateway/static/root/assets/{markdown-split-D6smTQWD.js → markdown-split-CZaBPOVn.js} +1 -1
  53. package/dist/gateway/static/root/assets/{media-plugins-D1TmMF0A.js → media-plugins-CiKvSgCv.js} +1 -1
  54. package/dist/gateway/static/root/assets/messages-D02NNLCZ.js +3 -0
  55. package/dist/gateway/static/root/assets/{notes-page-Vt-diFf0.js → notes-page-Bisbzqlz.js} +1 -1
  56. package/dist/gateway/static/root/assets/notes-workbench-BOZfJFhE.js +4 -0
  57. package/dist/gateway/static/root/assets/{page-tabs-BnSzIjH0.js → page-tabs-BxlwhAbH.js} +1 -1
  58. package/dist/gateway/static/root/assets/{preview-open-alternatives-CF12Eqi4.js → preview-open-alternatives-RM8wXxfT.js} +1 -1
  59. package/dist/gateway/static/root/assets/product-delivery-C8JbSj5Y.js +1 -0
  60. package/dist/gateway/static/root/assets/{product-open-page-Du0TE_CU.js → product-open-page-DdBlibek.js} +1 -1
  61. package/dist/gateway/static/root/assets/project-detail-page-TSKFb2tN.js +1 -0
  62. package/dist/gateway/static/root/assets/projects-page-BokeBrTT.js +1 -0
  63. package/dist/gateway/static/root/assets/remote-access-hub-C56anxCX.js +1 -0
  64. package/dist/gateway/static/root/assets/{schema-form-BKvpxqof.js → schema-form-BDKbpmXv.js} +1 -1
  65. package/dist/gateway/static/root/assets/sessions-page-C7TQADrD.js +1 -0
  66. package/dist/gateway/static/root/assets/settings-advanced-gate-BDOPKeAX.js +1 -0
  67. package/dist/gateway/static/root/assets/{settings-form-section-kt6GIS32.js → settings-form-section-zxo5ZGOu.js} +1 -1
  68. package/dist/gateway/static/root/assets/{settings-loading-skeleton-85eUPcKz.js → settings-loading-skeleton-DgIp8_S6.js} +1 -1
  69. package/dist/gateway/static/root/assets/settings-page-BUPSIa9P.js +1 -0
  70. package/dist/gateway/static/root/assets/{settings-page-layout-CkkCee_x.js → settings-page-layout-97LmwrzC.js} +1 -1
  71. package/dist/gateway/static/root/assets/setup-status-panel-BRg766eW.js +1 -0
  72. package/dist/gateway/static/root/assets/{share-preview-page-BtLEstaI.js → share-preview-page-BH7i3g1S.js} +1 -1
  73. package/dist/gateway/static/root/assets/shares-settings-DhEAviQ_.js +1 -0
  74. package/dist/gateway/static/root/assets/skill-reload-api-Ct7AV8ls.js +1 -0
  75. package/dist/gateway/static/root/assets/skills-page-DoVuprZm.js +2 -0
  76. package/dist/gateway/static/root/assets/{skills-page.utils-C2SHvq8V.js → skills-page.utils-s-a5WV9j.js} +1 -1
  77. package/dist/gateway/static/root/assets/system-settings-panel-BxjeMT5k.js +1 -0
  78. package/dist/gateway/static/root/assets/task-detail-page-BahycnfW.js +1 -0
  79. package/dist/gateway/static/root/assets/{theme-store-ClDa_Bci.js → theme-store-BRxdsmic.js} +1 -1
  80. package/dist/gateway/static/root/assets/time-picker-BGk_Tbsj.js +1 -0
  81. package/dist/gateway/static/root/assets/{typed-models-lib-GsmwmB40.js → typed-models-lib-39MjwPSq.js} +1 -1
  82. package/dist/gateway/static/root/assets/use-save-bar-registration-5aVSjTjO.js +1 -0
  83. package/dist/gateway/static/root/assets/user-context-page-B9K41qmy.js +1 -0
  84. package/dist/gateway/static/root/assets/{voice-api-key-field-Blaxsbb3.js → voice-api-key-field-XU-7sBSg.js} +1 -1
  85. package/dist/gateway/static/root/assets/work-discovery-overlay-CJqu8UHq.js +1 -0
  86. package/dist/gateway/static/root/assets/work-discovery-page-BBVnRHju.js +1 -0
  87. package/dist/gateway/static/root/assets/{workflow-run-setup-panel-CTG4RpRE.js → workflow-run-setup-panel-DXtg8Qxl.js} +2 -2
  88. package/dist/gateway/static/root/assets/workflows-page-Bs_tYfst.js +11 -0
  89. package/dist/gateway/static/root/index.html +8 -8
  90. package/dist/package.js +1 -1
  91. package/dist/packages/gateway-contract/src/product-delivery.js +1 -3
  92. package/dist/packages/gateway-contract/src/project-monitoring.js +31 -0
  93. package/dist/packages/gateway-contract/src/task-lifecycle.js +67 -0
  94. package/dist/packages/gateway-contract/src/task-runs.js +80 -0
  95. package/dist/packages/gateway-contract/src/tasks.js +353 -0
  96. package/dist/packages/gateway-contract/src/tool-activity.js +223 -0
  97. package/dist/src/activity/types.d.ts +2 -2
  98. package/dist/src/agent/agent-instance-gateway.d.ts +1 -1
  99. package/dist/src/agent/agent-manager.d.ts +3 -3
  100. package/dist/src/agent/agent-manager.js +25 -30
  101. package/dist/src/agent/bootstrap/filter-bootstrap-files.js +1 -1
  102. package/dist/src/agent/child-agent-factory.d.ts +1 -2
  103. package/dist/src/agent/child-agent-factory.js +4 -10
  104. package/dist/src/agent/code-intelligence/binary.js +1 -1
  105. package/dist/src/agent/context/execution-scope.d.ts +2 -2
  106. package/dist/src/agent/context/execution-scope.js +17 -20
  107. package/dist/src/agent/context/project-context.d.ts +6 -2
  108. package/dist/src/agent/context/project-context.js +17 -25
  109. package/dist/src/agent/context/workspace-templates/AGENTS.md +1 -1
  110. package/dist/src/agent/embedded/model-runtime.js +1 -1
  111. package/dist/src/agent/embedded/run-for-session.d.ts +0 -2
  112. package/dist/src/agent/embedded/run-for-session.js +99 -112
  113. package/dist/src/agent/embedded/run-turn.js +2 -0
  114. package/dist/src/agent/embedded/session-tool-result-guard.d.ts +2 -0
  115. package/dist/src/agent/embedded/session-tool-result-guard.js +16 -4
  116. package/dist/src/agent/external-tools/composio-provider.d.ts +29 -0
  117. package/dist/src/agent/external-tools/composio-provider.js +307 -0
  118. package/dist/src/agent/external-tools/extension-provider.d.ts +20 -0
  119. package/dist/src/agent/external-tools/extension-provider.js +68 -0
  120. package/dist/src/agent/external-tools/gateway-tools.d.ts +8 -0
  121. package/dist/src/agent/external-tools/gateway-tools.js +89 -0
  122. package/dist/src/agent/external-tools/index.d.ts +24 -0
  123. package/dist/src/agent/external-tools/index.js +40 -0
  124. package/dist/src/agent/external-tools/mcp-provider.d.ts +29 -0
  125. package/dist/src/agent/external-tools/mcp-provider.js +118 -0
  126. package/dist/src/agent/external-tools/memory-provider.d.ts +21 -0
  127. package/dist/src/agent/external-tools/memory-provider.js +56 -0
  128. package/dist/src/agent/external-tools/refs.d.ts +5 -0
  129. package/dist/src/agent/external-tools/refs.js +18 -0
  130. package/dist/src/agent/external-tools/service.d.ts +26 -0
  131. package/dist/src/agent/external-tools/service.js +117 -0
  132. package/dist/src/agent/external-tools/types.d.ts +28 -0
  133. package/dist/src/agent/external-tools/types.js +9 -0
  134. package/dist/src/agent/image/tool-model-config.js +1 -1
  135. package/dist/src/agent/inbound/inbound-loop.d.ts +0 -2
  136. package/dist/src/agent/inbound/inbound-loop.js +1 -4
  137. package/dist/src/agent/inbound/turn-dispatcher.js +1 -1
  138. package/dist/src/agent/ipc/inbox.js +1 -1
  139. package/dist/src/agent/mcp/{bundle-mcp-materialize.d.ts → bundle-mcp-gateway.d.ts} +1 -19
  140. package/dist/src/agent/mcp/bundle-mcp-gateway.js +60 -0
  141. package/dist/src/agent/mcp/bundle-mcp-names.d.ts +0 -8
  142. package/dist/src/agent/mcp/bundle-mcp-names.js +2 -29
  143. package/dist/src/agent/mcp/bundle-mcp-policy.d.ts +5 -10
  144. package/dist/src/agent/mcp/bundle-mcp-policy.js +6 -17
  145. package/dist/src/agent/mcp/bundle-mcp-runtime.js +2 -2
  146. package/dist/src/agent/mcp/bundle-mcp-tools.d.ts +1 -2
  147. package/dist/src/agent/mcp/bundle-mcp-tools.js +1 -2
  148. package/dist/src/agent/mcp/bundle-mcp-types.d.ts +0 -5
  149. package/dist/src/agent/mcp/index.d.ts +0 -2
  150. package/dist/src/agent/mcp/index.js +2 -5
  151. package/dist/src/agent/mcp/mcp-stdio-transport.js +1 -1
  152. package/dist/src/agent/mcp/mcp-transport.js +1 -1
  153. package/dist/src/agent/memory/builtin-provider.d.ts +1 -5
  154. package/dist/src/agent/memory/builtin-provider.js +75 -229
  155. package/dist/src/agent/memory/compaction.js +1 -1
  156. package/dist/src/agent/memory/context/planner.d.ts +4 -0
  157. package/dist/src/agent/memory/context/planner.js +53 -17
  158. package/dist/src/agent/memory/context/types.d.ts +6 -0
  159. package/dist/src/agent/memory/create-memory-manager.d.ts +1 -2
  160. package/dist/src/agent/memory/create-memory-manager.js +4 -4
  161. package/dist/src/agent/memory/dreaming/config.d.ts +16 -13
  162. package/dist/src/agent/memory/dreaming/config.js +47 -40
  163. package/dist/src/agent/memory/dreaming/constants.d.ts +5 -22
  164. package/dist/src/agent/memory/dreaming/constants.js +6 -24
  165. package/dist/src/agent/memory/dreaming/deep-promotion.d.ts +4 -11
  166. package/dist/src/agent/memory/dreaming/deep-promotion.js +126 -279
  167. package/dist/src/agent/memory/dreaming/light-sweep.d.ts +5 -2
  168. package/dist/src/agent/memory/dreaming/light-sweep.js +79 -197
  169. package/dist/src/agent/memory/dreaming/preview.d.ts +3 -9
  170. package/dist/src/agent/memory/dreaming/preview.js +34 -77
  171. package/dist/src/agent/memory/dreaming/promotion-lifecycle.d.ts +1 -15
  172. package/dist/src/agent/memory/dreaming/promotion-lifecycle.js +3 -42
  173. package/dist/src/agent/memory/dreaming/rem-patterns.d.ts +7 -13
  174. package/dist/src/agent/memory/dreaming/rem-patterns.js +104 -261
  175. package/dist/src/agent/memory/dreaming/runner.d.ts +10 -0
  176. package/dist/src/agent/memory/dreaming/runner.js +78 -0
  177. package/dist/src/agent/memory/dreaming/schedule.d.ts +23 -0
  178. package/dist/src/agent/memory/dreaming/schedule.js +38 -0
  179. package/dist/src/agent/memory/dreaming/scope.d.ts +2 -4
  180. package/dist/src/agent/memory/dreaming/scope.js +21 -13
  181. package/dist/src/agent/memory/dreaming/utils.d.ts +2 -51
  182. package/dist/src/agent/memory/dreaming/utils.js +4 -112
  183. package/dist/src/agent/memory/index.d.ts +1 -3
  184. package/dist/src/agent/memory/index.js +2 -3
  185. package/dist/src/agent/memory/manager.d.ts +5 -6
  186. package/dist/src/agent/memory/manager.js +6 -29
  187. package/dist/src/agent/memory/memory-config.d.ts +1 -6
  188. package/dist/src/agent/memory/memory-config.js +2 -23
  189. package/dist/src/agent/memory/summary-generator.d.ts +1 -1
  190. package/dist/src/agent/memory/types.d.ts +7 -48
  191. package/dist/src/agent/memory/understanding/service.js +1 -2
  192. package/dist/src/agent/memory/user-context-coordinator.d.ts +2 -1
  193. package/dist/src/agent/memory/user-context-coordinator.js +32 -14
  194. package/dist/src/agent/messaging/command-handler.d.ts +1 -9
  195. package/dist/src/agent/messaging/command-handler.js +0 -8
  196. package/dist/src/agent/messaging/outbound-coordinator.d.ts +5 -14
  197. package/dist/src/agent/messaging/outbound-coordinator.js +4 -9
  198. package/dist/src/agent/messaging/stream-manager.d.ts +2 -14
  199. package/dist/src/agent/messaging/stream-manager.js +0 -12
  200. package/dist/src/agent/middleware/index.d.ts +1 -1
  201. package/dist/src/agent/middleware/self-verify.d.ts +2 -2
  202. package/dist/src/agent/middleware/self-verify.js +7 -7
  203. package/dist/src/agent/orchestration/agent-event-handler.d.ts +1 -3
  204. package/dist/src/agent/orchestration/agent-event-handler.js +0 -36
  205. package/dist/src/agent/orchestration/agent-orchestrator.d.ts +0 -5
  206. package/dist/src/agent/orchestration/agent-orchestrator.js +16 -71
  207. package/dist/src/agent/prompt/response-language.d.ts +3 -0
  208. package/dist/src/agent/prompt/response-language.js +11 -0
  209. package/dist/src/agent/prompt/sections/behavior.js +8 -6
  210. package/dist/src/agent/prompt/sections/memory-skills.js +10 -13
  211. package/dist/src/agent/prompt/sections/response-language.d.ts +2 -0
  212. package/dist/src/agent/prompt/sections/response-language.js +13 -0
  213. package/dist/src/agent/prompt/sections/tooling.js +0 -2
  214. package/dist/src/agent/prompt/service-prompt-builder.d.ts +1 -1
  215. package/dist/src/agent/prompt/service-prompt-builder.js +6 -29
  216. package/dist/src/agent/prompt/subagent-context.d.ts +2 -0
  217. package/dist/src/agent/prompt/subagent-context.js +1 -0
  218. package/dist/src/agent/prompt/system-prompt.d.ts +3 -0
  219. package/dist/src/agent/prompt/system-prompt.js +10 -2
  220. package/dist/src/agent/service/direct-turn-helpers.d.ts +2 -2
  221. package/dist/src/agent/service/direct-turn-helpers.js +8 -5
  222. package/dist/src/agent/service/process-direct-streaming.d.ts +2 -2
  223. package/dist/src/agent/service/process-direct-streaming.js +2 -2
  224. package/dist/src/agent/service.d.ts +6 -12
  225. package/dist/src/agent/service.js +31 -53
  226. package/dist/src/agent/service.types.d.ts +2 -18
  227. package/dist/src/agent/session/index.d.ts +1 -1
  228. package/dist/src/agent/session/session-config-service.d.ts +1 -0
  229. package/dist/src/agent/session/session-config-service.js +14 -0
  230. package/dist/src/agent/session/session-inspector.js +1 -1
  231. package/dist/src/agent/session/session-state-bag.d.ts +8 -8
  232. package/dist/src/agent/session/session-state-bag.js +10 -10
  233. package/dist/src/agent/skills/hub-lock.js +1 -1
  234. package/dist/src/agent/skills/hub-pull.js +1 -1
  235. package/dist/src/agent/source-context/types.d.ts +1 -1
  236. package/dist/src/agent/source-context/types.js +1 -1
  237. package/dist/src/agent/starter-agents.js +3 -3
  238. package/dist/src/agent/{outcomes → tasks}/execution-verifier.d.ts +3 -0
  239. package/dist/src/agent/{outcomes → tasks}/execution-verifier.js +3 -2
  240. package/dist/src/agent/tasks/task-judge-service.d.ts +31 -0
  241. package/dist/src/agent/tasks/task-judge-service.js +183 -0
  242. package/dist/src/agent/tool-manuals/index.js +1 -1
  243. package/dist/src/agent/tool-manuals/xopc-use.d.ts +1 -1
  244. package/dist/src/agent/tool-manuals/xopc-use.js +253 -118
  245. package/dist/src/agent/tools/apply-patch.d.ts +1 -5
  246. package/dist/src/agent/tools/apply-patch.js +1 -12
  247. package/dist/src/agent/tools/clarify-tool.js +1 -1
  248. package/dist/src/agent/tools/delegate-tool.js +9 -5
  249. package/dist/src/agent/tools/dreaming-tool.d.ts +0 -1
  250. package/dist/src/agent/tools/dreaming-tool.js +48 -80
  251. package/dist/src/agent/tools/exec-command.d.ts +0 -2
  252. package/dist/src/agent/tools/exec-command.js +2 -19
  253. package/dist/src/agent/tools/executor.js +1 -1
  254. package/dist/src/agent/tools/factory.d.ts +4 -5
  255. package/dist/src/agent/tools/factory.js +24 -51
  256. package/dist/src/agent/tools/index.d.ts +0 -3
  257. package/dist/src/agent/tools/index.js +1 -4
  258. package/dist/src/agent/tools/managed-job-tool.js +1 -1
  259. package/dist/src/agent/tools/memory-tool.d.ts +0 -3
  260. package/dist/src/agent/tools/memory-tool.js +14 -36
  261. package/dist/src/agent/tools/tool-manual-tool.js +1 -1
  262. package/dist/src/agent/tools/workflow-tool.d.ts +1 -1
  263. package/dist/src/agent/tools/workflow-tool.js +4 -4
  264. package/dist/src/agent/tools/write.d.ts +0 -2
  265. package/dist/src/agent/tools/write.js +0 -11
  266. package/dist/src/agent/tools/xopc-use-tool.d.ts +5 -4
  267. package/dist/src/agent/tools/xopc-use-tool.js +987 -143
  268. package/dist/src/agent/transcript/thinking-types.d.ts +3 -0
  269. package/dist/src/agent/workflow/builtins/index.js +2 -2
  270. package/dist/src/agent/workflow/index.js +2 -2
  271. package/dist/src/agent/workflow/subagent-runner.js +1 -0
  272. package/dist/src/agent/workflow/workflow-child-tools.js +7 -4
  273. package/dist/src/agent/workspace-runtime/registry.d.ts +2 -4
  274. package/dist/src/agent/workspace-runtime/registry.js +1 -2
  275. package/dist/src/agent-manifest/index.js +3 -3
  276. package/dist/src/agent-manifest/resolver.d.ts +20 -1
  277. package/dist/src/agent-manifest/resolver.js +47 -20
  278. package/dist/src/agent-manifest/schema.d.ts +128 -52
  279. package/dist/src/agent-manifest/schema.js +46 -8
  280. package/dist/src/agent-runtime/memory-runtime.d.ts +2 -2
  281. package/dist/src/ai-assist/text-assist.js +4 -4
  282. package/dist/src/auth/credentials.js +2 -2
  283. package/dist/src/auth/profiles/store.js +1 -1
  284. package/dist/src/auth/sync-provider-auth.js +2 -2
  285. package/dist/src/automations/domain/defaults.js +1 -1
  286. package/dist/src/automations/domain/types.d.ts +15 -1
  287. package/dist/src/automations/domain/validation.d.ts +336 -12
  288. package/dist/src/automations/domain/validation.js +6 -0
  289. package/dist/src/automations/draft/automation-draft-prompt.js +3 -3
  290. package/dist/src/automations/draft/automation-draft-validator.d.ts +62 -1
  291. package/dist/src/automations/draft/automation-draft-validator.js +1 -0
  292. package/dist/src/automations/index.js +1 -1
  293. package/dist/src/automations/service/action-executor.d.ts +2 -2
  294. package/dist/src/automations/service/action-executor.js +21 -1
  295. package/dist/src/automations/service/automation-service.js +21 -21
  296. package/dist/src/browser/providers/browser-ext-install.js +1 -1
  297. package/dist/src/browser/providers/cloakbrowser.js +1 -1
  298. package/dist/src/channels/channel-domain.d.ts +0 -4
  299. package/dist/src/channels/plugin-types.d.ts +0 -2
  300. package/dist/src/chat-commands/builtins/understanding.d.ts +1 -0
  301. package/dist/src/chat-commands/builtins/understanding.js +91 -0
  302. package/dist/src/chat-commands/context.d.ts +0 -3
  303. package/dist/src/chat-commands/context.js +0 -2
  304. package/dist/src/chat-commands/index.d.ts +1 -2
  305. package/dist/src/chat-commands/index.js +3 -5
  306. package/dist/src/chat-commands/types.d.ts +0 -3
  307. package/dist/src/cli/command-catalog.js +0 -43
  308. package/dist/src/cli/command-loaders.js +0 -1
  309. package/dist/src/cli/command-manifest.js +0 -4
  310. package/dist/src/cli/commands/doctor/checks/database-schema.js +1 -1
  311. package/dist/src/cli/commands/doctor/checks/provider-auth.js +1 -1
  312. package/dist/src/cli/commands/extension-marketplace.js +1 -1
  313. package/dist/src/cli/commands/gateway/lifecycle-core.js +1 -1
  314. package/dist/src/cli/commands/gateway/restart-health.d.ts +2 -2
  315. package/dist/src/cli/commands/gateway/restart-health.js +3 -3
  316. package/dist/src/cli/commands/gateway/service.js +4 -4
  317. package/dist/src/cli/commands/models.js +1 -1
  318. package/dist/src/cli/commands/onboard/gateway.js +1 -1
  319. package/dist/src/cli/commands/project.js +12 -33
  320. package/dist/src/cli/commands/providers.d.ts +4 -4
  321. package/dist/src/cli/commands/providers.js +16 -16
  322. package/dist/src/cli/commands/search.js +7 -7
  323. package/dist/src/cli/commands/setup-shared/index.d.ts +2 -2
  324. package/dist/src/cli/commands/setup-shared/index.js +2 -2
  325. package/dist/src/cli/commands/setup-shared/output.d.ts +4 -4
  326. package/dist/src/cli/commands/setup-shared/output.js +26 -26
  327. package/dist/src/cli/commands/setup-shared/runner.d.ts +8 -8
  328. package/dist/src/cli/commands/setup-shared/runner.js +9 -9
  329. package/dist/src/cli/commands/setup-shared/types.d.ts +2 -2
  330. package/dist/src/cli/commands/skills.d.ts +7 -0
  331. package/dist/src/cli/commands/skills.js +16 -16
  332. package/dist/src/cli/commands/update.js +1 -1
  333. package/dist/src/cli/commands/voice.d.ts +1 -1
  334. package/dist/src/cli/commands/voice.js +6 -6
  335. package/dist/src/cli/templates.js +1 -1
  336. package/dist/src/commands/agents.config.js +2 -18
  337. package/dist/src/config/agent-profile.d.ts +1 -1
  338. package/dist/src/config/agent-profile.js +1 -1
  339. package/dist/src/config/index.js +7 -7
  340. package/dist/src/config/loader.js +1 -1
  341. package/dist/src/config/models-json.js +1 -1
  342. package/dist/src/config/paths.d.ts +0 -3
  343. package/dist/src/config/paths.js +2 -7
  344. package/dist/src/config/schema.d.ts +160 -258
  345. package/dist/src/config/schema.js +8 -114
  346. package/dist/src/config/web-patch.d.ts +0 -29
  347. package/dist/src/config/web-patch.js +2 -69
  348. package/dist/src/connectors/composio-catalog.js +7 -20
  349. package/dist/src/connectors/composio-sessions.js +14 -4
  350. package/dist/src/connectors/composio.d.ts +7 -2
  351. package/dist/src/connectors/composio.js +49 -40
  352. package/dist/src/connectors/connected-source-ingestion.js +2 -1
  353. package/dist/src/connectors/connected-source-normalizers.js +5 -5
  354. package/dist/src/connectors/connector-identity.d.ts +2 -0
  355. package/dist/src/connectors/connector-identity.js +64 -1
  356. package/dist/src/connectors/health.js +1 -1
  357. package/dist/src/connectors/learning-coordinator.js +34 -15
  358. package/dist/src/connectors/learning-recipes.d.ts +2 -0
  359. package/dist/src/connectors/learning-recipes.js +11 -1
  360. package/dist/src/connectors/source-change-publisher.js +5 -4
  361. package/dist/src/connectors/types.d.ts +16 -0
  362. package/dist/src/daemon/launchd.js +2 -2
  363. package/dist/src/daemon/schtasks.js +1 -1
  364. package/dist/src/daemon/service.js +3 -3
  365. package/dist/src/daemon/systemd.js +1 -1
  366. package/dist/src/daemon/types.d.ts +5 -5
  367. package/dist/src/discussions/analyzer.d.ts +6 -6
  368. package/dist/src/discussions/analyzer.js +32 -22
  369. package/dist/src/discussions/index.d.ts +3 -2
  370. package/dist/src/discussions/index.js +5 -4
  371. package/dist/src/discussions/live-worker.d.ts +5 -3
  372. package/dist/src/discussions/live-worker.js +24 -12
  373. package/dist/src/discussions/{worker.d.ts → organizer-worker.d.ts} +3 -5
  374. package/dist/src/discussions/organizer-worker.js +58 -0
  375. package/dist/src/discussions/organizer.d.ts +22 -0
  376. package/dist/src/discussions/organizer.js +92 -0
  377. package/dist/src/discussions/repository.d.ts +16 -5
  378. package/dist/src/discussions/repository.js +159 -135
  379. package/dist/src/discussions/sealer.d.ts +25 -0
  380. package/dist/src/discussions/sealer.js +116 -0
  381. package/dist/src/discussions/service.d.ts +2 -1
  382. package/dist/src/discussions/service.js +70 -60
  383. package/dist/src/discussions/transcript.js +1 -1
  384. package/dist/src/discussions/types.d.ts +45 -20
  385. package/dist/src/discussions/types.js +4 -2
  386. package/dist/src/extensions/extension-registry-impl.d.ts +3 -1
  387. package/dist/src/extensions/extension-registry-impl.js +7 -1
  388. package/dist/src/extensions/loader.js +1 -1
  389. package/dist/src/extensions/lockfile.js +1 -1
  390. package/dist/src/extensions/types/core.d.ts +5 -4
  391. package/dist/src/extensions/types/tui.d.ts +2 -2
  392. package/dist/src/extensions/update.d.ts +3 -3
  393. package/dist/src/extensions/update.js +14 -14
  394. package/dist/src/gateway/agent-builtin-tools.d.ts +1 -1
  395. package/dist/src/gateway/agent-builtin-tools.js +5 -3
  396. package/dist/src/gateway/agent-run-relay.d.ts +1 -1
  397. package/dist/src/gateway/agents-admin.js +17 -19
  398. package/dist/src/gateway/capability-presets-admin.d.ts +13 -0
  399. package/dist/src/gateway/capability-presets-admin.js +59 -2
  400. package/dist/src/gateway/chat-limits.d.ts +6 -2
  401. package/dist/src/gateway/chat-limits.js +17 -3
  402. package/dist/src/gateway/chat-stream/mapper.js +16 -1
  403. package/dist/src/gateway/chat-stream/protocol.d.ts +4 -0
  404. package/dist/src/gateway/chat-stream/thinking-delta-coalescer.js +3 -3
  405. package/dist/src/gateway/dreaming-automation-reconciler.js +13 -12
  406. package/dist/src/gateway/file-path-classifier.js +1 -1
  407. package/dist/src/gateway/file-reference-errors.d.ts +6 -0
  408. package/dist/src/gateway/file-reference-errors.js +21 -0
  409. package/dist/src/gateway/hono/app.js +9 -10
  410. package/dist/src/gateway/hono/index.d.ts +1 -1
  411. package/dist/src/gateway/hono/index.js +2 -2
  412. package/dist/src/gateway/hono/lib/config-payload.d.ts +15 -35
  413. package/dist/src/gateway/hono/lib/config-payload.js +7 -5
  414. package/dist/src/gateway/hono/middleware/strict-rate-limit.d.ts +4 -0
  415. package/dist/src/gateway/hono/middleware/strict-rate-limit.js +8 -1
  416. package/dist/src/gateway/hono/routes/activity.js +1 -2
  417. package/dist/src/gateway/hono/routes/agent-stream.js +135 -34
  418. package/dist/src/gateway/hono/routes/auth-registry-extensions.js +1 -1
  419. package/dist/src/gateway/hono/routes/capability-presets.js +27 -1
  420. package/dist/src/gateway/hono/routes/composer-history.js +1 -1
  421. package/dist/src/gateway/hono/routes/config-patch/misc.d.ts +1 -1
  422. package/dist/src/gateway/hono/routes/config-patch/misc.js +2 -7
  423. package/dist/src/gateway/hono/routes/connectors.js +35 -30
  424. package/dist/src/gateway/hono/routes/deps.d.ts +1 -0
  425. package/dist/src/gateway/hono/routes/discussions.js +13 -3
  426. package/dist/src/gateway/hono/routes/home.d.ts +1 -1
  427. package/dist/src/gateway/hono/routes/home.js +2 -2
  428. package/dist/src/gateway/hono/routes/index.js +2 -4
  429. package/dist/src/gateway/hono/routes/lazy-bundles.js +0 -16
  430. package/dist/src/gateway/hono/routes/mcp.js +1 -1
  431. package/dist/src/gateway/hono/routes/media.js +9 -3
  432. package/dist/src/gateway/hono/routes/memory.js +38 -113
  433. package/dist/src/gateway/hono/routes/models.js +1 -1
  434. package/dist/src/gateway/hono/routes/projects.js +254 -601
  435. package/dist/src/gateway/hono/routes/public-gateway.js +4 -2
  436. package/dist/src/gateway/hono/routes/{work.d.ts → tasks.d.ts} +1 -1
  437. package/dist/src/gateway/hono/routes/tasks.js +343 -0
  438. package/dist/src/gateway/hono/routes/workflows.js +8 -9
  439. package/dist/src/gateway/hono/routes/workspace.js +34 -13
  440. package/dist/src/gateway/hono/routes/you.d.ts +1 -1
  441. package/dist/src/gateway/hono/routes/you.js +252 -80
  442. package/dist/src/gateway/hono/sse.d.ts +1 -16
  443. package/dist/src/gateway/hono/sse.js +4 -161
  444. package/dist/src/gateway/index.js +2 -2
  445. package/dist/src/gateway/rate-limit/buckets.d.ts +3 -0
  446. package/dist/src/gateway/rate-limit/buckets.js +12 -0
  447. package/dist/src/gateway/security/csp.d.ts +2 -0
  448. package/dist/src/gateway/security/csp.js +4 -0
  449. package/dist/src/gateway/service/agent-runner.d.ts +32 -13
  450. package/dist/src/gateway/service/agent-runner.js +97 -46
  451. package/dist/src/gateway/service/config-coordinator.js +2 -2
  452. package/dist/src/gateway/service/run-gateway-agent.d.ts +1 -1
  453. package/dist/src/gateway/service/run-gateway-agent.js +31 -43
  454. package/dist/src/gateway/service/session-input-coordinator.d.ts +59 -0
  455. package/dist/src/gateway/service/session-input-coordinator.js +183 -0
  456. package/dist/src/gateway/service/sessions-api.d.ts +1 -0
  457. package/dist/src/gateway/service.d.ts +28 -16
  458. package/dist/src/gateway/service.js +154 -137
  459. package/dist/src/gateway/session-reset-service.js +6 -6
  460. package/dist/src/gateway/user-turn-input.d.ts +0 -1
  461. package/dist/src/i18n/index.d.ts +0 -1
  462. package/dist/src/i18n/index.js +1 -2
  463. package/dist/src/i18n/language-consistency.d.ts +10 -0
  464. package/dist/src/i18n/language-consistency.js +34 -0
  465. package/dist/src/i18n/response-language.d.ts +8 -0
  466. package/dist/src/i18n/response-language.js +17 -0
  467. package/dist/src/i18n/share-tool-bundle.js +2 -2
  468. package/dist/src/infra/update-runner.js +1 -1
  469. package/dist/src/mcp/channel-bridge.js +5 -3
  470. package/dist/src/media/store.js +1 -1
  471. package/dist/src/media/types.d.ts +1 -1
  472. package/dist/src/media/uri.js +1 -2
  473. package/dist/src/media-understanding/runner.d.ts +1 -1
  474. package/dist/src/media-understanding/runner.js +9 -9
  475. package/dist/src/media-understanding/types.d.ts +4 -4
  476. package/dist/src/mobile/notification-service.js +16 -21
  477. package/dist/src/mobile/notification-types.d.ts +2 -2
  478. package/dist/src/notes/types.d.ts +0 -1
  479. package/dist/src/proactive/events/product-event-bridge.js +17 -14
  480. package/dist/src/proactive/execution/context.js +45 -28
  481. package/dist/src/proactive/execution/insight.js +1 -1
  482. package/dist/src/proactive/temporal/worker.js +2 -2
  483. package/dist/src/projects/index.d.ts +0 -1
  484. package/dist/src/projects/index.js +1 -2
  485. package/dist/src/projects/project-loop.d.ts +16 -8
  486. package/dist/src/projects/project-loop.js +41 -48
  487. package/dist/src/projects/project-service.d.ts +14 -4
  488. package/dist/src/projects/project-service.js +18 -10
  489. package/dist/src/projects/project-store.d.ts +36 -3
  490. package/dist/src/projects/project-store.js +116 -14
  491. package/dist/src/projects/types.d.ts +50 -3
  492. package/dist/src/providers/auth-runtime/resolve-auth.js +1 -1
  493. package/dist/src/providers/index.js +2 -2
  494. package/dist/src/providers/model-registry.js +1 -1
  495. package/dist/src/providers/model-response.d.ts +4 -0
  496. package/dist/src/providers/model-response.js +28 -0
  497. package/dist/src/providers/register-runtime-providers.js +1 -1
  498. package/dist/src/session/config-types.d.ts +3 -0
  499. package/dist/src/session/index.d.ts +0 -1
  500. package/dist/src/session/index.js +1 -2
  501. package/dist/src/session/init-session-turn.js +6 -6
  502. package/dist/src/session/store.js +4 -4
  503. package/dist/src/session/types.d.ts +1 -6
  504. package/dist/src/share/share-zip.js +1 -1
  505. package/dist/src/share/site-proxy.js +1 -1
  506. package/dist/src/storage/sqlite/config-repository.js +7 -4
  507. package/dist/src/storage/sqlite/connection.js +1 -1
  508. package/dist/src/storage/sqlite/connector-account-repository.d.ts +12 -0
  509. package/dist/src/storage/sqlite/connector-account-repository.js +143 -0
  510. package/dist/src/storage/sqlite/connector-learning-repository.d.ts +5 -2
  511. package/dist/src/storage/sqlite/connector-learning-repository.js +14 -7
  512. package/dist/src/storage/sqlite/connector-repository.js +12 -3
  513. package/dist/src/storage/sqlite/connector-sync-policy-repository.d.ts +4 -3
  514. package/dist/src/storage/sqlite/connector-sync-policy-repository.js +20 -10
  515. package/dist/src/storage/sqlite/dreaming-repository.d.ts +61 -0
  516. package/dist/src/storage/sqlite/dreaming-repository.js +88 -0
  517. package/dist/src/storage/sqlite/index.d.ts +6 -4
  518. package/dist/src/storage/sqlite/index.js +7 -5
  519. package/dist/src/storage/sqlite/memory-readiness-repository.d.ts +7 -0
  520. package/dist/src/storage/sqlite/memory-readiness-repository.js +30 -0
  521. package/dist/src/storage/sqlite/memory-records-repository.d.ts +31 -26
  522. package/dist/src/storage/sqlite/memory-records-repository.js +112 -139
  523. package/dist/src/storage/sqlite/migrations/090_outcome_contract_judgment.sql +2 -0
  524. package/dist/src/storage/sqlite/migrations/091_context_allocation.sql +1 -0
  525. package/dist/src/storage/sqlite/migrations/092_outcome_execution_runtime.sql +88 -0
  526. package/dist/src/storage/sqlite/migrations/093_remove_legacy_goals.sql +174 -0
  527. package/dist/src/storage/sqlite/migrations/094_outcome_judgment_and_authority.sql +3 -0
  528. package/dist/src/storage/sqlite/migrations/095_session_input_queue.sql +35 -0
  529. package/dist/src/storage/sqlite/migrations/096_drop_work_intakes.sql +6 -0
  530. package/dist/src/storage/sqlite/migrations/097_work_item_lifecycle.sql +194 -0
  531. package/dist/src/storage/sqlite/migrations/098_discussion_note_documents.sql +99 -0
  532. package/dist/src/storage/sqlite/migrations/099_task_model.sql +500 -0
  533. package/dist/src/storage/sqlite/migrations/100_project_task_taskrun.sql +763 -0
  534. package/dist/src/storage/sqlite/migrations/101_session_response_language.sql +1 -0
  535. package/dist/src/storage/sqlite/migrations/102_session_user_context_mode.sql +2 -0
  536. package/dist/src/storage/sqlite/migrations/103_finalize_structured_memory.sql +3 -0
  537. package/dist/src/storage/sqlite/migrations/104_turn_memory_feedback.sql +77 -0
  538. package/dist/src/storage/sqlite/migrations/105_dreaming_ledger.sql +34 -0
  539. package/dist/src/storage/sqlite/migrations/106_dreaming_run_reproducibility.sql +2 -0
  540. package/dist/src/storage/sqlite/migrations/107_connector_accounts.sql +146 -0
  541. package/dist/src/storage/sqlite/migrations/108_repair_user_memory_provider.sql +18 -0
  542. package/dist/src/storage/sqlite/migrations/runner.d.ts +1 -1
  543. package/dist/src/storage/sqlite/migrations/runner.js +37 -5
  544. package/dist/src/storage/sqlite/migrations/runner.ts +44 -3
  545. package/dist/src/storage/sqlite/migrations/types.d.ts +2 -0
  546. package/dist/src/storage/sqlite/migrations/types.ts +2 -0
  547. package/dist/src/storage/sqlite/row-mappers.d.ts +2 -2
  548. package/dist/src/storage/sqlite/row-mappers.js +2 -2
  549. package/dist/src/storage/sqlite/schema.d.ts +3 -1
  550. package/dist/src/storage/sqlite/schema.js +5 -2
  551. package/dist/src/storage/sqlite/schema.sql +76 -61
  552. package/dist/src/storage/sqlite/session-input-repository.d.ts +59 -0
  553. package/dist/src/storage/sqlite/session-input-repository.js +147 -0
  554. package/dist/src/storage/sqlite/session-repository.js +5 -6
  555. package/dist/src/{work → tasks}/attention-governor.d.ts +5 -5
  556. package/dist/src/{work → tasks}/attention-governor.js +3 -4
  557. package/dist/src/tasks/execution-context.d.ts +23 -0
  558. package/dist/src/{work → tasks}/execution-context.js +7 -20
  559. package/dist/src/{work → tasks}/home-query-service.d.ts +16 -28
  560. package/dist/src/{work → tasks}/home-query-service.js +56 -126
  561. package/dist/src/tasks/index.d.ts +20 -0
  562. package/dist/src/tasks/index.js +21 -0
  563. package/dist/src/{work → tasks}/project-monitoring-service.js +1 -1
  564. package/dist/src/{work → tasks}/project-operating-view-service.d.ts +2 -4
  565. package/dist/src/tasks/project-operating-view-service.js +77 -0
  566. package/dist/src/tasks/task-application-service.d.ts +35 -0
  567. package/dist/src/tasks/task-application-service.js +423 -0
  568. package/dist/src/tasks/task-context-assembler.d.ts +36 -0
  569. package/dist/src/tasks/task-context-assembler.js +125 -0
  570. package/dist/src/tasks/task-context-repository.d.ts +52 -0
  571. package/dist/src/tasks/task-context-repository.js +97 -0
  572. package/dist/src/tasks/task-contract-definition.d.ts +10 -0
  573. package/dist/src/{work/outcome-contract-definition.js → tasks/task-contract-definition.js} +7 -5
  574. package/dist/src/tasks/task-contract-planner.d.ts +17 -0
  575. package/dist/src/tasks/task-contract-planner.js +87 -0
  576. package/dist/src/tasks/task-dependency-service.d.ts +21 -0
  577. package/dist/src/tasks/task-dependency-service.js +81 -0
  578. package/dist/src/tasks/task-outbox-dispatcher.d.ts +6 -0
  579. package/dist/src/tasks/task-outbox-dispatcher.js +31 -0
  580. package/dist/src/tasks/task-read-model-projector.d.ts +16 -0
  581. package/dist/src/tasks/task-read-model-projector.js +93 -0
  582. package/dist/src/tasks/task-repository.d.ts +82 -0
  583. package/dist/src/tasks/task-repository.js +185 -0
  584. package/dist/src/{work/outcome-run-coordinator.d.ts → tasks/task-run-coordinator.d.ts} +6 -8
  585. package/dist/src/tasks/task-run-coordinator.js +130 -0
  586. package/dist/src/tasks/task-run-dispatcher.d.ts +11 -0
  587. package/dist/src/tasks/task-run-dispatcher.js +90 -0
  588. package/dist/src/tasks/task-run-repository.d.ts +102 -0
  589. package/dist/src/tasks/task-run-repository.js +312 -0
  590. package/dist/src/tasks/task-signal-service.d.ts +8 -0
  591. package/dist/src/tasks/task-signal-service.js +72 -0
  592. package/dist/src/tasks/task-value-metrics-service.d.ts +4 -0
  593. package/dist/src/tasks/task-value-metrics-service.js +78 -0
  594. package/dist/src/tasks/task-workflow-coordinator.d.ts +5 -0
  595. package/dist/src/tasks/task-workflow-coordinator.js +54 -0
  596. package/dist/src/tui/backends/embedded-backend.d.ts +11 -1
  597. package/dist/src/tui/backends/embedded-backend.js +29 -3
  598. package/dist/src/tui/backends/gateway-sse-backend.d.ts +6 -3
  599. package/dist/src/tui/backends/gateway-sse-backend.js +38 -127
  600. package/dist/src/tui/components/settings-selector.js +0 -20
  601. package/dist/src/tui/components/tui-bottom-bar.d.ts +2 -3
  602. package/dist/src/tui/components/tui-bottom-bar.js +4 -9
  603. package/dist/src/tui/extension-host/runtime-context.js +1 -1
  604. package/dist/src/tui/tool-summary.d.ts +1 -2
  605. package/dist/src/tui/tool-summary.js +2 -18
  606. package/dist/src/tui/tui-backend.d.ts +13 -1
  607. package/dist/src/tui/tui-backend.js +10 -1
  608. package/dist/src/tui/tui-command-formatters.js +1 -2
  609. package/dist/src/tui/tui-commands.js +8 -19
  610. package/dist/src/tui/tui-session-actions.js +0 -2
  611. package/dist/src/tui/tui-settings.d.ts +0 -6
  612. package/dist/src/tui/tui-settings.js +0 -10
  613. package/dist/src/tui/tui-startup-resources.js +1 -1
  614. package/dist/src/tui/tui-types.d.ts +1 -4
  615. package/dist/src/tui/tui-types.js +1 -2
  616. package/dist/src/tui/tui.js +90 -73
  617. package/dist/src/tui/xopc-tui-keybindings.d.ts +25 -6
  618. package/dist/src/tui/xopc-tui-keybindings.js +0 -5
  619. package/dist/src/tunnel/frpc-binary.js +1 -1
  620. package/dist/src/tunnel/frpc-extract.js +1 -1
  621. package/dist/src/user-context/config.d.ts +165 -16
  622. package/dist/src/user-context/config.js +74 -14
  623. package/dist/src/user-context/context-compiler.d.ts +4 -8
  624. package/dist/src/user-context/context-compiler.js +7 -10
  625. package/dist/src/user-context/interaction-state.js +8 -4
  626. package/dist/src/user-context/manual-understanding.d.ts +19 -0
  627. package/dist/src/user-context/manual-understanding.js +69 -0
  628. package/dist/src/user-context/memory-episode-evaluator.d.ts +32 -0
  629. package/dist/src/user-context/memory-episode-evaluator.js +35 -0
  630. package/dist/src/user-context/memory-readiness.d.ts +33 -0
  631. package/dist/src/user-context/memory-readiness.js +41 -0
  632. package/dist/src/user-context/memory-use-audit.js +3 -2
  633. package/dist/src/user-context/projection.d.ts +14 -0
  634. package/dist/src/user-context/projection.js +15 -3
  635. package/dist/src/user-context/relationship-continuity.js +1 -1
  636. package/dist/src/user-context/runtime.d.ts +0 -2
  637. package/dist/src/user-context/runtime.js +1 -10
  638. package/dist/src/user-context/source-recommendations.d.ts +5 -5
  639. package/dist/src/user-context/source-recommendations.js +9 -8
  640. package/dist/src/voice/local/model-files.js +1 -1
  641. package/dist/src/voice/stt/transcribe-core.js +3 -3
  642. package/dist/src/voice/stt/types.d.ts +2 -2
  643. package/dist/src/voice/tts/speak-core.js +4 -4
  644. package/dist/src/voice/tts/types.d.ts +2 -2
  645. package/dist/src/work-discovery/analyzer.js +5 -5
  646. package/dist/src/work-discovery/service.d.ts +1 -10
  647. package/dist/src/work-discovery/service.js +4 -6
  648. package/dist/src/work-discovery/types.d.ts +1 -1
  649. package/dist/src/workflows/domain/run.d.ts +3 -4
  650. package/dist/src/workflows/draft/workflow-draft-prompt.js +1 -1
  651. package/dist/src/workflows/index.js +1 -1
  652. package/dist/src/workflows/service/workflow-run-service.d.ts +2 -2
  653. package/dist/src/workflows/service/workflow-run-service.js +105 -35
  654. package/dist/src/workflows/service/workflow-run-service.types.d.ts +1 -2
  655. package/dist/src/workflows/service/workflow-session-bridge.js +4 -12
  656. package/dist/src/workflows/store/run-index-store.d.ts +1 -1
  657. package/dist/src/workflows/store/run-index-store.js +10 -8
  658. package/dist/src/workflows/store/run-store.d.ts +1 -1
  659. package/dist/src/workflows/store/run-store.js +2 -2
  660. package/package.json +5 -5
  661. package/dist/gateway/static/root/assets/agents-DgGj9bu6.js +0 -2
  662. package/dist/gateway/static/root/assets/apps-page-B5xahuT-.js +0 -1
  663. package/dist/gateway/static/root/assets/automations-page-BUYrvMmD.js +0 -6
  664. package/dist/gateway/static/root/assets/browser-settings-page-Cjw07q9h.js +0 -8
  665. package/dist/gateway/static/root/assets/browser-workflow-inputs-_gu08MA4.js +0 -1
  666. package/dist/gateway/static/root/assets/capabilities-settings-panel-D_dfVxHY.js +0 -7
  667. package/dist/gateway/static/root/assets/capability-presets-api-DhCn9rPv.js +0 -1
  668. package/dist/gateway/static/root/assets/capability-presets-settings-panel-LWWIYUT7.js +0 -1
  669. package/dist/gateway/static/root/assets/channels-settings-Cyj5OunL.js +0 -1
  670. package/dist/gateway/static/root/assets/channels-status-swr-TEFnV0IG.js +0 -1
  671. package/dist/gateway/static/root/assets/connectors-page-0TobCpBB.js +0 -2
  672. package/dist/gateway/static/root/assets/desktop-pet-CwVSLL6N.js +0 -1
  673. package/dist/gateway/static/root/assets/dreaming-scene-BHMRVEUS.js +0 -4585
  674. package/dist/gateway/static/root/assets/dreaming-settings-Da9FeWQl.js +0 -3
  675. package/dist/gateway/static/root/assets/format-cron-label-arqgGlVV.js +0 -1
  676. package/dist/gateway/static/root/assets/goals-settings-Dx9uTyWF.js +0 -1
  677. package/dist/gateway/static/root/assets/heartbeat-settings-Cnr5ORXL.js +0 -1
  678. package/dist/gateway/static/root/assets/index-B0Tdge_q.css +0 -1
  679. package/dist/gateway/static/root/assets/index-BA56bQ68.js +0 -224
  680. package/dist/gateway/static/root/assets/local-app-workbench-page-DSUNtLHg.js +0 -2
  681. package/dist/gateway/static/root/assets/logs-page-yI8kpQtO.js +0 -7
  682. package/dist/gateway/static/root/assets/messages-H_iJjnEM.js +0 -3
  683. package/dist/gateway/static/root/assets/notes-workbench-BD297EZt.js +0 -4
  684. package/dist/gateway/static/root/assets/outcome-detail-page-C5i_ZR9a.js +0 -1
  685. package/dist/gateway/static/root/assets/product-delivery-BVG-eWQO.js +0 -1
  686. package/dist/gateway/static/root/assets/project-detail-page-D1HGz7Dy.js +0 -1
  687. package/dist/gateway/static/root/assets/projects-page-CqP2TnW-.js +0 -1
  688. package/dist/gateway/static/root/assets/remote-access-hub-BXdVJLS3.js +0 -1
  689. package/dist/gateway/static/root/assets/save-bar-controls-B53UNtDM.js +0 -1
  690. package/dist/gateway/static/root/assets/schedule-field-C3dIMN5q.js +0 -1
  691. package/dist/gateway/static/root/assets/sessions-page-CPAwDdl5.js +0 -1
  692. package/dist/gateway/static/root/assets/settings-advanced-gate-C-jGsoft.js +0 -1
  693. package/dist/gateway/static/root/assets/settings-page-Di5x6Xrc.js +0 -1
  694. package/dist/gateway/static/root/assets/setup-status-panel-uxEE6gAB.js +0 -1
  695. package/dist/gateway/static/root/assets/shares-settings-2mcsMWgn.js +0 -1
  696. package/dist/gateway/static/root/assets/skill-reload-api-ocDwsrEt.js +0 -1
  697. package/dist/gateway/static/root/assets/skills-page-9_jfsFU5.js +0 -2
  698. package/dist/gateway/static/root/assets/system-settings-panel-CIJ66cUy.js +0 -1
  699. package/dist/gateway/static/root/assets/time-picker-D0zAsHOo.js +0 -1
  700. package/dist/gateway/static/root/assets/use-channel-catalog-BQz3K7xj.js +0 -1
  701. package/dist/gateway/static/root/assets/user-context-page-Bn4BLg4W.js +0 -1
  702. package/dist/gateway/static/root/assets/work-copy-Cwyan9Sn.js +0 -1
  703. package/dist/gateway/static/root/assets/work-discovery-page-iJ9RBSpu.js +0 -1
  704. package/dist/gateway/static/root/assets/work-item-detail-page-CqTH7PQX.js +0 -1
  705. package/dist/gateway/static/root/assets/work-page-H3m99ccS.js +0 -3
  706. package/dist/gateway/static/root/assets/workflows-page-BxZSKMfv.js +0 -11
  707. package/dist/packages/gateway-contract/src/outcomes.js +0 -137
  708. package/dist/packages/gateway-contract/src/work-intake.js +0 -85
  709. package/dist/src/agent/feedback/feedback-coordinator.d.ts +0 -73
  710. package/dist/src/agent/feedback/feedback-coordinator.js +0 -156
  711. package/dist/src/agent/feedback/index.d.ts +0 -4
  712. package/dist/src/agent/feedback/index.js +0 -2
  713. package/dist/src/agent/goals/checklist-judge.d.ts +0 -48
  714. package/dist/src/agent/goals/checklist-judge.js +0 -237
  715. package/dist/src/agent/goals/checklist-types.d.ts +0 -21
  716. package/dist/src/agent/goals/checklist-types.js +0 -24
  717. package/dist/src/agent/goals/evaluate-turn.d.ts +0 -29
  718. package/dist/src/agent/goals/evaluate-turn.js +0 -209
  719. package/dist/src/agent/goals/goal-locale.d.ts +0 -26
  720. package/dist/src/agent/goals/goal-locale.js +0 -61
  721. package/dist/src/agent/goals/judge.d.ts +0 -41
  722. package/dist/src/agent/goals/judge.js +0 -176
  723. package/dist/src/agent/goals/persistent-goal-apis.d.ts +0 -15
  724. package/dist/src/agent/goals/persistent-goal-apis.js +0 -1
  725. package/dist/src/agent/goals/persistent-goal-service.d.ts +0 -93
  726. package/dist/src/agent/goals/persistent-goal-service.js +0 -128
  727. package/dist/src/agent/goals/post-turn.d.ts +0 -28
  728. package/dist/src/agent/goals/post-turn.js +0 -187
  729. package/dist/src/agent/goals/state.d.ts +0 -46
  730. package/dist/src/agent/goals/state.js +0 -80
  731. package/dist/src/agent/lifecycle/progress.d.ts +0 -90
  732. package/dist/src/agent/lifecycle/progress.js +0 -340
  733. package/dist/src/agent/mcp/bundle-mcp-materialize.js +0 -183
  734. package/dist/src/agent/mcp/mcp-tool-meta.d.ts +0 -8
  735. package/dist/src/agent/mcp/mcp-tool-meta.js +0 -13
  736. package/dist/src/agent/mcp/resolve-embedded-mcp-tools.d.ts +0 -14
  737. package/dist/src/agent/mcp/resolve-embedded-mcp-tools.js +0 -49
  738. package/dist/src/agent/memory/builtin-memory-store.d.ts +0 -54
  739. package/dist/src/agent/memory/builtin-memory-store.js +0 -315
  740. package/dist/src/agent/memory/dreaming/events.d.ts +0 -36
  741. package/dist/src/agent/memory/dreaming/events.js +0 -42
  742. package/dist/src/agent/memory/dreaming/last-run.d.ts +0 -80
  743. package/dist/src/agent/memory/dreaming/last-run.js +0 -96
  744. package/dist/src/agent/memory/dreaming/short-term-store.d.ts +0 -75
  745. package/dist/src/agent/memory/dreaming/short-term-store.js +0 -273
  746. package/dist/src/agent/outcomes/execution-evaluation.d.ts +0 -20
  747. package/dist/src/agent/outcomes/execution-evaluation.js +0 -48
  748. package/dist/src/agent/prompt/memory/index.d.ts +0 -23
  749. package/dist/src/agent/prompt/memory/index.js +0 -101
  750. package/dist/src/agent/tools/composio-tool.d.ts +0 -21
  751. package/dist/src/agent/tools/composio-tool.js +0 -261
  752. package/dist/src/agent/tools/curated-memory-tool.d.ts +0 -3
  753. package/dist/src/agent/tools/curated-memory-tool.js +0 -174
  754. package/dist/src/agent/tools/goal-evidence-recorder.d.ts +0 -6
  755. package/dist/src/agent/tools/goal-evidence-recorder.js +0 -32
  756. package/dist/src/agent/tools/goal-tool.d.ts +0 -29
  757. package/dist/src/agent/tools/goal-tool.js +0 -136
  758. package/dist/src/chat-commands/builtins/goal.d.ts +0 -4
  759. package/dist/src/chat-commands/builtins/goal.js +0 -122
  760. package/dist/src/chat-commands/builtins/subgoal.d.ts +0 -4
  761. package/dist/src/chat-commands/builtins/subgoal.js +0 -117
  762. package/dist/src/cli/commands/goal.d.ts +0 -4
  763. package/dist/src/cli/commands/goal.js +0 -235
  764. package/dist/src/discussions/pipeline.d.ts +0 -33
  765. package/dist/src/discussions/pipeline.js +0 -205
  766. package/dist/src/discussions/worker.js +0 -74
  767. package/dist/src/gateway/hono/routes/dreaming.d.ts +0 -3
  768. package/dist/src/gateway/hono/routes/dreaming.js +0 -323
  769. package/dist/src/gateway/hono/routes/execution-receipts.d.ts +0 -3
  770. package/dist/src/gateway/hono/routes/execution-receipts.js +0 -163
  771. package/dist/src/gateway/hono/routes/goals.d.ts +0 -4
  772. package/dist/src/gateway/hono/routes/goals.js +0 -786
  773. package/dist/src/gateway/hono/routes/work.js +0 -207
  774. package/dist/src/goals/goal-notifications.d.ts +0 -31
  775. package/dist/src/goals/goal-notifications.js +0 -157
  776. package/dist/src/goals/goal-queue-store.d.ts +0 -18
  777. package/dist/src/goals/goal-queue-store.js +0 -133
  778. package/dist/src/goals/goal-queue-types.d.ts +0 -42
  779. package/dist/src/goals/goal-queue-types.js +0 -1
  780. package/dist/src/goals/goal-runner.d.ts +0 -17
  781. package/dist/src/goals/goal-runner.js +0 -153
  782. package/dist/src/goals/goal-service.d.ts +0 -87
  783. package/dist/src/goals/goal-service.js +0 -323
  784. package/dist/src/goals/goal-store.d.ts +0 -44
  785. package/dist/src/goals/goal-store.js +0 -472
  786. package/dist/src/goals/goal-workflow-judge.d.ts +0 -13
  787. package/dist/src/goals/goal-workflow-judge.js +0 -145
  788. package/dist/src/goals/index.d.ts +0 -10
  789. package/dist/src/goals/index.js +0 -7
  790. package/dist/src/goals/types.d.ts +0 -136
  791. package/dist/src/goals/types.js +0 -1
  792. package/dist/src/i18n/goals-bundle.d.ts +0 -35
  793. package/dist/src/i18n/goals-bundle.js +0 -61
  794. package/dist/src/i18n/locales/goals.en.js +0 -36
  795. package/dist/src/i18n/locales/goals.zh.js +0 -35
  796. package/dist/src/projects/goal-bind.d.ts +0 -4
  797. package/dist/src/projects/goal-bind.js +0 -38
  798. package/dist/src/session/abort-cutoff.d.ts +0 -6
  799. package/dist/src/session/abort-cutoff.js +0 -8
  800. package/dist/src/storage/sqlite/execution-receipt-repository.d.ts +0 -146
  801. package/dist/src/storage/sqlite/execution-receipt-repository.js +0 -235
  802. package/dist/src/storage/sqlite/memory-index-repository.d.ts +0 -18
  803. package/dist/src/storage/sqlite/memory-index-repository.js +0 -136
  804. package/dist/src/tui/tui-follow-up-queue.d.ts +0 -9
  805. package/dist/src/tui/tui-follow-up-queue.js +0 -16
  806. package/dist/src/work/execution-context.d.ts +0 -16
  807. package/dist/src/work/index.d.ts +0 -14
  808. package/dist/src/work/index.js +0 -15
  809. package/dist/src/work/outcome-contract-definition.d.ts +0 -8
  810. package/dist/src/work/outcome-execution-service.d.ts +0 -27
  811. package/dist/src/work/outcome-execution-service.js +0 -60
  812. package/dist/src/work/outcome-projection-service.d.ts +0 -7
  813. package/dist/src/work/outcome-projection-service.js +0 -51
  814. package/dist/src/work/outcome-receipt-service.d.ts +0 -13
  815. package/dist/src/work/outcome-receipt-service.js +0 -55
  816. package/dist/src/work/outcome-repository.d.ts +0 -50
  817. package/dist/src/work/outcome-repository.js +0 -112
  818. package/dist/src/work/outcome-run-coordinator.js +0 -117
  819. package/dist/src/work/project-operating-view-service.js +0 -46
  820. package/dist/src/work/work-intake-repository.d.ts +0 -49
  821. package/dist/src/work/work-intake-repository.js +0 -97
  822. package/dist/src/work/work-intake-service.d.ts +0 -26
  823. package/dist/src/work/work-intake-service.js +0 -171
  824. package/dist/src/work/work-value-metrics-service.d.ts +0 -4
  825. package/dist/src/work/work-value-metrics-service.js +0 -88
  826. package/dist/src/work-items/agent-context.d.ts +0 -7
  827. package/dist/src/work-items/agent-context.js +0 -73
  828. package/dist/src/work-items/index.d.ts +0 -5
  829. package/dist/src/work-items/index.js +0 -5
  830. package/dist/src/work-items/types.d.ts +0 -112
  831. package/dist/src/work-items/types.js +0 -1
  832. package/dist/src/work-items/work-item-service.d.ts +0 -36
  833. package/dist/src/work-items/work-item-service.js +0 -281
  834. package/dist/src/work-items/work-item-store.d.ts +0 -22
  835. package/dist/src/work-items/work-item-store.js +0 -313
  836. package/dist/src/work-items/work-item-workflow-judge.d.ts +0 -8
  837. package/dist/src/work-items/work-item-workflow-judge.js +0 -48
  838. /package/dist/src/{work → tasks}/project-monitoring-service.d.ts +0 -0
@@ -1,52 +1,3 @@
1
1
  import type { DreamingDeepConfig } from './config.js';
2
- type DreamingStoreEntryScoringView = {
3
- recallCount: number;
4
- totalScore: number;
5
- lastRecalledAt?: string;
6
- queryHashes?: readonly string[];
7
- sourceCount: number;
8
- groundedCount: number;
9
- lightHits: number;
10
- remHits: number;
11
- };
12
- /** Normalize a workspace-relative memory path: forward slashes, no odd ../ escapes at start. */
13
- export declare function normalizeMemoryPath(rel: string): string;
14
- /**
15
- * Stable id for a short-term store entry (path + line range).
16
- * Format: `{normalizedPath}#{start}-{end}` (1-based, inclusive end).
17
- */
18
- export declare function buildEntryKey(parts: {
19
- path: string;
20
- startLine: number;
21
- endLine: number;
22
- }): string;
23
- /** YYYY-MM-DD in local time. */
24
- export declare function isoDay(d: Date): string;
25
- export declare function clamp01(value: number): number;
26
- /** Fills in deep-phase defaults; mirrors `resolveDreamingConfig` deep object when only partial overrides are given. */
27
- export declare function resolveDeepDefaults(overrides?: Partial<DreamingDeepConfig>): DreamingDeepConfig;
28
- export declare function computeCandidateScore(entry: DreamingStoreEntryScoringView, nowMs: number, recencyHalfLifeDays: number): {
29
- avgScore: number;
30
- score: number;
31
- recencyDecay: number;
32
- };
33
- export declare function compareCandidatesByScore(a: {
34
- score: number;
35
- key: string;
36
- }, b: {
37
- score: number;
38
- key: string;
39
- }): number;
40
- export declare function readFileLines(fullPath: string): Promise<string[] | null>;
41
- /** 1-based inclusive line range. Joins with newlines. */
42
- export declare function sliceRange(lines: string[], startLine: number, endLine: number): string;
43
- export declare function isExpiredEntry(lastRecalledAt: string | undefined, nowMs: number, maxAgeDays: number): boolean;
44
- /** Reject empty, tiny, or absurdly long snippets; blocks obvious “tool error” text. */
45
- export declare function isContaminatedSnippet(snippet: string): boolean;
46
- export declare function normalizeSnippetForHash(text: string): string;
47
- export declare function snippetHash(text: string): string;
48
- export declare function extractPromotionMarkers(markdown: string): {
49
- keys: Set<string>;
50
- hashes: Set<string>;
51
- };
52
- export {};
2
+ export type DeepExecutionConfig = Omit<DreamingDeepConfig, 'schedule'>;
3
+ export declare function resolveDeepDefaults(overrides?: Partial<DeepExecutionConfig>): DeepExecutionConfig;
@@ -1,39 +1,13 @@
1
- import { DEFAULT_DEEP_CRON, DIVERSITY_WEIGHT, MS_PER_DAY, REINFORCEMENT_WEIGHT } from "./constants.js";
2
- import path from "node:path";
3
- import { createHash } from "node:crypto";
4
- import fs from "node:fs/promises";
1
+ import "./constants.js";
5
2
  //#region src/agent/memory/dreaming/utils.ts
6
- /** Normalize a workspace-relative memory path: forward slashes, no odd ../ escapes at start. */
7
- function normalizeMemoryPath(rel) {
8
- if (typeof rel !== "string" || !rel.trim()) return "";
9
- const s = rel.trim().replace(/\\/g, "/");
10
- return path.posix.normalize(s).replace(/^(\.\/)+/, "").replace(/\/+/g, "/");
11
- }
12
- /**
13
- * Stable id for a short-term store entry (path + line range).
14
- * Format: `{normalizedPath}#{start}-{end}` (1-based, inclusive end).
15
- */
16
- function buildEntryKey(parts) {
17
- const p = normalizeMemoryPath(parts.path);
18
- const a = Math.max(1, Math.floor(parts.startLine));
19
- return `${p}#${a}-${Math.max(a, Math.floor(parts.endLine))}`;
20
- }
21
- /** YYYY-MM-DD in local time. */
22
- function isoDay(d) {
23
- return `${d.getFullYear()}-${String(d.getMonth() + 1).padStart(2, "0")}-${String(d.getDate()).padStart(2, "0")}`;
24
- }
25
- function clamp01(value) {
26
- if (!Number.isFinite(value)) return 0;
27
- return Math.max(0, Math.min(1, value));
28
- }
29
3
  function toPositiveInt(value, fallback) {
30
- const num = typeof value === "string" ? Number(value) : Number(value);
4
+ const num = Number(value);
31
5
  if (!Number.isFinite(num)) return fallback;
32
6
  const floored = Math.floor(num);
33
7
  return floored > 0 ? floored : fallback;
34
8
  }
35
9
  function toNonNegInt(value, fallback) {
36
- const num = typeof value === "string" ? Number(value) : Number(value);
10
+ const num = Number(value);
37
11
  if (!Number.isFinite(num)) return fallback;
38
12
  const floored = Math.floor(num);
39
13
  return floored >= 0 ? floored : fallback;
@@ -42,14 +16,9 @@ function clampScore(value, fallback) {
42
16
  if (!Number.isFinite(value)) return fallback;
43
17
  return Math.max(0, Math.min(1, value));
44
18
  }
45
- function trimmedCron(value, fallback) {
46
- return typeof value === "string" && value.trim() ? value.trim() : fallback;
47
- }
48
- /** Fills in deep-phase defaults; mirrors `resolveDreamingConfig` deep object when only partial overrides are given. */
49
19
  function resolveDeepDefaults(overrides) {
50
20
  return {
51
21
  enabled: overrides?.enabled !== false,
52
- cron: trimmedCron(overrides?.cron, DEFAULT_DEEP_CRON),
53
22
  minScore: clampScore(Number(overrides?.minScore), .8),
54
23
  minRecallCount: toPositiveInt(overrides?.minRecallCount, 3),
55
24
  minUniqueQueries: toPositiveInt(overrides?.minUniqueQueries, 3),
@@ -58,82 +27,5 @@ function resolveDeepDefaults(overrides) {
58
27
  maxAgeDays: toPositiveInt(overrides?.maxAgeDays, 30)
59
28
  };
60
29
  }
61
- function computeCandidateScore(entry, nowMs, recencyHalfLifeDays) {
62
- const recall = Math.max(0, entry.recallCount);
63
- const avgScore = clamp01(recall > 0 ? entry.totalScore / recall : 0);
64
- let recencyDecay = 1;
65
- if (entry.lastRecalledAt) {
66
- const last = Date.parse(entry.lastRecalledAt);
67
- if (Number.isFinite(last)) recencyDecay = .5 ** (Math.max(0, (nowMs - last) / MS_PER_DAY) / Math.max(.1, recencyHalfLifeDays));
68
- }
69
- const logRecall = Math.log(1 + recall);
70
- const reinforcement = REINFORCEMENT_WEIGHT * Math.min(logRecall, 3);
71
- const qCount = entry.queryHashes?.length ?? 0;
72
- const uniqueQueryTerm = Math.min(1, qCount / 6) * DIVERSITY_WEIGHT;
73
- const signalDiversity = [
74
- entry.sourceCount,
75
- entry.groundedCount,
76
- entry.lightHits,
77
- entry.remHits
78
- ].filter((n) => n > 0).length / 4 * DIVERSITY_WEIGHT / 2;
79
- return {
80
- avgScore,
81
- score: clamp01(avgScore * recencyDecay + reinforcement * .25 + uniqueQueryTerm + signalDiversity),
82
- recencyDecay
83
- };
84
- }
85
- function compareCandidatesByScore(a, b) {
86
- if (b.score !== a.score) return b.score - a.score;
87
- return a.key.localeCompare(b.key);
88
- }
89
- async function readFileLines(fullPath) {
90
- try {
91
- return (await fs.readFile(fullPath, "utf-8")).split(/\r?\n/);
92
- } catch (err) {
93
- if (err?.code === "ENOENT") return null;
94
- throw err;
95
- }
96
- }
97
- /** 1-based inclusive line range. Joins with newlines. */
98
- function sliceRange(lines, startLine, endLine) {
99
- const a = Math.max(1, Math.floor(startLine));
100
- const b = Math.max(a, Math.floor(endLine));
101
- return lines.slice(a - 1, b).join("\n").trimEnd();
102
- }
103
- function isExpiredEntry(lastRecalledAt, nowMs, maxAgeDays) {
104
- if (!lastRecalledAt) return true;
105
- const t = Date.parse(lastRecalledAt);
106
- if (!Number.isFinite(t)) return true;
107
- return (nowMs - t) / MS_PER_DAY > maxAgeDays;
108
- }
109
- /** Reject empty, tiny, or absurdly long snippets; blocks obvious “tool error” text. */
110
- function isContaminatedSnippet(snippet) {
111
- const s = snippet.trim();
112
- if (s.length < 3) return true;
113
- if (s.length > 12e3) return true;
114
- if (!/\p{L}/u.test(s) && !/\d/.test(s)) return true;
115
- return false;
116
- }
117
- function normalizeSnippetForHash(text) {
118
- return text.toLowerCase().replace(/\s+/g, " ").replace(/['"`]/g, "").trim();
119
- }
120
- function snippetHash(text) {
121
- const n = normalizeSnippetForHash(text);
122
- return createHash("sha1").update(n, "utf8").digest("hex").slice(0, 20);
123
- }
124
- function extractPromotionMarkers(markdown) {
125
- const keys = /* @__PURE__ */ new Set();
126
- const hashes = /* @__PURE__ */ new Set();
127
- let m;
128
- const re = /<!--\s*xopc-memory-promotion\s+key="([^"]*)"\s+hash="([^"]*)"\s*-->/g;
129
- while ((m = re.exec(markdown)) !== null) {
130
- if (m[1]) keys.add(m[1]);
131
- if (m[2]) hashes.add(m[2]);
132
- }
133
- return {
134
- keys,
135
- hashes
136
- };
137
- }
138
30
  //#endregion
139
- export { buildEntryKey, clamp01, compareCandidatesByScore, computeCandidateScore, extractPromotionMarkers, isContaminatedSnippet, isExpiredEntry, isoDay, normalizeMemoryPath, normalizeSnippetForHash, readFileLines, resolveDeepDefaults, sliceRange, snippetHash };
31
+ export { resolveDeepDefaults };
@@ -1,10 +1,9 @@
1
- export { BuiltinMemoryStore, MEMORY_ENTRY_DELIMITER, scanForThreats } from './builtin-memory-store.js';
2
1
  export { BuiltinMemoryProvider } from './builtin-provider.js';
3
2
  export { buildUserContextBlock, sanitizeUserContextFenceEscapes, } from './context-fence.js';
4
3
  export { UserContextPlanner } from './context/planner.js';
5
4
  export type { UserContextPlan } from './context/types.js';
6
5
  export { createMemoryManagerFromConfig } from './create-memory-manager.js';
7
- export { isCuratedMemoryInPrompt, isMemorySubsystemEnabled, resolveBuiltinMemoryStoreConfig, shouldPlanUserContextThisTurn, shouldRegisterCuratedMemoryTool, } from './memory-config.js';
6
+ export { isMemorySubsystemEnabled, shouldPlanUserContextThisTurn, } from './memory-config.js';
8
7
  export { MemoryManager } from './manager.js';
9
8
  export { UserUnderstandingService, extractExplicitUnderstandingCandidates } from './understanding/service.js';
10
9
  export type { UnderstandingCandidate, UnderstandingReviewResult } from './understanding/types.js';
@@ -12,5 +11,4 @@ export { discoverMemoryPlugins } from './plugin-discovery.js';
12
11
  export type { MemoryPluginMetadata } from './plugin-discovery.js';
13
12
  export type { MemoryProvider, MemoryProviderInitOptions } from './provider.js';
14
13
  export { StubMemoryProvider } from './stub-memory-provider.js';
15
- export type { MemorySnapshot, MemoryStoreConfig } from './types.js';
16
14
  export { extractAgentUserPlainText } from './user-message-text.js';
@@ -1,12 +1,11 @@
1
- import { isCuratedMemoryInPrompt, isMemorySubsystemEnabled, resolveBuiltinMemoryStoreConfig, shouldPlanUserContextThisTurn, shouldRegisterCuratedMemoryTool } from "./memory-config.js";
1
+ import { isMemorySubsystemEnabled, shouldPlanUserContextThisTurn } from "./memory-config.js";
2
2
  import { buildUserContextBlock, sanitizeUserContextFenceEscapes } from "./context-fence.js";
3
3
  import { UserContextPlanner } from "./context/planner.js";
4
4
  import { extractAgentUserPlainText } from "./user-message-text.js";
5
- import { BuiltinMemoryStore, MEMORY_ENTRY_DELIMITER, scanForThreats } from "./builtin-memory-store.js";
6
5
  import { BuiltinMemoryProvider } from "./builtin-provider.js";
7
6
  import { UserUnderstandingService, extractExplicitUnderstandingCandidates } from "./understanding/service.js";
8
7
  import { MemoryManager } from "./manager.js";
9
8
  import { discoverMemoryPlugins } from "./plugin-discovery.js";
10
9
  import { createMemoryManagerFromConfig } from "./create-memory-manager.js";
11
10
  import { StubMemoryProvider } from "./stub-memory-provider.js";
12
- export { BuiltinMemoryProvider, BuiltinMemoryStore, MEMORY_ENTRY_DELIMITER, MemoryManager, StubMemoryProvider, UserContextPlanner, UserUnderstandingService, buildUserContextBlock, createMemoryManagerFromConfig, discoverMemoryPlugins, extractAgentUserPlainText, extractExplicitUnderstandingCandidates, isCuratedMemoryInPrompt, isMemorySubsystemEnabled, resolveBuiltinMemoryStoreConfig, sanitizeUserContextFenceEscapes, scanForThreats, shouldPlanUserContextThisTurn, shouldRegisterCuratedMemoryTool };
11
+ export { BuiltinMemoryProvider, MemoryManager, StubMemoryProvider, UserContextPlanner, UserUnderstandingService, buildUserContextBlock, createMemoryManagerFromConfig, discoverMemoryPlugins, extractAgentUserPlainText, extractExplicitUnderstandingCandidates, isMemorySubsystemEnabled, sanitizeUserContextFenceEscapes, shouldPlanUserContextThisTurn };
@@ -17,7 +17,6 @@ export interface MemoryWritePolicy {
17
17
  allowExternalWrites?: boolean;
18
18
  allowedProviderIds?: string[];
19
19
  autoWriteKinds?: MemoryKind[];
20
- requireUserProfileApproval?: boolean;
21
20
  }
22
21
  export declare class MemoryManager {
23
22
  private providers;
@@ -32,9 +31,7 @@ export declare class MemoryManager {
32
31
  constructor(options?: MemoryManagerOptions);
33
32
  addProvider(provider: MemoryProvider): void;
34
33
  get providersList(): MemoryProvider[];
35
- /**
36
- * Non-builtin static instructions (builtin uses curated snapshot in system prompt builder).
37
- */
34
+ /** Static instructions contributed by external memory providers. */
38
35
  buildExternalSystemPrompt(): string;
39
36
  queuePrefetchAll(query: string, options?: {
40
37
  sessionId?: string;
@@ -59,7 +56,10 @@ export declare class MemoryManager {
59
56
  source?: MemoryRecord['source'];
60
57
  reviewSource?: 'turn' | 'background';
61
58
  }): Promise<import('./understanding/types.js').UnderstandingReviewResult>;
62
- getAdditionalTools(): AgentTool[];
59
+ getExternalToolEntries(): Array<{
60
+ providerId: string;
61
+ tool: AgentTool;
62
+ }>;
63
63
  handleToolCall(toolName: string, args: Record<string, unknown>): Promise<string>;
64
64
  search(request: MemorySearchRequest): Promise<MemorySearchResult[]>;
65
65
  read(request: MemoryReadRequest): Promise<MemoryReadResult | null>;
@@ -69,7 +69,6 @@ export declare class MemoryManager {
69
69
  update(request: MemoryUpdateRequest): Promise<MemoryWriteResult>;
70
70
  delete(request: MemoryDeleteRequest): Promise<MemoryWriteResult>;
71
71
  private canReadRecord;
72
- onMemoryWrite(action: 'add' | 'replace' | 'remove', target: 'memory' | 'user', content: string): void;
73
72
  recordSignal(signal: MemorySignal): void;
74
73
  initializeAll(sessionId: string, options?: MemoryProviderInitOptions): Promise<void>;
75
74
  private loadPluginProvidersOnce;
@@ -26,7 +26,6 @@ var MemoryManager = class {
26
26
  this.loadProviders = options.loadProviders;
27
27
  this.writePolicy = {
28
28
  allowExternalWrites: options.writePolicy?.allowExternalWrites ?? false,
29
- requireUserProfileApproval: options.writePolicy?.requireUserProfileApproval ?? false,
30
29
  allowedProviderIds: options.writePolicy?.allowedProviderIds,
31
30
  autoWriteKinds: options.writePolicy?.autoWriteKinds
32
31
  };
@@ -56,9 +55,7 @@ var MemoryManager = class {
56
55
  get providersList() {
57
56
  return [...this.providers];
58
57
  }
59
- /**
60
- * Non-builtin static instructions (builtin uses curated snapshot in system prompt builder).
61
- */
58
+ /** Static instructions contributed by external memory providers. */
62
59
  buildExternalSystemPrompt() {
63
60
  const blocks = [];
64
61
  for (const p of this.providers) {
@@ -143,7 +140,7 @@ var MemoryManager = class {
143
140
  ...sourceItemId ? { sourceItemId } : {}
144
141
  };
145
142
  }
146
- getAdditionalTools() {
143
+ getExternalToolEntries() {
147
144
  const out = [];
148
145
  const seen = /* @__PURE__ */ new Set();
149
146
  for (const p of this.providers) {
@@ -151,7 +148,10 @@ var MemoryManager = class {
151
148
  try {
152
149
  for (const t of p.getToolSchemas?.() ?? []) if (t.name && !seen.has(t.name)) {
153
150
  seen.add(t.name);
154
- out.push(t);
151
+ out.push({
152
+ providerId: p.id,
153
+ tool: t
154
+ });
155
155
  }
156
156
  } catch (err) {
157
157
  log.warn({
@@ -274,24 +274,6 @@ var MemoryManager = class {
274
274
  canReadRecord(record, scope) {
275
275
  return true;
276
276
  }
277
- onMemoryWrite(action, target, content) {
278
- for (const p of this.providers) {
279
- if (p.capabilities.local) continue;
280
- try {
281
- p.sync?.({
282
- type: "write",
283
- action,
284
- target,
285
- content
286
- });
287
- } catch (err) {
288
- log.debug({
289
- err,
290
- id: p.id
291
- }, "memory write sync failed");
292
- }
293
- }
294
- }
295
277
  recordSignal(signal) {
296
278
  for (const p of this.providers) {
297
279
  const started = Date.now();
@@ -440,11 +422,6 @@ var MemoryManager = class {
440
422
  const writeRequest = request;
441
423
  if (writeRequest.status === "candidate" && !provider.capabilities.local) return false;
442
424
  if (this.writePolicy.autoWriteKinds && this.writePolicy.autoWriteKinds.length > 0 && !this.writePolicy.autoWriteKinds.includes(writeRequest.kind)) return false;
443
- if (this.writePolicy.requireUserProfileApproval && writeRequest.kind === "user_profile" && !writeRequest.approved) return false;
444
- }
445
- if (operation === "update" && this.writePolicy.requireUserProfileApproval) {
446
- const updateRequest = request;
447
- if (updateRequest.target === "user" && !updateRequest.approved) return false;
448
425
  }
449
426
  return true;
450
427
  }
@@ -1,13 +1,8 @@
1
1
  import type { Config } from '../../config/schema.js';
2
- import type { MemoryStoreConfig } from './types.js';
3
- /** When false, shared curated memory and external memory providers are off. */
2
+ /** When false, structured user understanding and external memory providers are off. */
4
3
  export declare function isMemorySubsystemEnabled(config: Config | undefined): boolean;
5
- /** Curated memory tool + shared user `memories/` store (not injected into system prompt). */
6
- export declare function isCuratedMemoryInPrompt(config: Config | undefined): boolean;
7
- export declare function resolveBuiltinMemoryStoreConfig(workspaceDir: string, config: Config | undefined, _requestedAgentId?: string): MemoryStoreConfig;
8
4
  /**
9
5
  * Whether to prefix the user message with prefetched external memory this turn.
10
6
  * `first-turn` only injects on turn 1. `contextCadence` N injects on turns 1, N+1, 2N+1, …
11
7
  */
12
8
  export declare function shouldPlanUserContextThisTurn(_config: Config | undefined, turnNumber: number): boolean;
13
- export declare function shouldRegisterCuratedMemoryTool(config: Config | undefined): boolean;
@@ -1,27 +1,9 @@
1
- import { init_paths, resolveUserDir, resolveUserMemoryPath } from "../../config/paths.js";
2
- import { join } from "node:path";
3
1
  //#region src/agent/memory/memory-config.ts
4
- init_paths();
5
- /** When false, shared curated memory and external memory providers are off. */
2
+ /** When false, structured user understanding and external memory providers are off. */
6
3
  function isMemorySubsystemEnabled(config) {
7
4
  if (!config) return true;
8
5
  return config.userContext.enabled && config.userContext.memory.mode !== "off";
9
6
  }
10
- /** Curated memory tool + shared user `memories/` store (not injected into system prompt). */
11
- function isCuratedMemoryInPrompt(config) {
12
- if (!config) return true;
13
- return config.userContext.enabled && config.userContext.memory.sources.includes("curated");
14
- }
15
- function resolveBuiltinMemoryStoreConfig(workspaceDir, config, _requestedAgentId) {
16
- return {
17
- workspaceDir,
18
- memoriesDir: config != null ? join(resolveUserDir(), "memories") : join(workspaceDir, "memories"),
19
- userMemoryPath: config != null ? resolveUserMemoryPath() : join(workspaceDir, "user", "MEMORY.md"),
20
- memoryCharLimit: config?.userContext.memory.retention?.maxChars ?? 2200,
21
- userCharLimit: 1375,
22
- userProfileEnabled: config?.userContext.memory.sources.includes("userProfile") ?? true
23
- };
24
- }
25
7
  /**
26
8
  * Whether to prefix the user message with prefetched external memory this turn.
27
9
  * `first-turn` only injects on turn 1. `contextCadence` N injects on turns 1, N+1, 2N+1, …
@@ -29,8 +11,5 @@ function resolveBuiltinMemoryStoreConfig(workspaceDir, config, _requestedAgentId
29
11
  function shouldPlanUserContextThisTurn(_config, turnNumber) {
30
12
  return turnNumber >= 1;
31
13
  }
32
- function shouldRegisterCuratedMemoryTool(config) {
33
- return isCuratedMemoryInPrompt(config);
34
- }
35
14
  //#endregion
36
- export { isCuratedMemoryInPrompt, isMemorySubsystemEnabled, resolveBuiltinMemoryStoreConfig, shouldPlanUserContextThisTurn, shouldRegisterCuratedMemoryTool };
15
+ export { isMemorySubsystemEnabled, shouldPlanUserContextThisTurn };
@@ -4,7 +4,7 @@
4
4
  * Creates structured summaries that preserve:
5
5
  * - User requests and intents
6
6
  * - Tool call history (deduplicated by file path)
7
- * - Key decisions and outcomes
7
+ * - Key decisions and tasks
8
8
  * - Modified files list
9
9
  * - Usage statistics
10
10
  */
@@ -1,27 +1,4 @@
1
- /**
2
- * Curated Markdown compatibility store:
3
- * - shared memories: `~/.xopc/user/memories/MEMORY.md`
4
- * - user profile: `~/.xopc/user/MEMORY.md`
5
- */
6
- export interface MemoryStoreConfig {
7
- workspaceDir: string;
8
- /** Absolute path to the shared user memories directory. */
9
- memoriesDir: string;
10
- /** Absolute path to global user memory (`~/.xopc/user/MEMORY.md`). */
11
- userMemoryPath: string;
12
- /** Max chars for MEMORY.md entries (excluding delimiter overhead in limit check uses joined body). */
13
- memoryCharLimit: number;
14
- /** Max chars for global user memory entries. */
15
- userCharLimit: number;
16
- /** When false, global user memory is not loaded into the snapshot or shown in the system prompt. */
17
- userProfileEnabled?: boolean;
18
- }
19
- /** Frozen at session start; not updated when tools mutate disk mid-session. */
20
- export interface MemorySnapshot {
21
- memory: string;
22
- user: string;
23
- }
24
- export type MemoryKind = 'user_profile' | 'preference' | 'boundary' | 'relationship' | 'project_context' | 'commitment' | 'routine' | 'personal_logistics' | 'open_question' | 'milestone' | 'current_state' | 'curated_note' | 'workspace_fact' | 'daily_note' | 'session_summary' | 'derived_insight' | 'task_lesson' | 'tool_preference' | 'long_term_goal';
1
+ export type MemoryKind = 'user_profile' | 'preference' | 'boundary' | 'relationship' | 'project_context' | 'commitment' | 'routine' | 'personal_logistics' | 'open_question' | 'milestone' | 'current_state' | 'user_note' | 'workspace_fact' | 'daily_note' | 'session_summary' | 'derived_insight' | 'task_lesson' | 'tool_preference' | 'long_term_goal';
25
2
  export type MemoryStatus = 'candidate' | 'active' | 'needs_review' | 'stale' | 'archived' | 'rejected';
26
3
  export type MemorySensitivity = 'normal' | 'personal' | 'secret' | 'regulated';
27
4
  export type MemoryExplicitness = 'explicit' | 'observed' | 'inferred';
@@ -57,6 +34,8 @@ export interface MemoryCitation {
57
34
  }
58
35
  export interface MemoryRecord {
59
36
  id: string;
37
+ /** Memory provider that owns storage and retrieval for this record. */
38
+ providerId: string;
60
39
  kind: MemoryKind;
61
40
  status?: MemoryStatus;
62
41
  canonicalKey?: string;
@@ -104,24 +83,16 @@ export interface MemorySearchResult {
104
83
  citation: MemoryCitation;
105
84
  }
106
85
  export interface MemoryReadRequest {
107
- id?: string;
108
- path?: string;
109
- from?: number;
110
- lines?: number;
86
+ id: string;
111
87
  scope?: Partial<MemoryScope>;
112
88
  }
113
89
  export interface MemoryReadResult {
114
90
  record: MemoryRecord;
115
- lineNumbers?: {
116
- start: number;
117
- end: number;
118
- };
119
91
  }
120
92
  export interface MemoryListRequest {
121
93
  kind?: MemoryKind;
122
94
  status?: MemoryStatus;
123
95
  canonicalKey?: string;
124
- target?: 'memory' | 'user';
125
96
  scope?: Partial<MemoryScope>;
126
97
  }
127
98
  export interface MemoryWriteRequest {
@@ -129,7 +100,6 @@ export interface MemoryWriteRequest {
129
100
  content: string;
130
101
  canonicalKey?: string;
131
102
  scope?: Partial<MemoryScope>;
132
- target?: 'memory' | 'user';
133
103
  tags?: string[];
134
104
  source?: MemoryRecord['source'];
135
105
  confidence?: number;
@@ -146,21 +116,15 @@ export interface MemoryWriteRequest {
146
116
  expiresAt?: string;
147
117
  supersedesRecordId?: string;
148
118
  conflictGroupId?: string;
149
- approved?: boolean;
150
119
  }
151
120
  export interface MemoryUpdateRequest {
152
- id?: string;
153
- matchText?: string;
121
+ id: string;
154
122
  content: string;
155
123
  scope?: Partial<MemoryScope>;
156
- target?: 'memory' | 'user';
157
- approved?: boolean;
158
124
  }
159
125
  export interface MemoryDeleteRequest {
160
- id?: string;
161
- matchText?: string;
126
+ id: string;
162
127
  scope?: Partial<MemoryScope>;
163
- target?: 'memory' | 'user';
164
128
  }
165
129
  export interface MemoryWriteResult {
166
130
  success: boolean;
@@ -194,17 +158,12 @@ export type MemorySyncEvent = {
194
158
  userContent: string;
195
159
  assistantContent: string;
196
160
  sessionId?: string;
197
- } | {
198
- type: 'write';
199
- action: 'add' | 'replace' | 'remove';
200
- target?: 'memory' | 'user';
201
- content: string;
202
161
  } | {
203
162
  type: 'signal';
204
163
  signal: MemorySignal;
205
164
  };
206
165
  export interface MemorySignal {
207
- source: 'search_recall' | 'session_summary' | 'explicit_remember' | 'background_review' | 'dreaming';
166
+ source: 'search_recall' | 'context_injection' | 'session_summary' | 'explicit_remember' | 'background_review' | 'dreaming';
208
167
  recordId?: string;
209
168
  score?: number;
210
169
  content?: string;
@@ -28,7 +28,7 @@ function inferKind(content) {
28
28
  if (/\b(project|repo|codebase|workspace)\b/i.test(content) || /项目|仓库|代码库/.test(content)) return "project_context";
29
29
  if (/\b(goal|plan|commit|deadline)\b/i.test(content) || /目标|计划|承诺|截止/.test(content)) return "commitment";
30
30
  if (/\b(next time|lesson|failed|error)\b/i.test(content) || /下次|教训|失败|错误/.test(content)) return "task_lesson";
31
- return "curated_note";
31
+ return "user_note";
32
32
  }
33
33
  const SENSITIVITY_RANK = {
34
34
  normal: 0,
@@ -166,7 +166,6 @@ var UserUnderstandingService = class {
166
166
  userId: "local-owner",
167
167
  sessionKey: context.sessionKey
168
168
  } : void 0,
169
- target: candidate.kind === "preference" ? "user" : "memory",
170
169
  tags: [...new Set(["user-understanding", ...candidate.tags ?? []])],
171
170
  source: context.source ?? { provider: "user-understanding" },
172
171
  confidence: candidate.confidence,
@@ -12,12 +12,13 @@ export interface UserContextCoordinatorOptions {
12
12
  export declare class UserContextCoordinator {
13
13
  private readonly options;
14
14
  private readonly userTurn;
15
+ private readonly lastTurnId;
15
16
  private readonly correctionTargets;
16
17
  private readonly planner;
17
18
  private readonly contextCompiler;
18
19
  constructor(options: UserContextCoordinatorOptions);
19
20
  forgetSession(sessionKey: string): void;
20
21
  clear(): void;
21
- prepare(userMessage: AgentMessage, sessionKey: string): Promise<UserContextPlan>;
22
+ prepare(userMessage: AgentMessage, sessionKey: string, turnId: string): Promise<UserContextPlan>;
22
23
  afterTurn(sessionKey: string, userPlainText: string): Promise<import('./understanding/types.js').UnderstandingReviewResult | undefined>;
23
24
  }
@@ -1,9 +1,10 @@
1
1
  import { createLogger } from "../../utils/logger/index.js";
2
2
  import { init_logger } from "../../utils/logger.js";
3
- import { setLatestMemoryInjectFeedback } from "../../storage/sqlite/memory-records-repository.js";
3
+ import { setMemoryTurnFeedback } from "../../storage/sqlite/memory-records-repository.js";
4
4
  import "../../storage/sqlite/index.js";
5
- import { ContextCompiler } from "../../user-context/context-compiler.js";
5
+ import { assembleTaskContext } from "../../tasks/task-context-assembler.js";
6
6
  import { shouldPlanUserContextThisTurn } from "./memory-config.js";
7
+ import { ContextCompiler } from "../../user-context/context-compiler.js";
7
8
  import { UserContextPlanner } from "./context/planner.js";
8
9
  import { isExplicitUnderstandingCorrection } from "./understanding/correction.js";
9
10
  import { extractAgentUserPlainText } from "./user-message-text.js";
@@ -12,6 +13,7 @@ init_logger();
12
13
  const log = createLogger("UserContextCoordinator");
13
14
  var UserContextCoordinator = class {
14
15
  userTurn = /* @__PURE__ */ new Map();
16
+ lastTurnId = /* @__PURE__ */ new Map();
15
17
  correctionTargets = /* @__PURE__ */ new Map();
16
18
  planner = new UserContextPlanner();
17
19
  contextCompiler = new ContextCompiler();
@@ -20,13 +22,15 @@ var UserContextCoordinator = class {
20
22
  }
21
23
  forgetSession(sessionKey) {
22
24
  this.userTurn.delete(sessionKey);
25
+ this.lastTurnId.delete(sessionKey);
23
26
  this.correctionTargets.delete(sessionKey);
24
27
  }
25
28
  clear() {
26
29
  this.userTurn.clear();
30
+ this.lastTurnId.clear();
27
31
  this.correctionTargets.clear();
28
32
  }
29
- async prepare(userMessage, sessionKey) {
33
+ async prepare(userMessage, sessionKey, turnId) {
30
34
  const empty = () => ({
31
35
  traceId: "",
32
36
  modelMessage: userMessage,
@@ -37,22 +41,34 @@ var UserContextCoordinator = class {
37
41
  });
38
42
  const config = this.options.getConfig();
39
43
  if (!this.options.isEnabledForSession(sessionKey)) return empty();
40
- const query = extractAgentUserPlainText(userMessage);
44
+ const userQuery = extractAgentUserPlainText(userMessage);
45
+ const taskContext = assembleTaskContext(sessionKey, userQuery);
46
+ const query = taskContext.retrievalQuery;
47
+ const previousTurnId = this.lastTurnId.get(sessionKey);
48
+ this.lastTurnId.set(sessionKey, turnId);
41
49
  this.correctionTargets.delete(sessionKey);
42
50
  let excludedRecordIds;
43
- if (isExplicitUnderstandingCorrection(query)) try {
44
- const trace = setLatestMemoryInjectFeedback({
45
- sessionKey,
46
- requireSelectedRecords: true,
47
- feedback: {
48
- outcome: "not_helpful",
49
- source: "system",
50
- reason: "detected_explicit_user_correction"
51
- }
51
+ if (previousTurnId && isExplicitUnderstandingCorrection(userQuery)) try {
52
+ const trace = setMemoryTurnFeedback({
53
+ turnId: previousTurnId,
54
+ rating: "incorrect",
55
+ source: "system",
56
+ reasonCode: "detected_explicit_user_correction"
52
57
  });
53
58
  if (trace?.selectedRecordIds.length) {
54
59
  this.correctionTargets.set(sessionKey, trace.selectedRecordIds);
55
60
  excludedRecordIds = trace.selectedRecordIds;
61
+ if (trace.selectedRecordIds.length === 1) setMemoryTurnFeedback({
62
+ turnId: previousTurnId,
63
+ rating: "incorrect",
64
+ source: "system",
65
+ reasonCode: "detected_explicit_user_correction",
66
+ records: [{
67
+ recordId: trace.selectedRecordIds[0],
68
+ rating: "incorrect",
69
+ reasonCode: "detected_explicit_user_correction"
70
+ }]
71
+ });
56
72
  }
57
73
  } catch (err) {
58
74
  log.debug({
@@ -67,9 +83,11 @@ var UserContextCoordinator = class {
67
83
  memoryManager: this.options.getMemoryManagerForSession(sessionKey),
68
84
  agentId: this.options.getAgentIdForSession(sessionKey),
69
85
  sessionKey,
86
+ turnId,
70
87
  query,
71
88
  userMessage,
72
- excludedRecordIds
89
+ excludedRecordIds,
90
+ allocation: taskContext.allocation
73
91
  });
74
92
  if (plan.traceId) try {
75
93
  this.contextCompiler.capture({