@xopcai/xopc 0.0.180 → 0.0.187

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 (762) 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/telegram/xopc.extension.json +1 -1
  5. package/dist/gateway/static/root/assets/{activity-store-DFKtQDgE.js → activity-store-WlR2zEvA.js} +1 -1
  6. package/dist/gateway/static/root/assets/{agent-avatar-dicebear-CcTvB_4W.js → agent-avatar-dicebear-RedDszrG.js} +1 -1
  7. package/dist/gateway/static/root/assets/agents-Df9mTa-K.js +2 -0
  8. package/dist/gateway/static/root/assets/{api-CUClAvuL.js → api-tVOllncq.js} +1 -1
  9. package/dist/gateway/static/root/assets/{app-management-settings-panel-Ib-cWKHM.js → app-management-settings-panel-C9hKBzaF.js} +1 -1
  10. package/dist/gateway/static/root/assets/{appearance-settings-CRSN8WuA.js → appearance-settings-5cQvq7hd.js} +1 -1
  11. package/dist/gateway/static/root/assets/apps-page-Bd3tN-k2.js +1 -0
  12. package/dist/gateway/static/root/assets/{archive-plugin-BBF9zspN.js → archive-plugin-Ct-shK4n.js} +1 -1
  13. package/dist/gateway/static/root/assets/{attachment-load-D3QQfA7w.js → attachment-load-CpPj3m-q.js} +1 -1
  14. package/dist/gateway/static/root/assets/automations-page-w6K9GZQ7.js +6 -0
  15. package/dist/gateway/static/root/assets/{binary-plugins-D78XOjJ3.js → binary-plugins-BpSXZBle.js} +1 -1
  16. package/dist/gateway/static/root/assets/{block-editor-D_VVXlYX.js → block-editor-B8hR2tXc.js} +46 -46
  17. package/dist/gateway/static/root/assets/browser-settings-page-jb5Hf-hm.js +8 -0
  18. package/dist/gateway/static/root/assets/browser-workflow-inputs-D_LAXUrh.js +1 -0
  19. package/dist/gateway/static/root/assets/{browser-workflows-page-58DBMXgG.js → browser-workflows-page-CPAs7-6s.js} +2 -2
  20. package/dist/gateway/static/root/assets/capabilities-settings-panel-BjUe4raq.js +7 -0
  21. package/dist/gateway/static/root/assets/capability-presets-api-CKklVY2p.js +1 -0
  22. package/dist/gateway/static/root/assets/capability-presets-settings-panel-DiWIMYRr.js +1 -0
  23. package/dist/gateway/static/root/assets/{channel-recipient-api-DYtoNV5A.js → channel-recipient-api-WWN-nbFL.js} +1 -1
  24. package/dist/gateway/static/root/assets/channels-settings-D8IkjMuX.js +1 -0
  25. package/dist/gateway/static/root/assets/channels-status-swr-CySs1GQX.js +1 -0
  26. package/dist/gateway/static/root/assets/{connector-logo-CxIXnifA.js → connector-logo-CdNkVFdB.js} +1 -1
  27. package/dist/gateway/static/root/assets/connectors-page-BT2ahw52.js +2 -0
  28. package/dist/gateway/static/root/assets/desktop-pet-Bm_IEAf3.js +1 -0
  29. package/dist/gateway/static/root/assets/{desktop-pet-settings-BOIp4q0Z.js → desktop-pet-settings-C0Ve04-G.js} +1 -1
  30. package/dist/gateway/static/root/assets/{directory-picker-path-field-C8_lsW6S.js → directory-picker-path-field-B2cvhvAI.js} +1 -1
  31. package/dist/gateway/static/root/assets/{extension-debug-page-CMNnSJP6.js → extension-debug-page-DNashgGu.js} +1 -1
  32. package/dist/gateway/static/root/assets/{extension-page-t0pJqLvM.js → extension-page-Bvo-5htX.js} +1 -1
  33. package/dist/gateway/static/root/assets/{extension-settings-page-aiR-tKnW.js → extension-settings-page-BBESdISV.js} +1 -1
  34. package/dist/gateway/static/root/assets/{gateway-config-api-CkyQBD6r.js → gateway-config-api-ClQvokMo.js} +1 -1
  35. package/dist/gateway/static/root/assets/{gateway-settings-BIZfAgfB.js → gateway-settings-CIRs2QVy.js} +1 -1
  36. package/dist/gateway/static/root/assets/{gateway-startup-retry-CSU7UvzG.js → gateway-startup-retry-CntXJF6W.js} +1 -1
  37. package/dist/gateway/static/root/assets/heartbeat-settings-CWKcZuvc.js +1 -0
  38. package/dist/gateway/static/root/assets/home-page-C59f8UJw.js +3 -0
  39. package/dist/gateway/static/root/assets/{image-generation-api-BR6Kb77X.js → image-generation-api-DjSAQwGy.js} +1 -1
  40. package/dist/gateway/static/root/assets/index-D-YfWVyS.css +1 -0
  41. package/dist/gateway/static/root/assets/index-vi5KlR5_.js +222 -0
  42. package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-D76uYKeQ.js → keyboard-shortcuts-settings-ahKHpjoW.js} +1 -1
  43. package/dist/gateway/static/root/assets/local-app-workbench-page-DRB4UQBE.js +2 -0
  44. package/dist/gateway/static/root/assets/{local-apps-page-BsLnojTh.js → local-apps-page-B6GKdgza.js} +1 -1
  45. package/dist/gateway/static/root/assets/{locale-store-BNC8HUCI.js → locale-store-Bff30u5V.js} +1 -1
  46. package/dist/gateway/static/root/assets/logs-page-CNp4XiBN.js +7 -0
  47. package/dist/gateway/static/root/assets/{markdown-split-D6smTQWD.js → markdown-split-BeNMJm_i.js} +1 -1
  48. package/dist/gateway/static/root/assets/{media-plugins-D1TmMF0A.js → media-plugins-Bdzrj_-6.js} +1 -1
  49. package/dist/gateway/static/root/assets/messages-CPxz48hr.js +3 -0
  50. package/dist/gateway/static/root/assets/{notes-page-Vt-diFf0.js → notes-page-MYIi-9S9.js} +1 -1
  51. package/dist/gateway/static/root/assets/notes-workbench-DqSkeDXX.js +4 -0
  52. package/dist/gateway/static/root/assets/{page-tabs-BnSzIjH0.js → page-tabs-3t88bbGx.js} +1 -1
  53. package/dist/gateway/static/root/assets/{preview-open-alternatives-CF12Eqi4.js → preview-open-alternatives-Cf_BWbeE.js} +1 -1
  54. package/dist/gateway/static/root/assets/product-delivery-C8JbSj5Y.js +1 -0
  55. package/dist/gateway/static/root/assets/{product-open-page-Du0TE_CU.js → product-open-page-CKq73c98.js} +1 -1
  56. package/dist/gateway/static/root/assets/project-detail-page-BrbHs4Wp.js +1 -0
  57. package/dist/gateway/static/root/assets/projects-page-B80rtkj6.js +1 -0
  58. package/dist/gateway/static/root/assets/remote-access-hub-_Q3GEznb.js +1 -0
  59. package/dist/gateway/static/root/assets/{schema-form-BKvpxqof.js → schema-form-NqOm-OG1.js} +1 -1
  60. package/dist/gateway/static/root/assets/sessions-page-55dJOUVg.js +1 -0
  61. package/dist/gateway/static/root/assets/settings-advanced-gate-CSFCZj14.js +1 -0
  62. package/dist/gateway/static/root/assets/{settings-form-section-kt6GIS32.js → settings-form-section-DYAS8p8z.js} +1 -1
  63. package/dist/gateway/static/root/assets/{settings-loading-skeleton-85eUPcKz.js → settings-loading-skeleton-DZFhxihA.js} +1 -1
  64. package/dist/gateway/static/root/assets/settings-page-BSIiMLi-.js +1 -0
  65. package/dist/gateway/static/root/assets/{settings-page-layout-CkkCee_x.js → settings-page-layout-DfFfkdED.js} +1 -1
  66. package/dist/gateway/static/root/assets/setup-status-panel-q_yE6-H1.js +1 -0
  67. package/dist/gateway/static/root/assets/{share-preview-page-BtLEstaI.js → share-preview-page-CYtrQaZN.js} +1 -1
  68. package/dist/gateway/static/root/assets/shares-settings-gYkRX9Ik.js +1 -0
  69. package/dist/gateway/static/root/assets/skill-reload-api-BoNBMKW6.js +1 -0
  70. package/dist/gateway/static/root/assets/skills-page-GZHKDFSb.js +2 -0
  71. package/dist/gateway/static/root/assets/{skills-page.utils-C2SHvq8V.js → skills-page.utils-BBXirAjc.js} +1 -1
  72. package/dist/gateway/static/root/assets/system-settings-panel-DLf5YvFl.js +1 -0
  73. package/dist/gateway/static/root/assets/task-detail-page-DFGkuYfl.js +1 -0
  74. package/dist/gateway/static/root/assets/{theme-store-ClDa_Bci.js → theme-store-y7e_tvYi.js} +1 -1
  75. package/dist/gateway/static/root/assets/time-picker-5sHEZ5w5.js +1 -0
  76. package/dist/gateway/static/root/assets/{typed-models-lib-GsmwmB40.js → typed-models-lib-DR12j_dr.js} +1 -1
  77. package/dist/gateway/static/root/assets/use-save-bar-registration-BsvcJgZl.js +1 -0
  78. package/dist/gateway/static/root/assets/user-context-page-q5dr8JFG.js +1 -0
  79. package/dist/gateway/static/root/assets/{voice-api-key-field-Blaxsbb3.js → voice-api-key-field-DKADXFWD.js} +1 -1
  80. package/dist/gateway/static/root/assets/work-discovery-overlay-BC1nExf8.js +1 -0
  81. package/dist/gateway/static/root/assets/work-discovery-page-fNvSg40M.js +1 -0
  82. package/dist/gateway/static/root/assets/{workflow-run-setup-panel-CTG4RpRE.js → workflow-run-setup-panel-C8X5W-8k.js} +2 -2
  83. package/dist/gateway/static/root/assets/workflows-page-YJBKmPYK.js +11 -0
  84. package/dist/gateway/static/root/index.html +8 -8
  85. package/dist/package.js +1 -1
  86. package/dist/packages/gateway-contract/src/product-delivery.js +1 -3
  87. package/dist/packages/gateway-contract/src/project-monitoring.js +31 -0
  88. package/dist/packages/gateway-contract/src/task-lifecycle.js +67 -0
  89. package/dist/packages/gateway-contract/src/task-runs.js +80 -0
  90. package/dist/packages/gateway-contract/src/tasks.js +353 -0
  91. package/dist/src/activity/types.d.ts +2 -2
  92. package/dist/src/agent/agent-instance-gateway.d.ts +1 -1
  93. package/dist/src/agent/agent-manager.d.ts +3 -3
  94. package/dist/src/agent/agent-manager.js +23 -22
  95. package/dist/src/agent/bootstrap/filter-bootstrap-files.js +1 -1
  96. package/dist/src/agent/child-agent-factory.d.ts +1 -2
  97. package/dist/src/agent/child-agent-factory.js +4 -10
  98. package/dist/src/agent/context/execution-scope.d.ts +2 -2
  99. package/dist/src/agent/context/execution-scope.js +17 -20
  100. package/dist/src/agent/context/project-context.d.ts +6 -2
  101. package/dist/src/agent/context/project-context.js +17 -25
  102. package/dist/src/agent/context/workspace-templates/AGENTS.md +1 -1
  103. package/dist/src/agent/embedded/model-runtime.js +1 -1
  104. package/dist/src/agent/embedded/run-turn.js +2 -0
  105. package/dist/src/agent/embedded/session-tool-result-guard.d.ts +2 -0
  106. package/dist/src/agent/embedded/session-tool-result-guard.js +16 -4
  107. package/dist/src/agent/image/tool-model-config.js +1 -1
  108. package/dist/src/agent/inbound/inbound-loop.js +1 -1
  109. package/dist/src/agent/inbound/turn-dispatcher.js +1 -1
  110. package/dist/src/agent/ipc/inbox.js +1 -1
  111. package/dist/src/agent/lifecycle/progress.js +0 -1
  112. package/dist/src/agent/mcp/bundle-mcp-policy.d.ts +3 -5
  113. package/dist/src/agent/mcp/bundle-mcp-policy.js +8 -5
  114. package/dist/src/agent/mcp/index.js +2 -2
  115. package/dist/src/agent/mcp/resolve-embedded-mcp-tools.js +5 -6
  116. package/dist/src/agent/memory/builtin-provider.d.ts +1 -5
  117. package/dist/src/agent/memory/builtin-provider.js +75 -229
  118. package/dist/src/agent/memory/compaction.js +1 -1
  119. package/dist/src/agent/memory/context/planner.d.ts +3 -0
  120. package/dist/src/agent/memory/context/planner.js +32 -11
  121. package/dist/src/agent/memory/context/types.d.ts +6 -0
  122. package/dist/src/agent/memory/create-memory-manager.d.ts +1 -2
  123. package/dist/src/agent/memory/create-memory-manager.js +4 -4
  124. package/dist/src/agent/memory/dreaming/config.d.ts +16 -13
  125. package/dist/src/agent/memory/dreaming/config.js +47 -40
  126. package/dist/src/agent/memory/dreaming/constants.d.ts +5 -22
  127. package/dist/src/agent/memory/dreaming/constants.js +6 -24
  128. package/dist/src/agent/memory/dreaming/deep-promotion.d.ts +4 -11
  129. package/dist/src/agent/memory/dreaming/deep-promotion.js +126 -279
  130. package/dist/src/agent/memory/dreaming/light-sweep.d.ts +5 -2
  131. package/dist/src/agent/memory/dreaming/light-sweep.js +79 -197
  132. package/dist/src/agent/memory/dreaming/preview.d.ts +3 -9
  133. package/dist/src/agent/memory/dreaming/preview.js +34 -77
  134. package/dist/src/agent/memory/dreaming/promotion-lifecycle.d.ts +1 -15
  135. package/dist/src/agent/memory/dreaming/promotion-lifecycle.js +3 -42
  136. package/dist/src/agent/memory/dreaming/rem-patterns.d.ts +7 -13
  137. package/dist/src/agent/memory/dreaming/rem-patterns.js +104 -261
  138. package/dist/src/agent/memory/dreaming/runner.d.ts +10 -0
  139. package/dist/src/agent/memory/dreaming/runner.js +78 -0
  140. package/dist/src/agent/memory/dreaming/schedule.d.ts +23 -0
  141. package/dist/src/agent/memory/dreaming/schedule.js +38 -0
  142. package/dist/src/agent/memory/dreaming/scope.d.ts +2 -4
  143. package/dist/src/agent/memory/dreaming/scope.js +21 -13
  144. package/dist/src/agent/memory/dreaming/utils.d.ts +2 -51
  145. package/dist/src/agent/memory/dreaming/utils.js +4 -112
  146. package/dist/src/agent/memory/index.d.ts +1 -3
  147. package/dist/src/agent/memory/index.js +2 -3
  148. package/dist/src/agent/memory/manager.d.ts +1 -5
  149. package/dist/src/agent/memory/manager.js +1 -27
  150. package/dist/src/agent/memory/memory-config.d.ts +1 -6
  151. package/dist/src/agent/memory/memory-config.js +2 -23
  152. package/dist/src/agent/memory/summary-generator.d.ts +1 -1
  153. package/dist/src/agent/memory/types.d.ts +5 -48
  154. package/dist/src/agent/memory/understanding/service.js +1 -2
  155. package/dist/src/agent/memory/user-context-coordinator.d.ts +2 -1
  156. package/dist/src/agent/memory/user-context-coordinator.js +32 -14
  157. package/dist/src/agent/messaging/command-handler.d.ts +1 -9
  158. package/dist/src/agent/messaging/command-handler.js +0 -8
  159. package/dist/src/agent/messaging/outbound-coordinator.d.ts +5 -14
  160. package/dist/src/agent/messaging/outbound-coordinator.js +4 -9
  161. package/dist/src/agent/middleware/index.d.ts +1 -1
  162. package/dist/src/agent/middleware/self-verify.d.ts +2 -2
  163. package/dist/src/agent/middleware/self-verify.js +7 -7
  164. package/dist/src/agent/orchestration/agent-orchestrator.js +16 -66
  165. package/dist/src/agent/prompt/response-language.d.ts +3 -0
  166. package/dist/src/agent/prompt/response-language.js +11 -0
  167. package/dist/src/agent/prompt/sections/behavior.js +2 -2
  168. package/dist/src/agent/prompt/sections/memory-skills.js +10 -13
  169. package/dist/src/agent/prompt/sections/response-language.d.ts +2 -0
  170. package/dist/src/agent/prompt/sections/response-language.js +13 -0
  171. package/dist/src/agent/prompt/sections/tooling.js +0 -2
  172. package/dist/src/agent/prompt/service-prompt-builder.d.ts +1 -1
  173. package/dist/src/agent/prompt/service-prompt-builder.js +6 -29
  174. package/dist/src/agent/prompt/subagent-context.d.ts +2 -0
  175. package/dist/src/agent/prompt/subagent-context.js +1 -0
  176. package/dist/src/agent/prompt/system-prompt.d.ts +3 -0
  177. package/dist/src/agent/prompt/system-prompt.js +10 -2
  178. package/dist/src/agent/service/direct-turn-helpers.d.ts +2 -2
  179. package/dist/src/agent/service/direct-turn-helpers.js +8 -5
  180. package/dist/src/agent/service/process-direct-streaming.d.ts +2 -2
  181. package/dist/src/agent/service/process-direct-streaming.js +2 -2
  182. package/dist/src/agent/service.d.ts +6 -9
  183. package/dist/src/agent/service.js +31 -25
  184. package/dist/src/agent/service.types.d.ts +2 -15
  185. package/dist/src/agent/session/index.d.ts +1 -1
  186. package/dist/src/agent/session/session-config-service.d.ts +1 -0
  187. package/dist/src/agent/session/session-config-service.js +14 -0
  188. package/dist/src/agent/session/session-inspector.js +1 -1
  189. package/dist/src/agent/session/session-state-bag.d.ts +8 -8
  190. package/dist/src/agent/session/session-state-bag.js +10 -10
  191. package/dist/src/agent/skills/hub-lock.js +1 -1
  192. package/dist/src/agent/source-context/types.d.ts +1 -1
  193. package/dist/src/agent/source-context/types.js +1 -1
  194. package/dist/src/agent/starter-agents.js +1 -1
  195. package/dist/src/agent/{outcomes → tasks}/execution-verifier.d.ts +3 -0
  196. package/dist/src/agent/{outcomes → tasks}/execution-verifier.js +3 -2
  197. package/dist/src/agent/tasks/task-judge-service.d.ts +31 -0
  198. package/dist/src/agent/tasks/task-judge-service.js +183 -0
  199. package/dist/src/agent/tool-manuals/index.js +1 -1
  200. package/dist/src/agent/tool-manuals/xopc-use.d.ts +1 -1
  201. package/dist/src/agent/tool-manuals/xopc-use.js +253 -118
  202. package/dist/src/agent/tools/apply-patch.d.ts +1 -5
  203. package/dist/src/agent/tools/apply-patch.js +1 -12
  204. package/dist/src/agent/tools/clarify-tool.js +1 -1
  205. package/dist/src/agent/tools/delegate-tool.js +4 -4
  206. package/dist/src/agent/tools/dreaming-tool.d.ts +0 -1
  207. package/dist/src/agent/tools/dreaming-tool.js +48 -80
  208. package/dist/src/agent/tools/exec-command.d.ts +0 -2
  209. package/dist/src/agent/tools/exec-command.js +2 -19
  210. package/dist/src/agent/tools/factory.d.ts +2 -4
  211. package/dist/src/agent/tools/factory.js +8 -29
  212. package/dist/src/agent/tools/index.d.ts +0 -2
  213. package/dist/src/agent/tools/index.js +1 -3
  214. package/dist/src/agent/tools/managed-job-tool.js +1 -1
  215. package/dist/src/agent/tools/memory-tool.d.ts +0 -3
  216. package/dist/src/agent/tools/memory-tool.js +14 -36
  217. package/dist/src/agent/tools/tool-manual-tool.js +1 -1
  218. package/dist/src/agent/tools/workflow-tool.d.ts +1 -1
  219. package/dist/src/agent/tools/workflow-tool.js +4 -4
  220. package/dist/src/agent/tools/write.d.ts +0 -2
  221. package/dist/src/agent/tools/write.js +0 -11
  222. package/dist/src/agent/tools/xopc-use-tool.d.ts +5 -4
  223. package/dist/src/agent/tools/xopc-use-tool.js +987 -143
  224. package/dist/src/agent/transcript/thinking-types.d.ts +3 -0
  225. package/dist/src/agent/workflow/builtins/index.js +2 -2
  226. package/dist/src/agent/workflow/index.js +2 -2
  227. package/dist/src/agent/workflow/subagent-runner.js +1 -0
  228. package/dist/src/agent/workflow/workflow-child-tools.js +0 -3
  229. package/dist/src/agent/workspace-runtime/registry.d.ts +2 -4
  230. package/dist/src/agent/workspace-runtime/registry.js +1 -2
  231. package/dist/src/agent-manifest/index.js +3 -3
  232. package/dist/src/agent-manifest/resolver.d.ts +20 -1
  233. package/dist/src/agent-manifest/resolver.js +47 -20
  234. package/dist/src/agent-manifest/schema.d.ts +128 -52
  235. package/dist/src/agent-manifest/schema.js +46 -8
  236. package/dist/src/agent-runtime/memory-runtime.d.ts +2 -2
  237. package/dist/src/ai-assist/text-assist.js +4 -4
  238. package/dist/src/auth/credentials.js +2 -2
  239. package/dist/src/auth/profiles/store.js +1 -1
  240. package/dist/src/auth/sync-provider-auth.js +2 -2
  241. package/dist/src/automations/domain/defaults.js +1 -1
  242. package/dist/src/automations/domain/types.d.ts +15 -1
  243. package/dist/src/automations/domain/validation.d.ts +336 -12
  244. package/dist/src/automations/domain/validation.js +6 -0
  245. package/dist/src/automations/draft/automation-draft-prompt.js +3 -3
  246. package/dist/src/automations/draft/automation-draft-validator.d.ts +62 -1
  247. package/dist/src/automations/draft/automation-draft-validator.js +1 -0
  248. package/dist/src/automations/index.js +1 -1
  249. package/dist/src/automations/service/action-executor.d.ts +2 -2
  250. package/dist/src/automations/service/action-executor.js +21 -1
  251. package/dist/src/automations/service/automation-service.js +21 -21
  252. package/dist/src/browser/providers/browser-ext-install.js +1 -1
  253. package/dist/src/browser/providers/cloakbrowser.js +1 -1
  254. package/dist/src/chat-commands/builtins/understanding.d.ts +1 -0
  255. package/dist/src/chat-commands/builtins/understanding.js +91 -0
  256. package/dist/src/chat-commands/context.d.ts +0 -3
  257. package/dist/src/chat-commands/context.js +0 -2
  258. package/dist/src/chat-commands/index.d.ts +1 -2
  259. package/dist/src/chat-commands/index.js +3 -5
  260. package/dist/src/chat-commands/types.d.ts +0 -3
  261. package/dist/src/cli/command-catalog.js +0 -43
  262. package/dist/src/cli/command-loaders.js +0 -1
  263. package/dist/src/cli/command-manifest.js +0 -4
  264. package/dist/src/cli/commands/doctor/checks/database-schema.js +1 -1
  265. package/dist/src/cli/commands/doctor/checks/provider-auth.js +1 -1
  266. package/dist/src/cli/commands/gateway/lifecycle-core.js +1 -1
  267. package/dist/src/cli/commands/gateway/restart-health.d.ts +2 -2
  268. package/dist/src/cli/commands/gateway/restart-health.js +3 -3
  269. package/dist/src/cli/commands/gateway/service.js +4 -4
  270. package/dist/src/cli/commands/models.js +1 -1
  271. package/dist/src/cli/commands/onboard/gateway.js +1 -1
  272. package/dist/src/cli/commands/project.js +12 -33
  273. package/dist/src/cli/commands/providers.d.ts +4 -4
  274. package/dist/src/cli/commands/providers.js +16 -16
  275. package/dist/src/cli/commands/search.js +7 -7
  276. package/dist/src/cli/commands/setup-shared/index.d.ts +2 -2
  277. package/dist/src/cli/commands/setup-shared/index.js +2 -2
  278. package/dist/src/cli/commands/setup-shared/output.d.ts +4 -4
  279. package/dist/src/cli/commands/setup-shared/output.js +26 -26
  280. package/dist/src/cli/commands/setup-shared/runner.d.ts +8 -8
  281. package/dist/src/cli/commands/setup-shared/runner.js +9 -9
  282. package/dist/src/cli/commands/setup-shared/types.d.ts +2 -2
  283. package/dist/src/cli/commands/skills.d.ts +7 -0
  284. package/dist/src/cli/commands/skills.js +16 -16
  285. package/dist/src/cli/commands/update.js +1 -1
  286. package/dist/src/cli/commands/voice.d.ts +1 -1
  287. package/dist/src/cli/commands/voice.js +6 -6
  288. package/dist/src/cli/templates.js +1 -1
  289. package/dist/src/commands/agents.config.js +2 -18
  290. package/dist/src/config/agent-profile.d.ts +1 -1
  291. package/dist/src/config/agent-profile.js +1 -1
  292. package/dist/src/config/index.js +7 -7
  293. package/dist/src/config/loader.js +1 -1
  294. package/dist/src/config/models-json.js +1 -1
  295. package/dist/src/config/paths.d.ts +0 -3
  296. package/dist/src/config/paths.js +2 -7
  297. package/dist/src/config/schema.d.ts +160 -258
  298. package/dist/src/config/schema.js +8 -114
  299. package/dist/src/config/web-patch.d.ts +0 -29
  300. package/dist/src/config/web-patch.js +2 -69
  301. package/dist/src/connectors/composio-catalog.js +7 -20
  302. package/dist/src/connectors/composio-sessions.js +14 -4
  303. package/dist/src/connectors/composio.d.ts +7 -2
  304. package/dist/src/connectors/composio.js +49 -40
  305. package/dist/src/connectors/connected-source-ingestion.js +2 -1
  306. package/dist/src/connectors/connected-source-normalizers.js +5 -5
  307. package/dist/src/connectors/connector-identity.d.ts +2 -0
  308. package/dist/src/connectors/connector-identity.js +64 -1
  309. package/dist/src/connectors/learning-coordinator.js +34 -15
  310. package/dist/src/connectors/learning-recipes.d.ts +2 -0
  311. package/dist/src/connectors/learning-recipes.js +11 -1
  312. package/dist/src/connectors/source-change-publisher.js +5 -4
  313. package/dist/src/connectors/types.d.ts +16 -0
  314. package/dist/src/daemon/launchd.js +2 -2
  315. package/dist/src/daemon/schtasks.js +1 -1
  316. package/dist/src/daemon/service.js +3 -3
  317. package/dist/src/daemon/systemd.js +1 -1
  318. package/dist/src/daemon/types.d.ts +5 -5
  319. package/dist/src/discussions/analyzer.d.ts +6 -6
  320. package/dist/src/discussions/analyzer.js +32 -22
  321. package/dist/src/discussions/index.d.ts +3 -2
  322. package/dist/src/discussions/index.js +5 -4
  323. package/dist/src/discussions/live-worker.d.ts +5 -3
  324. package/dist/src/discussions/live-worker.js +24 -12
  325. package/dist/src/discussions/{worker.d.ts → organizer-worker.d.ts} +3 -5
  326. package/dist/src/discussions/organizer-worker.js +58 -0
  327. package/dist/src/discussions/organizer.d.ts +22 -0
  328. package/dist/src/discussions/organizer.js +92 -0
  329. package/dist/src/discussions/repository.d.ts +16 -5
  330. package/dist/src/discussions/repository.js +159 -135
  331. package/dist/src/discussions/sealer.d.ts +25 -0
  332. package/dist/src/discussions/sealer.js +116 -0
  333. package/dist/src/discussions/service.d.ts +2 -1
  334. package/dist/src/discussions/service.js +70 -60
  335. package/dist/src/discussions/transcript.js +1 -1
  336. package/dist/src/discussions/types.d.ts +45 -20
  337. package/dist/src/discussions/types.js +4 -2
  338. package/dist/src/extensions/lockfile.js +1 -1
  339. package/dist/src/extensions/types/core.d.ts +3 -3
  340. package/dist/src/extensions/types/tui.d.ts +2 -2
  341. package/dist/src/extensions/update.d.ts +3 -3
  342. package/dist/src/extensions/update.js +13 -13
  343. package/dist/src/gateway/agent-builtin-tools.d.ts +1 -1
  344. package/dist/src/gateway/agent-builtin-tools.js +0 -1
  345. package/dist/src/gateway/agent-run-relay.d.ts +1 -1
  346. package/dist/src/gateway/agents-admin.js +17 -19
  347. package/dist/src/gateway/capability-presets-admin.d.ts +13 -0
  348. package/dist/src/gateway/capability-presets-admin.js +59 -2
  349. package/dist/src/gateway/chat-limits.d.ts +6 -2
  350. package/dist/src/gateway/chat-limits.js +17 -3
  351. package/dist/src/gateway/chat-stream/thinking-delta-coalescer.js +3 -3
  352. package/dist/src/gateway/dreaming-automation-reconciler.js +13 -12
  353. package/dist/src/gateway/file-path-classifier.js +1 -1
  354. package/dist/src/gateway/heartbeat/service.js +1 -1
  355. package/dist/src/gateway/hono/app.js +9 -10
  356. package/dist/src/gateway/hono/index.d.ts +1 -1
  357. package/dist/src/gateway/hono/index.js +2 -2
  358. package/dist/src/gateway/hono/lib/config-payload.d.ts +15 -35
  359. package/dist/src/gateway/hono/lib/config-payload.js +6 -4
  360. package/dist/src/gateway/hono/middleware/strict-rate-limit.d.ts +4 -0
  361. package/dist/src/gateway/hono/middleware/strict-rate-limit.js +8 -1
  362. package/dist/src/gateway/hono/routes/activity.js +1 -2
  363. package/dist/src/gateway/hono/routes/agent-stream.js +135 -34
  364. package/dist/src/gateway/hono/routes/capability-presets.js +27 -1
  365. package/dist/src/gateway/hono/routes/composer-history.js +1 -1
  366. package/dist/src/gateway/hono/routes/config-patch/misc.d.ts +1 -1
  367. package/dist/src/gateway/hono/routes/config-patch/misc.js +1 -6
  368. package/dist/src/gateway/hono/routes/connectors.js +35 -30
  369. package/dist/src/gateway/hono/routes/deps.d.ts +1 -0
  370. package/dist/src/gateway/hono/routes/discussions.js +13 -3
  371. package/dist/src/gateway/hono/routes/home.d.ts +1 -1
  372. package/dist/src/gateway/hono/routes/home.js +2 -2
  373. package/dist/src/gateway/hono/routes/index.js +2 -4
  374. package/dist/src/gateway/hono/routes/lazy-bundles.js +0 -16
  375. package/dist/src/gateway/hono/routes/media.js +9 -3
  376. package/dist/src/gateway/hono/routes/memory.js +38 -113
  377. package/dist/src/gateway/hono/routes/models.js +1 -1
  378. package/dist/src/gateway/hono/routes/projects.js +220 -588
  379. package/dist/src/gateway/hono/routes/public-gateway.js +4 -2
  380. package/dist/src/gateway/hono/routes/{work.d.ts → tasks.d.ts} +1 -1
  381. package/dist/src/gateway/hono/routes/tasks.js +343 -0
  382. package/dist/src/gateway/hono/routes/workflows.js +7 -8
  383. package/dist/src/gateway/hono/routes/you.d.ts +1 -1
  384. package/dist/src/gateway/hono/routes/you.js +250 -78
  385. package/dist/src/gateway/hono/sse.d.ts +1 -16
  386. package/dist/src/gateway/hono/sse.js +4 -161
  387. package/dist/src/gateway/index.js +2 -2
  388. package/dist/src/gateway/rate-limit/buckets.d.ts +3 -0
  389. package/dist/src/gateway/rate-limit/buckets.js +12 -0
  390. package/dist/src/gateway/security/csp.d.ts +2 -0
  391. package/dist/src/gateway/security/csp.js +4 -0
  392. package/dist/src/gateway/service/agent-runner.d.ts +32 -13
  393. package/dist/src/gateway/service/agent-runner.js +97 -46
  394. package/dist/src/gateway/service/config-coordinator.js +1 -1
  395. package/dist/src/gateway/service/run-gateway-agent.d.ts +1 -1
  396. package/dist/src/gateway/service/run-gateway-agent.js +27 -42
  397. package/dist/src/gateway/service/session-input-coordinator.d.ts +59 -0
  398. package/dist/src/gateway/service/session-input-coordinator.js +183 -0
  399. package/dist/src/gateway/service/sessions-api.d.ts +1 -0
  400. package/dist/src/gateway/service.d.ts +28 -16
  401. package/dist/src/gateway/service.js +150 -133
  402. package/dist/src/gateway/session-reset-service.js +6 -6
  403. package/dist/src/gateway/user-turn-input.d.ts +0 -1
  404. package/dist/src/heartbeat/index.js +1 -1
  405. package/dist/src/i18n/index.d.ts +0 -1
  406. package/dist/src/i18n/index.js +1 -2
  407. package/dist/src/i18n/language-consistency.d.ts +10 -0
  408. package/dist/src/i18n/language-consistency.js +34 -0
  409. package/dist/src/i18n/response-language.d.ts +8 -0
  410. package/dist/src/i18n/response-language.js +17 -0
  411. package/dist/src/i18n/share-tool-bundle.js +2 -2
  412. package/dist/src/mcp/channel-bridge.js +5 -3
  413. package/dist/src/media/store.js +1 -1
  414. package/dist/src/media/types.d.ts +1 -1
  415. package/dist/src/media/uri.js +1 -2
  416. package/dist/src/media-understanding/runner.d.ts +1 -1
  417. package/dist/src/media-understanding/runner.js +9 -9
  418. package/dist/src/media-understanding/types.d.ts +4 -4
  419. package/dist/src/mobile/notification-service.js +16 -21
  420. package/dist/src/mobile/notification-types.d.ts +2 -2
  421. package/dist/src/notes/types.d.ts +0 -1
  422. package/dist/src/proactive/events/product-event-bridge.js +17 -14
  423. package/dist/src/proactive/execution/context.js +45 -28
  424. package/dist/src/proactive/execution/insight.js +1 -1
  425. package/dist/src/proactive/temporal/worker.js +2 -2
  426. package/dist/src/projects/index.d.ts +0 -1
  427. package/dist/src/projects/index.js +1 -2
  428. package/dist/src/projects/project-loop.d.ts +16 -8
  429. package/dist/src/projects/project-loop.js +41 -48
  430. package/dist/src/projects/project-service.d.ts +14 -4
  431. package/dist/src/projects/project-service.js +18 -10
  432. package/dist/src/projects/project-store.d.ts +36 -3
  433. package/dist/src/projects/project-store.js +116 -14
  434. package/dist/src/projects/types.d.ts +50 -3
  435. package/dist/src/providers/auth-runtime/resolve-auth.js +1 -1
  436. package/dist/src/providers/index.js +2 -2
  437. package/dist/src/providers/model-registry.js +1 -1
  438. package/dist/src/providers/model-response.d.ts +4 -0
  439. package/dist/src/providers/model-response.js +28 -0
  440. package/dist/src/providers/register-runtime-providers.js +1 -1
  441. package/dist/src/session/config-types.d.ts +3 -0
  442. package/dist/src/session/index.d.ts +0 -1
  443. package/dist/src/session/index.js +1 -2
  444. package/dist/src/session/init-session-turn.js +6 -6
  445. package/dist/src/session/store.js +4 -4
  446. package/dist/src/session/types.d.ts +1 -6
  447. package/dist/src/share/site-proxy.js +1 -1
  448. package/dist/src/storage/sqlite/config-repository.js +7 -4
  449. package/dist/src/storage/sqlite/connection.js +1 -1
  450. package/dist/src/storage/sqlite/connector-account-repository.d.ts +12 -0
  451. package/dist/src/storage/sqlite/connector-account-repository.js +143 -0
  452. package/dist/src/storage/sqlite/connector-learning-repository.d.ts +5 -2
  453. package/dist/src/storage/sqlite/connector-learning-repository.js +14 -7
  454. package/dist/src/storage/sqlite/connector-repository.js +12 -3
  455. package/dist/src/storage/sqlite/connector-sync-policy-repository.d.ts +4 -3
  456. package/dist/src/storage/sqlite/connector-sync-policy-repository.js +20 -10
  457. package/dist/src/storage/sqlite/dreaming-repository.d.ts +61 -0
  458. package/dist/src/storage/sqlite/dreaming-repository.js +88 -0
  459. package/dist/src/storage/sqlite/index.d.ts +6 -4
  460. package/dist/src/storage/sqlite/index.js +7 -5
  461. package/dist/src/storage/sqlite/memory-readiness-repository.d.ts +7 -0
  462. package/dist/src/storage/sqlite/memory-readiness-repository.js +30 -0
  463. package/dist/src/storage/sqlite/memory-records-repository.d.ts +31 -26
  464. package/dist/src/storage/sqlite/memory-records-repository.js +109 -138
  465. package/dist/src/storage/sqlite/migrations/090_outcome_contract_judgment.sql +2 -0
  466. package/dist/src/storage/sqlite/migrations/091_context_allocation.sql +1 -0
  467. package/dist/src/storage/sqlite/migrations/092_outcome_execution_runtime.sql +88 -0
  468. package/dist/src/storage/sqlite/migrations/093_remove_legacy_goals.sql +174 -0
  469. package/dist/src/storage/sqlite/migrations/094_outcome_judgment_and_authority.sql +3 -0
  470. package/dist/src/storage/sqlite/migrations/095_session_input_queue.sql +35 -0
  471. package/dist/src/storage/sqlite/migrations/096_drop_work_intakes.sql +6 -0
  472. package/dist/src/storage/sqlite/migrations/097_work_item_lifecycle.sql +194 -0
  473. package/dist/src/storage/sqlite/migrations/098_discussion_note_documents.sql +99 -0
  474. package/dist/src/storage/sqlite/migrations/099_task_model.sql +500 -0
  475. package/dist/src/storage/sqlite/migrations/100_project_task_taskrun.sql +763 -0
  476. package/dist/src/storage/sqlite/migrations/101_session_response_language.sql +1 -0
  477. package/dist/src/storage/sqlite/migrations/102_session_user_context_mode.sql +2 -0
  478. package/dist/src/storage/sqlite/migrations/103_finalize_structured_memory.sql +3 -0
  479. package/dist/src/storage/sqlite/migrations/104_turn_memory_feedback.sql +77 -0
  480. package/dist/src/storage/sqlite/migrations/105_dreaming_ledger.sql +34 -0
  481. package/dist/src/storage/sqlite/migrations/106_dreaming_run_reproducibility.sql +2 -0
  482. package/dist/src/storage/sqlite/migrations/107_connector_accounts.sql +146 -0
  483. package/dist/src/storage/sqlite/migrations/runner.d.ts +1 -1
  484. package/dist/src/storage/sqlite/migrations/runner.js +37 -5
  485. package/dist/src/storage/sqlite/migrations/runner.ts +44 -3
  486. package/dist/src/storage/sqlite/migrations/types.d.ts +2 -0
  487. package/dist/src/storage/sqlite/migrations/types.ts +2 -0
  488. package/dist/src/storage/sqlite/row-mappers.d.ts +2 -2
  489. package/dist/src/storage/sqlite/row-mappers.js +2 -2
  490. package/dist/src/storage/sqlite/schema.d.ts +3 -1
  491. package/dist/src/storage/sqlite/schema.js +5 -2
  492. package/dist/src/storage/sqlite/schema.sql +76 -61
  493. package/dist/src/storage/sqlite/session-input-repository.d.ts +59 -0
  494. package/dist/src/storage/sqlite/session-input-repository.js +147 -0
  495. package/dist/src/storage/sqlite/session-repository.js +5 -6
  496. package/dist/src/{work → tasks}/attention-governor.d.ts +5 -5
  497. package/dist/src/{work → tasks}/attention-governor.js +3 -4
  498. package/dist/src/tasks/execution-context.d.ts +23 -0
  499. package/dist/src/{work → tasks}/execution-context.js +7 -20
  500. package/dist/src/{work → tasks}/home-query-service.d.ts +16 -28
  501. package/dist/src/{work → tasks}/home-query-service.js +56 -126
  502. package/dist/src/tasks/index.d.ts +20 -0
  503. package/dist/src/tasks/index.js +21 -0
  504. package/dist/src/{work → tasks}/project-monitoring-service.js +1 -1
  505. package/dist/src/{work → tasks}/project-operating-view-service.d.ts +2 -4
  506. package/dist/src/tasks/project-operating-view-service.js +77 -0
  507. package/dist/src/tasks/task-application-service.d.ts +35 -0
  508. package/dist/src/tasks/task-application-service.js +423 -0
  509. package/dist/src/tasks/task-context-assembler.d.ts +36 -0
  510. package/dist/src/tasks/task-context-assembler.js +125 -0
  511. package/dist/src/tasks/task-context-repository.d.ts +52 -0
  512. package/dist/src/tasks/task-context-repository.js +97 -0
  513. package/dist/src/tasks/task-contract-definition.d.ts +10 -0
  514. package/dist/src/{work/outcome-contract-definition.js → tasks/task-contract-definition.js} +7 -5
  515. package/dist/src/tasks/task-contract-planner.d.ts +17 -0
  516. package/dist/src/tasks/task-contract-planner.js +87 -0
  517. package/dist/src/tasks/task-dependency-service.d.ts +21 -0
  518. package/dist/src/tasks/task-dependency-service.js +81 -0
  519. package/dist/src/tasks/task-outbox-dispatcher.d.ts +6 -0
  520. package/dist/src/tasks/task-outbox-dispatcher.js +31 -0
  521. package/dist/src/tasks/task-read-model-projector.d.ts +16 -0
  522. package/dist/src/tasks/task-read-model-projector.js +93 -0
  523. package/dist/src/tasks/task-repository.d.ts +82 -0
  524. package/dist/src/tasks/task-repository.js +185 -0
  525. package/dist/src/{work/outcome-run-coordinator.d.ts → tasks/task-run-coordinator.d.ts} +6 -8
  526. package/dist/src/tasks/task-run-coordinator.js +130 -0
  527. package/dist/src/tasks/task-run-dispatcher.d.ts +11 -0
  528. package/dist/src/tasks/task-run-dispatcher.js +90 -0
  529. package/dist/src/tasks/task-run-repository.d.ts +102 -0
  530. package/dist/src/tasks/task-run-repository.js +312 -0
  531. package/dist/src/tasks/task-signal-service.d.ts +8 -0
  532. package/dist/src/tasks/task-signal-service.js +72 -0
  533. package/dist/src/tasks/task-value-metrics-service.d.ts +4 -0
  534. package/dist/src/tasks/task-value-metrics-service.js +78 -0
  535. package/dist/src/tasks/task-workflow-coordinator.d.ts +5 -0
  536. package/dist/src/tasks/task-workflow-coordinator.js +54 -0
  537. package/dist/src/tui/backends/embedded-backend.d.ts +11 -1
  538. package/dist/src/tui/backends/embedded-backend.js +29 -3
  539. package/dist/src/tui/backends/gateway-sse-backend.d.ts +6 -3
  540. package/dist/src/tui/backends/gateway-sse-backend.js +38 -127
  541. package/dist/src/tui/components/settings-selector.js +0 -20
  542. package/dist/src/tui/components/tui-bottom-bar.d.ts +2 -3
  543. package/dist/src/tui/components/tui-bottom-bar.js +4 -9
  544. package/dist/src/tui/extension-host/runtime-context.js +1 -1
  545. package/dist/src/tui/tui-backend.d.ts +13 -1
  546. package/dist/src/tui/tui-backend.js +10 -1
  547. package/dist/src/tui/tui-command-formatters.js +1 -2
  548. package/dist/src/tui/tui-commands.js +8 -19
  549. package/dist/src/tui/tui-session-actions.js +0 -2
  550. package/dist/src/tui/tui-settings.d.ts +0 -6
  551. package/dist/src/tui/tui-settings.js +0 -10
  552. package/dist/src/tui/tui-startup-resources.js +1 -1
  553. package/dist/src/tui/tui-types.d.ts +1 -4
  554. package/dist/src/tui/tui-types.js +1 -2
  555. package/dist/src/tui/tui.js +90 -73
  556. package/dist/src/tui/xopc-tui-keybindings.d.ts +25 -6
  557. package/dist/src/tui/xopc-tui-keybindings.js +0 -5
  558. package/dist/src/tunnel/frpc-extract.js +1 -1
  559. package/dist/src/user-context/config.d.ts +165 -16
  560. package/dist/src/user-context/config.js +74 -14
  561. package/dist/src/user-context/context-compiler.d.ts +4 -8
  562. package/dist/src/user-context/context-compiler.js +7 -10
  563. package/dist/src/user-context/interaction-state.js +8 -4
  564. package/dist/src/user-context/manual-understanding.d.ts +19 -0
  565. package/dist/src/user-context/manual-understanding.js +69 -0
  566. package/dist/src/user-context/memory-episode-evaluator.d.ts +32 -0
  567. package/dist/src/user-context/memory-episode-evaluator.js +35 -0
  568. package/dist/src/user-context/memory-readiness.d.ts +33 -0
  569. package/dist/src/user-context/memory-readiness.js +41 -0
  570. package/dist/src/user-context/memory-use-audit.js +3 -2
  571. package/dist/src/user-context/projection.d.ts +13 -0
  572. package/dist/src/user-context/projection.js +13 -2
  573. package/dist/src/user-context/relationship-continuity.js +1 -1
  574. package/dist/src/user-context/runtime.d.ts +0 -2
  575. package/dist/src/user-context/runtime.js +1 -10
  576. package/dist/src/user-context/source-recommendations.d.ts +5 -5
  577. package/dist/src/user-context/source-recommendations.js +9 -8
  578. package/dist/src/voice/stt/transcribe-core.js +3 -3
  579. package/dist/src/voice/stt/types.d.ts +2 -2
  580. package/dist/src/voice/tts/speak-core.js +4 -4
  581. package/dist/src/voice/tts/types.d.ts +2 -2
  582. package/dist/src/work-discovery/analyzer.js +5 -5
  583. package/dist/src/work-discovery/service.d.ts +1 -10
  584. package/dist/src/work-discovery/service.js +3 -5
  585. package/dist/src/work-discovery/types.d.ts +1 -1
  586. package/dist/src/workflows/domain/run.d.ts +3 -4
  587. package/dist/src/workflows/draft/workflow-draft-prompt.js +1 -1
  588. package/dist/src/workflows/index.js +1 -1
  589. package/dist/src/workflows/service/workflow-run-service.d.ts +2 -2
  590. package/dist/src/workflows/service/workflow-run-service.js +105 -35
  591. package/dist/src/workflows/service/workflow-run-service.types.d.ts +1 -2
  592. package/dist/src/workflows/service/workflow-session-bridge.js +4 -12
  593. package/dist/src/workflows/store/run-index-store.d.ts +1 -1
  594. package/dist/src/workflows/store/run-index-store.js +10 -8
  595. package/dist/src/workflows/store/run-store.d.ts +1 -1
  596. package/dist/src/workflows/store/run-store.js +2 -2
  597. package/package.json +5 -5
  598. package/dist/gateway/static/root/assets/agents-DgGj9bu6.js +0 -2
  599. package/dist/gateway/static/root/assets/apps-page-B5xahuT-.js +0 -1
  600. package/dist/gateway/static/root/assets/automations-page-BUYrvMmD.js +0 -6
  601. package/dist/gateway/static/root/assets/browser-settings-page-Cjw07q9h.js +0 -8
  602. package/dist/gateway/static/root/assets/browser-workflow-inputs-_gu08MA4.js +0 -1
  603. package/dist/gateway/static/root/assets/capabilities-settings-panel-D_dfVxHY.js +0 -7
  604. package/dist/gateway/static/root/assets/capability-presets-api-DhCn9rPv.js +0 -1
  605. package/dist/gateway/static/root/assets/capability-presets-settings-panel-LWWIYUT7.js +0 -1
  606. package/dist/gateway/static/root/assets/channels-settings-Cyj5OunL.js +0 -1
  607. package/dist/gateway/static/root/assets/channels-status-swr-TEFnV0IG.js +0 -1
  608. package/dist/gateway/static/root/assets/connectors-page-0TobCpBB.js +0 -2
  609. package/dist/gateway/static/root/assets/desktop-pet-CwVSLL6N.js +0 -1
  610. package/dist/gateway/static/root/assets/dreaming-scene-BHMRVEUS.js +0 -4585
  611. package/dist/gateway/static/root/assets/dreaming-settings-Da9FeWQl.js +0 -3
  612. package/dist/gateway/static/root/assets/format-cron-label-arqgGlVV.js +0 -1
  613. package/dist/gateway/static/root/assets/goals-settings-Dx9uTyWF.js +0 -1
  614. package/dist/gateway/static/root/assets/heartbeat-settings-Cnr5ORXL.js +0 -1
  615. package/dist/gateway/static/root/assets/index-B0Tdge_q.css +0 -1
  616. package/dist/gateway/static/root/assets/index-BA56bQ68.js +0 -224
  617. package/dist/gateway/static/root/assets/local-app-workbench-page-DSUNtLHg.js +0 -2
  618. package/dist/gateway/static/root/assets/logs-page-yI8kpQtO.js +0 -7
  619. package/dist/gateway/static/root/assets/messages-H_iJjnEM.js +0 -3
  620. package/dist/gateway/static/root/assets/notes-workbench-BD297EZt.js +0 -4
  621. package/dist/gateway/static/root/assets/outcome-detail-page-C5i_ZR9a.js +0 -1
  622. package/dist/gateway/static/root/assets/product-delivery-BVG-eWQO.js +0 -1
  623. package/dist/gateway/static/root/assets/project-detail-page-D1HGz7Dy.js +0 -1
  624. package/dist/gateway/static/root/assets/projects-page-CqP2TnW-.js +0 -1
  625. package/dist/gateway/static/root/assets/remote-access-hub-BXdVJLS3.js +0 -1
  626. package/dist/gateway/static/root/assets/save-bar-controls-B53UNtDM.js +0 -1
  627. package/dist/gateway/static/root/assets/schedule-field-C3dIMN5q.js +0 -1
  628. package/dist/gateway/static/root/assets/sessions-page-CPAwDdl5.js +0 -1
  629. package/dist/gateway/static/root/assets/settings-advanced-gate-C-jGsoft.js +0 -1
  630. package/dist/gateway/static/root/assets/settings-page-Di5x6Xrc.js +0 -1
  631. package/dist/gateway/static/root/assets/setup-status-panel-uxEE6gAB.js +0 -1
  632. package/dist/gateway/static/root/assets/shares-settings-2mcsMWgn.js +0 -1
  633. package/dist/gateway/static/root/assets/skill-reload-api-ocDwsrEt.js +0 -1
  634. package/dist/gateway/static/root/assets/skills-page-9_jfsFU5.js +0 -2
  635. package/dist/gateway/static/root/assets/system-settings-panel-CIJ66cUy.js +0 -1
  636. package/dist/gateway/static/root/assets/time-picker-D0zAsHOo.js +0 -1
  637. package/dist/gateway/static/root/assets/use-channel-catalog-BQz3K7xj.js +0 -1
  638. package/dist/gateway/static/root/assets/user-context-page-Bn4BLg4W.js +0 -1
  639. package/dist/gateway/static/root/assets/work-copy-Cwyan9Sn.js +0 -1
  640. package/dist/gateway/static/root/assets/work-discovery-page-iJ9RBSpu.js +0 -1
  641. package/dist/gateway/static/root/assets/work-item-detail-page-CqTH7PQX.js +0 -1
  642. package/dist/gateway/static/root/assets/work-page-H3m99ccS.js +0 -3
  643. package/dist/gateway/static/root/assets/workflows-page-BxZSKMfv.js +0 -11
  644. package/dist/packages/gateway-contract/src/outcomes.js +0 -137
  645. package/dist/packages/gateway-contract/src/work-intake.js +0 -85
  646. package/dist/src/agent/goals/checklist-judge.d.ts +0 -48
  647. package/dist/src/agent/goals/checklist-judge.js +0 -237
  648. package/dist/src/agent/goals/checklist-types.d.ts +0 -21
  649. package/dist/src/agent/goals/checklist-types.js +0 -24
  650. package/dist/src/agent/goals/evaluate-turn.d.ts +0 -29
  651. package/dist/src/agent/goals/evaluate-turn.js +0 -209
  652. package/dist/src/agent/goals/goal-locale.d.ts +0 -26
  653. package/dist/src/agent/goals/goal-locale.js +0 -61
  654. package/dist/src/agent/goals/judge.d.ts +0 -41
  655. package/dist/src/agent/goals/judge.js +0 -176
  656. package/dist/src/agent/goals/persistent-goal-apis.d.ts +0 -15
  657. package/dist/src/agent/goals/persistent-goal-apis.js +0 -1
  658. package/dist/src/agent/goals/persistent-goal-service.d.ts +0 -93
  659. package/dist/src/agent/goals/persistent-goal-service.js +0 -128
  660. package/dist/src/agent/goals/post-turn.d.ts +0 -28
  661. package/dist/src/agent/goals/post-turn.js +0 -187
  662. package/dist/src/agent/goals/state.d.ts +0 -46
  663. package/dist/src/agent/goals/state.js +0 -80
  664. package/dist/src/agent/memory/builtin-memory-store.d.ts +0 -54
  665. package/dist/src/agent/memory/builtin-memory-store.js +0 -315
  666. package/dist/src/agent/memory/dreaming/events.d.ts +0 -36
  667. package/dist/src/agent/memory/dreaming/events.js +0 -42
  668. package/dist/src/agent/memory/dreaming/last-run.d.ts +0 -80
  669. package/dist/src/agent/memory/dreaming/last-run.js +0 -96
  670. package/dist/src/agent/memory/dreaming/short-term-store.d.ts +0 -75
  671. package/dist/src/agent/memory/dreaming/short-term-store.js +0 -273
  672. package/dist/src/agent/outcomes/execution-evaluation.d.ts +0 -20
  673. package/dist/src/agent/outcomes/execution-evaluation.js +0 -48
  674. package/dist/src/agent/prompt/memory/index.d.ts +0 -23
  675. package/dist/src/agent/prompt/memory/index.js +0 -101
  676. package/dist/src/agent/tools/curated-memory-tool.d.ts +0 -3
  677. package/dist/src/agent/tools/curated-memory-tool.js +0 -174
  678. package/dist/src/agent/tools/goal-evidence-recorder.d.ts +0 -6
  679. package/dist/src/agent/tools/goal-evidence-recorder.js +0 -32
  680. package/dist/src/agent/tools/goal-tool.d.ts +0 -29
  681. package/dist/src/agent/tools/goal-tool.js +0 -136
  682. package/dist/src/chat-commands/builtins/goal.d.ts +0 -4
  683. package/dist/src/chat-commands/builtins/goal.js +0 -122
  684. package/dist/src/chat-commands/builtins/subgoal.d.ts +0 -4
  685. package/dist/src/chat-commands/builtins/subgoal.js +0 -117
  686. package/dist/src/cli/commands/goal.d.ts +0 -4
  687. package/dist/src/cli/commands/goal.js +0 -235
  688. package/dist/src/discussions/pipeline.d.ts +0 -33
  689. package/dist/src/discussions/pipeline.js +0 -205
  690. package/dist/src/discussions/worker.js +0 -74
  691. package/dist/src/gateway/hono/routes/dreaming.d.ts +0 -3
  692. package/dist/src/gateway/hono/routes/dreaming.js +0 -323
  693. package/dist/src/gateway/hono/routes/execution-receipts.d.ts +0 -3
  694. package/dist/src/gateway/hono/routes/execution-receipts.js +0 -163
  695. package/dist/src/gateway/hono/routes/goals.d.ts +0 -4
  696. package/dist/src/gateway/hono/routes/goals.js +0 -786
  697. package/dist/src/gateway/hono/routes/work.js +0 -207
  698. package/dist/src/goals/goal-notifications.d.ts +0 -31
  699. package/dist/src/goals/goal-notifications.js +0 -157
  700. package/dist/src/goals/goal-queue-store.d.ts +0 -18
  701. package/dist/src/goals/goal-queue-store.js +0 -133
  702. package/dist/src/goals/goal-queue-types.d.ts +0 -42
  703. package/dist/src/goals/goal-queue-types.js +0 -1
  704. package/dist/src/goals/goal-runner.d.ts +0 -17
  705. package/dist/src/goals/goal-runner.js +0 -153
  706. package/dist/src/goals/goal-service.d.ts +0 -87
  707. package/dist/src/goals/goal-service.js +0 -323
  708. package/dist/src/goals/goal-store.d.ts +0 -44
  709. package/dist/src/goals/goal-store.js +0 -472
  710. package/dist/src/goals/goal-workflow-judge.d.ts +0 -13
  711. package/dist/src/goals/goal-workflow-judge.js +0 -145
  712. package/dist/src/goals/index.d.ts +0 -10
  713. package/dist/src/goals/index.js +0 -7
  714. package/dist/src/goals/types.d.ts +0 -136
  715. package/dist/src/goals/types.js +0 -1
  716. package/dist/src/i18n/goals-bundle.d.ts +0 -35
  717. package/dist/src/i18n/goals-bundle.js +0 -61
  718. package/dist/src/i18n/locales/goals.en.js +0 -36
  719. package/dist/src/i18n/locales/goals.zh.js +0 -35
  720. package/dist/src/projects/goal-bind.d.ts +0 -4
  721. package/dist/src/projects/goal-bind.js +0 -38
  722. package/dist/src/session/abort-cutoff.d.ts +0 -6
  723. package/dist/src/session/abort-cutoff.js +0 -8
  724. package/dist/src/storage/sqlite/execution-receipt-repository.d.ts +0 -146
  725. package/dist/src/storage/sqlite/execution-receipt-repository.js +0 -235
  726. package/dist/src/storage/sqlite/memory-index-repository.d.ts +0 -18
  727. package/dist/src/storage/sqlite/memory-index-repository.js +0 -136
  728. package/dist/src/tui/tui-follow-up-queue.d.ts +0 -9
  729. package/dist/src/tui/tui-follow-up-queue.js +0 -16
  730. package/dist/src/work/execution-context.d.ts +0 -16
  731. package/dist/src/work/index.d.ts +0 -14
  732. package/dist/src/work/index.js +0 -15
  733. package/dist/src/work/outcome-contract-definition.d.ts +0 -8
  734. package/dist/src/work/outcome-execution-service.d.ts +0 -27
  735. package/dist/src/work/outcome-execution-service.js +0 -60
  736. package/dist/src/work/outcome-projection-service.d.ts +0 -7
  737. package/dist/src/work/outcome-projection-service.js +0 -51
  738. package/dist/src/work/outcome-receipt-service.d.ts +0 -13
  739. package/dist/src/work/outcome-receipt-service.js +0 -55
  740. package/dist/src/work/outcome-repository.d.ts +0 -50
  741. package/dist/src/work/outcome-repository.js +0 -112
  742. package/dist/src/work/outcome-run-coordinator.js +0 -117
  743. package/dist/src/work/project-operating-view-service.js +0 -46
  744. package/dist/src/work/work-intake-repository.d.ts +0 -49
  745. package/dist/src/work/work-intake-repository.js +0 -97
  746. package/dist/src/work/work-intake-service.d.ts +0 -26
  747. package/dist/src/work/work-intake-service.js +0 -171
  748. package/dist/src/work/work-value-metrics-service.d.ts +0 -4
  749. package/dist/src/work/work-value-metrics-service.js +0 -88
  750. package/dist/src/work-items/agent-context.d.ts +0 -7
  751. package/dist/src/work-items/agent-context.js +0 -73
  752. package/dist/src/work-items/index.d.ts +0 -5
  753. package/dist/src/work-items/index.js +0 -5
  754. package/dist/src/work-items/types.d.ts +0 -112
  755. package/dist/src/work-items/types.js +0 -1
  756. package/dist/src/work-items/work-item-service.d.ts +0 -36
  757. package/dist/src/work-items/work-item-service.js +0 -281
  758. package/dist/src/work-items/work-item-store.d.ts +0 -22
  759. package/dist/src/work-items/work-item-store.js +0 -313
  760. package/dist/src/work-items/work-item-workflow-judge.d.ts +0 -8
  761. package/dist/src/work-items/work-item-workflow-judge.js +0 -48
  762. /package/dist/src/{work → tasks}/project-monitoring-service.d.ts +0 -0
@@ -7,7 +7,6 @@ export { DEFAULT_ACTIVITY_DETAIL_LEVEL, resolveConfiguredActivityDetailDefault,
7
7
  export type { SessionAgentConfig } from './config-types.js';
8
8
  export { normalizeWorkingDirectoryInput, effectiveWorkspacePathForSession, projectWorkspacePath, } from './session-workspace.js';
9
9
  export { SessionStatus, type SessionMetadata, type SessionDetail, type SessionListQuery, type PaginatedResult, type SessionStats, type ExportFormat, type SessionExport, type SessionTranscriptSummary, type CompactionBoundarySummary, } from './types.js';
10
- export { shouldSkipWebchatInboundByAbortCutoff } from './abort-cutoff.js';
11
10
  export { DEFAULT_RESET_AT_HOUR, DEFAULT_RESET_MODE, DEFAULT_IDLE_MINUTES, evaluateSessionFreshness, resolveDailyResetAtMs, resolveSessionResetPolicy, type SessionFreshness, type SessionResetConfig, type SessionResetMode, type SessionResetPolicy, type SessionResetType, } from './reset-policy.js';
12
11
  export { resolveChannelResetConfig, resolveSessionResetType, } from './reset-type.js';
13
12
  export { resolveSessionLifecycleTimestamps, type SessionLifecycleEntry } from './lifecycle-timestamps.js';
@@ -9,7 +9,6 @@ import { applySessionPatchToMetadata } from "./patch-metadata.js";
9
9
  import { SessionIndex } from "./manager.js";
10
10
  import { SessionConfigStore, resolveReasoningLevel, resolveThinkingLevel, resolveVerboseLevel } from "./config-store.js";
11
11
  import { DEFAULT_ACTIVITY_DETAIL_LEVEL, resolveConfiguredActivityDetailDefault, resolveEffectiveReasoningLevel, resolveEffectiveThinkingLevel } from "./thinking-resolve.js";
12
- import { shouldSkipWebchatInboundByAbortCutoff } from "./abort-cutoff.js";
13
12
  import { DEFAULT_IDLE_MINUTES, DEFAULT_RESET_AT_HOUR, DEFAULT_RESET_MODE, evaluateSessionFreshness, resolveDailyResetAtMs, resolveSessionResetPolicy } from "./reset-policy.js";
14
13
  import { resolveChannelResetConfig, resolveSessionResetType } from "./reset-type.js";
15
14
  import { resolveSessionLifecycleTimestamps } from "./lifecycle-timestamps.js";
@@ -17,4 +16,4 @@ import { resolveSession, resolveSessionKeyForRequest } from "./resolve-session.j
17
16
  import { DEFAULT_RESET_TRIGGERS, RESET_OVERLAP_COMMANDS, bareResetAckMessage, matchResetTriggers, resolveResetTriggers, shouldSkipResetOverlapCommand, stripLeadingEnvelopeTimestamp } from "./reset-triggers.js";
18
17
  import { initSessionTurn } from "./init-session-turn.js";
19
18
  import { CURRENT_SESSION_TRANSCRIPT_VERSION, XOPC_SESSION_TRANSCRIPT_TYPE } from "./transcript-format.js";
20
- export { CURRENT_SESSION_TRANSCRIPT_VERSION, DEFAULT_ACTIVITY_DETAIL_LEVEL, DEFAULT_IDLE_MINUTES, DEFAULT_RESET_AT_HOUR, DEFAULT_RESET_MODE, DEFAULT_RESET_TRIGGERS, RESET_OVERLAP_COMMANDS, SessionConfigStore, SessionIndex, SessionStatus, SessionStore, XOPC_SESSION_TRANSCRIPT_TYPE, applySessionPatchToMetadata, bareResetAckMessage, buildSessionContextForLlm, effectiveWorkspacePathForSession, emitSessionTranscriptUpdate, evaluateSessionFreshness, fallbackTitleFromMessages, flattenMessageContent, generateSessionTitleFromMessages, getSessionTitleSource, initSessionTurn, isTranscriptContextEntry, isWebchatSessionKey, matchResetTriggers, maybeRefineSessionTitleWithLlm, maybeSetProvisionalSessionTitle, mergeLlmMessagesPreservingContextRows, messagesToClientHistory, normalizeWorkingDirectoryInput, onSessionTranscriptUpdate, projectWorkspacePath, provisionalTitleFromUserText, resolveChannelResetConfig, resolveConfiguredActivityDetailDefault, resolveDailyResetAtMs, resolveEffectiveReasoningLevel, resolveEffectiveThinkingLevel, resolveReasoningLevel, resolveResetTriggers, resolveSession, resolveSessionKeyForRequest, resolveSessionLifecycleTimestamps, resolveSessionResetPolicy, resolveSessionResetType, resolveThinkingLevel, resolveVerboseLevel, sanitizeGeneratedSessionTitle, sanitizeSessionTitle, shouldAutoTitleSessionKey, shouldRefineSessionTitleWithLlm, shouldSkipResetOverlapCommand, shouldSkipWebchatInboundByAbortCutoff, stripLeadingEnvelopeTimestamp, transcriptRowsFromJsonArray };
19
+ export { CURRENT_SESSION_TRANSCRIPT_VERSION, DEFAULT_ACTIVITY_DETAIL_LEVEL, DEFAULT_IDLE_MINUTES, DEFAULT_RESET_AT_HOUR, DEFAULT_RESET_MODE, DEFAULT_RESET_TRIGGERS, RESET_OVERLAP_COMMANDS, SessionConfigStore, SessionIndex, SessionStatus, SessionStore, XOPC_SESSION_TRANSCRIPT_TYPE, applySessionPatchToMetadata, bareResetAckMessage, buildSessionContextForLlm, effectiveWorkspacePathForSession, emitSessionTranscriptUpdate, evaluateSessionFreshness, fallbackTitleFromMessages, flattenMessageContent, generateSessionTitleFromMessages, getSessionTitleSource, initSessionTurn, isTranscriptContextEntry, isWebchatSessionKey, matchResetTriggers, maybeRefineSessionTitleWithLlm, maybeSetProvisionalSessionTitle, mergeLlmMessagesPreservingContextRows, messagesToClientHistory, normalizeWorkingDirectoryInput, onSessionTranscriptUpdate, projectWorkspacePath, provisionalTitleFromUserText, resolveChannelResetConfig, resolveConfiguredActivityDetailDefault, resolveDailyResetAtMs, resolveEffectiveReasoningLevel, resolveEffectiveThinkingLevel, resolveReasoningLevel, resolveResetTriggers, resolveSession, resolveSessionKeyForRequest, resolveSessionLifecycleTimestamps, resolveSessionResetPolicy, resolveSessionResetType, resolveThinkingLevel, resolveVerboseLevel, sanitizeGeneratedSessionTitle, sanitizeSessionTitle, shouldAutoTitleSessionKey, shouldRefineSessionTitleWithLlm, shouldSkipResetOverlapCommand, stripLeadingEnvelopeTimestamp, transcriptRowsFromJsonArray };
@@ -56,15 +56,15 @@ async function initSessionTurn(opts) {
56
56
  let previousSessionId;
57
57
  let isNewSession = false;
58
58
  if (needsRollover && sessionMetadata?.sessionId) {
59
- const outcome = await opts.resetSession(key);
60
- if (outcome) {
61
- previousSessionId = outcome.previousSessionId;
62
- sessionId = outcome.sessionId;
59
+ const task = await opts.resetSession(key);
60
+ if (task) {
61
+ previousSessionId = task.previousSessionId;
62
+ sessionId = task.sessionId;
63
63
  isNewSession = true;
64
64
  log.info({
65
65
  sessionKey: key,
66
- sessionId: outcome.sessionId,
67
- previousSessionId: outcome.previousSessionId,
66
+ sessionId: task.sessionId,
67
+ previousSessionId: task.previousSessionId,
68
68
  resetTriggered: triggerMatch.resetTriggered,
69
69
  staleRollover,
70
70
  resetType
@@ -237,12 +237,12 @@ var SessionStore = class {
237
237
  async reset(key) {
238
238
  return this.runStoreMutation(async () => {
239
239
  requireXopcDatabase();
240
- const outcome = resetSessionRecord(key, this.resolveWorkspaceCwd(key));
241
- if (outcome) log.info({
240
+ const task = resetSessionRecord(key, this.resolveWorkspaceCwd(key));
241
+ if (task) log.info({
242
242
  key,
243
- ...outcome
243
+ ...task
244
244
  }, "Session reset");
245
- return outcome;
245
+ return task;
246
246
  });
247
247
  }
248
248
  async delete(key) {
@@ -94,7 +94,7 @@ export interface SessionMetadata {
94
94
  sourceChannel: string;
95
95
  sourceChatId: string;
96
96
  customData?: Record<string, unknown>;
97
- /** Optional project grouping for sessions, goals, workflows, and related context. */
97
+ /** Optional project grouping for sessions, Tasks, workflows, and related context. */
98
98
  projectId?: string;
99
99
  /** Routing metadata */
100
100
  routing?: SessionRoutingMeta;
@@ -119,11 +119,6 @@ export interface SessionMetadata {
119
119
  sessionStartedAt?: string;
120
120
  /** Last transcript write / interaction (ISO), updated on each persist. */
121
121
  lastInteractionAt?: string;
122
- /**
123
- * Epoch ms when the last webchat run was aborted (`POST /api/agent/abort`).
124
- * Used with `clientCreatedAtMs` on the next POST /api/agent to drop stale queued sends.
125
- */
126
- abortCutoffTimestamp?: number;
127
122
  }
128
123
  /** Summary of wrapped transcript (no duplicate message bodies). */
129
124
  export interface SessionTranscriptSummary {
@@ -1,7 +1,7 @@
1
1
  import { createLogger } from "../utils/logger/index.js";
2
2
  import { init_logger } from "../utils/logger.js";
3
- import { Readable } from "node:stream";
4
3
  import { request } from "undici";
4
+ import { Readable } from "node:stream";
5
5
  import * as ws from "ws";
6
6
  //#region src/share/site-proxy.ts
7
7
  init_logger();
@@ -4,7 +4,8 @@ import { ensureSessionInTransaction } from "./session-repository.js";
4
4
  //#region src/storage/sqlite/config-repository.ts
5
5
  function readConfigRow(db, sessionKey) {
6
6
  return db.prepare(`SELECT session_key, thinking_level, reasoning_level, verbose_level, elevated_mode,
7
- model_override, provider_override, working_directory_override, updated_at
7
+ model_override, provider_override, working_directory_override, response_language,
8
+ user_context_mode, updated_at
8
9
  FROM session_config WHERE session_key = ?`).get(sessionKey);
9
10
  }
10
11
  function getSessionConfig(sessionKey) {
@@ -22,8 +23,8 @@ function setSessionConfig(sessionKey, config, cwd) {
22
23
  };
23
24
  db.prepare(`INSERT INTO session_config (
24
25
  session_key, thinking_level, reasoning_level, verbose_level, elevated_mode,
25
- model_override, provider_override, working_directory_override, updated_at
26
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)
26
+ model_override, provider_override, working_directory_override, response_language, user_context_mode, updated_at
27
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
27
28
  ON CONFLICT(session_key) DO UPDATE SET
28
29
  thinking_level = excluded.thinking_level,
29
30
  reasoning_level = excluded.reasoning_level,
@@ -32,7 +33,9 @@ function setSessionConfig(sessionKey, config, cwd) {
32
33
  model_override = excluded.model_override,
33
34
  provider_override = excluded.provider_override,
34
35
  working_directory_override = excluded.working_directory_override,
35
- updated_at = excluded.updated_at`).run(sessionKey, next.thinkingLevel ?? null, next.reasoningLevel ?? null, next.verboseLevel ?? null, next.elevatedMode ?? null, next.modelOverride ?? null, next.providerOverride ?? null, next.workingDirectoryOverride ?? null, updatedAt);
36
+ response_language = excluded.response_language,
37
+ user_context_mode = excluded.user_context_mode,
38
+ updated_at = excluded.updated_at`).run(sessionKey, next.thinkingLevel ?? null, next.reasoningLevel ?? null, next.verboseLevel ?? null, next.elevatedMode ?? null, next.modelOverride ?? null, next.providerOverride ?? null, next.workingDirectoryOverride ?? null, next.responseLanguage ?? null, next.userContextMode ?? null, updatedAt);
36
39
  return next;
37
40
  });
38
41
  }
@@ -189,7 +189,7 @@ function openDatabaseAtPath(pathname) {
189
189
  }, `SQLite WAL checkpoint failed: ${em}`);
190
190
  }
191
191
  });
192
- ensureXopcDatabaseSchema(db);
192
+ ensureXopcDatabaseSchema(db, { databasePath: pathname });
193
193
  ensureDatabasePermissions(pathname);
194
194
  log.info({ path: pathname }, "Opened xopc SQLite database");
195
195
  return {
@@ -0,0 +1,12 @@
1
+ import type { ConnectorAccount } from '../../connectors/types.js';
2
+ export declare function getConnectorAccount(id: string): ConnectorAccount | undefined;
3
+ export declare function listConnectorAccounts(options?: {
4
+ principalId?: string;
5
+ connectorId?: string;
6
+ }): ConnectorAccount[];
7
+ export declare function refreshConnectorAccountCurrent(accountId: string): ConnectorAccount | undefined;
8
+ export declare function reconcileConnectorAccount(input: {
9
+ connectionId: string;
10
+ identityKey: string;
11
+ identity: Record<string, unknown>;
12
+ }): ConnectorAccount;
@@ -0,0 +1,143 @@
1
+ import { getSqliteDatabase, runSqliteWriteTransaction } from "./transaction.js";
2
+ //#region src/storage/sqlite/connector-account-repository.ts
3
+ function parseIdentity(value) {
4
+ try {
5
+ const parsed = JSON.parse(value);
6
+ return parsed && typeof parsed === "object" && !Array.isArray(parsed) ? parsed : {};
7
+ } catch {
8
+ return {};
9
+ }
10
+ }
11
+ function fromRow(row) {
12
+ return {
13
+ id: row.id,
14
+ connectorId: row.connector_id,
15
+ principalId: row.principal_id,
16
+ identityKey: row.identity_key ?? void 0,
17
+ identity: parseIdentity(row.identity_json),
18
+ currentConnectionId: row.current_connection_id ?? void 0,
19
+ createdAt: row.created_at,
20
+ updatedAt: row.updated_at
21
+ };
22
+ }
23
+ function mergeAccountSourceData(db, connectorId, sourceAccountId, targetAccountId) {
24
+ const sourceId = `composio:${connectorId}:${sourceAccountId}`;
25
+ const targetId = `composio:${connectorId}:${targetAccountId}`;
26
+ db.prepare(`
27
+ DELETE FROM knowledge_source_items AS source
28
+ WHERE source.source_instance_id = ?
29
+ AND EXISTS (
30
+ SELECT 1 FROM knowledge_source_items AS target
31
+ WHERE target.source_instance_id = ?
32
+ AND target.collection_scope = source.collection_scope
33
+ AND target.external_id = source.external_id
34
+ )
35
+ `).run(sourceId, targetId);
36
+ db.prepare("UPDATE knowledge_source_items SET source_instance_id = ? WHERE source_instance_id = ?").run(targetId, sourceId);
37
+ db.prepare("UPDATE knowledge_sync_runs SET source_instance_id = ? WHERE source_instance_id = ?").run(targetId, sourceId);
38
+ db.prepare("UPDATE knowledge_source_changes SET source_instance_id = ? WHERE source_instance_id = ?").run(targetId, sourceId);
39
+ db.prepare("UPDATE user_claim_evidence SET source_instance_id = ? WHERE source_instance_id = ?").run(targetId, sourceId);
40
+ db.prepare(`
41
+ DELETE FROM knowledge_collection_state AS source
42
+ WHERE source.source_instance_id = ?
43
+ AND EXISTS (
44
+ SELECT 1 FROM knowledge_collection_state AS target
45
+ WHERE target.source_instance_id = ?
46
+ AND target.collection_scope = source.collection_scope
47
+ )
48
+ `).run(sourceId, targetId);
49
+ db.prepare("UPDATE knowledge_collection_state SET source_instance_id = ? WHERE source_instance_id = ?").run(targetId, sourceId);
50
+ db.prepare(`
51
+ INSERT INTO knowledge_consumer_watermarks (
52
+ consumer_id, source_instance_id, last_sequence, updated_at
53
+ )
54
+ SELECT consumer_id, ?, last_sequence, updated_at
55
+ FROM knowledge_consumer_watermarks
56
+ WHERE source_instance_id = ?
57
+ ON CONFLICT(consumer_id, source_instance_id) DO UPDATE SET
58
+ last_sequence = MAX(last_sequence, excluded.last_sequence),
59
+ updated_at = MAX(updated_at, excluded.updated_at)
60
+ `).run(targetId, sourceId);
61
+ db.prepare("DELETE FROM knowledge_consumer_watermarks WHERE source_instance_id = ?").run(sourceId);
62
+ db.prepare(`
63
+ UPDATE memory_records
64
+ SET source_json = json_set(source_json, '$.sourceInstanceId', ?)
65
+ WHERE json_extract(source_json, '$.sourceInstanceId') = ?
66
+ `).run(targetId, sourceId);
67
+ db.prepare(`
68
+ UPDATE connector_learning_jobs
69
+ SET source_instance_id = ?
70
+ WHERE account_id = ?
71
+ `).run(targetId, sourceAccountId);
72
+ }
73
+ function getConnectorAccount(id) {
74
+ const row = getSqliteDatabase().prepare("SELECT * FROM connector_accounts WHERE id = ?").get(id);
75
+ return row ? fromRow(row) : void 0;
76
+ }
77
+ function listConnectorAccounts(options = {}) {
78
+ const clauses = [];
79
+ const values = [];
80
+ if (options.principalId) {
81
+ clauses.push("principal_id = ?");
82
+ values.push(options.principalId);
83
+ }
84
+ if (options.connectorId) {
85
+ clauses.push("connector_id = ?");
86
+ values.push(options.connectorId);
87
+ }
88
+ const where = clauses.length ? ` WHERE ${clauses.join(" AND ")}` : "";
89
+ return getSqliteDatabase().prepare(`SELECT * FROM connector_accounts${where} ORDER BY updated_at DESC`).all(...values).map(fromRow);
90
+ }
91
+ function refreshConnectorAccountCurrent(accountId) {
92
+ const now = (/* @__PURE__ */ new Date()).toISOString();
93
+ runSqliteWriteTransaction((db) => {
94
+ const primary = db.prepare(`
95
+ SELECT id FROM connector_connections
96
+ WHERE account_id = ?
97
+ ORDER BY CASE status WHEN 'active' THEN 0 ELSE 1 END,
98
+ COALESCE(connected_at, updated_at) DESC
99
+ LIMIT 1
100
+ `).get(accountId);
101
+ if (primary) db.prepare(`
102
+ UPDATE connector_accounts
103
+ SET current_connection_id = ?, updated_at = ?
104
+ WHERE id = ? AND current_connection_id IS NOT ?
105
+ `).run(primary.id, now, accountId, primary.id);
106
+ });
107
+ return getConnectorAccount(accountId);
108
+ }
109
+ function reconcileConnectorAccount(input) {
110
+ const now = (/* @__PURE__ */ new Date()).toISOString();
111
+ return getConnectorAccount(runSqliteWriteTransaction((db) => {
112
+ const connection = db.prepare("SELECT account_id, connector_id, principal_id FROM connector_connections WHERE id = ?").get(input.connectionId);
113
+ if (!connection?.account_id) throw new Error(`Connector connection not found: ${input.connectionId}`);
114
+ const targetId = db.prepare(`
115
+ SELECT id FROM connector_accounts
116
+ WHERE principal_id = ? AND connector_id = ? AND identity_key = ?
117
+ `).get(connection.principal_id, connection.connector_id, input.identityKey)?.id ?? connection.account_id;
118
+ if (targetId !== connection.account_id) {
119
+ mergeAccountSourceData(db, connection.connector_id, connection.account_id, targetId);
120
+ if (db.prepare("SELECT 1 FROM connector_sync_policies WHERE account_id = ?").get(targetId)) db.prepare("DELETE FROM connector_sync_policies WHERE account_id = ?").run(connection.account_id);
121
+ else db.prepare("UPDATE connector_sync_policies SET account_id = ? WHERE account_id = ?").run(targetId, connection.account_id);
122
+ db.prepare("UPDATE connector_learning_jobs SET account_id = ? WHERE account_id = ?").run(targetId, connection.account_id);
123
+ db.prepare("UPDATE connector_connections SET account_id = ? WHERE account_id = ?").run(targetId, connection.account_id);
124
+ db.prepare("DELETE FROM connector_accounts WHERE id = ?").run(connection.account_id);
125
+ }
126
+ const primary = db.prepare(`
127
+ SELECT id FROM connector_connections
128
+ WHERE account_id = ?
129
+ ORDER BY CASE status WHEN 'active' THEN 0 ELSE 1 END,
130
+ COALESCE(connected_at, updated_at) DESC
131
+ LIMIT 1
132
+ `).get(targetId);
133
+ if (!primary) throw new Error(`Connector account has no authorizations: ${targetId}`);
134
+ db.prepare(`
135
+ UPDATE connector_accounts
136
+ SET identity_key = ?, identity_json = ?, current_connection_id = ?, updated_at = ?
137
+ WHERE id = ?
138
+ `).run(input.identityKey, JSON.stringify(input.identity), primary.id, now, targetId);
139
+ return targetId;
140
+ }));
141
+ }
142
+ //#endregion
143
+ export { getConnectorAccount, listConnectorAccounts, reconcileConnectorAccount, refreshConnectorAccountCurrent };
@@ -5,6 +5,7 @@ export type ConnectorLearningJob = {
5
5
  id: string;
6
6
  idempotencyKey: string;
7
7
  connectorId: string;
8
+ accountId: string;
8
9
  connectionId: string;
9
10
  sourceInstanceId: string;
10
11
  agentId: string;
@@ -24,6 +25,7 @@ export type ConnectorLearningJob = {
24
25
  };
25
26
  export declare function enqueueConnectorLearningJob(input: {
26
27
  connectorId: string;
28
+ accountId: string;
27
29
  connectionId: string;
28
30
  sourceInstanceId: string;
29
31
  agentId: string;
@@ -34,14 +36,15 @@ export declare function enqueueConnectorLearningJob(input: {
34
36
  }): ConnectorLearningJob;
35
37
  export declare function claimNextConnectorLearningJob(nowMs?: number): ConnectorLearningJob | null;
36
38
  export declare function recoverStaleConnectorLearningJobs(staleBeforeMs: number, nowMs?: number): number;
37
- export declare function setConnectorLearningPaused(connectionId: string, paused: boolean, nowMs?: number): number;
38
- export declare function updateConnectorLearningJob(id: string, patch: Partial<Pick<ConnectorLearningJob, 'status' | 'phase' | 'itemsDiscovered' | 'itemsIndexed' | 'candidatesCreated' | 'error'>> & {
39
+ export declare function setConnectorLearningPaused(accountId: string, paused: boolean, nowMs?: number): number;
40
+ export declare function updateConnectorLearningJob(id: string, patch: Partial<Pick<ConnectorLearningJob, 'accountId' | 'sourceInstanceId' | 'status' | 'phase' | 'itemsDiscovered' | 'itemsIndexed' | 'candidatesCreated' | 'error'>> & {
39
41
  nextRunAt?: number | null;
40
42
  finished?: boolean;
41
43
  nowMs?: number;
42
44
  }): ConnectorLearningJob;
43
45
  export declare function listConnectorLearningJobs(options?: {
44
46
  sourceInstanceId?: string;
47
+ accountId?: string;
45
48
  connectionId?: string;
46
49
  limit?: number;
47
50
  }): ConnectorLearningJob[];
@@ -9,6 +9,7 @@ function fromRow(row) {
9
9
  id: row.job_id,
10
10
  idempotencyKey: row.idempotency_key,
11
11
  connectorId: row.connector_id,
12
+ accountId: row.account_id,
12
13
  connectionId: row.connection_id,
13
14
  sourceInstanceId: row.source_instance_id,
14
15
  agentId: row.agent_id,
@@ -31,10 +32,10 @@ function enqueueConnectorLearningJob(input) {
31
32
  const now = input.nowMs ?? Date.now();
32
33
  runSqliteWriteTransaction((db) => {
33
34
  db.prepare(`INSERT INTO connector_learning_jobs (
34
- job_id, idempotency_key, connector_id, connection_id, source_instance_id,
35
+ job_id, idempotency_key, connector_id, account_id, connection_id, source_instance_id,
35
36
  agent_id, mode, status, phase, next_run_at, created_at, updated_at
36
- ) VALUES (?, ?, ?, ?, ?, ?, ?, 'queued', 'queued', ?, ?, ?)
37
- ON CONFLICT(idempotency_key) DO NOTHING`).run(randomUUID(), input.idempotencyKey, input.connectorId, input.connectionId, input.sourceInstanceId, input.agentId, input.mode, input.nextRunAt ?? now, now, now);
37
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, 'queued', 'queued', ?, ?, ?)
38
+ ON CONFLICT(idempotency_key) DO NOTHING`).run(randomUUID(), input.idempotencyKey, input.connectorId, input.accountId, input.connectionId, input.sourceInstanceId, input.agentId, input.mode, input.nextRunAt ?? now, now, now);
38
39
  });
39
40
  return fromRow(getSqliteDatabase().prepare("SELECT * FROM connector_learning_jobs WHERE idempotency_key = ?").get(input.idempotencyKey));
40
41
  }
@@ -59,13 +60,13 @@ function recoverStaleConnectorLearningJobs(staleBeforeMs, nowMs = Date.now()) {
59
60
  finished_at = ?, updated_at = ?
60
61
  WHERE status = 'running' AND updated_at < ?`).run(nowMs, nowMs, nowMs, staleBeforeMs).changes));
61
62
  }
62
- function setConnectorLearningPaused(connectionId, paused, nowMs = Date.now()) {
63
+ function setConnectorLearningPaused(accountId, paused, nowMs = Date.now()) {
63
64
  return runSqliteWriteTransaction((db) => Number(db.prepare(paused ? `UPDATE connector_learning_jobs SET status = 'paused', next_run_at = NULL, updated_at = ?
64
- WHERE connection_id = ? AND status IN ('queued', 'failed', 'running')` : `UPDATE connector_learning_jobs SET status = 'queued', next_run_at = ?, updated_at = ?
65
- WHERE connection_id = ? AND status = 'paused'`).run(...paused ? [nowMs, connectionId] : [
65
+ WHERE account_id = ? AND status IN ('queued', 'failed', 'running')` : `UPDATE connector_learning_jobs SET status = 'queued', next_run_at = ?, updated_at = ?
66
+ WHERE account_id = ? AND status = 'paused'`).run(...paused ? [nowMs, accountId] : [
66
67
  nowMs,
67
68
  nowMs,
68
- connectionId
69
+ accountId
69
70
  ]).changes));
70
71
  }
71
72
  function updateConnectorLearningJob(id, patch) {
@@ -78,6 +79,8 @@ function updateConnectorLearningJob(id, patch) {
78
79
  values.push(value);
79
80
  };
80
81
  add("status", patch.status);
82
+ add("account_id", patch.accountId);
83
+ add("source_instance_id", patch.sourceInstanceId);
81
84
  add("phase", patch.phase);
82
85
  add("items_discovered", patch.itemsDiscovered);
83
86
  add("items_indexed", patch.itemsIndexed);
@@ -98,6 +101,10 @@ function listConnectorLearningJobs(options = {}) {
98
101
  clauses.push("source_instance_id = ?");
99
102
  values.push(options.sourceInstanceId);
100
103
  }
104
+ if (options.accountId) {
105
+ clauses.push("account_id = ?");
106
+ values.push(options.accountId);
107
+ }
101
108
  if (options.connectionId) {
102
109
  clauses.push("connection_id = ?");
103
110
  values.push(options.connectionId);
@@ -34,6 +34,7 @@ function installationFromRow(row) {
34
34
  function connectionFromRow(row) {
35
35
  return {
36
36
  id: row.id,
37
+ accountId: row.account_id ?? void 0,
37
38
  installationId: row.installation_id ?? void 0,
38
39
  connectorId: row.connector_id,
39
40
  provider: row.provider,
@@ -249,14 +250,22 @@ function deleteConnectorInstallation(id) {
249
250
  function upsertConnectorConnection(input) {
250
251
  const now = (/* @__PURE__ */ new Date()).toISOString();
251
252
  return runSqliteWriteTransaction((db) => {
253
+ const accountId = input.accountId ?? `account:${input.id}`;
254
+ db.prepare(`
255
+ INSERT INTO connector_accounts (
256
+ id, connector_id, principal_id, identity_json, current_connection_id, created_at, updated_at
257
+ ) VALUES (?, ?, ?, ?, ?, ?, ?)
258
+ ON CONFLICT(id) DO NOTHING
259
+ `).run(accountId, input.connectorId, input.principalId, JSON.stringify(input.identity), input.id, input.createdAt ?? now, input.updatedAt ?? now);
252
260
  if (input.isDefault) db.prepare("UPDATE connector_connections SET is_default = 0 WHERE principal_id = ? AND connector_id = ? AND id <> ?").run(input.principalId, input.connectorId, input.id);
253
261
  db.prepare(`
254
262
  INSERT INTO connector_connections (
255
- id, installation_id, connector_id, provider, principal_id, provider_connection_id,
263
+ id, account_id, installation_id, connector_id, provider, principal_id, provider_connection_id,
256
264
  alias, identity_json, status, is_default, connected_at, expires_at, last_error,
257
265
  metadata_json, created_at, updated_at
258
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
266
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
259
267
  ON CONFLICT(id) DO UPDATE SET
268
+ account_id = excluded.account_id,
260
269
  installation_id = excluded.installation_id,
261
270
  connector_id = excluded.connector_id,
262
271
  provider = excluded.provider,
@@ -271,7 +280,7 @@ function upsertConnectorConnection(input) {
271
280
  last_error = excluded.last_error,
272
281
  metadata_json = excluded.metadata_json,
273
282
  updated_at = excluded.updated_at
274
- `).run(input.id, input.installationId ?? null, input.connectorId, input.provider, input.principalId, input.providerConnectionId, input.alias ?? null, JSON.stringify(input.identity), input.status, input.isDefault ? 1 : 0, input.connectedAt ?? null, input.expiresAt ?? null, input.lastError ?? null, JSON.stringify(input.metadata), input.createdAt ?? now, input.updatedAt ?? now);
283
+ `).run(input.id, accountId, input.installationId ?? null, input.connectorId, input.provider, input.principalId, input.providerConnectionId, input.alias ?? null, JSON.stringify(input.identity), input.status, input.isDefault ? 1 : 0, input.connectedAt ?? null, input.expiresAt ?? null, input.lastError ?? null, JSON.stringify(input.metadata), input.createdAt ?? now, input.updatedAt ?? now);
275
284
  return getConnectorConnection(input.id);
276
285
  });
277
286
  }
@@ -1,5 +1,5 @@
1
1
  export type ConnectorSyncPolicy = {
2
- connectionId: string;
2
+ accountId: string;
3
3
  scanEnabled: boolean;
4
4
  proactiveEnabled: boolean;
5
5
  intervalMinutes?: number;
@@ -7,10 +7,11 @@ export type ConnectorSyncPolicy = {
7
7
  revision: number;
8
8
  updatedAt: string;
9
9
  };
10
- export declare function getConnectorSyncPolicy(connectionId: string): ConnectorSyncPolicy | undefined;
10
+ export declare function getConnectorSyncPolicy(accountId: string): ConnectorSyncPolicy | undefined;
11
+ export declare function getConnectorSyncPolicyForConnection(connectionId: string): ConnectorSyncPolicy | undefined;
11
12
  export declare function listConnectorSyncPolicies(): ConnectorSyncPolicy[];
12
13
  export declare function upsertConnectorSyncPolicy(input: {
13
- connectionId: string;
14
+ accountId: string;
14
15
  scanEnabled?: boolean;
15
16
  proactiveEnabled?: boolean;
16
17
  intervalMinutes?: number | null;
@@ -10,7 +10,7 @@ function stringArray(value) {
10
10
  }
11
11
  function fromRow(row) {
12
12
  return {
13
- connectionId: row.connection_id,
13
+ accountId: row.account_id,
14
14
  scanEnabled: row.scan_enabled === 1,
15
15
  proactiveEnabled: row.proactive_enabled === 1,
16
16
  ...row.interval_minutes == null ? {} : { intervalMinutes: row.interval_minutes },
@@ -19,32 +19,42 @@ function fromRow(row) {
19
19
  updatedAt: new Date(row.updated_at).toISOString()
20
20
  };
21
21
  }
22
- function getConnectorSyncPolicy(connectionId) {
23
- const row = getSqliteDatabase().prepare("SELECT * FROM connector_sync_policies WHERE connection_id = ?").get(connectionId);
22
+ function getConnectorSyncPolicy(accountId) {
23
+ const row = getSqliteDatabase().prepare("SELECT * FROM connector_sync_policies WHERE account_id = ?").get(accountId);
24
+ return row ? fromRow(row) : void 0;
25
+ }
26
+ function getConnectorSyncPolicyForConnection(connectionId) {
27
+ const row = getSqliteDatabase().prepare(`
28
+ SELECT connector_sync_policies.*
29
+ FROM connector_sync_policies
30
+ JOIN connector_connections
31
+ ON connector_connections.account_id = connector_sync_policies.account_id
32
+ WHERE connector_connections.id = ?
33
+ `).get(connectionId);
24
34
  return row ? fromRow(row) : void 0;
25
35
  }
26
36
  function listConnectorSyncPolicies() {
27
- return getSqliteDatabase().prepare("SELECT * FROM connector_sync_policies ORDER BY connection_id ASC").all().map(fromRow);
37
+ return getSqliteDatabase().prepare("SELECT * FROM connector_sync_policies ORDER BY account_id ASC").all().map(fromRow);
28
38
  }
29
39
  function upsertConnectorSyncPolicy(input) {
30
- const current = getConnectorSyncPolicy(input.connectionId);
40
+ const current = getConnectorSyncPolicy(input.accountId);
31
41
  const now = input.nowMs ?? Date.now();
32
42
  const intervalMinutes = input.intervalMinutes === null ? null : Math.max(5, Math.min(1440, input.intervalMinutes ?? current?.intervalMinutes ?? input.defaultIntervalMinutes ?? 30));
33
43
  const allowedScenarioKeys = [...new Set((input.allowedScenarioKeys ?? current?.allowedScenarioKeys ?? []).map((key) => key.trim()).filter(Boolean))].sort();
34
44
  runSqliteWriteTransaction((db) => {
35
45
  db.prepare(`INSERT INTO connector_sync_policies (
36
- connection_id, scan_enabled, proactive_enabled, interval_minutes,
46
+ account_id, scan_enabled, proactive_enabled, interval_minutes,
37
47
  allowed_scenario_keys_json, revision, updated_at
38
48
  ) VALUES (?, ?, ?, ?, ?, 1, ?)
39
- ON CONFLICT(connection_id) DO UPDATE SET
49
+ ON CONFLICT(account_id) DO UPDATE SET
40
50
  scan_enabled = excluded.scan_enabled,
41
51
  proactive_enabled = excluded.proactive_enabled,
42
52
  interval_minutes = excluded.interval_minutes,
43
53
  allowed_scenario_keys_json = excluded.allowed_scenario_keys_json,
44
54
  revision = connector_sync_policies.revision + 1,
45
- updated_at = excluded.updated_at`).run(input.connectionId, input.scanEnabled ?? current?.scanEnabled ?? true ? 1 : 0, input.proactiveEnabled ?? current?.proactiveEnabled ?? false ? 1 : 0, intervalMinutes, JSON.stringify(allowedScenarioKeys), now);
55
+ updated_at = excluded.updated_at`).run(input.accountId, input.scanEnabled ?? current?.scanEnabled ?? true ? 1 : 0, input.proactiveEnabled ?? current?.proactiveEnabled ?? false ? 1 : 0, intervalMinutes, JSON.stringify(allowedScenarioKeys), now);
46
56
  });
47
- return getConnectorSyncPolicy(input.connectionId);
57
+ return getConnectorSyncPolicy(input.accountId);
48
58
  }
49
59
  //#endregion
50
- export { getConnectorSyncPolicy, listConnectorSyncPolicies, upsertConnectorSyncPolicy };
60
+ export { getConnectorSyncPolicy, getConnectorSyncPolicyForConnection, listConnectorSyncPolicies, upsertConnectorSyncPolicy };
@@ -0,0 +1,61 @@
1
+ export type DreamingMode = 'off' | 'observe' | 'review' | 'automatic';
2
+ export type DreamingActiveMode = Exclude<DreamingMode, 'off'>;
3
+ export type DreamingPhase = 'light' | 'deep' | 'rem';
4
+ export interface DreamingRun {
5
+ runId: string;
6
+ agentId: string;
7
+ workspaceId: string;
8
+ phase: DreamingPhase;
9
+ mode: DreamingActiveMode;
10
+ triggerKind: 'schedule' | 'manual';
11
+ algorithmVersion: string;
12
+ configSnapshot: Record<string, unknown>;
13
+ status: 'running' | 'completed' | 'failed';
14
+ reason?: string;
15
+ metrics: Record<string, unknown>;
16
+ startedAt: string;
17
+ completedAt?: string;
18
+ }
19
+ export interface DreamingDecision {
20
+ decisionId: string;
21
+ runId: string;
22
+ recordId?: string;
23
+ action: 'observe' | 'propose' | 'activate' | 'skip';
24
+ reasonCode: string;
25
+ score?: number;
26
+ evidence: Record<string, unknown>;
27
+ createdAt: string;
28
+ }
29
+ export declare function startDreamingRun(input: {
30
+ agentId: string;
31
+ workspaceId: string;
32
+ phase: DreamingPhase;
33
+ mode: DreamingActiveMode;
34
+ triggerKind?: 'schedule' | 'manual';
35
+ algorithmVersion: string;
36
+ configSnapshot: Record<string, unknown>;
37
+ nowMs?: number;
38
+ }): DreamingRun;
39
+ export declare function finishDreamingRun(input: {
40
+ runId: string;
41
+ ok: boolean;
42
+ reason: string;
43
+ metrics?: Record<string, unknown>;
44
+ nowMs?: number;
45
+ }): DreamingRun | null;
46
+ export declare function recordDreamingDecision(input: {
47
+ runId: string;
48
+ recordId?: string;
49
+ action: 'observe' | 'propose' | 'activate' | 'skip';
50
+ reasonCode: string;
51
+ score?: number;
52
+ evidence?: Record<string, unknown>;
53
+ nowMs?: number;
54
+ }): string;
55
+ export declare function getDreamingRun(runId: string): DreamingRun | null;
56
+ export declare function listDreamingRuns(options?: {
57
+ agentId?: string;
58
+ workspaceId?: string;
59
+ limit?: number;
60
+ }): DreamingRun[];
61
+ export declare function listDreamingDecisions(runId: string, limit?: number): DreamingDecision[];