@xopcai/xopc 0.0.409 → 0.0.411
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.
- package/README.md +12 -6
- package/README.zh-CN.md +12 -6
- package/dist/browser-ext/dist/assets/{page-context-A5RCibM_.js → page-context-MuzjMBlJ.js} +1 -1
- package/dist/browser-ext/dist/background.js +1 -1
- package/dist/browser-ext/dist/sidepanel.html +1 -1
- package/dist/browser-ext/dist/sidepanel.js +1 -1
- package/dist/browser-ext/manifest.json +1 -1
- package/dist/extensions/feishu/src/adapters/gateway-setup.js +9 -3
- package/dist/extensions/feishu/src/plugin.d.ts +0 -3
- package/dist/extensions/feishu/src/plugin.js +1 -11
- package/dist/extensions/feishu/src/schema/config-schema.d.ts +0 -2
- package/dist/extensions/feishu/src/schema/config-schema.js +9 -21
- package/dist/extensions/feishu/src/state/accounts.js +3 -7
- package/dist/extensions/telegram/src/plugin.d.ts +0 -3
- package/dist/extensions/telegram/src/plugin.js +0 -9
- package/dist/extensions/telegram/xopc.extension.json +1 -1
- package/dist/extensions/weixin/src/plugin.d.ts +0 -3
- package/dist/extensions/weixin/src/plugin.js +1 -12
- package/dist/gateway/static/root/assets/agent-avatar-dicebear-sGJnq-SA.js +1 -0
- package/dist/gateway/static/root/assets/agent-defaults-settings-panel-BI7OTo-T.js +1 -0
- package/dist/gateway/static/root/assets/agents-RIXL0p7_.js +77 -0
- package/dist/gateway/static/root/assets/{agents-admin-api-D0UyB0Y_.js → agents-admin-api-uGDeJR1f.js} +1 -1
- package/dist/gateway/static/root/assets/app-management-settings-panel-BGzhSS6H.js +1 -0
- package/dist/gateway/static/root/assets/{appearance-settings-Dzhmj_ZO.js → appearance-settings-DtEZq4b2.js} +1 -1
- package/dist/gateway/static/root/assets/apps-page-DZqBof2D.js +1 -0
- package/dist/gateway/static/root/assets/{archive-plugin-D4r4P5uG.js → archive-plugin-CGdU_E5B.js} +1 -1
- package/dist/gateway/static/root/assets/{automation-display-DCkjVzA0.js → automation-display-BFN7zWBg.js} +1 -1
- package/dist/gateway/static/root/assets/{automations-page-BlNe3DXU.js → automations-page-BAPZY56r.js} +1 -1
- package/dist/gateway/static/root/assets/automations-workspace-CI-yQnSj.js +8 -0
- package/dist/gateway/static/root/assets/{binary-plugins-DuN5L6lm.js → binary-plugins-B0ispXo2.js} +1 -1
- package/dist/gateway/static/root/assets/{block-editor-DUSVn51h.js → block-editor-B9Ci-prO.js} +40 -40
- package/dist/gateway/static/root/assets/{browser-automation-inputs-D8bZ9iz2.js → browser-automation-inputs-D4-vQc4g.js} +1 -1
- package/dist/gateway/static/root/assets/browser-automations-page-Xzdif447.js +3 -0
- package/dist/gateway/static/root/assets/browser-settings-page-Bhu-83eC.js +3 -0
- package/dist/gateway/static/root/assets/capabilities-B9b5KCBb.js +1 -0
- package/dist/gateway/static/root/assets/capabilities-page-BIc0Zlsw.js +2 -0
- package/dist/gateway/static/root/assets/capabilities-settings-panel-CQEfpLdj.js +8 -0
- package/dist/gateway/static/root/assets/{capability-header-actions-oBPqUlbj.js → capability-header-actions-Cic05oWh.js} +1 -1
- package/dist/gateway/static/root/assets/channels-DQbEoo_o.js +1 -0
- package/dist/gateway/static/root/assets/{chat-terminal-dock-BLs3NaOP.js → chat-terminal-dock-Bm-IGeDe.js} +2 -2
- package/dist/gateway/static/root/assets/{chunk-KS7C4IRE-B2HK1psj.js → chunk-KS7C4IRE-BvcCCgTW.js} +2 -2
- package/dist/gateway/static/root/assets/computer-settings-page-C9xMfwXK.js +1 -0
- package/dist/gateway/static/root/assets/connector-service-page-DcdASUU9.js +1 -0
- package/dist/gateway/static/root/assets/connectors-page-eh-xpMPK.js +1 -0
- package/dist/gateway/static/root/assets/date-formatters-DukWSVwc.js +1 -0
- package/dist/gateway/static/root/assets/{date-picker-DVlbwrYg.js → date-picker-gVLWu9R0.js} +1 -1
- package/dist/gateway/static/root/assets/dependency-picker-C0LARyok.js +1 -0
- package/dist/gateway/static/root/assets/desktop-pet-settings-B_-j-D4W.js +1 -0
- package/dist/gateway/static/root/assets/desktop-pet-v_le3sCs.js +1 -0
- package/dist/gateway/static/root/assets/device-pairing-wizard-CxG_FcQ6.js +1 -0
- package/dist/gateway/static/root/assets/{directory-picker-path-field-QZ0p-uNa.js → directory-picker-path-field-CBefVUPR.js} +1 -1
- package/dist/gateway/static/root/assets/electron-env-Dit0bHgy.js +1 -0
- package/dist/gateway/static/root/assets/{extension-debug-page-DoVPUHu_.js → extension-debug-page-CTe7Molh.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-page-BNe8n3iJ.js → extension-page-C0-oP7S_.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-settings-page-DxNpjGJD.js → extension-settings-page-DYJmgMUg.js} +1 -1
- package/dist/gateway/static/root/assets/files-Bw4SBGdM.js +1 -0
- package/dist/gateway/static/root/assets/{gateway-config-swr-CTXr917C.js → gateway-config-swr-BVqYVaGy.js} +1 -1
- package/dist/gateway/static/root/assets/gateway-realtime-CY1LBGBS.js +1 -0
- package/dist/gateway/static/root/assets/gateway-realtime-store-Dafw95ol.js +1 -0
- package/dist/gateway/static/root/assets/gateway-settings-C13P4lQd.js +1 -0
- package/dist/gateway/static/root/assets/{gateway-startup-retry-DD2fsxdd.js → gateway-startup-retry-CPKGkr6D.js} +1 -1
- package/dist/gateway/static/root/assets/highlight-code-CslBKXdS.js +1 -0
- package/dist/gateway/static/root/assets/{highlighted-body-KQOG7T2V-DrZq5KTj.js → highlighted-body-KQOG7T2V-CN5PNRN3.js} +1 -1
- package/dist/gateway/static/root/assets/home-page-B_XrkGmA.js +2 -0
- package/dist/gateway/static/root/assets/image-generation-api-DRLXG9Ws.js +1 -0
- package/dist/gateway/static/root/assets/imports-page--cuF5vwU.js +1 -0
- package/dist/gateway/static/root/assets/index-6YjAt50A.js +710 -0
- package/dist/gateway/static/root/assets/index-caRW34rg.css +1 -0
- package/dist/gateway/static/root/assets/keyboard-shortcuts-settings-5g2PxgBs.js +1 -0
- package/dist/gateway/static/root/assets/languages-byq_L2Ae.js +2 -0
- package/dist/gateway/static/root/assets/local-app-workbench-page-B6U1HQpp.js +1 -0
- package/dist/gateway/static/root/assets/local-apps-page-BChE6nUD.js +1 -0
- package/dist/gateway/static/root/assets/{local-session-drafts-TqLFKwYo.js → local-session-drafts-BCaC-1rH.js} +1 -1
- package/dist/gateway/static/root/assets/locale-store-DAgpZxAS.js +1 -0
- package/dist/gateway/static/root/assets/logs-page-B9mq03SK.js +2 -0
- package/dist/gateway/static/root/assets/management-settings-2W_qJsha.js +1 -0
- package/dist/gateway/static/root/assets/markdown-editor-phTQ0mox.js +1 -0
- package/dist/gateway/static/root/assets/{media-plugins-s6EqtAUQ.js → media-plugins-BmLuWkkZ.js} +1 -1
- package/dist/gateway/static/root/assets/mermaid-MCJ5UELQ-61Il2HQR.js +1 -0
- package/dist/gateway/static/root/assets/messages-DMXSIJUO.js +3 -0
- package/dist/gateway/static/root/assets/note-detail-panel-C4gZsNBL.js +5 -0
- package/dist/gateway/static/root/assets/note-image-lightbox-XqJIaaRV.js +1 -0
- package/dist/gateway/static/root/assets/notes-page-Chdwrjni.js +8 -0
- package/dist/gateway/static/root/assets/page-context-capture-button-B7rDRlS7.js +1 -0
- package/dist/gateway/static/root/assets/personal-page-mQl9BftY.js +1 -0
- package/dist/gateway/static/root/assets/personal-settings-panel-BgcJLmZN.js +1 -0
- package/dist/gateway/static/root/assets/plugin-details-dialog-FvwSxZPB.js +1 -0
- package/dist/gateway/static/root/assets/preview-open-alternatives-Z4NM7_Dn.js +1 -0
- package/dist/gateway/static/root/assets/product-delivery-BqNm-8S5.js +1 -0
- package/dist/gateway/static/root/assets/{product-open-page-BPWSqtRt.js → product-open-page-C5TcIaJj.js} +1 -1
- package/dist/gateway/static/root/assets/product-preview-content-5xID6jIj.js +1 -0
- package/dist/gateway/static/root/assets/project-detail-page-CGOyx7zX.js +7 -0
- package/dist/gateway/static/root/assets/projects-page-Dd11tbRX.js +1 -0
- package/dist/gateway/static/root/assets/{registry-api-4NZOh0iz.js → registry-api-B6kqbuw8.js} +1 -1
- package/dist/gateway/static/root/assets/remote-access-hub-Bintk9nL.js +1 -0
- package/dist/gateway/static/root/assets/runtime-tools-api-CY3R7unQ.js +5 -0
- package/dist/gateway/static/root/assets/{runtime-tools-settings-panel-CNCx2RnO.js → runtime-tools-settings-panel-CbmiiLsq.js} +1 -1
- package/dist/gateway/static/root/assets/{schema-form-nRDA2XfI.js → schema-form-DtPkiYwm.js} +1 -1
- package/dist/gateway/static/root/assets/session-api-D6-Vz8xK.js +1 -0
- package/dist/gateway/static/root/assets/{session-manager-D2sLfkw-.js → session-manager-DWbcMHcj.js} +3 -3
- package/dist/gateway/static/root/assets/sessions-page-BBlEP7y3.js +1 -0
- package/dist/gateway/static/root/assets/settings-advanced-gate-BCQUth4g.js +1 -0
- package/dist/gateway/static/root/assets/{settings-form-section-_ALUREPr.js → settings-form-section-DD3iD5t5.js} +1 -1
- package/dist/gateway/static/root/assets/{settings-page-29ptuMYZ.js → settings-page-iLY3LRDq.js} +1 -1
- package/dist/gateway/static/root/assets/setup-status-panel-v4P0IAkG.js +1 -0
- package/dist/gateway/static/root/assets/share-preview-page-B8h9lqDL.js +2 -0
- package/dist/gateway/static/root/assets/shares-settings-DMzej6z2.js +1 -0
- package/dist/gateway/static/root/assets/{skill-api-C-T0K7Oo.js → skill-api-C9RsrvOp.js} +1 -1
- package/dist/gateway/static/root/assets/skill-reload-api-B20x7EE9.js +1 -0
- package/dist/gateway/static/root/assets/skills-page-C_ulsnv7.js +2 -0
- package/dist/gateway/static/root/assets/source-workspace-editor-BIvi89Zx.js +1 -0
- package/dist/gateway/static/root/assets/system-settings-panel-PTRGMKkq.js +1 -0
- package/dist/gateway/static/root/assets/task-detail-page-DEPwo4vf.js +2 -0
- package/dist/gateway/static/root/assets/task-result-evidence-DjNWPpn_.js +1 -0
- package/dist/gateway/static/root/assets/tasks-TVRjEggr.js +1 -0
- package/dist/gateway/static/root/assets/tracing-settings-page-CVJt7IXC.js +1 -0
- package/dist/gateway/static/root/assets/{tunnel-api-DcDUSAjv.js → tunnel-api-C6XfsSWy.js} +1 -1
- package/dist/gateway/static/root/assets/{usage-page-Hut0SDqn.js → usage-page-DgqLD8Y5.js} +1 -1
- package/dist/gateway/static/root/assets/{use-autosave-C4TUlpsu.js → use-autosave-DO-Twmbm.js} +1 -1
- package/dist/gateway/static/root/assets/user-model-page-BwK37aob.js +2 -0
- package/dist/gateway/static/root/assets/{vendor-codemirror-DFxP3B9T.js → vendor-codemirror-Qdcjid65.js} +16 -16
- package/dist/gateway/static/root/assets/{voice-api-key-field-CMdihbPb.js → voice-api-key-field-MGe3HkS_.js} +1 -1
- package/dist/gateway/static/root/assets/{voice-config-api-4yGMrp7J.js → voice-config-api-CPKzUb4R.js} +1 -1
- package/dist/gateway/static/root/assets/work-discovery-overlay-DptHqYh5.js +1 -0
- package/dist/gateway/static/root/assets/{xopc-cloud-account-card-ClQKM2RA.js → xopc-cloud-account-card-Y_UIryBH.js} +1 -1
- package/dist/gateway/static/root/index.html +27 -35
- package/dist/package.js +1 -1
- package/dist/packages/endpoint-tools-protocol/src/index.js +1 -1
- package/dist/packages/gateway-contract/src/automations.js +0 -12
- package/dist/packages/gateway-contract/src/home.js +3 -3
- package/dist/packages/gateway-contract/src/product-delivery.js +0 -4
- package/dist/packages/gateway-contract/src/project-operating.js +0 -6
- package/dist/packages/gateway-contract/src/session-identity.js +0 -1
- package/dist/packages/gateway-contract/src/task-runs.js +0 -1
- package/dist/packages/gateway-contract/src/tasks.js +0 -6
- package/dist/src/activity/types.d.ts +4 -4
- package/dist/src/agent/agent-manager.d.ts +0 -3
- package/dist/src/agent/agent-manager.js +0 -43
- package/dist/src/agent/background-review/prompts.d.ts +8 -0
- package/dist/src/agent/background-review/prompts.js +9 -2
- package/dist/src/agent/background-review/run-background-review.js +73 -11
- package/dist/src/agent/capabilities/definitions.d.ts +2 -18
- package/dist/src/agent/capabilities/definitions.js +0 -17
- package/dist/src/agent/child-agent-factory.d.ts +1 -1
- package/dist/src/agent/client-error-format.d.ts +1 -1
- package/dist/src/agent/client-error-format.js +1 -1
- package/dist/src/agent/commands/command-registry.js +1 -1
- package/dist/src/agent/context/execution-scope.d.ts +2 -8
- package/dist/src/agent/context/execution-scope.js +6 -23
- package/dist/src/agent/embedded/index.d.ts +0 -1
- package/dist/src/agent/embedded/index.js +1 -2
- package/dist/src/agent/embedded/run-turn.js +25 -2
- package/dist/src/agent/embedded/sqlite-hydrating-session-manager.js +0 -2
- package/dist/src/agent/external-tools/gateway-tools.js +6 -6
- package/dist/src/agent/inbound/attachment-pipeline.d.ts +2 -0
- package/dist/src/agent/inbound/attachment-pipeline.js +10 -5
- package/dist/src/agent/mcp/connection-setup.js +2 -2
- package/dist/src/agent/memory/compaction-ledger.d.ts +1 -1
- package/dist/src/agent/memory/compaction-ledger.js +1 -1
- package/dist/src/agent/memory/compaction-promotion.js +1 -1
- package/dist/src/agent/memory/source-origin.js +1 -5
- package/dist/src/agent/memory/turn-provenance.js +1 -3
- package/dist/src/agent/memory/types.d.ts +1 -1
- package/dist/src/agent/messaging/command-handler.d.ts +0 -3
- package/dist/src/agent/messaging/command-handler.js +1 -4
- package/dist/src/agent/prompt/sections/behavior.js +2 -2
- package/dist/src/agent/prompt/sections/tooling.js +1 -5
- package/dist/src/agent/prompt/voice-presentation.d.ts +1 -1
- package/dist/src/agent/prompt/voice-presentation.js +1 -1
- package/dist/src/agent/service/direct-turn-helpers.js +1 -1
- package/dist/src/agent/service/process-direct-streaming.js +0 -6
- package/dist/src/agent/service.d.ts +0 -2
- package/dist/src/agent/service.js +0 -11
- package/dist/src/agent/service.types.d.ts +0 -2
- package/dist/src/agent/session/session-config-service.d.ts +0 -2
- package/dist/src/agent/session/session-config-service.js +1 -1
- package/dist/src/agent/session/session-inspector.d.ts +0 -1
- package/dist/src/agent/session/session-inspector.js +0 -1
- package/dist/src/agent/skills/required-env-vars.d.ts +1 -1
- package/dist/src/agent/skills/required-env-vars.js +1 -1
- package/dist/src/agent/tool-manuals/xopc-use.d.ts +1 -1
- package/dist/src/agent/tool-manuals/xopc-use.js +2 -5
- package/dist/src/agent/tools/automation-tool.js +1 -1
- package/dist/src/agent/tools/factory.d.ts +0 -3
- package/dist/src/agent/tools/factory.js +21 -10
- package/dist/src/agent/tools/index.d.ts +0 -2
- package/dist/src/agent/tools/index.js +1 -3
- package/dist/src/agent/tools/knowledge-memory-tool.d.ts +1 -0
- package/dist/src/agent/tools/knowledge-memory-tool.js +13 -4
- package/dist/src/agent/tools/personal-task-tool.js +8 -22
- package/dist/src/agent/tools/search/errors.js +2 -2
- package/dist/src/agent/tools/session-recall-tool.d.ts +3 -0
- package/dist/src/agent/tools/session-recall-tool.js +7 -0
- package/dist/src/agent/tools/session-search-tool.d.ts +3 -0
- package/dist/src/agent/tools/session-search-tool.js +20 -4
- package/dist/src/agent/tools/user-context-tool.js +7 -1
- package/dist/src/agent/tools/xopc-use-tool.js +1 -1
- package/dist/src/agent-catalog/index.d.ts +0 -1
- package/dist/src/agent-catalog/index.js +1 -2
- package/dist/src/agent-config/index.js +2 -2
- package/dist/src/agent-config/resolver.js +0 -6
- package/dist/src/agent-config/schema.d.ts +0 -16
- package/dist/src/agent-config/schema.js +2 -9
- package/dist/src/agent-matching/selection-repository.d.ts +1 -1
- package/dist/src/agent-matching/selection-repository.js +1 -1
- package/dist/src/agent-matching/service.d.ts +1 -2
- package/dist/src/agent-matching/service.js +3 -7
- package/dist/src/ai-assist/text-assist.d.ts +1 -1
- package/dist/src/ai-assist/text-assist.js +0 -72
- package/dist/src/automations/capabilities/write.d.ts +0 -40
- package/dist/src/automations/domain/types.d.ts +0 -15
- package/dist/src/automations/domain/validation.d.ts +0 -80
- package/dist/src/automations/domain/validation.js +0 -17
- package/dist/src/automations/draft/automation-draft-prompt.js +0 -3
- package/dist/src/automations/draft/automation-draft-validator.d.ts +0 -20
- package/dist/src/automations/draft/automation-draft-validator.js +0 -1
- package/dist/src/automations/events/event-catalog.js +0 -6
- package/dist/src/automations/service/action-executor.d.ts +0 -1
- package/dist/src/automations/service/action-executor.js +1 -110
- package/dist/src/automations/service/automation-service.js +0 -2
- package/dist/src/automations/storage/automation-run-repository.js +6 -7
- package/dist/src/backup/archive.js +1 -1
- package/dist/src/bootstrap/application-state.d.ts +2 -10
- package/dist/src/bootstrap/application-state.js +5 -18
- package/dist/src/channels/manager.d.ts +0 -2
- package/dist/src/channels/manager.js +0 -4
- package/dist/src/channels/pairing/index.d.ts +2 -1
- package/dist/src/channels/pairing/pairing-service.d.ts +0 -1
- package/dist/src/chat-commands/context.d.ts +0 -3
- package/dist/src/chat-commands/context.js +0 -5
- package/dist/src/chat-commands/index.d.ts +0 -1
- package/dist/src/chat-commands/index.js +1 -3
- package/dist/src/chat-commands/types.d.ts +0 -5
- package/dist/src/cli/command-manifest.js +1 -1
- package/dist/src/cli/commands/config.js +2 -10
- package/dist/src/cli/commands/doctor/checks/database-relations.js +0 -3
- package/dist/src/cli/commands/doctor/checks/database-schema.js +4 -25
- package/dist/src/cli/commands/gateway/run-foreground.js +1 -1
- package/dist/src/cli/commands/setup-shared/prompts.d.ts +2 -2
- package/dist/src/cli/commands/setup-shared/prompts.js +2 -2
- package/dist/src/cli/commands/tui-runner.js +2 -2
- package/dist/src/cli/extension-cli-register.js +1 -1
- package/dist/src/cli/index.d.ts +0 -1
- package/dist/src/cli/index.js +2 -2
- package/dist/src/cli/utils/init-workspace-core.js +3 -6
- package/dist/src/config/index.js +2 -2
- package/dist/src/config/loader.d.ts +0 -1
- package/dist/src/config/loader.js +1 -13
- package/dist/src/config/paths.d.ts +1 -1
- package/dist/src/config/paths.js +1 -1
- package/dist/src/connectors/composio-catalog.js +1 -3
- package/dist/src/connectors/composio.js +1 -2
- package/dist/src/connectors/connected-source-ingestion.js +1 -1
- package/dist/src/connectors/connected-source-understanding.js +1 -1
- package/dist/src/connectors/learning-coordinator.js +1 -1
- package/dist/src/connectors/principal.js +1 -22
- package/dist/src/connectors/{workflow-preflight.d.ts → requirements-preflight.d.ts} +9 -8
- package/dist/src/connectors/{workflow-preflight.js → requirements-preflight.js} +2 -10
- package/dist/src/connectors/types.d.ts +1 -1
- package/dist/src/daemon/types.d.ts +0 -9
- package/dist/src/discussions/long-review.js +0 -11
- package/dist/src/endpoint-tools/policy.js +13 -14
- package/dist/src/extensions/agent-plugins/auth.js +1 -3
- package/dist/src/extensions/agent-plugins/formats.js +2 -4
- package/dist/src/extensions/agent-plugins/mcp-format.d.ts +1 -1
- package/dist/src/extensions/agent-plugins/mcp-format.js +2 -2
- package/dist/src/extensions/bundled-extension-activation.d.ts +0 -2
- package/dist/src/extensions/bundled-extension-activation.js +1 -3
- package/dist/src/extensions/install.js +1 -1
- package/dist/src/extensions/types/tui.d.ts +1 -2
- package/dist/src/gateway/agent-builtin-tools.d.ts +1 -7
- package/dist/src/gateway/agent-builtin-tools.js +0 -7
- package/dist/src/gateway/agents-admin.d.ts +0 -1
- package/dist/src/gateway/agents-admin.js +0 -1
- package/dist/src/gateway/global-defaults-admin.js +1 -1
- package/dist/src/gateway/hono/lib/config-payload.d.ts +0 -8
- package/dist/src/gateway/hono/lib/config-payload.js +1 -2
- package/dist/src/gateway/hono/lib/config-write-lock.d.ts +1 -1
- package/dist/src/gateway/hono/lib/config-write-lock.js +1 -1
- package/dist/src/gateway/hono/middleware/auth.js +2 -2
- package/dist/src/gateway/hono/routes/activity.js +0 -1
- package/dist/src/gateway/hono/routes/agents.js +2 -9
- package/dist/src/gateway/hono/routes/auth-registry-extensions.js +0 -22
- package/dist/src/gateway/hono/routes/chat-model-config.d.ts +0 -1
- package/dist/src/gateway/hono/routes/config-patch/misc.js +2 -3
- package/dist/src/gateway/hono/routes/config.js +2 -21
- package/dist/src/gateway/hono/routes/connectors.js +1 -1
- package/dist/src/gateway/hono/routes/context-sources.js +1 -1
- package/dist/src/gateway/hono/routes/devices.js +2 -2
- package/dist/src/gateway/hono/routes/home.js +3 -20
- package/dist/src/gateway/hono/routes/lazy-bundles.js +0 -8
- package/dist/src/gateway/hono/routes/memory-learning.js +1 -1
- package/dist/src/gateway/hono/routes/personal-agent.js +1 -1
- package/dist/src/gateway/hono/routes/projects.js +0 -16
- package/dist/src/gateway/hono/routes/session-input-handler.d.ts +2 -2
- package/dist/src/gateway/hono/routes/sessions.js +0 -3
- package/dist/src/gateway/hono/routes/user-model-refresh.js +1 -1
- package/dist/src/gateway/hono/routes/user-model.js +1 -1
- package/dist/src/gateway/index.js +1 -1
- package/dist/src/gateway/run-loop.js +2 -2
- package/dist/src/gateway/security/device-request-proof.js +1 -1
- package/dist/src/gateway/security/gateway-scopes.js +0 -1
- package/dist/src/gateway/service/active-execution.d.ts +1 -1
- package/dist/src/gateway/service/active-execution.js +1 -1
- package/dist/src/gateway/service/agent-runner.js +1 -1
- package/dist/src/gateway/service/session-input-coordinator.d.ts +1 -1
- package/dist/src/gateway/service/sessions-api.d.ts +1 -2
- package/dist/src/gateway/service/sessions-api.js +1 -1
- package/dist/src/gateway/service/task-conversation-query-service.d.ts +0 -4
- package/dist/src/gateway/service/types.d.ts +2 -0
- package/dist/src/gateway/service.d.ts +1 -8
- package/dist/src/gateway/service.js +20 -67
- package/dist/src/history/ctx/format.js +1 -1
- package/dist/src/home-intelligence/capability-preflight.js +1 -1
- package/dist/src/infra/unhandled-rejections.js +2 -2
- package/dist/src/infra/update-runner.d.ts +1 -2
- package/dist/src/infra/update-runner.js +2 -2
- package/dist/src/knowledge/connected-knowledge-pipeline.js +1 -1
- package/dist/src/knowledge/local-folder-adapter.js +2 -5
- package/dist/src/knowledge-memory/repository.d.ts +3 -1
- package/dist/src/knowledge-memory/repository.js +10 -3
- package/dist/src/knowledge-memory/usage-policy.js +1 -1
- package/dist/src/local-apps/service.js +1 -1
- package/dist/src/memory-learning/forget-capture.d.ts +14 -0
- package/dist/src/memory-learning/forget-capture.js +101 -0
- package/dist/src/memory-learning/forgotten-history.d.ts +15 -0
- package/dist/src/memory-learning/forgotten-history.js +137 -0
- package/dist/src/memory-learning/owner-directive.d.ts +2 -0
- package/dist/src/memory-learning/owner-directive.js +10 -0
- package/dist/src/memory-learning/service.js +0 -2
- package/dist/src/memory-learning/source-learning.js +1 -1
- package/dist/src/memory-learning/task-receipts.js +1 -1
- package/dist/src/memory-learning/work-capture.js +2 -1
- package/dist/src/migrations/index.js +2 -2
- package/dist/src/migrations/runner.d.ts +1 -2
- package/dist/src/migrations/runner.js +2 -5
- package/dist/src/notes/service.js +3 -3
- package/dist/src/notes/types.d.ts +1 -2
- package/dist/src/personal-agent/communication.d.ts +0 -3
- package/dist/src/personal-agent/communication.js +1 -12
- package/dist/src/personal-agent/persona.d.ts +0 -4
- package/dist/src/personal-agent/persona.js +1 -5
- package/dist/src/personal-agent/proactivity/repository.js +2 -6
- package/dist/src/personal-agent/prompt-context.js +1 -1
- package/dist/src/personal-agent/prompts.d.ts +0 -3
- package/dist/src/personal-agent/prompts.js +7 -146
- package/dist/src/personal-agent/reply-composer.js +3 -3
- package/dist/src/personal-agent/reply-style.d.ts +1 -13
- package/dist/src/personal-agent/reply-style.js +3 -123
- package/dist/src/personal-agent/request-delivery.d.ts +1 -1
- package/dist/src/personal-agent/request-delivery.js +1 -1
- package/dist/src/personal-agent/request-service.js +2 -2
- package/dist/src/personal-agent/specialist-capabilities.js +0 -1
- package/dist/src/personal-agent/task-cancel.js +2 -1
- package/dist/src/platform/client.d.ts +0 -1
- package/dist/src/platform/contracts.d.ts +0 -1
- package/dist/src/platform/contracts.js +1 -4
- package/dist/src/projects/index.d.ts +0 -1
- package/dist/src/projects/index.js +1 -2
- package/dist/src/projects/project-loop.d.ts +2 -12
- package/dist/src/projects/project-loop.js +19 -42
- package/dist/src/projects/project-store.d.ts +0 -1
- package/dist/src/projects/project-store.js +0 -11
- package/dist/src/projects/types.d.ts +0 -6
- package/dist/src/providers/model-usage.js +0 -5
- package/dist/src/realtime/runtime.js +0 -1
- package/dist/src/routing/agent-session-key.js +1 -1
- package/dist/src/session/manager.js +1 -1
- package/dist/src/session/store.d.ts +1 -0
- package/dist/src/session/types.d.ts +2 -6
- package/dist/src/storage/sqlite/connection-wait-repository.js +0 -33
- package/dist/src/storage/sqlite/connection.js +2 -2
- package/dist/src/storage/sqlite/device-access-repository.d.ts +2 -2
- package/dist/src/storage/sqlite/device-access-repository.js +4 -8
- package/dist/src/storage/sqlite/fts.d.ts +4 -0
- package/dist/src/storage/sqlite/fts.js +13 -4
- package/dist/src/storage/sqlite/home-attention-repository.d.ts +1 -1
- package/dist/src/storage/sqlite/index.d.ts +1 -3
- package/dist/src/storage/sqlite/index.js +4 -8
- package/dist/src/storage/sqlite/{migrations/conversation-backup.d.ts → offline-access.d.ts} +1 -4
- package/dist/src/storage/sqlite/{migrations/conversation-backup.js → offline-access.js} +6 -25
- package/dist/src/storage/sqlite/row-mappers.d.ts +0 -8
- package/dist/src/storage/sqlite/row-mappers.js +0 -8
- package/dist/src/storage/sqlite/{migrations/errors.d.ts → schema-errors.d.ts} +0 -6
- package/dist/src/storage/sqlite/schema-errors.js +28 -0
- package/dist/src/storage/sqlite/schema.d.ts +4 -5
- package/dist/src/storage/sqlite/schema.js +23 -19
- package/dist/src/storage/sqlite/schema.sql +1099 -427
- package/dist/src/storage/sqlite/session-identity-sql.js +1 -2
- package/dist/src/storage/sqlite/session-read-repository.d.ts +1 -1
- package/dist/src/storage/sqlite/session-read-repository.js +1 -2
- package/dist/src/storage/sqlite/session-repository.js +10 -36
- package/dist/src/storage/sqlite/transcript-repository.d.ts +1 -0
- package/dist/src/storage/sqlite/transcript-repository.js +14 -12
- package/dist/src/storage/sqlite/{migrations/conversation-windows-owners.js → windows-database-owners.js} +3 -3
- package/dist/src/tasks/attention-governor.d.ts +1 -0
- package/dist/src/tasks/attention-governor.js +2 -2
- package/dist/src/tasks/capabilities/management.d.ts +0 -1
- package/dist/src/tasks/capabilities/relations.d.ts +2 -2
- package/dist/src/tasks/execution-context.d.ts +1 -1
- package/dist/src/tasks/execution-context.js +0 -2
- package/dist/src/tasks/home-query-service.d.ts +2 -16
- package/dist/src/tasks/home-query-service.js +37 -67
- package/dist/src/tasks/index.d.ts +0 -1
- package/dist/src/tasks/index.js +1 -2
- package/dist/src/tasks/project-operating-view-service.js +0 -1
- package/dist/src/tasks/task-application-service.js +0 -5
- package/dist/src/tasks/task-repository.d.ts +1 -1
- package/dist/src/tasks/task-run-coordinator.js +4 -2
- package/dist/src/tui/backends/embedded-backend.d.ts +1 -4
- package/dist/src/tui/backends/embedded-backend.js +3 -59
- package/dist/src/tui/backends/gateway-realtime-backend.d.ts +1 -2
- package/dist/src/tui/backends/gateway-realtime-backend.js +1 -27
- package/dist/src/tui/components/chat-log.d.ts +0 -2
- package/dist/src/tui/components/chat-log.js +0 -18
- package/dist/src/tui/extension-host/runtime-context.js +0 -1
- package/dist/src/tui/tui-backend.d.ts +0 -15
- package/dist/src/tui/tui-command-formatters.d.ts +0 -3
- package/dist/src/tui/tui-command-formatters.js +1 -28
- package/dist/src/tui/tui-commands.d.ts +1 -14
- package/dist/src/tui/tui-commands.js +4 -89
- package/dist/src/tui/tui-startup-resources.js +0 -2
- package/dist/src/tui/tui-startup-text.js +2 -3
- package/dist/src/tui/tui.js +1 -49
- package/dist/src/user-context/trust-policy.js +1 -1
- package/dist/src/user-model/capture/semantic.d.ts +18 -1
- package/dist/src/user-model/capture/semantic.js +26 -1
- package/dist/src/user-model/usage-policy.js +1 -1
- package/dist/src/utils/index.js +1 -1
- package/dist/src/utils/logger/index.js +1 -1
- package/dist/src/utils/logger.js +1 -1
- package/dist/src/voice/realtime/agentBroker.js +2 -3
- package/dist/src/voice/realtime/memory-context.js +2 -2
- package/dist/src/work-discovery/incremental-repository.js +1 -1
- package/dist/src/work-discovery/service.js +2 -2
- package/package.json +5 -6
- package/dist/extensions/feishu/src/workflow-progress.d.ts +0 -27
- package/dist/extensions/feishu/src/workflow-progress.js +0 -98
- package/dist/extensions/telegram/src/workflow-progress.d.ts +0 -24
- package/dist/extensions/telegram/src/workflow-progress.js +0 -72
- package/dist/extensions/weixin/src/workflow-progress.d.ts +0 -26
- package/dist/extensions/weixin/src/workflow-progress.js +0 -98
- package/dist/gateway/static/root/assets/agent-avatar-dicebear-lMrejpsz.js +0 -1
- package/dist/gateway/static/root/assets/agent-defaults-settings-panel-lXwR3Rff.js +0 -1
- package/dist/gateway/static/root/assets/agents-DFwBf95X.js +0 -77
- package/dist/gateway/static/root/assets/app-link-BV_eGr7l.js +0 -1
- package/dist/gateway/static/root/assets/app-management-settings-panel-Cja3eV7H.js +0 -1
- package/dist/gateway/static/root/assets/apps-page-C3xbCdYa.js +0 -1
- package/dist/gateway/static/root/assets/automations-workspace-CWvHbJBK.js +0 -6
- package/dist/gateway/static/root/assets/browser-automations-page-BtvOURHQ.js +0 -3
- package/dist/gateway/static/root/assets/browser-settings-page-C_OeE79S.js +0 -3
- package/dist/gateway/static/root/assets/capabilities-CD6PzNK7.js +0 -1
- package/dist/gateway/static/root/assets/capabilities-page-BKF6q_tC.js +0 -2
- package/dist/gateway/static/root/assets/capabilities-settings-panel-B7qOaUZs.js +0 -8
- package/dist/gateway/static/root/assets/channels-3M9-anCN.js +0 -1
- package/dist/gateway/static/root/assets/code-editor-CXIH8jQw.js +0 -1
- package/dist/gateway/static/root/assets/computer-settings-page-LaekhDG6.js +0 -1
- package/dist/gateway/static/root/assets/connector-service-page-DJP1n1_n.js +0 -1
- package/dist/gateway/static/root/assets/connectors-page-DmQqMy6l.js +0 -1
- package/dist/gateway/static/root/assets/dependency-picker-BhElpD_6.js +0 -1
- package/dist/gateway/static/root/assets/desktop-pet-ByvV-cDD.js +0 -1
- package/dist/gateway/static/root/assets/desktop-pet-settings-BBruQu-_.js +0 -1
- package/dist/gateway/static/root/assets/device-pairing-wizard-C3zOy8PO.js +0 -1
- package/dist/gateway/static/root/assets/dist-BGTk37IG.js +0 -1
- package/dist/gateway/static/root/assets/file-archive-DanfQJNe.js +0 -1
- package/dist/gateway/static/root/assets/file-braces-BoAMI_k9.js +0 -1
- package/dist/gateway/static/root/assets/gateway-realtime-CP6L2jIR.js +0 -1
- package/dist/gateway/static/root/assets/gateway-realtime-store-yXB4a40_.js +0 -1
- package/dist/gateway/static/root/assets/gateway-settings-CzrFZ0lB.js +0 -1
- package/dist/gateway/static/root/assets/highlight-code-BH65IIbJ.js +0 -1
- package/dist/gateway/static/root/assets/home-page-cXmd8x0S.js +0 -2
- package/dist/gateway/static/root/assets/image-generation-api-C6su4n9B.js +0 -1
- package/dist/gateway/static/root/assets/imports-page-CsXYryWS.js +0 -1
- package/dist/gateway/static/root/assets/index-BZlryZm8.css +0 -1
- package/dist/gateway/static/root/assets/index-uAJlrGvo.js +0 -267
- package/dist/gateway/static/root/assets/keyboard-shortcuts-settings-GYKLt0oF.js +0 -1
- package/dist/gateway/static/root/assets/languages-BFe8nIOO.js +0 -2
- package/dist/gateway/static/root/assets/local-app-workbench-page-Dw-i6VkX.js +0 -1
- package/dist/gateway/static/root/assets/local-apps-page-DslilwNE.js +0 -1
- package/dist/gateway/static/root/assets/locale-store-D_migb9R.js +0 -1
- package/dist/gateway/static/root/assets/logs-page-4N8bGPIE.js +0 -2
- package/dist/gateway/static/root/assets/management-settings-CPmxI1k0.js +0 -1
- package/dist/gateway/static/root/assets/markdown-editor-BhBJANcx.js +0 -1
- package/dist/gateway/static/root/assets/markdown-view-Ljt0bhfF.js +0 -324
- package/dist/gateway/static/root/assets/markdown-view-ixUWAmoy.css +0 -1
- package/dist/gateway/static/root/assets/mermaid-MCJ5UELQ-Ba-WQCki.js +0 -1
- package/dist/gateway/static/root/assets/mermaid-render-604gISVe.js +0 -134
- package/dist/gateway/static/root/assets/messages-D__oW2yE.js +0 -3
- package/dist/gateway/static/root/assets/note-detail-panel-CjTm5gxS.js +0 -5
- package/dist/gateway/static/root/assets/note-image-lightbox-hbSbEEfN.js +0 -1
- package/dist/gateway/static/root/assets/notes-page-DkESStKc.js +0 -8
- package/dist/gateway/static/root/assets/page-context-capture-button-eyzTNrCe.js +0 -1
- package/dist/gateway/static/root/assets/personal-page-DZxbFQvF.js +0 -1
- package/dist/gateway/static/root/assets/personal-settings-panel-DzubCRqj.js +0 -1
- package/dist/gateway/static/root/assets/plugin-details-dialog-BjVLbxZM.js +0 -1
- package/dist/gateway/static/root/assets/plus-Q2yW6OE7.js +0 -1
- package/dist/gateway/static/root/assets/preview-open-alternatives-7pUtUL4O.js +0 -1
- package/dist/gateway/static/root/assets/product-delivery-DwmnNJvk.js +0 -1
- package/dist/gateway/static/root/assets/product-preview-content-COo4zwp9.js +0 -1
- package/dist/gateway/static/root/assets/project-detail-page-CrIH6nEy.js +0 -1
- package/dist/gateway/static/root/assets/projects-page-D4swvBmH.js +0 -1
- package/dist/gateway/static/root/assets/remote-access-hub-DltfIMtv.js +0 -1
- package/dist/gateway/static/root/assets/runtime-tools-api-CmEWVrOg.js +0 -5
- package/dist/gateway/static/root/assets/session-api-aQLptIs9.js +0 -1
- package/dist/gateway/static/root/assets/sessions-page-CfYU53aw.js +0 -1
- package/dist/gateway/static/root/assets/settings-advanced-gate-BJBoWYbO.js +0 -1
- package/dist/gateway/static/root/assets/setup-status-panel-DZgVMRXr.js +0 -1
- package/dist/gateway/static/root/assets/share-preview-page-C2LHd_Nl.js +0 -2
- package/dist/gateway/static/root/assets/shares-settings-C5MTc6t-.js +0 -1
- package/dist/gateway/static/root/assets/skill-reload-api-BcdA9ezU.js +0 -1
- package/dist/gateway/static/root/assets/skills-page-BMw8XbKL.js +0 -2
- package/dist/gateway/static/root/assets/source-workspace-editor-DunRD1gY.js +0 -1
- package/dist/gateway/static/root/assets/style-DR0-RKaL.js +0 -7
- package/dist/gateway/static/root/assets/system-settings-panel-2Kr9Y-FJ.js +0 -1
- package/dist/gateway/static/root/assets/tab-completion-input.utils-BP3NH_du.js +0 -1
- package/dist/gateway/static/root/assets/task-detail-page-7kPco8Ys.js +0 -2
- package/dist/gateway/static/root/assets/task-expandable-content-4s_FTl-9.js +0 -1
- package/dist/gateway/static/root/assets/tasks-B4bZpO6O.js +0 -1
- package/dist/gateway/static/root/assets/tracing-settings-page-D53wxq60.js +0 -1
- package/dist/gateway/static/root/assets/user-model-page-KRy50OBd.js +0 -2
- package/dist/gateway/static/root/assets/work-discovery-overlay-Bd9HLsds.js +0 -1
- package/dist/gateway/static/root/assets/workflow-run-setup-panel-C9mAiHBd.js +0 -3
- package/dist/gateway/static/root/assets/workflows-page-CGg4GWwt.js +0 -6
- package/dist/gateway/static/root/assets/x-B_N4OPjy.js +0 -1
- package/dist/gateway/static/root/assets/xml-_d7dTN2Q.js +0 -3
- package/dist/src/agent/embedded/session-manager-init.d.ts +0 -4
- package/dist/src/agent/embedded/session-manager-init.js +0 -48
- package/dist/src/agent/tools/workflow-manage-tool.d.ts +0 -2
- package/dist/src/agent/tools/workflow-manage-tool.js +0 -225
- package/dist/src/agent/tools/workflow-tool.d.ts +0 -20
- package/dist/src/agent/tools/workflow-tool.js +0 -155
- package/dist/src/agent/workflow/agent-progress.d.ts +0 -5
- package/dist/src/agent/workflow/agent-progress.js +0 -65
- package/dist/src/agent/workflow/builtins/index.d.ts +0 -2
- package/dist/src/agent/workflow/builtins/index.js +0 -374
- package/dist/src/agent/workflow/catalog.d.ts +0 -52
- package/dist/src/agent/workflow/catalog.js +0 -150
- package/dist/src/agent/workflow/channel-capability.d.ts +0 -76
- package/dist/src/agent/workflow/channel-capability.js +0 -1
- package/dist/src/agent/workflow/index.d.ts +0 -10
- package/dist/src/agent/workflow/index.js +0 -9
- package/dist/src/agent/workflow/progress-broker.d.ts +0 -80
- package/dist/src/agent/workflow/progress-broker.js +0 -261
- package/dist/src/agent/workflow/snapshot-empty.d.ts +0 -2
- package/dist/src/agent/workflow/snapshot-empty.js +0 -17
- package/dist/src/agent/workflow/snapshot.d.ts +0 -28
- package/dist/src/agent/workflow/snapshot.js +0 -267
- package/dist/src/agent/workflow/step-labels.d.ts +0 -8
- package/dist/src/agent/workflow/step-labels.js +0 -50
- package/dist/src/agent/workflow/structured-output-tool.d.ts +0 -33
- package/dist/src/agent/workflow/structured-output-tool.js +0 -56
- package/dist/src/agent/workflow/subagent-runner.d.ts +0 -46
- package/dist/src/agent/workflow/subagent-runner.js +0 -221
- package/dist/src/agent/workflow/types.d.ts +0 -252
- package/dist/src/agent/workflow/types.js +0 -1
- package/dist/src/agent/workflow/workflow-child-tools.d.ts +0 -4
- package/dist/src/agent/workflow/workflow-child-tools.js +0 -38
- package/dist/src/agent-catalog/migrations/identity-markdown-cutover.d.ts +0 -5
- package/dist/src/agent-catalog/migrations/identity-markdown-cutover.js +0 -94
- package/dist/src/agent-catalog/migrations/legacy-config-cutover.d.ts +0 -11
- package/dist/src/agent-catalog/migrations/legacy-config-cutover.js +0 -194
- package/dist/src/chat-commands/builtins/workflow.d.ts +0 -18
- package/dist/src/chat-commands/builtins/workflow.js +0 -249
- package/dist/src/gateway/gateway-workflow-host.types.d.ts +0 -23
- package/dist/src/gateway/gateway-workflow-host.types.js +0 -1
- package/dist/src/gateway/hono/routes/workflows.d.ts +0 -3
- package/dist/src/gateway/hono/routes/workflows.js +0 -572
- package/dist/src/knowledge-memory/repair-evidence.d.ts +0 -2
- package/dist/src/knowledge-memory/repair-evidence.js +0 -57
- package/dist/src/migrations/cloud-public-models.d.ts +0 -7
- package/dist/src/migrations/cloud-public-models.js +0 -157
- package/dist/src/migrations/memory-config.d.ts +0 -2
- package/dist/src/migrations/memory-config.js +0 -76
- package/dist/src/migrations/retired-local-stt.d.ts +0 -2
- package/dist/src/migrations/retired-local-stt.js +0 -52
- package/dist/src/projects/workflow-bind.d.ts +0 -1
- package/dist/src/projects/workflow-bind.js +0 -15
- package/dist/src/storage/sqlite/migrations/218_core_relation_indexes.sql +0 -26
- package/dist/src/storage/sqlite/migrations/219_json_contracts.sql +0 -123
- package/dist/src/storage/sqlite/migrations/220_normalize_timestamps.sql +0 -339
- package/dist/src/storage/sqlite/migrations/221_ai_usage_retention_index.sql +0 -2
- package/dist/src/storage/sqlite/migrations/222_session_config_authority.sql +0 -13
- package/dist/src/storage/sqlite/migrations/223_session_creation_receipts.sql +0 -59
- package/dist/src/storage/sqlite/migrations/224_task_origin_links.sql +0 -8
- package/dist/src/storage/sqlite/migrations/225_task_collaboration.sql +0 -32
- package/dist/src/storage/sqlite/migrations/226_task_main_updates.sql +0 -9
- package/dist/src/storage/sqlite/migrations/227_task_main_update_decisions.sql +0 -8
- package/dist/src/storage/sqlite/migrations/228_task_main_agent_links.sql +0 -14
- package/dist/src/storage/sqlite/migrations/229_task_criterion_reviews.sql +0 -12
- package/dist/src/storage/sqlite/migrations/230_personal_agent_onboarding.sql +0 -8
- package/dist/src/storage/sqlite/migrations/231_task_result_deliveries.sql +0 -32
- package/dist/src/storage/sqlite/migrations/232_personal_requests.sql +0 -28
- package/dist/src/storage/sqlite/migrations/233_observability_usage_links.sql +0 -3
- package/dist/src/storage/sqlite/migrations/234_task_result_reply.sql +0 -14
- package/dist/src/storage/sqlite/migrations/235_personal_conversation_priority.sql +0 -3
- package/dist/src/storage/sqlite/migrations/236_personal_proactivity.sql +0 -53
- package/dist/src/storage/sqlite/migrations/237_personal_strategy_versions.sql +0 -18
- package/dist/src/storage/sqlite/migrations/238_browser_record_replay.sql +0 -45
- package/dist/src/storage/sqlite/migrations/239_clarification_notifications.sql +0 -26
- package/dist/src/storage/sqlite/migrations/240_device_settings.sql +0 -5
- package/dist/src/storage/sqlite/migrations/241_device_grant_audit.sql +0 -13
- package/dist/src/storage/sqlite/migrations/242_cloud_usage_receipts.sql +0 -5
- package/dist/src/storage/sqlite/migrations/243_voice_opening_greetings.sql +0 -12
- package/dist/src/storage/sqlite/migrations/244_device_request_proofs.sql +0 -8
- package/dist/src/storage/sqlite/migrations/245_memory_learning.sql +0 -125
- package/dist/src/storage/sqlite/migrations/246_personal_session_thinking.sql +0 -22
- package/dist/src/storage/sqlite/migrations/247_agent_selection_records.sql +0 -32
- package/dist/src/storage/sqlite/migrations/248_next_turn_suggestions.sql +0 -20
- package/dist/src/storage/sqlite/migrations/249_task_allocations.sql +0 -17
- package/dist/src/storage/sqlite/migrations/250_research_checkpoints.sql +0 -15
- package/dist/src/storage/sqlite/migrations/251_personal_result_reads.sql +0 -40
- package/dist/src/storage/sqlite/migrations/252_task_work_revisions.sql +0 -15
- package/dist/src/storage/sqlite/migrations/253_discussion_processing_recovery.sql +0 -20
- package/dist/src/storage/sqlite/migrations/254_discussion_annotations.sql +0 -17
- package/dist/src/storage/sqlite/migrations/255_discussion_chapter_progress.sql +0 -10
- package/dist/src/storage/sqlite/migrations/256_task_main_update_retries.sql +0 -21
- package/dist/src/storage/sqlite/migrations/257_session_composer_history.sql +0 -11
- package/dist/src/storage/sqlite/migrations/258_task_phase_changes.sql +0 -20
- package/dist/src/storage/sqlite/migrations/259_personal_default_style.sql +0 -10
- package/dist/src/storage/sqlite/migrations/discover.d.ts +0 -4
- package/dist/src/storage/sqlite/migrations/discover.js +0 -40
- package/dist/src/storage/sqlite/migrations/errors.js +0 -40
- package/dist/src/storage/sqlite/migrations/runner.d.ts +0 -22
- package/dist/src/storage/sqlite/migrations/runner.js +0 -112
- package/dist/src/storage/sqlite/migrations/types.d.ts +0 -12
- package/dist/src/storage/sqlite/migrations/types.js +0 -1
- package/dist/src/tasks/task-workflow-coordinator.d.ts +0 -5
- package/dist/src/tasks/task-workflow-coordinator.js +0 -55
- package/dist/src/tui/tui-workflow-slash.d.ts +0 -29
- package/dist/src/tui/tui-workflow-slash.js +0 -58
- package/dist/src/workflows/authoring/index.d.ts +0 -2
- package/dist/src/workflows/authoring/index.js +0 -3
- package/dist/src/workflows/authoring/workflow-draft-defaults.d.ts +0 -3
- package/dist/src/workflows/authoring/workflow-draft-defaults.js +0 -63
- package/dist/src/workflows/authoring/workflow-draft-store.d.ts +0 -29
- package/dist/src/workflows/authoring/workflow-draft-store.js +0 -52
- package/dist/src/workflows/context/workflow-context-snapshot-repository.d.ts +0 -21
- package/dist/src/workflows/context/workflow-context-snapshot-repository.js +0 -41
- package/dist/src/workflows/context/workflow-context.d.ts +0 -18
- package/dist/src/workflows/context/workflow-context.js +0 -164
- package/dist/src/workflows/domain/command.d.ts +0 -19
- package/dist/src/workflows/domain/command.js +0 -1
- package/dist/src/workflows/domain/definition-utils.d.ts +0 -18
- package/dist/src/workflows/domain/definition-utils.js +0 -90
- package/dist/src/workflows/domain/definition.d.ts +0 -164
- package/dist/src/workflows/domain/definition.js +0 -1
- package/dist/src/workflows/domain/event.d.ts +0 -88
- package/dist/src/workflows/domain/event.js +0 -1
- package/dist/src/workflows/domain/index.d.ts +0 -8
- package/dist/src/workflows/domain/index.js +0 -5
- package/dist/src/workflows/domain/result.d.ts +0 -68
- package/dist/src/workflows/domain/result.js +0 -1
- package/dist/src/workflows/domain/run.d.ts +0 -257
- package/dist/src/workflows/domain/run.js +0 -12
- package/dist/src/workflows/domain/schema-validation.d.ts +0 -8
- package/dist/src/workflows/domain/schema-validation.js +0 -26
- package/dist/src/workflows/domain/validation.d.ts +0 -22
- package/dist/src/workflows/domain/validation.js +0 -318
- package/dist/src/workflows/engine/index.d.ts +0 -2
- package/dist/src/workflows/engine/index.js +0 -3
- package/dist/src/workflows/engine/projector.d.ts +0 -3
- package/dist/src/workflows/engine/projector.js +0 -276
- package/dist/src/workflows/engine/workflow-engine.d.ts +0 -88
- package/dist/src/workflows/engine/workflow-engine.js +0 -719
- package/dist/src/workflows/index.d.ts +0 -11
- package/dist/src/workflows/index.js +0 -19
- package/dist/src/workflows/project-presets/project-workflow-preset-repository.d.ts +0 -20
- package/dist/src/workflows/project-presets/project-workflow-preset-repository.js +0 -39
- package/dist/src/workflows/registry/catalog-workflow-definition-registry.d.ts +0 -9
- package/dist/src/workflows/registry/catalog-workflow-definition-registry.js +0 -30
- package/dist/src/workflows/registry/index.d.ts +0 -2
- package/dist/src/workflows/registry/index.js +0 -2
- package/dist/src/workflows/registry/workflow-definition-registry.d.ts +0 -15
- package/dist/src/workflows/registry/workflow-definition-registry.js +0 -1
- package/dist/src/workflows/runtime/graph-workflow-runtime.d.ts +0 -10
- package/dist/src/workflows/runtime/graph-workflow-runtime.js +0 -289
- package/dist/src/workflows/runtime/index.d.ts +0 -2
- package/dist/src/workflows/runtime/index.js +0 -2
- package/dist/src/workflows/runtime/workflow-runtime-port.d.ts +0 -13
- package/dist/src/workflows/runtime/workflow-runtime-port.js +0 -1
- package/dist/src/workflows/service/run-view-to-snapshot.d.ts +0 -4
- package/dist/src/workflows/service/run-view-to-snapshot.js +0 -64
- package/dist/src/workflows/service/workflow-run-service.d.ts +0 -63
- package/dist/src/workflows/service/workflow-run-service.js +0 -892
- package/dist/src/workflows/service/workflow-run-service.types.d.ts +0 -62
- package/dist/src/workflows/service/workflow-run-service.types.js +0 -1
- package/dist/src/workflows/service/workflow-session-bridge.d.ts +0 -33
- package/dist/src/workflows/service/workflow-session-bridge.js +0 -244
- package/dist/src/workflows/service/workflow-session-key.d.ts +0 -3
- package/dist/src/workflows/service/workflow-session-key.js +0 -19
- package/dist/src/workflows/service/workflow-writeback-service.d.ts +0 -9
- package/dist/src/workflows/service/workflow-writeback-service.js +0 -107
- package/dist/src/workflows/store/event-store.d.ts +0 -16
- package/dist/src/workflows/store/event-store.js +0 -38
- package/dist/src/workflows/store/paths.d.ts +0 -5
- package/dist/src/workflows/store/paths.js +0 -18
- package/dist/src/workflows/store/run-index-store.d.ts +0 -9
- package/dist/src/workflows/store/run-index-store.js +0 -64
- package/dist/src/workflows/store/run-store.d.ts +0 -16
- package/dist/src/workflows/store/run-store.js +0 -40
- package/skills/engineering/workflow-authoring/SKILL.md +0 -32
- /package/dist/gateway/static/root/assets/{style-DLioOiRN.css → project-detail-page-DLioOiRN.css} +0 -0
- /package/dist/src/storage/sqlite/{migrations/conversation-windows-owners.d.ts → windows-database-owners.d.ts} +0 -0
|
@@ -9,6 +9,9 @@ import { extractTextContent } from "../context/workspace.js";
|
|
|
9
9
|
import { init_model_usage, withModelUsageOrigin } from "../../providers/model-usage.js";
|
|
10
10
|
import { resolveUserContextSessionAccess } from "../../user-context/access-policy.js";
|
|
11
11
|
import { failLearningJob, finishLearningJob, learningPolicyHash } from "../../memory-learning/repository.js";
|
|
12
|
+
import { canUseKnowledge } from "../../knowledge-memory/usage-policy.js";
|
|
13
|
+
import { listKnowledgeItems } from "../../knowledge-memory/repository.js";
|
|
14
|
+
import "../../knowledge-memory/index.js";
|
|
12
15
|
import { extractProfileAgentId } from "../../config/agent-profile.js";
|
|
13
16
|
import { resolveModelIntentRef, resolveModelSelector } from "../../config/agent-model-intents.js";
|
|
14
17
|
import { init_sync_provider_auth, resolveProviderApiKeySync } from "../../auth/sync-provider-auth.js";
|
|
@@ -19,6 +22,7 @@ import { isLoopbackModel } from "../../providers/local-model.js";
|
|
|
19
22
|
import { claimRegisteredExtraction } from "../../user-context/extraction/registry.js";
|
|
20
23
|
import { applyWorkCandidates } from "../../memory-learning/work-capture.js";
|
|
21
24
|
import { stripRuntimeContextFromUserMessage } from "../../session/user-message-display.js";
|
|
25
|
+
import { applyKnowledgeDeletions } from "../../memory-learning/forget-capture.js";
|
|
22
26
|
import { getAssertionSlot, listUserAssertions } from "../../user-model/repository.js";
|
|
23
27
|
import { emptyUserModelCaptureResult, executeUserModelInterpretation } from "../../user-model/capture/executor.js";
|
|
24
28
|
import { parseUserModelInterpretation } from "../../user-model/capture/semantic.js";
|
|
@@ -129,6 +133,17 @@ function resolveInterpreterRuntime(params) {
|
|
|
129
133
|
};
|
|
130
134
|
}
|
|
131
135
|
async function interpret(params) {
|
|
136
|
+
const context = {
|
|
137
|
+
conversationId: params.conversationId,
|
|
138
|
+
agentId: extractProfileAgentId(params.conversationId),
|
|
139
|
+
workspaceId: params.workspaceId ?? "",
|
|
140
|
+
projectId: getSessionMetadata(params.conversationId)?.projectId
|
|
141
|
+
};
|
|
142
|
+
const access = params.getConfig() ? resolveUserContextSessionAccess(params.getConfig(), params.conversationId) : void 0;
|
|
143
|
+
const availableKnowledge = access?.knowledge ? listKnowledgeItems({
|
|
144
|
+
recordClass: "memory",
|
|
145
|
+
limit: 200
|
|
146
|
+
}).filter((item) => canUseKnowledge(item, context, access.knowledgePolicy)).slice(0, 80) : [];
|
|
132
147
|
const providerStreamFn = createExtensionAwareStreamFn();
|
|
133
148
|
const reviewAgent = new Agent({
|
|
134
149
|
initialState: {
|
|
@@ -159,6 +174,11 @@ async function interpret(params) {
|
|
|
159
174
|
content: buildUserModelInterpreterPrompt({
|
|
160
175
|
mode: params.mode,
|
|
161
176
|
availableAssertions: params.availableAssertions,
|
|
177
|
+
availableKnowledge: availableKnowledge.map(({ id, content, scope }) => ({
|
|
178
|
+
id,
|
|
179
|
+
content,
|
|
180
|
+
scope
|
|
181
|
+
})),
|
|
162
182
|
evidenceTimestamp: new Date(params.evidence.at(-1)?.createdAt ?? Date.now()).toISOString(),
|
|
163
183
|
timezone,
|
|
164
184
|
scopeContext: {
|
|
@@ -184,7 +204,7 @@ async function interpret(params) {
|
|
|
184
204
|
let failure;
|
|
185
205
|
interpretation = parseUserModelInterpretation(raw, params.evidence, params.availableAssertions.map((item) => item.id), (value) => {
|
|
186
206
|
failure = value;
|
|
187
|
-
});
|
|
207
|
+
}, availableKnowledge.map((item) => item.id));
|
|
188
208
|
if (interpretation) return;
|
|
189
209
|
const fields = {
|
|
190
210
|
...diagnostics,
|
|
@@ -261,6 +281,24 @@ async function executeReviewInner(params) {
|
|
|
261
281
|
},
|
|
262
282
|
...params.turnId ? { turnId: params.turnId } : {}
|
|
263
283
|
});
|
|
284
|
+
if (config) {
|
|
285
|
+
const access = resolveUserContextSessionAccess(config, params.conversationId);
|
|
286
|
+
const context = {
|
|
287
|
+
conversationId: params.conversationId,
|
|
288
|
+
agentId,
|
|
289
|
+
workspaceId: params.workspaceId,
|
|
290
|
+
projectId: getSessionMetadata(params.conversationId)?.projectId
|
|
291
|
+
};
|
|
292
|
+
if (access.knowledge) applyKnowledgeDeletions({
|
|
293
|
+
interpretation,
|
|
294
|
+
evidence: params.evidence,
|
|
295
|
+
context,
|
|
296
|
+
allowedTargetIds: listKnowledgeItems({
|
|
297
|
+
recordClass: "memory",
|
|
298
|
+
limit: 200
|
|
299
|
+
}).filter((item) => canUseKnowledge(item, context, access.knowledgePolicy)).map((item) => item.id)
|
|
300
|
+
});
|
|
301
|
+
}
|
|
264
302
|
finishContextExtractionRun({
|
|
265
303
|
runId: extraction.run.id,
|
|
266
304
|
status: "completed",
|
|
@@ -346,7 +384,12 @@ async function runPersistentLearningJobInner(job, getConfig) {
|
|
|
346
384
|
"assistant",
|
|
347
385
|
"toolResult"
|
|
348
386
|
].includes(row.role)) continue;
|
|
349
|
-
|
|
387
|
+
const sourceContexts = message.metadata?.sourceContexts;
|
|
388
|
+
if (Array.isArray(sourceContexts) && sourceContexts.length > 0) {
|
|
389
|
+
const raw = messageText(message);
|
|
390
|
+
const wrapped = /<source_contexts>[\s\S]*<\/source_contexts>\s*<user_message>\r?\n[\s\S]*\r?\n<\/user_message>\s*$/u.test(raw);
|
|
391
|
+
if (row.role !== "user" || !wrapped || raw === text || /<source_contexts>|<\/?user_message>/u.test(text)) continue;
|
|
392
|
+
}
|
|
350
393
|
if (row.role === "toolResult" && /(?:memory|user_context|knowledge|session|history|recall)/i.test(message.toolName ?? "")) continue;
|
|
351
394
|
if (text.length > maxChars || /<xopc_user_context>|<xopc_task_execution>|<user-context>/.test(text)) continue;
|
|
352
395
|
chars += text.length;
|
|
@@ -439,7 +482,22 @@ async function runPersistentLearningJobInner(job, getConfig) {
|
|
|
439
482
|
processing: runtime.processingPolicy
|
|
440
483
|
}
|
|
441
484
|
}) : emptyUserModelCaptureResult();
|
|
442
|
-
const
|
|
485
|
+
const deletionContext = {
|
|
486
|
+
conversationId: job.conversation_id,
|
|
487
|
+
agentId,
|
|
488
|
+
workspaceId: job.workspace_id,
|
|
489
|
+
projectId
|
|
490
|
+
};
|
|
491
|
+
const deletions = access.knowledge ? applyKnowledgeDeletions({
|
|
492
|
+
interpretation,
|
|
493
|
+
evidence,
|
|
494
|
+
context: deletionContext,
|
|
495
|
+
allowedTargetIds: listKnowledgeItems({
|
|
496
|
+
recordClass: "memory",
|
|
497
|
+
limit: 200
|
|
498
|
+
}).filter((item) => canUseKnowledge(item, deletionContext, access.knowledgePolicy)).map((item) => item.id)
|
|
499
|
+
}) : [];
|
|
500
|
+
const work = interpretation.intent !== "forget" && !interpretation.knowledgeDeletions?.length && access.knowledge && current.userContext.knowledgeMemory.writePolicy === "allow" && access.knowledgePolicy.contentSources.includes("memory") ? applyWorkCandidates({
|
|
443
501
|
candidates: (interpretation.knowledge ?? []).filter((candidate) => access.knowledgePolicy.scopes.includes(candidate.scope)),
|
|
444
502
|
evidence,
|
|
445
503
|
conversationId: job.conversation_id,
|
|
@@ -452,14 +510,18 @@ async function runPersistentLearningJobInner(job, getConfig) {
|
|
|
452
510
|
finishContextExtractionRun({
|
|
453
511
|
runId: extraction.run.id,
|
|
454
512
|
status: "completed",
|
|
455
|
-
outputs: [
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
513
|
+
outputs: [
|
|
514
|
+
...result.outputs.map((output) => ({
|
|
515
|
+
candidateKey: output.candidateKey,
|
|
516
|
+
...output.assertionId ? {
|
|
517
|
+
objectType: "assertion",
|
|
518
|
+
objectId: output.assertionId
|
|
519
|
+
} : {},
|
|
520
|
+
outcome: output.outcome === "rejected" ? "rejected" : output.outcome === "deduplicated" ? "deduplicated" : "created"
|
|
521
|
+
})),
|
|
522
|
+
...deletions,
|
|
523
|
+
...work
|
|
524
|
+
]
|
|
463
525
|
});
|
|
464
526
|
}, through);
|
|
465
527
|
} catch (err) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export type AgentCapabilityCategory = 'authoring' | 'research' | 'analysis' | 'assets';
|
|
2
|
-
export type AgentCapabilityActivationMode = 'explicit' | 'ui-entry'
|
|
2
|
+
export type AgentCapabilityActivationMode = 'explicit' | 'ui-entry';
|
|
3
3
|
export type AgentCapabilityTtl = 'turn' | 'session' | 'until-complete';
|
|
4
|
-
export type AgentCapabilityActivationSource = 'skill' | 'ui'
|
|
4
|
+
export type AgentCapabilityActivationSource = 'skill' | 'ui';
|
|
5
5
|
export type AgentCapabilitySessionStatus = 'collecting' | 'running' | 'complete';
|
|
6
6
|
export type AgentCapabilityPermissions = {
|
|
7
7
|
writesFiles?: boolean;
|
|
@@ -64,22 +64,6 @@ export declare const AGENT_CAPABILITY_DEFINITIONS: readonly [{
|
|
|
64
64
|
readonly writesFiles: true;
|
|
65
65
|
readonly requiresConfirm: true;
|
|
66
66
|
};
|
|
67
|
-
}, {
|
|
68
|
-
readonly id: "workflow-authoring";
|
|
69
|
-
readonly label: "Workflow authoring";
|
|
70
|
-
readonly description: "Create, revise, validate, publish, and run xopc workflows in conversation.";
|
|
71
|
-
readonly category: "authoring";
|
|
72
|
-
readonly tools: readonly ["workflow_manage", "workflow"];
|
|
73
|
-
readonly requiredSkills: readonly ["workflow-authoring"];
|
|
74
|
-
readonly activation: {
|
|
75
|
-
readonly mode: "explicit";
|
|
76
|
-
readonly ttl: "until-complete";
|
|
77
|
-
};
|
|
78
|
-
readonly permissions: {
|
|
79
|
-
readonly writesFiles: true;
|
|
80
|
-
readonly runsCode: true;
|
|
81
|
-
readonly requiresConfirm: true;
|
|
82
|
-
};
|
|
83
67
|
}, {
|
|
84
68
|
readonly id: "extension-authoring";
|
|
85
69
|
readonly label: "Plugin and extension authoring";
|
|
@@ -29,23 +29,6 @@ const AGENT_CAPABILITY_DEFINITIONS = [
|
|
|
29
29
|
requiresConfirm: true
|
|
30
30
|
}
|
|
31
31
|
},
|
|
32
|
-
{
|
|
33
|
-
id: "workflow-authoring",
|
|
34
|
-
label: "Workflow authoring",
|
|
35
|
-
description: "Create, revise, validate, publish, and run xopc workflows in conversation.",
|
|
36
|
-
category: "authoring",
|
|
37
|
-
tools: ["workflow_manage", "workflow"],
|
|
38
|
-
requiredSkills: ["workflow-authoring"],
|
|
39
|
-
activation: {
|
|
40
|
-
mode: "explicit",
|
|
41
|
-
ttl: "until-complete"
|
|
42
|
-
},
|
|
43
|
-
permissions: {
|
|
44
|
-
writesFiles: true,
|
|
45
|
-
runsCode: true,
|
|
46
|
-
requiresConfirm: true
|
|
47
|
-
}
|
|
48
|
-
},
|
|
49
32
|
{
|
|
50
33
|
id: "extension-authoring",
|
|
51
34
|
label: "Plugin and extension authoring",
|
|
@@ -55,7 +55,7 @@ export interface DelegateChildHandleOptions {
|
|
|
55
55
|
* factory ↔ delegate-tool ↔ child-agent-factory cycle).
|
|
56
56
|
*/
|
|
57
57
|
buildChildTools: (opts: BuildChildToolsOptions) => AgentTool<any, any>[];
|
|
58
|
-
/** Optional live progress for
|
|
58
|
+
/** Optional live progress for delegated agents. */
|
|
59
59
|
progressHooks?: DelegateChildProgressHooks;
|
|
60
60
|
transcriptRuntime?: EmbeddedTranscriptRuntime;
|
|
61
61
|
conversationId?: string;
|
|
@@ -10,7 +10,7 @@ export type AgentRunErrorPayload = {
|
|
|
10
10
|
/**
|
|
11
11
|
* Map a raw agent/LLM error into a structured JSON payload the web UI can render
|
|
12
12
|
* as an actionable, i18n-friendly card. Falls back to plain `Error: <raw>` when
|
|
13
|
-
* the
|
|
13
|
+
* the provider supplied an unstructured error.
|
|
14
14
|
*/
|
|
15
15
|
export declare function formatAgentRunErrorForClient(rawError: string, context?: {
|
|
16
16
|
provider?: string;
|
|
@@ -45,7 +45,7 @@ function tryParseStructuredPayload(text) {
|
|
|
45
45
|
/**
|
|
46
46
|
* Map a raw agent/LLM error into a structured JSON payload the web UI can render
|
|
47
47
|
* as an actionable, i18n-friendly card. Falls back to plain `Error: <raw>` when
|
|
48
|
-
* the
|
|
48
|
+
* the provider supplied an unstructured error.
|
|
49
49
|
*/
|
|
50
50
|
function formatAgentRunErrorForClient(rawError, context) {
|
|
51
51
|
const trimmed = rawError.trim();
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { resolveStateDir } from "../../config/paths-state.js";
|
|
2
|
+
import { init_global_singleton, resolveGlobalSingleton } from "../../utils/global-singleton.js";
|
|
2
3
|
import { redactSensitiveOutput } from "../../utils/logger/redact.js";
|
|
3
4
|
import { init_logger } from "../../utils/logger.js";
|
|
4
|
-
import { init_global_singleton, resolveGlobalSingleton } from "../../utils/global-singleton.js";
|
|
5
5
|
import { init_paths } from "../../config/paths.js";
|
|
6
6
|
import { spawnProcess } from "../../process/run-process.js";
|
|
7
7
|
import { DurableState } from "../../storage/sqlite/durable-state.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { KnowledgeReadPolicy } from '../../knowledge-memory/index.js';
|
|
2
|
-
export
|
|
2
|
+
export interface ExecutionObjective {
|
|
3
3
|
kind: 'task';
|
|
4
4
|
id: string;
|
|
5
5
|
title: string;
|
|
@@ -10,13 +10,7 @@ export type ExecutionObjective = {
|
|
|
10
10
|
expectedOutputs: string[];
|
|
11
11
|
nextAction?: string;
|
|
12
12
|
blockedReason?: string;
|
|
13
|
-
}
|
|
14
|
-
kind: 'workflow';
|
|
15
|
-
id?: string;
|
|
16
|
-
title: string;
|
|
17
|
-
objective: string;
|
|
18
|
-
status: 'running';
|
|
19
|
-
};
|
|
13
|
+
}
|
|
20
14
|
export interface ExecutionScope {
|
|
21
15
|
conversationId: string;
|
|
22
16
|
projectId?: string;
|
|
@@ -32,27 +32,12 @@ function taskObjective(conversationId) {
|
|
|
32
32
|
expectedOutputs: contract?.expectedOutputs.slice(0, MAX_CRITERIA) ?? []
|
|
33
33
|
};
|
|
34
34
|
}
|
|
35
|
-
function workflowObjective(conversationId) {
|
|
36
|
-
const metadata = getSessionMetadata(conversationId);
|
|
37
|
-
if (!metadata) return void 0;
|
|
38
|
-
if (metadata.sessionType === "workflow-subagent" && metadata.parentConversationId) return workflowObjective(metadata.parentConversationId);
|
|
39
|
-
if (metadata.sessionType !== "workflow-run") return void 0;
|
|
40
|
-
const objective = bounded(typeof metadata.customData?.workflowGoal === "string" ? metadata.customData.workflowGoal : void 0);
|
|
41
|
-
const definitionId = metadata.workflowDefinitionId?.trim() || (typeof metadata.customData?.workflowDefinitionId === "string" ? metadata.customData.workflowDefinitionId.trim() : "workflow");
|
|
42
|
-
return {
|
|
43
|
-
kind: "workflow",
|
|
44
|
-
id: metadata.workflowRunId,
|
|
45
|
-
title: definitionId,
|
|
46
|
-
objective: objective || definitionId,
|
|
47
|
-
status: "running"
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
35
|
function resolveExecutionScope(conversationId) {
|
|
51
36
|
if (!isXopcDatabaseOpen()) return { conversationId };
|
|
52
37
|
return {
|
|
53
38
|
conversationId,
|
|
54
39
|
projectId: getSessionMetadata(conversationId)?.projectId,
|
|
55
|
-
objective: taskObjective(conversationId)
|
|
40
|
+
objective: taskObjective(conversationId)
|
|
56
41
|
};
|
|
57
42
|
}
|
|
58
43
|
function formatCurrentWorkForPrompt(scope) {
|
|
@@ -69,13 +54,11 @@ function formatCurrentWorkForPrompt(scope) {
|
|
|
69
54
|
"## Objective",
|
|
70
55
|
sanitizeForPromptLiteral(objective.objective)
|
|
71
56
|
];
|
|
72
|
-
if (objective.
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
if (objective.blockedReason) lines.push("", "Blocked reason:", sanitizeForPromptLiteral(objective.blockedReason));
|
|
78
|
-
}
|
|
57
|
+
if (objective.scopeBoundary) lines.push("", "## Scope Boundary", sanitizeForPromptLiteral(objective.scopeBoundary));
|
|
58
|
+
if (objective.acceptanceCriteria.length > 0) lines.push("", "## Acceptance Criteria", ...objective.acceptanceCriteria.map((item) => `- ${sanitizeForPromptLiteral(item)}`));
|
|
59
|
+
if (objective.expectedOutputs.length > 0) lines.push("", "## Expected outputs", ...objective.expectedOutputs.map((item) => `- ${sanitizeForPromptLiteral(item)}`));
|
|
60
|
+
if (objective.nextAction) lines.push("", "Next action:", sanitizeForPromptLiteral(objective.nextAction));
|
|
61
|
+
if (objective.blockedReason) lines.push("", "Blocked reason:", sanitizeForPromptLiteral(objective.blockedReason));
|
|
79
62
|
lines.push("", "Keep work inside this objective and its project scope. Treat the acceptance criteria and completion evidence as the definition of done.");
|
|
80
63
|
return lines.join("\n");
|
|
81
64
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
export { PiTranscriptManager, CURRENT_SESSION_VERSION } from './pi-transcript.js';
|
|
2
2
|
export type { SessionManager as PiTranscriptManagerType } from './pi-transcript.js';
|
|
3
3
|
export { installSessionToolResultGuard, guardSessionManager, getRawSessionAppendMessage, type GuardedPiTranscriptManager, type ToolResultGuardOptions, } from './session-tool-result-guard.js';
|
|
4
|
-
export { repairAssistantUsageInSessionManager } from './session-manager-init.js';
|
|
5
4
|
export { openSqliteHydratingSessionManager } from './sqlite-hydrating-session-manager.js';
|
|
6
5
|
export { createSqliteTranscriptRuntime, InMemoryTranscriptRuntime, type EmbeddedTranscriptRuntime, } from './transcript-runtime.js';
|
|
7
6
|
export { getEmbeddedExecutionRunId, getEmbeddedExecutionSession, runWithEmbeddedExecutionSession, } from './execution-context.js';
|
|
@@ -3,10 +3,9 @@ import { abortEmbeddedRun, getEmbeddedRunByConversationId, queueEmbeddedSteer }
|
|
|
3
3
|
import { DEFAULT_MAX_LIVE_TOOL_RESULT_CHARS, resolveLiveToolResultMaxChars, truncateToolResultMessage } from "./tool-result-truncation.js";
|
|
4
4
|
import { getRawSessionAppendMessage, guardSessionManager, installSessionToolResultGuard } from "./session-tool-result-guard.js";
|
|
5
5
|
import { acquireEmbeddedSessionRunner, buildEmbeddedRunnerFingerprint, evictAllEmbeddedSessionRunners, evictEmbeddedSessionRunner, getEmbeddedSessionRunnerIdleTtlMs, getEmbeddedSessionRunnerStats, isEmbeddedSessionRunnerEnabled, resetEmbeddedSessionRunnerForTest } from "./session-runner.js";
|
|
6
|
-
import { repairAssistantUsageInSessionManager } from "./session-manager-init.js";
|
|
7
6
|
import { openSqliteHydratingSessionManager } from "./sqlite-hydrating-session-manager.js";
|
|
8
7
|
import { InMemoryTranscriptRuntime, createSqliteTranscriptRuntime } from "./transcript-runtime.js";
|
|
9
8
|
import { runXopcEmbeddedTurn } from "./run-turn.js";
|
|
10
9
|
import { runEmbeddedTurnForSession } from "./run-for-session.js";
|
|
11
10
|
import { CURRENT_SESSION_VERSION, PiTranscriptManager } from "./pi-transcript.js";
|
|
12
|
-
export { CURRENT_SESSION_VERSION, DEFAULT_MAX_LIVE_TOOL_RESULT_CHARS, InMemoryTranscriptRuntime, PiTranscriptManager, abortEmbeddedRun, acquireEmbeddedSessionRunner, buildEmbeddedRunnerFingerprint, createSqliteTranscriptRuntime, evictAllEmbeddedSessionRunners, evictEmbeddedSessionRunner, getEmbeddedExecutionRunId, getEmbeddedExecutionSession, getEmbeddedRunByConversationId, getEmbeddedSessionRunnerIdleTtlMs, getEmbeddedSessionRunnerStats, getRawSessionAppendMessage, guardSessionManager, installSessionToolResultGuard, isEmbeddedSessionRunnerEnabled, openSqliteHydratingSessionManager, queueEmbeddedSteer,
|
|
11
|
+
export { CURRENT_SESSION_VERSION, DEFAULT_MAX_LIVE_TOOL_RESULT_CHARS, InMemoryTranscriptRuntime, PiTranscriptManager, abortEmbeddedRun, acquireEmbeddedSessionRunner, buildEmbeddedRunnerFingerprint, createSqliteTranscriptRuntime, evictAllEmbeddedSessionRunners, evictEmbeddedSessionRunner, getEmbeddedExecutionRunId, getEmbeddedExecutionSession, getEmbeddedRunByConversationId, getEmbeddedSessionRunnerIdleTtlMs, getEmbeddedSessionRunnerStats, getRawSessionAppendMessage, guardSessionManager, installSessionToolResultGuard, isEmbeddedSessionRunnerEnabled, openSqliteHydratingSessionManager, queueEmbeddedSteer, resetEmbeddedSessionRunnerForTest, resolveLiveToolResultMaxChars, runEmbeddedTurnForSession, runWithEmbeddedExecutionSession, runXopcEmbeddedTurn, truncateToolResultMessage };
|
|
@@ -19,6 +19,7 @@ import { getAssistantTurnErrorMessage, isAssistantTurnAborted, isAssistantTurnFa
|
|
|
19
19
|
import { allowsExecutionTool, filterExecutionTools, resolveExecutionToolPolicy } from "./execution-tool-policy.js";
|
|
20
20
|
import { externalPolicyContext, getXopcToolMetadata } from "./tool-metadata.js";
|
|
21
21
|
import { runWithEmbeddedExecutionSession } from "./execution-context.js";
|
|
22
|
+
import { originalReadAuthorizationNotice, projectForgottenHistoryMessages, projectSuppressedMemoryBlocks } from "../../memory-learning/forgotten-history.js";
|
|
22
23
|
import { isNestedCodemodePolicy } from "./codemode-extension.js";
|
|
23
24
|
import { isComputerControlActive, isComputerLeaseTool, stopComputerControl } from "../../computer/control-guard.js";
|
|
24
25
|
import { EmbeddedRunConflictError, abortEmbeddedRun, acquireEmbeddedRunLease, queueEmbeddedSteer } from "./runs.js";
|
|
@@ -26,6 +27,7 @@ import { lastAssistantPlainText, subscribeEmbeddedSessionEvents } from "./subscr
|
|
|
26
27
|
import { detectToolLoops } from "../orchestration/loop-guard.js";
|
|
27
28
|
import { tryApplySessionTranscriptHygiene } from "../transcript/transcript-hygiene.js";
|
|
28
29
|
import { restoreCurrentTurnImages } from "./current-turn-images.js";
|
|
30
|
+
import { getActiveTranscriptUserText } from "../inbound/attachment-pipeline.js";
|
|
29
31
|
import { resolvePromptCachePolicy } from "../../providers/prompt-cache-plan.js";
|
|
30
32
|
import { wrapStreamFnForXopcExtensions } from "./xopc-stream-bridge.js";
|
|
31
33
|
import { acquireEmbeddedSessionRunner, evictEmbeddedSessionRunner } from "./session-runner.js";
|
|
@@ -486,16 +488,37 @@ async function runXopcEmbeddedTurnInner(params) {
|
|
|
486
488
|
};
|
|
487
489
|
const loggingStreamFn = (streamModel, context, options) => {
|
|
488
490
|
instructions.acknowledge();
|
|
489
|
-
const
|
|
491
|
+
const memoryMetadata = isXopcDatabaseOpen() ? getSessionMetadata(conversationId) : void 0;
|
|
492
|
+
const historyContext = {
|
|
493
|
+
conversationId,
|
|
494
|
+
agentId: memoryMetadata?.agentId ?? "",
|
|
495
|
+
workspaceId: workspaceDir,
|
|
496
|
+
projectId: memoryMetadata?.projectId
|
|
497
|
+
};
|
|
498
|
+
const sourceMessages = projectForgottenHistoryMessages([...context.messages], historyContext, getActiveTranscriptUserText(conversationId) ?? (typeof userMessage === "string" ? userMessage : "")).map((message) => message.role !== "system" ? message : {
|
|
499
|
+
...message,
|
|
500
|
+
...typeof message.content === "string" ? { content: projectSuppressedMemoryBlocks(message.content, historyContext) } : {},
|
|
501
|
+
...message.sections ? { sections: Object.fromEntries(Object.entries(message.sections).map(([key, value]) => [key, projectSuppressedMemoryBlocks(value, historyContext)])) } : {}
|
|
502
|
+
});
|
|
490
503
|
const hygienicMessages = tryApplySessionTranscriptHygiene(sourceMessages, streamModel);
|
|
491
504
|
const loopGuard = detectToolLoops(extractRecentToolCalls(session.agent.state.messages));
|
|
492
505
|
let effectiveContext = {
|
|
493
506
|
...context,
|
|
494
507
|
messages: hygienicMessages
|
|
495
508
|
};
|
|
509
|
+
const readAuthorization = originalReadAuthorizationNotice(historyContext, getActiveTranscriptUserText(conversationId) ?? (typeof userMessage === "string" ? userMessage : ""));
|
|
510
|
+
if (readAuthorization) effectiveContext = {
|
|
511
|
+
...effectiveContext,
|
|
512
|
+
messages: [...effectiveContext.messages, {
|
|
513
|
+
role: "system",
|
|
514
|
+
content: "",
|
|
515
|
+
sections: { "xopc.original-read-authorization": readAuthorization },
|
|
516
|
+
timestamp: 0
|
|
517
|
+
}]
|
|
518
|
+
};
|
|
496
519
|
if (loopGuard.injection) effectiveContext = {
|
|
497
520
|
...effectiveContext,
|
|
498
|
-
messages: [...
|
|
521
|
+
messages: [...effectiveContext.messages, {
|
|
499
522
|
role: "user",
|
|
500
523
|
content: loopGuard.injection,
|
|
501
524
|
timestamp: Date.now()
|
|
@@ -3,7 +3,6 @@ import { ensureSessionRecord } from "../../storage/sqlite/session-repository.js"
|
|
|
3
3
|
import { loadTranscriptRowsForSession } from "../../storage/sqlite/transcript-repository.js";
|
|
4
4
|
import { init_sqlite } from "../../storage/sqlite/index.js";
|
|
5
5
|
import { storedRowsToFileEntries } from "../../session/stored-rows-to-file-entries.js";
|
|
6
|
-
import { repairAssistantUsageInSessionManager } from "./session-manager-init.js";
|
|
7
6
|
import { SessionManager } from "@earendil-works/pi-coding-agent";
|
|
8
7
|
//#region src/agent/embedded/sqlite-hydrating-session-manager.ts
|
|
9
8
|
init_sqlite();
|
|
@@ -26,7 +25,6 @@ function openSqliteHydratingSessionManager(params) {
|
|
|
26
25
|
internal.sessionId = params.transcriptId;
|
|
27
26
|
internal.flushed = true;
|
|
28
27
|
internal._buildIndex();
|
|
29
|
-
repairAssistantUsageInSessionManager(sm);
|
|
30
28
|
return sm;
|
|
31
29
|
}
|
|
32
30
|
//#endregion
|
|
@@ -64,14 +64,14 @@ function textResult(value, details = {}) {
|
|
|
64
64
|
}
|
|
65
65
|
function createExternalToolGatewayTools(providers, getContext, getConfig, getExecutionConversationId, nativeSources = [], executorConfig) {
|
|
66
66
|
const service = new ExternalToolService(providers);
|
|
67
|
-
const
|
|
68
|
-
const
|
|
67
|
+
const gatewaySources = EXTERNAL_TOOL_SOURCES.filter((source) => !nativeSources.includes(source));
|
|
68
|
+
const assertGatewayRef = (ref) => {
|
|
69
69
|
if (nativeSources.some((source) => ref.startsWith(`${source}:`))) throw new Error("Use tool_search to load this native tool, then call it directly.");
|
|
70
70
|
};
|
|
71
71
|
const searchTool = {
|
|
72
72
|
name: EXTERNAL_TOOL_NAMES.search,
|
|
73
73
|
label: "🔎 External Tool Search",
|
|
74
|
-
description: `Search external tools from these sources: ${
|
|
74
|
+
description: `Search external tools from these sources: ${gatewaySources.join(", ")}.${nativeSources.length ? ` Use tool_search for native ${nativeSources.join(", ")} tools.` : ""} CLI connectors include Feishu/Lark, WeCom and WPS 365. Omit sources unless intentionally restricting the search; do not guess a source list. Use concise English capability keywords, e.g. "wecom doc.search". Returns executable tools, connection candidates, or reviewed Store install candidates. Call xopc_tool_describe before executing a tool. When no executable tool exists but a connection or install candidate is returned, use xopc_require_connection instead of falling back to browser automation. If a source-filtered search finds no relevant tools, retry without sources before concluding a capability is unavailable.`,
|
|
75
75
|
parameters: ToolSearchSchema,
|
|
76
76
|
async execute(_toolCallId, params) {
|
|
77
77
|
const selectedSources = new Set(params.sources ?? []);
|
|
@@ -82,7 +82,7 @@ function createExternalToolGatewayTools(providers, getContext, getConfig, getExe
|
|
|
82
82
|
});
|
|
83
83
|
const result = await service.search({
|
|
84
84
|
...params,
|
|
85
|
-
sources: (params.sources?.length ? params.sources :
|
|
85
|
+
sources: (params.sources?.length ? params.sources : gatewaySources).filter((source) => !nativeSources.includes(source))
|
|
86
86
|
});
|
|
87
87
|
const candidates = [...result.connectionCandidates, ...connectionCandidates(params.query)].filter((candidate, index, all) => all.findIndex((item) => item.candidateRef === candidate.candidateRef) === index);
|
|
88
88
|
let installCandidates = [];
|
|
@@ -115,7 +115,7 @@ function createExternalToolGatewayTools(providers, getContext, getConfig, getExe
|
|
|
115
115
|
description: "Load exact contracts for up to three external tools returned by xopc_tool_search.",
|
|
116
116
|
parameters: ToolDescribeSchema,
|
|
117
117
|
async execute(_toolCallId, params) {
|
|
118
|
-
params.toolRefs.forEach(
|
|
118
|
+
params.toolRefs.forEach(assertGatewayRef);
|
|
119
119
|
const result = await service.describe(params.toolRefs);
|
|
120
120
|
return textResult({
|
|
121
121
|
...result,
|
|
@@ -183,7 +183,7 @@ function createExternalToolGatewayTools(providers, getContext, getConfig, getExe
|
|
|
183
183
|
};
|
|
184
184
|
const nativeExecute = executeTool.execute.bind(executeTool);
|
|
185
185
|
executeTool.execute = async (id, params, signal, update) => {
|
|
186
|
-
|
|
186
|
+
assertGatewayRef(params.toolRef);
|
|
187
187
|
return nativeExecute(id, params, signal, update);
|
|
188
188
|
};
|
|
189
189
|
bindExternalToolRegistry(executeTool, {
|
|
@@ -34,6 +34,8 @@ export declare function hydrateUserTurnForLlm(opts: {
|
|
|
34
34
|
}): Promise<LlmUserTurn>;
|
|
35
35
|
export declare function setPendingTranscriptUserMessage(conversationId: string, message: TranscriptUserMessage): void;
|
|
36
36
|
export declare function getPendingTranscriptUserText(conversationId: string): string | undefined;
|
|
37
|
+
/** The active owner's utterance remains available after its persistence receipt is consumed. */
|
|
38
|
+
export declare function getActiveTranscriptUserText(conversationId: string): string | undefined;
|
|
37
39
|
export declare function takePendingTranscriptUserMessage(conversationId: string): TranscriptUserMessage | undefined;
|
|
38
40
|
export declare function clearPendingTranscriptUserMessage(conversationId: string, message?: TranscriptUserMessage): void;
|
|
39
41
|
export declare function pendingTranscriptReferencesMediaUri(conversationId: string, uri: string): boolean;
|
|
@@ -143,6 +143,7 @@ async function hydrateUserTurnForLlm(opts) {
|
|
|
143
143
|
};
|
|
144
144
|
}
|
|
145
145
|
const pendingTranscriptBySession = /* @__PURE__ */ new Map();
|
|
146
|
+
const activeTranscriptUserBySession = /* @__PURE__ */ new Map();
|
|
146
147
|
function messageTextForPendingCompare(message) {
|
|
147
148
|
return joinTextBlocks(textBlocksFromContent(readAgentMessageContent(message)));
|
|
148
149
|
}
|
|
@@ -159,22 +160,26 @@ function pendingMatchesMessage(pending, message) {
|
|
|
159
160
|
function setPendingTranscriptUserMessage(conversationId, message) {
|
|
160
161
|
assertTranscriptUserMessage(message);
|
|
161
162
|
pendingTranscriptBySession.set(conversationId, message);
|
|
163
|
+
activeTranscriptUserBySession.set(conversationId, message);
|
|
162
164
|
}
|
|
163
165
|
function getPendingTranscriptUserText(conversationId) {
|
|
164
166
|
const message = pendingTranscriptBySession.get(conversationId);
|
|
165
167
|
if (!message) return void 0;
|
|
166
168
|
return stripRuntimeUserMessageEnvelope(messageTextForPendingCompare(message)).trim();
|
|
167
169
|
}
|
|
170
|
+
/** The active owner's utterance remains available after its persistence receipt is consumed. */
|
|
171
|
+
function getActiveTranscriptUserText(conversationId) {
|
|
172
|
+
const message = activeTranscriptUserBySession.get(conversationId);
|
|
173
|
+
return message ? stripRuntimeUserMessageEnvelope(messageTextForPendingCompare(message)).trim() : void 0;
|
|
174
|
+
}
|
|
168
175
|
function takePendingTranscriptUserMessage(conversationId) {
|
|
169
176
|
const msg = pendingTranscriptBySession.get(conversationId);
|
|
170
177
|
pendingTranscriptBySession.delete(conversationId);
|
|
171
178
|
return msg;
|
|
172
179
|
}
|
|
173
180
|
function clearPendingTranscriptUserMessage(conversationId, message) {
|
|
174
|
-
|
|
175
|
-
if (!
|
|
176
|
-
if (message && existing !== message) return;
|
|
177
|
-
pendingTranscriptBySession.delete(conversationId);
|
|
181
|
+
if (!message || pendingTranscriptBySession.get(conversationId) === message) pendingTranscriptBySession.delete(conversationId);
|
|
182
|
+
if (!message || activeTranscriptUserBySession.get(conversationId) === message) activeTranscriptUserBySession.delete(conversationId);
|
|
178
183
|
}
|
|
179
184
|
function pendingTranscriptReferencesMediaUri(conversationId, uri) {
|
|
180
185
|
return pendingTranscriptBySession.get(conversationId)?.media?.some((ref) => ref.uri === uri.trim()) === true;
|
|
@@ -192,4 +197,4 @@ function transformUserMessageForPersistence(conversationId, message) {
|
|
|
192
197
|
return message;
|
|
193
198
|
}
|
|
194
199
|
//#endregion
|
|
195
|
-
export { assertTranscriptUserMessage, buildTranscriptUserMessage, clearPendingTranscriptUserMessage, getPendingTranscriptUserText, hydrateUserTurnForLlm, pendingTranscriptReferencesMediaUri, setPendingTranscriptUserMessage, takePendingTranscriptUserMessage, transformUserMessageForPersistence };
|
|
200
|
+
export { assertTranscriptUserMessage, buildTranscriptUserMessage, clearPendingTranscriptUserMessage, getActiveTranscriptUserText, getPendingTranscriptUserText, hydrateUserTurnForLlm, pendingTranscriptReferencesMediaUri, setPendingTranscriptUserMessage, takePendingTranscriptUserMessage, transformUserMessageForPersistence };
|
|
@@ -80,8 +80,8 @@ async function advertisesOAuth(config, workspace, serverId, signal) {
|
|
|
80
80
|
})) return true;
|
|
81
81
|
}
|
|
82
82
|
if (!/\bBearer\b/i.test(challenge)) return false;
|
|
83
|
-
const
|
|
84
|
-
return Boolean(
|
|
83
|
+
const authorizationServer = await metadata(new URL("/.well-known/oauth-authorization-server", url), signal);
|
|
84
|
+
return Boolean(authorizationServer && authorizationServer.issuer === url.origin && typeof authorizationServer.authorization_endpoint === "string" && typeof authorizationServer.token_endpoint === "string");
|
|
85
85
|
}
|
|
86
86
|
async function probeMcpConnection(config, workspace, serverId, options) {
|
|
87
87
|
config = resolveMcpSetupConfig(config, serverId);
|
|
@@ -2,7 +2,7 @@ import { type CompactionHandover } from '../../session/compaction-types.js';
|
|
|
2
2
|
import type { TranscriptSourceEntry } from '../../storage/sqlite/transcript-repository.js';
|
|
3
3
|
export type { CompactionAudit, CompactionHandover, CompactionHandoverItem, HandoverItemKind, } from '../../session/compaction-types.js';
|
|
4
4
|
export declare const MAX_HANDOVER_ITEMS = 120;
|
|
5
|
-
/** Normalize
|
|
5
|
+
/** Normalize model-produced ledgers into the bounded durable form. */
|
|
6
6
|
export declare function consolidateCompactionHandover(handover: CompactionHandover): CompactionHandover;
|
|
7
7
|
/** Apply a bounded model-produced delta to the trusted local handover. */
|
|
8
8
|
export declare function applyCompactionHandoverDelta(params: {
|
|
@@ -125,7 +125,7 @@ function consolidateItems(items) {
|
|
|
125
125
|
const retainedIds = new Set([...perKindBounded].sort(compareRetentionPriority).slice(0, 120).map((item) => item.id));
|
|
126
126
|
return perKindBounded.filter((item) => retainedIds.has(item.id));
|
|
127
127
|
}
|
|
128
|
-
/** Normalize
|
|
128
|
+
/** Normalize model-produced ledgers into the bounded durable form. */
|
|
129
129
|
function consolidateCompactionHandover(handover) {
|
|
130
130
|
return {
|
|
131
131
|
...handover,
|
|
@@ -123,7 +123,7 @@ function promoteCompactionLedger(input) {
|
|
|
123
123
|
const sensitivity = inferMemorySensitivity(item.text);
|
|
124
124
|
if (sensitivity === "secret" || sensitivity === "regulated") continue;
|
|
125
125
|
const classified = classifyItemProvenance(item, sourceById, entriesByTurn, entriesByRound);
|
|
126
|
-
const originClass = sessionKind === "automation" || sessionKind === "
|
|
126
|
+
const originClass = sessionKind === "automation" || sessionKind === "background" ? "system" : sessionKind === "group" ? "untrusted" : classified.originClass;
|
|
127
127
|
const active = item.status === "active";
|
|
128
128
|
const supportingSources = item.sources.flatMap((ref) => sourceById.get(ref.entryId) ?? []);
|
|
129
129
|
const independentlySupported = supportingSources.some((entry) => rowRole(entry) === "user") || supportingSources.some((entry) => entriesByRound.get(entry.entryId)?.some((peer) => rowRole(peer) === "user"));
|
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
//#region src/agent/memory/source-origin.ts
|
|
2
|
-
const INTERNAL_MEMORY_PROVIDERS = new Set([
|
|
3
|
-
"local",
|
|
4
|
-
"builtin",
|
|
5
|
-
"workflow-run"
|
|
6
|
-
]);
|
|
2
|
+
const INTERNAL_MEMORY_PROVIDERS = new Set(["local", "builtin"]);
|
|
7
3
|
function classifyMemoryContextOrigin(record) {
|
|
8
4
|
const provider = record.source.provider?.trim().toLowerCase();
|
|
9
5
|
if (provider && !INTERNAL_MEMORY_PROVIDERS.has(provider)) return "connected_source";
|
|
@@ -14,10 +14,8 @@ function stateKey(conversationId, turnId) {
|
|
|
14
14
|
function resolveMemorySessionKind(conversationId) {
|
|
15
15
|
const parsed = getConversationRouting(conversationId);
|
|
16
16
|
if (!parsed) return "unknown";
|
|
17
|
-
|
|
18
|
-
if (kind === "workflow-subagent") return "subagent";
|
|
17
|
+
if (getSessionMetadata(conversationId)?.sessionType === "subagent") return "subagent";
|
|
19
18
|
if (parsed.source === "cron") return "automation";
|
|
20
|
-
if (kind === "workflow-run") return "workflow";
|
|
21
19
|
if (parsed.peerKind === "group" || parsed.peerKind === "channel") return "group";
|
|
22
20
|
return "interactive";
|
|
23
21
|
}
|
|
@@ -5,7 +5,7 @@ export type MemoryExplicitness = 'explicit' | 'observed' | 'inferred';
|
|
|
5
5
|
export type MemoryDurability = 'ephemeral' | 'durable' | 'recurring';
|
|
6
6
|
export type MemoryDisclosurePolicy = 'silent' | 'referenceable' | 'ask_before_reference';
|
|
7
7
|
export type MemoryOriginClass = 'owner' | 'agent' | 'untrusted' | 'system';
|
|
8
|
-
export type MemorySessionKind = 'interactive' | 'group' | 'automation' | '
|
|
8
|
+
export type MemorySessionKind = 'interactive' | 'group' | 'automation' | 'subagent' | 'background' | 'unknown';
|
|
9
9
|
export interface MemoryProvenance {
|
|
10
10
|
sourceAgentId: string;
|
|
11
11
|
originClass: MemoryOriginClass;
|
|
@@ -10,7 +10,6 @@ import type { ThinkLevel } from '../transcript/thinking-types.js';
|
|
|
10
10
|
import type { CompactionResult } from '../memory/compaction.js';
|
|
11
11
|
import type { AgentSourceContext } from '../source-context/types.js';
|
|
12
12
|
import { type BtwQueryOptions, type CommandStreamEvent } from '../../chat-commands/index.js';
|
|
13
|
-
import type { WorkflowRunServiceLike } from '../../workflows/service/workflow-run-service.types.js';
|
|
14
13
|
import type { SkillInstallToolOptions, SkillInstallToolResult } from '../tools/skill-install-tool.js';
|
|
15
14
|
export interface CommandContext {
|
|
16
15
|
conversationId: string;
|
|
@@ -53,7 +52,6 @@ export interface CommandHandlerConfig {
|
|
|
53
52
|
error?: string;
|
|
54
53
|
}>;
|
|
55
54
|
getSessionContextReport?: (conversationId: string, mode: 'list' | 'detail' | 'json') => Promise<string>;
|
|
56
|
-
getWorkflowRunService?: () => WorkflowRunServiceLike | undefined;
|
|
57
55
|
}
|
|
58
56
|
export declare class CommandHandler {
|
|
59
57
|
private config;
|
|
@@ -71,7 +69,6 @@ export declare class CommandHandler {
|
|
|
71
69
|
private btwQuery?;
|
|
72
70
|
private getSessionContextReport?;
|
|
73
71
|
private resetSession?;
|
|
74
|
-
private getWorkflowRunService?;
|
|
75
72
|
constructor(handlerConfig: CommandHandlerConfig);
|
|
76
73
|
/** Replace config reference after hot reload or gateway PATCH so commands see current defaults. */
|
|
77
74
|
updateAgentConfig(config: Config): void;
|