@xopcai/xopc 0.0.419 → 0.0.421
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/dist/browser-ext/manifest.json +1 -1
- package/dist/extensions/feishu/src/adapters/cli-login.js +3 -3
- package/dist/extensions/feishu/src/outbound/media-load.js +1 -1
- package/dist/extensions/telegram/src/inbound-processor.js +2 -2
- package/dist/extensions/telegram/src/outbound-sender.js +1 -1
- package/dist/extensions/telegram/src/plugin.js +2 -2
- package/dist/extensions/telegram/xopc.extension.json +1 -1
- package/dist/extensions/weixin/src/api/api.js +2 -2
- package/dist/extensions/weixin/src/auth/accounts.js +12 -12
- package/dist/extensions/weixin/src/messaging/debug-mode.js +5 -5
- package/dist/extensions/weixin/src/messaging/inbound.js +11 -11
- package/dist/gateway/static/root/assets/{activity-store-DnqOM8GN.js → activity-store-CKrylgib.js} +1 -1
- package/dist/gateway/static/root/assets/{agent-avatar-dicebear-1UABT2KS.js → agent-avatar-dicebear-Dv5Rda4y.js} +1 -1
- package/dist/gateway/static/root/assets/agent-avatar-display-B1ycycx2.js +2 -0
- package/dist/gateway/static/root/assets/agent-defaults-settings-panel-D285zy0S.js +1 -0
- package/dist/gateway/static/root/assets/agent-plugin-dialog-D3yCqVan.js +1 -0
- package/dist/gateway/static/root/assets/{agents-O7mago-m.js → agents-DyAuR3rG.js} +5 -5
- package/dist/gateway/static/root/assets/{agents-admin-api-CyjykMEh.js → agents-admin-api-CASGzvkW.js} +1 -1
- package/dist/gateway/static/root/assets/{api-C1dxxDZx.js → api-C4LxuNzq.js} +1 -1
- package/dist/gateway/static/root/assets/{api-Ddrs70xV.js → api-Uk05lF9i.js} +1 -1
- package/dist/gateway/static/root/assets/app-management-settings-panel-CDnZNKHt.js +1 -0
- package/dist/gateway/static/root/assets/appearance-settings-CmCF7PZ5.js +1 -0
- package/dist/gateway/static/root/assets/apps-page-BR9qoA2P.js +1 -0
- package/dist/gateway/static/root/assets/{archive-plugin-n5lPr79c.js → archive-plugin-nuHYYVty.js} +1 -1
- package/dist/gateway/static/root/assets/automation-api-DtJfd1QM.js +1 -0
- package/dist/gateway/static/root/assets/automation-display-BlGt8MAC.js +2 -0
- package/dist/gateway/static/root/assets/automation-task-card-Cp3RIw5d.js +2 -0
- package/dist/gateway/static/root/assets/{automations-page-oLsNzu_6.js → automations-page-DM4IdUJh.js} +1 -1
- package/dist/gateway/static/root/assets/automations-workspace-CXLu04I-.js +9 -0
- package/dist/gateway/static/root/assets/{binary-plugins-D9VW7dWP.js → binary-plugins-CHCAr8jt.js} +1 -1
- package/dist/gateway/static/root/assets/{block-editor-C477bTtO.js → block-editor-B0v8KxsO.js} +4 -4
- package/dist/gateway/static/root/assets/{browser-automation-inputs-CCiYXxmh.js → browser-automation-inputs-DjUW7PEB.js} +1 -1
- package/dist/gateway/static/root/assets/browser-automations-page-Cf8AoQz1.js +3 -0
- package/dist/gateway/static/root/assets/{browser-control-api-Y3fvmeBk.js → browser-control-api-C6NZgaA1.js} +1 -1
- package/dist/gateway/static/root/assets/{browser-settings-page-DjkGahlz.js → browser-settings-page-DV2FNEDf.js} +2 -2
- package/dist/gateway/static/root/assets/{capabilities-DAyA681v.js → capabilities-CwdjWz2r.js} +1 -1
- package/dist/gateway/static/root/assets/{capabilities-DRVXLssH.js → capabilities-D0-HCZ5J.js} +1 -1
- package/dist/gateway/static/root/assets/capabilities-page-DwDkritH.js +2 -0
- package/dist/gateway/static/root/assets/capabilities-settings-panel-mme16Fbp.js +8 -0
- package/dist/gateway/static/root/assets/channels-lKFLu8p-.js +1 -0
- package/dist/gateway/static/root/assets/{chat-agents-api-D5nR_JVe.js → chat-agents-api-l80cvSac.js} +1 -1
- package/dist/gateway/static/root/assets/{chat-chart-block-K2t333qv.js → chat-chart-block-BwP5QXEk.js} +1 -1
- package/dist/gateway/static/root/assets/chat-page-CT3K7lFT.js +71 -0
- package/dist/gateway/static/root/assets/{chat-terminal-dock-CkFG6mA3.js → chat-terminal-dock-D2bV9YUL.js} +2 -2
- package/dist/gateway/static/root/assets/{list-filter-COkzTdOz.js → clipboard-copy-DuJk5WD6.js} +1 -1
- package/dist/gateway/static/root/assets/{command-palette-api-Do_66X1B.js → command-palette-api-CtapG8ck.js} +1 -1
- package/dist/gateway/static/root/assets/composer-payload-handoff-DYuhKZRC.js +1 -0
- package/dist/gateway/static/root/assets/{computer-settings-page-DBxOcMko.js → computer-settings-page-DZtMuihL.js} +1 -1
- package/dist/gateway/static/root/assets/connected-providers-grid-BQH5k3iC.js +1 -0
- package/dist/gateway/static/root/assets/{connector-service-page-rWpnchb3.js → connector-service-page-DrvFdP3G.js} +1 -1
- package/dist/gateway/static/root/assets/{connectors-api-DIBG72k4.js → connectors-api-BzkgVBYC.js} +1 -1
- package/dist/gateway/static/root/assets/connectors-page-BtRNVCFy.js +1 -0
- package/dist/gateway/static/root/assets/{date-picker-CE-cZFCU.js → date-picker-ByTasrfl.js} +1 -1
- package/dist/gateway/static/root/assets/{dependency-picker-7SpSfDSg.js → dependency-picker-Dh8hPmsT.js} +1 -1
- package/dist/gateway/static/root/assets/desktop-pet-CFz8bqyI.js +1 -0
- package/dist/gateway/static/root/assets/desktop-pet-settings-COaboNn1.js +1 -0
- package/dist/gateway/static/root/assets/{dev-view-store-57HgVuZ6.js → dev-view-store-D8XYHVqG.js} +1 -1
- package/dist/gateway/static/root/assets/device-pairing-wizard-BKMpLdIA.js +1 -0
- package/dist/gateway/static/root/assets/{directory-picker-path-field-D4jMhpka.js → directory-picker-path-field-Cjv7rdo3.js} +1 -1
- package/dist/gateway/static/root/assets/discussion-annotation-sync-YvlVw17j.js +1 -0
- package/dist/gateway/static/root/assets/{dist-DNCdG_qB.js → dist-D3lWNSe7.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-debug-page-BsK2LMXQ.js → extension-debug-page-CXx3m5-B.js} +1 -1
- package/dist/gateway/static/root/assets/extension-iframe-host-CnOdNwbo.js +1 -0
- package/dist/gateway/static/root/assets/{extension-marketplace-api-CVJPqJOB.js → extension-marketplace-api-BABmUY2s.js} +1 -1
- package/dist/gateway/static/root/assets/extension-page-C1nGr4DD.js +1 -0
- package/dist/gateway/static/root/assets/{extension-provider-Byrd8Sor.js → extension-provider-BA0Y2Rvs.js} +1 -1
- package/dist/gateway/static/root/assets/extension-settings-page-QIPI8e7k.js +1 -0
- package/dist/gateway/static/root/assets/{file-preview-surface-BlprUrIs.js → file-preview-surface-BsB7bnFH.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-config-swr-BAmUhiP1.js → gateway-config-swr-Bt8w0Iio.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-realtime-CsykKL4l.js → gateway-realtime-CyCCNUxm.js} +1 -1
- package/dist/gateway/static/root/assets/gateway-realtime-store-0gmDfPeP.js +1 -0
- package/dist/gateway/static/root/assets/gateway-restart-Ty4AzDxa.js +1 -0
- package/dist/gateway/static/root/assets/{gateway-settings-BA5-Uuwx.js → gateway-settings-BvKq7vuz.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-startup-retry-CtUB3g6N.js → gateway-startup-retry-N3k-C7c2.js} +1 -1
- package/dist/gateway/static/root/assets/{global-defaults-api-CINf-C6a.js → global-defaults-api-D8EB2vfY.js} +1 -1
- package/dist/gateway/static/root/assets/home-page-eRuAzi58.js +2 -0
- package/dist/gateway/static/root/assets/image-generation-api-C99Fsofm.js +1 -0
- package/dist/gateway/static/root/assets/{imports-page-BWShtGRQ.js → imports-page-Cp9RquVb.js} +1 -1
- package/dist/gateway/static/root/assets/index-6vVrWfwM.js +11 -0
- package/dist/gateway/static/root/assets/index-DDGK6klk.css +1 -0
- package/dist/gateway/static/root/assets/install-connector-dialog-CsoAidXp.js +1 -0
- package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-CdM4BQwp.js → keyboard-shortcuts-settings-DFhOP2aD.js} +1 -1
- package/dist/gateway/static/root/assets/list-filter-CIPvpfLA.js +1 -0
- package/dist/gateway/static/root/assets/local-app-workbench-page-DbtU_A-l.js +1 -0
- package/dist/gateway/static/root/assets/{local-apps-page-CxyRVfjD.js → local-apps-page-rjhHfLpe.js} +1 -1
- package/dist/gateway/static/root/assets/{local-session-drafts-B9ZPwotC.js → local-session-drafts-DHM4vWDO.js} +1 -1
- package/dist/gateway/static/root/assets/{locale-store-lIXD1FMw.js → locale-store-5Hf8J8-_.js} +1 -1
- package/dist/gateway/static/root/assets/logs-page-Dx_JIOpF.js +2 -0
- package/dist/gateway/static/root/assets/management-settings-CuSzixOw.js +1 -0
- package/dist/gateway/static/root/assets/{markdown-view-CJt-i2Dp.js → markdown-view-pzSRu7av.js} +3 -3
- package/dist/gateway/static/root/assets/{media-plugins-D_bR23mA.js → media-plugins-3cJuHbO7.js} +1 -1
- package/dist/gateway/static/root/assets/messages-uXxg5p54.js +3 -0
- package/dist/gateway/static/root/assets/model-selector-ksLo-5B_.js +1 -0
- package/dist/gateway/static/root/assets/{models-hub-cache-za2fWJLg.js → models-hub-cache-DhZng2nF.js} +1 -1
- package/dist/gateway/static/root/assets/navigation-D62kPsA9.js +1 -0
- package/dist/gateway/static/root/assets/note-detail-panel-B6RbjwJq.js +5 -0
- package/dist/gateway/static/root/assets/note-image-lightbox-BCjvBqwy.js +1 -0
- package/dist/gateway/static/root/assets/{notes-api-C_458rv5.js → notes-api-DocbsBbT.js} +1 -1
- package/dist/gateway/static/root/assets/notes-page-B7889s6-.js +8 -0
- package/dist/gateway/static/root/assets/{oauth-api-C3X9FLYw.js → oauth-api-CCFIPbA0.js} +1 -1
- package/dist/gateway/static/root/assets/{oauth-provider-connect-H81se_3n.js → oauth-provider-connect-GxkF0vWJ.js} +1 -1
- package/dist/gateway/static/root/assets/open-capability-settings-Cvb65hQB.js +1 -0
- package/dist/gateway/static/root/assets/{page-context-capture-button-BkAlQ7cB.js → page-context-capture-button-CvWLVeRA.js} +1 -1
- package/dist/gateway/static/root/assets/{page-context-draft-ClLgaOaD.js → page-context-draft-CMRDNv4d.js} +1 -1
- package/dist/gateway/static/root/assets/page-header-store-reh1es-3.js +1 -0
- package/dist/gateway/static/root/assets/{personal-avatar-BLtHt8fV.js → personal-avatar-CqNJ48Ge.js} +1 -1
- package/dist/gateway/static/root/assets/personal-page-D95FHaw9.js +1 -0
- package/dist/gateway/static/root/assets/personal-settings-panel-DAcl8DU4.js +1 -0
- package/dist/gateway/static/root/assets/{phone-dependencies-card-DISHarj8.js → phone-dependencies-card-DLWblGj7.js} +1 -1
- package/dist/gateway/static/root/assets/phone-model-picker-ugrT9GJu.js +1 -0
- package/dist/gateway/static/root/assets/phone-settings-page-DIIt7JOE.js +1 -0
- package/dist/gateway/static/root/assets/{phone-workspace-store-fhnZrgy_.js → phone-workspace-store-mawKT5kV.js} +1 -1
- package/dist/gateway/static/root/assets/plugin-details-dialog-BdueMT3q.js +1 -0
- package/dist/gateway/static/root/assets/popover-select-DD8fmrxH.js +1 -0
- package/dist/gateway/static/root/assets/preference-select-fields-CmLZNwbm.js +1 -0
- package/dist/gateway/static/root/assets/product-automation-feedback-DYwhL37Y.js +7 -0
- package/dist/gateway/static/root/assets/{product-open-page-xn9G4hSI.js → product-open-page-B5G4X71t.js} +1 -1
- package/dist/gateway/static/root/assets/{product-preview-content-DcoK-iZe.js → product-preview-content-BUheyLqt.js} +1 -1
- package/dist/gateway/static/root/assets/{product-preview-modal-Ruw9WSKK.js → product-preview-modal-Cj_Zxu4G.js} +2 -2
- package/dist/gateway/static/root/assets/project-detail-page-CRJb69vP.js +7 -0
- package/dist/gateway/static/root/assets/project-understanding-D3w8cZEm.js +1 -0
- package/dist/gateway/static/root/assets/projects-page-CkifzKjz.js +1 -0
- package/dist/gateway/static/root/assets/{providers-api-CzVkFKFg.js → providers-api-CKFg2PZQ.js} +1 -1
- package/dist/gateway/static/root/assets/{recording-upload-0jxahBMo.js → recording-upload-ZkmRf0GR.js} +1 -1
- package/dist/gateway/static/root/assets/{registry-api-n8TwtJ_j.js → registry-api-B1Mh3bNo.js} +1 -1
- package/dist/gateway/static/root/assets/{remote-access-hub-cZpBi4Rk.js → remote-access-hub-Dw5rG-aA.js} +1 -1
- package/dist/gateway/static/root/assets/resource-unavailable-BUWsH3fp.js +1 -0
- package/dist/gateway/static/root/assets/route-preload-CRKbVwQ1.js +2 -0
- package/dist/gateway/static/root/assets/runtime-impact-DbySfhdp.js +1 -0
- package/dist/gateway/static/root/assets/{runtime-tools-api-D-8KjYK6.js → runtime-tools-api-BXvn5ImA.js} +1 -1
- package/dist/gateway/static/root/assets/runtime-tools-settings-panel-BALcypHp.js +1 -0
- package/dist/gateway/static/root/assets/schema-form-BKeP5G7b.js +1 -0
- package/dist/gateway/static/root/assets/service-recommendation-list-CpVUnz89.js +1 -0
- package/dist/gateway/static/root/assets/{session-api-CsCoI2im.js → session-api-VquhIBHI.js} +1 -1
- package/dist/gateway/static/root/assets/session-manager-DNMosCtW.js +23 -0
- package/dist/gateway/static/root/assets/sessions-page-DlvPkE5Y.js +1 -0
- package/dist/gateway/static/root/assets/settings-advanced-gate-Ckc1aCLG.js +1 -0
- package/dist/gateway/static/root/assets/{settings-advanced-section-BqoVSko2.js → settings-advanced-section-c9_iZ-46.js} +1 -1
- package/dist/gateway/static/root/assets/{settings-mode-store-CBsJ-Qg2.js → settings-mode-store-Dem6-TBe.js} +1 -1
- package/dist/gateway/static/root/assets/{settings-page-DROUGyJl.js → settings-page-B_wNfFQe.js} +1 -1
- package/dist/gateway/static/root/assets/{settings-page-header-Bv-kQFTm.js → settings-page-header-C8a_oOyw.js} +1 -1
- package/dist/gateway/static/root/assets/{settings-page-layout-DHP6MrrL.js → settings-page-layout-CTSRWljG.js} +1 -1
- package/dist/gateway/static/root/assets/setup-status-panel-BNZoqF40.js +1 -0
- package/dist/gateway/static/root/assets/{share-link-dialog-BJHRQVKC.js → share-link-dialog-C5JTTxsy.js} +1 -1
- package/dist/gateway/static/root/assets/share-preview-page-D-KxzXgm.js +2 -0
- package/dist/gateway/static/root/assets/{shares-api-rtWVHA_d.js → shares-api-CztKbxdd.js} +1 -1
- package/dist/gateway/static/root/assets/shares-settings-CzR21j6e.js +1 -0
- package/dist/gateway/static/root/assets/skill-api-B7kWl6LK.js +1 -0
- package/dist/gateway/static/root/assets/{skill-list-api-BzlKXPsE.js → skill-list-api-Cn07P6qZ.js} +1 -1
- package/dist/gateway/static/root/assets/{skill-reload-api-Cff2GgZb.js → skill-reload-api-Bhl0u16_.js} +1 -1
- package/dist/gateway/static/root/assets/skills-page-BmkuxHZe.js +2 -0
- package/dist/gateway/static/root/assets/{system-settings-panel-BeQeUUMH.js → system-settings-panel-Ce6zIcki.js} +1 -1
- package/dist/gateway/static/root/assets/task-detail-page-CysJhG3B.js +2 -0
- package/dist/gateway/static/root/assets/task-result-evidence-CGZKMnNo.js +1 -0
- package/dist/gateway/static/root/assets/{terminal-panel-store-5Fzctajw.js → terminal-panel-store-YwLUkuyV.js} +1 -1
- package/dist/gateway/static/root/assets/{theme-store-DW45fWYQ.js → theme-store-DOJ9tu-j.js} +1 -1
- package/dist/gateway/static/root/assets/tracing-settings-page-BplBpTdL.js +1 -0
- package/dist/gateway/static/root/assets/tunnel-api-B5-Ypvqa.js +1 -0
- package/dist/gateway/static/root/assets/{understanding-activity-store-CTe6TFB0.js → understanding-activity-store-CmwtE8Kd.js} +1 -1
- package/dist/gateway/static/root/assets/{understanding-refresh-store-mE9OKG6q.js → understanding-refresh-store-9apSmAVL.js} +1 -1
- package/dist/gateway/static/root/assets/usage-page-cPbirpXX.js +1 -0
- package/dist/gateway/static/root/assets/{use-autosave-Cs2Ga_Y_.js → use-autosave-B3p2QWaF.js} +1 -1
- package/dist/gateway/static/root/assets/use-composer-attachments-D-AEYC85.js +2 -0
- package/dist/gateway/static/root/assets/use-file-preview-expanded-CO4SC-LX.js +2 -0
- package/dist/gateway/static/root/assets/{use-personal-profile-BHL2AxWU.js → use-personal-profile-DocmhC9I.js} +1 -1
- package/dist/gateway/static/root/assets/{use-workspace-tree-CnmPZrpx.js → use-workspace-tree-VraTGKx-.js} +1 -1
- package/dist/gateway/static/root/assets/user-model-page-DuRALzhe.js +2 -0
- package/dist/gateway/static/root/assets/{voice-api-key-field-3gyc2UV3.js → voice-api-key-field-DbSQHZZW.js} +1 -1
- package/dist/gateway/static/root/assets/{voice-config-api-Cda2uBIC.js → voice-config-api-D9iNJSvm.js} +1 -1
- package/dist/gateway/static/root/assets/{voice-input-shortcut-events-DtYHsPLF.js → voice-input-shortcut-events-hso9_VvT.js} +1 -1
- package/dist/gateway/static/root/assets/voice-transcribe-api-BqIs0jgv.js +1 -0
- package/dist/gateway/static/root/assets/{work-discovery-overlay-Dqu5CQCS.js → work-discovery-overlay-fsL9RJqB.js} +1 -1
- package/dist/gateway/static/root/assets/work-discovery-page-DAQPKVDs.js +1 -0
- package/dist/gateway/static/root/assets/{working-directory-picker-modal-DHl2cZY1.js → working-directory-picker-modal-Ta73QrNw.js} +1 -1
- package/dist/gateway/static/root/assets/{workspace-api-CtDbI6T7.js → workspace-api-CgrcNyBc.js} +2 -2
- package/dist/gateway/static/root/assets/workspace-editor-agent-store-Dw6wtadX.js +1 -0
- package/dist/gateway/static/root/assets/{workspace-file-preview-dialog-CTIbUfKb.js → workspace-file-preview-dialog-B7uBuPtA.js} +1 -1
- package/dist/gateway/static/root/assets/{workspace-open-location-menu-BwxouqdZ.js → workspace-open-location-menu-Bi2vRvaQ.js} +1 -1
- package/dist/gateway/static/root/assets/{xopc-cloud-account-card-CFb-23rS.js → xopc-cloud-account-card-CCOOBG-7.js} +1 -1
- package/dist/gateway/static/root/index.html +86 -81
- package/dist/package.js +1 -1
- package/dist/packages/gateway-contract/src/index.js +2 -0
- package/dist/packages/gateway-contract/src/task-display.js +14 -0
- package/dist/src/agent/agent-manager.js +18 -18
- package/dist/src/agent/agent-scope.js +2 -2
- package/dist/src/agent/background-review/prompts.js +1 -1
- package/dist/src/agent/background-review/run-background-review.js +13 -13
- package/dist/src/agent/child-agent-factory.js +2 -2
- package/dist/src/agent/coding/repository-instructions.js +1 -1
- package/dist/src/agent/context/coordinator.js +2 -2
- package/dist/src/agent/context/execution-context.js +4 -4
- package/dist/src/agent/context/execution-scope.js +10 -5
- package/dist/src/agent/context/project-context.js +3 -3
- package/dist/src/agent/data-acquisition/service.js +1 -1
- package/dist/src/agent/embedded/codemode-extension.js +1 -1
- package/dist/src/agent/embedded/execution-tool-policy.js +1 -1
- package/dist/src/agent/embedded/external-tool-discovery.js +1 -1
- package/dist/src/agent/embedded/run-for-session.js +5 -5
- package/dist/src/agent/embedded/run-turn.js +15 -15
- package/dist/src/agent/embedded/session-runner.js +4 -4
- package/dist/src/agent/embedded/session-tool-result-guard.js +2 -2
- package/dist/src/agent/embedded/tool-result-truncation.js +1 -1
- package/dist/src/agent/embedded/xopc-tools-bridge.js +1 -1
- package/dist/src/agent/external-tools/cliProvider.js +4 -4
- package/dist/src/agent/external-tools/composio-provider.js +4 -4
- package/dist/src/agent/external-tools/endpoint-provider.js +6 -6
- package/dist/src/agent/external-tools/extension-provider.js +1 -1
- package/dist/src/agent/external-tools/gateway-tools.js +3 -3
- package/dist/src/agent/external-tools/memory-provider.js +1 -1
- package/dist/src/agent/image/generation/openai-images-provider.js +1 -1
- package/dist/src/agent/image/generation/runtime.js +1 -1
- package/dist/src/agent/image/index.js +1 -1
- package/dist/src/agent/image/load-image-media.js +1 -1
- package/dist/src/agent/inbound/attachment-pipeline.js +3 -3
- package/dist/src/agent/inbound/inbound-loop.js +2 -2
- package/dist/src/agent/independent-execution.js +1 -1
- package/dist/src/agent/index.js +3 -3
- package/dist/src/agent/mcp/connection-drafts.js +1 -1
- package/dist/src/agent/memory/context-budget.js +1 -1
- package/dist/src/agent/memory/context-recovery.js +1 -1
- package/dist/src/agent/memory/index.js +1 -1
- package/dist/src/agent/orchestration/llm-turn-retry.js +1 -1
- package/dist/src/agent/prompt/response-language.js +1 -1
- package/dist/src/agent/prompt/service-prompt-builder.js +4 -4
- package/dist/src/agent/prompt/system-prompt-params.js +1 -1
- package/dist/src/agent/sandbox/exec-policy.js +1 -1
- package/dist/src/agent/service/direct-turn-helpers.js +4 -4
- package/dist/src/agent/service/process-direct-streaming.js +7 -7
- package/dist/src/agent/service/webchat-tts.js +2 -2
- package/dist/src/agent/service.js +23 -23
- package/dist/src/agent/session/session-config-service.js +2 -2
- package/dist/src/agent/session/session-hydrator.js +1 -1
- package/dist/src/agent/session/session-inspector.js +1 -1
- package/dist/src/agent/skills/filesystem-watcher.js +1 -1
- package/dist/src/agent/skills/hub-lock.js +1 -1
- package/dist/src/agent/skills/hub-pull.js +2 -2
- package/dist/src/agent/skills/index.js +1 -1
- package/dist/src/agent/skills/managed-store.js +1 -1
- package/dist/src/agent/skills/marketplace/adapters/store/adapter.js +1 -1
- package/dist/src/agent/skills/marketplace/adapters/store/store-api-client.js +1 -1
- package/dist/src/agent/skills/skill-manage-ops.js +1 -1
- package/dist/src/agent/skills/skill-manager.js +1 -1
- package/dist/src/agent/skills/skill-sources.js +1 -1
- package/dist/src/agent/source-context/index.js +1 -1
- package/dist/src/agent/tasks/task-judge-service.js +8 -8
- package/dist/src/agent/tools/automation-tool.d.ts +2 -1
- package/dist/src/agent/tools/automation-tool.js +10 -3
- package/dist/src/agent/tools/create-share-tool.js +3 -3
- package/dist/src/agent/tools/dataBatch.js +1 -1
- package/dist/src/agent/tools/delegate-tool.js +3 -3
- package/dist/src/agent/tools/exec-command.js +1 -1
- package/dist/src/agent/tools/executor.js +1 -1
- package/dist/src/agent/tools/factory.js +19 -18
- package/dist/src/agent/tools/fetch-text.js +1 -1
- package/dist/src/agent/tools/image-generate-tool.js +3 -3
- package/dist/src/agent/tools/index.js +5 -5
- package/dist/src/agent/tools/list-dir.js +1 -1
- package/dist/src/agent/tools/personal-attention-tool.js +2 -2
- package/dist/src/agent/tools/personal-read-tool.js +2 -2
- package/dist/src/agent/tools/personal-request-result-tool.js +1 -1
- package/dist/src/agent/tools/personal-request-tool.js +4 -4
- package/dist/src/agent/tools/personal-result-tool.js +1 -1
- package/dist/src/agent/tools/personal-task-tool.js +7 -6
- package/dist/src/agent/tools/publish-artifacts.js +2 -2
- package/dist/src/agent/tools/read.js +2 -2
- package/dist/src/agent/tools/review-workspace.js +1 -1
- package/dist/src/agent/tools/send-media.js +1 -1
- package/dist/src/agent/tools/session-search-tool.js +1 -1
- package/dist/src/agent/tools/skills-tools.js +1 -1
- package/dist/src/agent/tools/task-collaboration-tool.js +2 -2
- package/dist/src/agent/tools/tts-tool.js +1 -1
- package/dist/src/agent/tools/user-context-tool.js +2 -2
- package/dist/src/agent/tools/web.js +1 -1
- package/dist/src/agent/tools/write.js +2 -2
- package/dist/src/agent/tools/xopc-use-tool.js +12 -10
- package/dist/src/agent/transcript/index.js +2 -2
- package/dist/src/agent/transcript/transcript-hygiene.js +2 -2
- package/dist/src/agent-catalog/capabilities.js +2 -2
- package/dist/src/agent-catalog/repository.js +1 -1
- package/dist/src/agent-matching/delegation-service.js +1 -1
- package/dist/src/ai-assist/text-assist.js +1 -1
- package/dist/src/auth/credentials.js +1 -1
- package/dist/src/auth/oauth/openai.js +1 -1
- package/dist/src/auth/oauth/xopc-cloud.js +1 -1
- package/dist/src/auth/profiles/store.js +1 -1
- package/dist/src/automations/api/routes.js +38 -0
- package/dist/src/automations/capabilities/drafts.js +1 -1
- package/dist/src/automations/capabilities/write.js +25 -9
- package/dist/src/automations/configuration-conversation.d.ts +16 -0
- package/dist/src/automations/configuration-conversation.js +120 -0
- package/dist/src/automations/delivery/delivery-router.d.ts +2 -0
- package/dist/src/automations/delivery/delivery-router.js +30 -9
- package/dist/src/automations/domain/index.js +1 -1
- package/dist/src/automations/domain/types.d.ts +1 -0
- package/dist/src/automations/draft/automation-draft-service.js +1 -1
- package/dist/src/automations/index.js +6 -6
- package/dist/src/automations/service/action-executor.js +42 -13
- package/dist/src/automations/service/automation-service.d.ts +6 -0
- package/dist/src/automations/service/automation-service.js +47 -12
- package/dist/src/automations/service/index.js +2 -2
- package/dist/src/browser/native-messaging-host.js +1 -1
- package/dist/src/browser/providers/browser-ext-install.js +2 -2
- package/dist/src/capabilities/runtime/dispatcher.js +1 -1
- package/dist/src/capabilities/runtime/product.js +1 -1
- package/dist/src/capabilities/store-connector.js +1 -1
- package/dist/src/channels/attachments/voice-stt-webchat.js +2 -2
- package/dist/src/channels/index.js +2 -2
- package/dist/src/channels/outbound-sender.js +1 -1
- package/dist/src/channels/pairing/allow-from-file.js +9 -9
- package/dist/src/channels/pairing/pairing-store.js +6 -6
- package/dist/src/chat-commands/agent-edit.js +1 -1
- package/dist/src/chat-commands/builtins/config.js +3 -3
- package/dist/src/chat-commands/builtins/session.js +1 -1
- package/dist/src/chat-commands/builtins/thinking.js +1 -1
- package/dist/src/chat-commands/builtins/tts.js +1 -1
- package/dist/src/chat-commands/context.js +1 -1
- package/dist/src/chat-commands/index.js +3 -3
- package/dist/src/cli/commands/agent.js +8 -8
- package/dist/src/cli/commands/agents.js +1 -1
- package/dist/src/cli/commands/config.js +1 -1
- package/dist/src/cli/commands/connectors.js +1 -1
- package/dist/src/cli/commands/doctor/checks/channel-plugins.js +1 -1
- package/dist/src/cli/commands/doctor/checks/gateway-health.js +1 -1
- package/dist/src/cli/commands/extension-agent-plugin.js +2 -2
- package/dist/src/cli/commands/extension-dev.js +1 -1
- package/dist/src/cli/commands/extension.js +2 -2
- package/dist/src/cli/commands/image.js +1 -1
- package/dist/src/cli/commands/init.js +1 -1
- package/dist/src/cli/commands/mcp.js +2 -2
- package/dist/src/cli/commands/models.js +3 -3
- package/dist/src/cli/commands/onboard/channels/registry.js +1 -1
- package/dist/src/cli/commands/onboard/model.js +1 -1
- package/dist/src/cli/commands/onboard.js +1 -1
- package/dist/src/cli/commands/project.js +1 -1
- package/dist/src/cli/commands/skills.js +2 -2
- package/dist/src/cli/commands/tunnel.js +4 -4
- package/dist/src/cli/extension-cli-register.js +6 -6
- package/dist/src/cli/utils/gateway-client.js +1 -1
- package/dist/src/cli/utils/init-workspace-core.js +3 -3
- package/dist/src/cli/utils/session.js +1 -1
- package/dist/src/computer/broker.js +16 -3
- package/dist/src/computer/diagnostics.js +1 -1
- package/dist/src/computer/errors.js +4 -0
- package/dist/src/computer/flows.js +1 -1
- package/dist/src/computer/model-adapter.js +1 -1
- package/dist/src/computer/runtime.js +3 -3
- package/dist/src/config/agent-profile.js +1 -1
- package/dist/src/config/index.js +4 -4
- package/dist/src/config/loader.js +1 -1
- package/dist/src/config/models-json.js +1 -1
- package/dist/src/connectors/cli/authorization.js +1 -1
- package/dist/src/connectors/composio-sessions.js +1 -1
- package/dist/src/connectors/composio.js +1 -1
- package/dist/src/connectors/connected-source-ingestion.js +3 -3
- package/dist/src/connectors/connected-source-understanding.js +5 -5
- package/dist/src/connectors/connection-recovery-service.js +4 -4
- package/dist/src/connectors/content-enrichment.js +1 -1
- package/dist/src/connectors/health.js +1 -1
- package/dist/src/discussions/live-worker.js +1 -1
- package/dist/src/discussions/sealer.js +1 -1
- package/dist/src/endpoint-tools/index.js +1 -1
- package/dist/src/endpoint-tools/runtime.js +2 -2
- package/dist/src/execution-environments/local-worktree-manager.js +1 -1
- package/dist/src/extensions/activation-context.js +3 -3
- package/dist/src/extensions/agent-plugins/auth.js +1 -1
- package/dist/src/extensions/agent-plugins/skill-catalog.js +3 -3
- package/dist/src/extensions/agent-plugins/source-http-fetch.js +1 -1
- package/dist/src/extensions/agent-plugins/validation.js +1 -1
- package/dist/src/extensions/api.js +3 -3
- package/dist/src/extensions/bundled-extension-activation.js +1 -1
- package/dist/src/extensions/index.js +3 -3
- package/dist/src/extensions/loader.js +2 -2
- package/dist/src/extensions/lockfile.js +1 -1
- package/dist/src/extensions/sdk/index.js +1 -1
- package/dist/src/extensions/sdk/media.js +1 -1
- package/dist/src/gateway/agents-admin.js +2 -2
- package/dist/src/gateway/automation-completion-delivery.d.ts +4 -0
- package/dist/src/gateway/automation-completion-delivery.js +14 -0
- package/dist/src/gateway/device-routes.js +2 -2
- package/dist/src/gateway/file-path-classifier.js +1 -1
- package/dist/src/gateway/global-defaults-admin.js +1 -1
- package/dist/src/gateway/hono/app.js +3 -3
- package/dist/src/gateway/hono/lib/config-payload.js +3 -3
- package/dist/src/gateway/hono/routes/agents.js +1 -1
- package/dist/src/gateway/hono/routes/auth-registry-extensions.js +1 -1
- package/dist/src/gateway/hono/routes/commands-skills.js +4 -4
- package/dist/src/gateway/hono/routes/config-patch/gateway.js +1 -1
- package/dist/src/gateway/hono/routes/config-patch/misc.js +1 -1
- package/dist/src/gateway/hono/routes/context-sources.js +1 -1
- package/dist/src/gateway/hono/routes/endpoint-tools.js +1 -1
- package/dist/src/gateway/hono/routes/home.js +1 -1
- package/dist/src/gateway/hono/routes/mcp.js +1 -1
- package/dist/src/gateway/hono/routes/memory-learning.js +3 -3
- package/dist/src/gateway/hono/routes/models.js +4 -4
- package/dist/src/gateway/hono/routes/notes.js +3 -3
- package/dist/src/gateway/hono/routes/phone-dependencies.js +1 -1
- package/dist/src/gateway/hono/routes/phone-setup.js +2 -2
- package/dist/src/gateway/hono/routes/phone.js +2 -2
- package/dist/src/gateway/hono/routes/projects.js +5 -5
- package/dist/src/gateway/hono/routes/runtime-tools.js +1 -1
- package/dist/src/gateway/hono/routes/session-command-handler.js +2 -2
- package/dist/src/gateway/hono/routes/session-input-handler.js +5 -5
- package/dist/src/gateway/hono/routes/sessions.js +3 -3
- package/dist/src/gateway/hono/routes/shares.js +2 -2
- package/dist/src/gateway/hono/routes/side-chats.js +1 -1
- package/dist/src/gateway/hono/routes/site-shares.js +1 -1
- package/dist/src/gateway/hono/routes/tasks.js +1 -1
- package/dist/src/gateway/hono/routes/user-model.js +7 -7
- package/dist/src/gateway/hono/routes/voice.js +7 -7
- package/dist/src/gateway/image-generation-setup.js +1 -1
- package/dist/src/gateway/lock.js +11 -11
- package/dist/src/gateway/media-access.js +1 -1
- package/dist/src/gateway/mobile-privacy.js +2 -2
- package/dist/src/gateway/ports.js +6 -6
- package/dist/src/gateway/provider-model-setup.js +1 -1
- package/dist/src/gateway/respawn.js +2 -1
- package/dist/src/gateway/server.js +1 -1
- package/dist/src/gateway/service/agent-runner.js +3 -3
- package/dist/src/gateway/service/config-coordinator.js +2 -2
- package/dist/src/gateway/service/marketplace-service.js +2 -2
- package/dist/src/gateway/service/run-gateway-agent.js +4 -4
- package/dist/src/gateway/service/session-command-service.js +2 -2
- package/dist/src/gateway/service.js +46 -46
- package/dist/src/gateway/session-context-summary.js +4 -4
- package/dist/src/gateway/workspace-editor-path.js +2 -2
- package/dist/src/gateway/xopc-cloud-capability-setup.js +2 -2
- package/dist/src/home-intelligence/generator.js +2 -2
- package/dist/src/imports/importService.js +1 -1
- package/dist/src/imports/inventory.js +2 -2
- package/dist/src/imports/productImport.js +1 -1
- package/dist/src/imports/runtime.js +1 -1
- package/dist/src/infra/gateway-processes.js +2 -2
- package/dist/src/infra/path-env.js +3 -3
- package/dist/src/infra/update-global.js +9 -9
- package/dist/src/knowledge/connected-knowledge-pipeline.js +1 -1
- package/dist/src/knowledge/index.js +1 -1
- package/dist/src/knowledge-memory/repository.js +1 -1
- package/dist/src/knowledge-memory/usage-policy.js +1 -1
- package/dist/src/local-apps/service.js +3 -3
- package/dist/src/mcp/gateway-http-client.js +1 -1
- package/dist/src/media-understanding/openai-compatible-audio.js +1 -1
- package/dist/src/memory-learning/source-learning.js +5 -5
- package/dist/src/memory-learning/task-receipts.js +1 -1
- package/dist/src/notes/agent-context.js +4 -4
- package/dist/src/notes/index.js +1 -1
- package/dist/src/notes/service.js +3 -3
- package/dist/src/observability/store.d.ts +9 -0
- package/dist/src/observability/store.js +77 -32
- package/dist/src/personal-agent/capability-service.js +2 -2
- package/dist/src/personal-agent/communication.d.ts +1 -1
- package/dist/src/personal-agent/communication.js +3 -6
- package/dist/src/personal-agent/proactivity/routes.js +1 -1
- package/dist/src/personal-agent/proactivity/service.js +7 -7
- package/dist/src/personal-agent/prompt-context.js +7 -7
- package/dist/src/personal-agent/prompts.js +1 -1
- package/dist/src/personal-agent/reply-composer.js +10 -10
- package/dist/src/personal-agent/request-delivery.js +2 -2
- package/dist/src/personal-agent/request-service.js +9 -8
- package/dist/src/personal-agent/result-reader.js +1 -1
- package/dist/src/personal-agent/service.js +2 -2
- package/dist/src/personal-agent/task-cancel.js +1 -1
- package/dist/src/phone/repository.js +1 -1
- package/dist/src/phone/runtime.js +4 -4
- package/dist/src/projects/index.js +1 -1
- package/dist/src/projects/project-agent-suggestion.js +1 -1
- package/dist/src/projects/project-service.js +1 -1
- package/dist/src/projects/project-skill-service.js +2 -2
- package/dist/src/projects/workspace.js +1 -1
- package/dist/src/providers/model-reference-auditor.js +1 -1
- package/dist/src/realtime/runtime.js +1 -1
- package/dist/src/remote-access/exposure-manager.js +1 -1
- package/dist/src/routing/agent-session-key.js +1 -1
- package/dist/src/runtime-tools/archive.js +1 -1
- package/dist/src/runtime-tools/phone-dependencies.js +2 -2
- package/dist/src/session/index.js +2 -2
- package/dist/src/session/init-session-turn.js +1 -1
- package/dist/src/session/resolve-session.js +1 -1
- package/dist/src/session/store.js +5 -5
- package/dist/src/session/thinking-resolve.js +1 -1
- package/dist/src/share/hosted-session-share.js +2 -2
- package/dist/src/share/session-share-service.js +1 -1
- package/dist/src/share/share-store.js +1 -1
- package/dist/src/share/share-thumbnail.js +1 -1
- package/dist/src/share/site-share-store.js +1 -1
- package/dist/src/storage/sqlite/connection.js +9 -9
- package/dist/src/tasks/capabilities/read.js +2 -2
- package/dist/src/tasks/capabilities/write.js +2 -2
- package/dist/src/tasks/home-query-service.js +1 -1
- package/dist/src/tasks/index.js +4 -4
- package/dist/src/tasks/task-allocation-service.js +6 -6
- package/dist/src/tasks/task-application-service.js +6 -6
- package/dist/src/tasks/task-collaboration-delivery.js +1 -1
- package/dist/src/tasks/task-context-assembler.js +2 -2
- package/dist/src/tasks/task-contract-planner.js +3 -2
- package/dist/src/tasks/task-handoff-service.js +1 -1
- package/dist/src/tasks/task-handoff.js +5 -5
- package/dist/src/tasks/task-main-update-decision-service.js +3 -3
- package/dist/src/tasks/task-model-call.js +1 -1
- package/dist/src/tasks/task-research-result.js +4 -4
- package/dist/src/tasks/task-result-delivery-repository.js +1 -1
- package/dist/src/tasks/task-result-delivery-service.js +2 -2
- package/dist/src/tasks/task-run-coordinator.js +4 -4
- package/dist/src/tasks/task-run-dispatcher.js +1 -1
- package/dist/src/tui/backends/embedded-backend.js +12 -12
- package/dist/src/tui/backends/gateway-realtime-backend.js +2 -2
- package/dist/src/tui/extension-host/load-extensions.js +2 -2
- package/dist/src/tui/tui-commands.js +5 -5
- package/dist/src/tui/tui-picker-overlay.js +1 -1
- package/dist/src/tui/tui-skills-autocomplete.js +1 -1
- package/dist/src/tui/tui-startup-resources.js +4 -4
- package/dist/src/tui/tui.js +4 -4
- package/dist/src/tunnel/gateway-lifecycle.js +1 -1
- package/dist/src/user-context/access-policy.js +2 -2
- package/dist/src/user-model/bootstrap.js +1 -1
- package/dist/src/user-model/capture/executor.js +1 -1
- package/dist/src/user-model/index.js +2 -2
- package/dist/src/user-model/usage-policy.js +1 -1
- package/dist/src/voice/realtime/memory-context.js +5 -5
- package/dist/src/voice/realtime/omniRoute.js +1 -1
- package/dist/src/voice/realtime/persona-context.js +1 -1
- package/dist/src/voice/realtime/runtime.js +4 -4
- package/dist/src/voice/stt/index.js +2 -2
- package/dist/src/voice/stt/preflight.js +1 -1
- package/dist/src/voice/stt/providers/alibaba-transcription.js +1 -1
- package/dist/src/voice/stt/providers/bailian-plan-transcription.js +1 -1
- package/dist/src/voice/stt/providers/xopc-cloud-transcription.js +1 -1
- package/dist/src/voice/stt/transcribe-core.js +1 -1
- package/dist/src/voice/tts/index.js +3 -3
- package/dist/src/voice/tts/merge-config.js +1 -1
- package/dist/src/voice/tts/payload.js +1 -1
- package/dist/src/voice/tts/providers/bailian-plan-speech.js +1 -1
- package/dist/src/voice/tts/providers/xopc-cloud-speech.js +1 -1
- package/dist/src/voice/tts/speak-core.js +1 -1
- package/dist/src/work-discovery/service.js +7 -7
- package/package.json +3 -3
- package/dist/gateway/static/root/assets/agent-avatar-display-Cy50vjbq.js +0 -2
- package/dist/gateway/static/root/assets/agent-defaults-settings-panel-V4NX_cWz.js +0 -1
- package/dist/gateway/static/root/assets/agent-plugin-dialog-CQ5LLDMO.js +0 -1
- package/dist/gateway/static/root/assets/app-management-settings-panel-C1Zs-eha.js +0 -1
- package/dist/gateway/static/root/assets/appearance-settings-lIfGokbz.js +0 -1
- package/dist/gateway/static/root/assets/apps-page-CUvtsRYD.js +0 -1
- package/dist/gateway/static/root/assets/automation-api-Bld8blNl.js +0 -1
- package/dist/gateway/static/root/assets/automation-display-BcfZOQTC.js +0 -2
- package/dist/gateway/static/root/assets/automations-workspace-BgtYY2Mm.js +0 -8
- package/dist/gateway/static/root/assets/browser-automations-page-DIUNY94X.js +0 -3
- package/dist/gateway/static/root/assets/capabilities-page-DFW4Y0x8.js +0 -2
- package/dist/gateway/static/root/assets/capabilities-settings-panel-uOHSMQPZ.js +0 -8
- package/dist/gateway/static/root/assets/channels-D2a69dSt.js +0 -1
- package/dist/gateway/static/root/assets/chat-page-CG38tCHE.js +0 -71
- package/dist/gateway/static/root/assets/composer-payload-handoff-BU3B-C26.js +0 -1
- package/dist/gateway/static/root/assets/connected-providers-grid-Dmnu2zle.js +0 -1
- package/dist/gateway/static/root/assets/connectors-page-DT_WrC1y.js +0 -1
- package/dist/gateway/static/root/assets/desktop-pet-lorocS9j.js +0 -1
- package/dist/gateway/static/root/assets/desktop-pet-settings-CEcohlZq.js +0 -1
- package/dist/gateway/static/root/assets/device-pairing-wizard-CLCPuf4R.js +0 -1
- package/dist/gateway/static/root/assets/discussion-annotation-sync-BKjf9gWe.js +0 -1
- package/dist/gateway/static/root/assets/extension-iframe-host-Dhkk5JV2.js +0 -1
- package/dist/gateway/static/root/assets/extension-page-Brps2XDP.js +0 -1
- package/dist/gateway/static/root/assets/extension-settings-page-CHY68DpG.js +0 -1
- package/dist/gateway/static/root/assets/gateway-realtime-store-DQqMBruB.js +0 -1
- package/dist/gateway/static/root/assets/gateway-restart-Ch128Lrr.js +0 -1
- package/dist/gateway/static/root/assets/home-page-DaMFBYo1.js +0 -2
- package/dist/gateway/static/root/assets/image-generation-api-I_JgLL_m.js +0 -1
- package/dist/gateway/static/root/assets/index-DS60ZSdQ.js +0 -11
- package/dist/gateway/static/root/assets/index-DY2Y83b9.css +0 -1
- package/dist/gateway/static/root/assets/install-connector-dialog-DU1Tz7B3.js +0 -1
- package/dist/gateway/static/root/assets/local-app-workbench-page-qPflPuQD.js +0 -1
- package/dist/gateway/static/root/assets/logs-page-CbY1N-zi.js +0 -2
- package/dist/gateway/static/root/assets/management-settings-Diy12JfQ.js +0 -1
- package/dist/gateway/static/root/assets/messages-DRR9N3HC.js +0 -3
- package/dist/gateway/static/root/assets/model-selector-DCYA_ntf.js +0 -1
- package/dist/gateway/static/root/assets/navigation-BkjnOw30.js +0 -1
- package/dist/gateway/static/root/assets/note-detail-panel-DBs1yHLy.js +0 -5
- package/dist/gateway/static/root/assets/note-image-lightbox-CivkB6LB.js +0 -1
- package/dist/gateway/static/root/assets/notes-page-DL3c-41a.js +0 -8
- package/dist/gateway/static/root/assets/page-header-store-DH8K0xii.js +0 -1
- package/dist/gateway/static/root/assets/personal-page-B5DP3lO-.js +0 -1
- package/dist/gateway/static/root/assets/personal-settings-panel-DjDc5Kaz.js +0 -1
- package/dist/gateway/static/root/assets/phone-model-picker-u8YIQCgo.js +0 -1
- package/dist/gateway/static/root/assets/phone-settings-page-el3pT0PD.js +0 -1
- package/dist/gateway/static/root/assets/plugin-details-dialog-CTBs1Jde.js +0 -1
- package/dist/gateway/static/root/assets/popover-select-DniHw2dy.js +0 -1
- package/dist/gateway/static/root/assets/preference-select-fields-D7oluyHN.js +0 -1
- package/dist/gateway/static/root/assets/product-automation-feedback-DsUSqCOX.js +0 -7
- package/dist/gateway/static/root/assets/project-detail-page-BKvWLiMw.js +0 -7
- package/dist/gateway/static/root/assets/project-understanding-BCQr0AZ_.js +0 -1
- package/dist/gateway/static/root/assets/projects-page-D4g7bB7X.js +0 -1
- package/dist/gateway/static/root/assets/route-preload-B5UiReO7.js +0 -2
- package/dist/gateway/static/root/assets/runtime-tools-settings-panel-MKlLFuow.js +0 -1
- package/dist/gateway/static/root/assets/schema-form-v4N4lawq.js +0 -1
- package/dist/gateway/static/root/assets/service-recommendation-list-B1xuVT3N.js +0 -1
- package/dist/gateway/static/root/assets/session-manager-5l9q0cd5.js +0 -16
- package/dist/gateway/static/root/assets/sessions-page-DsLw2aMD.js +0 -1
- package/dist/gateway/static/root/assets/settings-advanced-gate-B5lQeVNi.js +0 -1
- package/dist/gateway/static/root/assets/setup-status-panel-MJE3B_LX.js +0 -1
- package/dist/gateway/static/root/assets/share-preview-page-Bsrv_zOQ.js +0 -2
- package/dist/gateway/static/root/assets/shares-settings-CfIRv4uX.js +0 -1
- package/dist/gateway/static/root/assets/skill-api-B_W1K3sv.js +0 -1
- package/dist/gateway/static/root/assets/skills-page-DtBloYeU.js +0 -2
- package/dist/gateway/static/root/assets/task-detail-page-Drrv-Hp0.js +0 -2
- package/dist/gateway/static/root/assets/task-result-evidence-D1Kyskm_.js +0 -1
- package/dist/gateway/static/root/assets/tracing-settings-page-B12u5D9A.js +0 -1
- package/dist/gateway/static/root/assets/tunnel-api-DGO56LQU.js +0 -1
- package/dist/gateway/static/root/assets/usage-page-Ud2U9UG1.js +0 -1
- package/dist/gateway/static/root/assets/use-composer-attachments-BCbMj-MN.js +0 -2
- package/dist/gateway/static/root/assets/use-file-preview-expanded-DSpCRXUW.js +0 -2
- package/dist/gateway/static/root/assets/user-model-page-p5iPfnwl.js +0 -2
- package/dist/gateway/static/root/assets/voice-transcribe-api-TInEfIYo.js +0 -1
- package/dist/gateway/static/root/assets/work-discovery-page-p-8ciZ0i.js +0 -1
- package/dist/gateway/static/root/assets/workspace-editor-agent-store-B94Q2nN8.js +0 -1
|
@@ -6,10 +6,10 @@ import { deleteAutomation, getAutomation, getDeletedAutomationRevision, listAuto
|
|
|
6
6
|
import { appendAutomationRunEvent, getAutomationRun, getAutomationRunRequest, listAutomationRunEvents, listAutomationRuns, listAutomationRunsForProductEvent, listUnfinishedAutomationRuns, markAllAutomationRunsRead, markAutomationRunRead, pruneAutomationHistory, saveAutomationRun, saveAutomationRunRequest, touchAutomationRunLease } from "../storage/automation-run-repository.js";
|
|
7
7
|
import "../storage/index.js";
|
|
8
8
|
import { getAutomationEventDeliveryRunId, getAutomationEventForRun, getAutomationEventQueueMetrics, ingestAutomationEvent, listAutomationEventRecords, markAutomationEventDeliveryQueued, replayAutomationEvent } from "../events/event-repository.js";
|
|
9
|
-
import { computeNextAutomationRunAtMs, timerDelayUntil } from "../domain/schedule.js";
|
|
10
|
-
import { AutomationActionExecutor } from "./action-executor.js";
|
|
11
9
|
import { AutomationEventDispatcher } from "../events/event-dispatcher.js";
|
|
12
10
|
import { AutomationDeliveryRouter, getAutomationResultDeliveryMetrics, listAutomationResultDeliveries, retryAutomationResultDelivery } from "../delivery/delivery-router.js";
|
|
11
|
+
import { computeNextAutomationRunAtMs, timerDelayUntil } from "../domain/schedule.js";
|
|
12
|
+
import { AutomationActionExecutor } from "./action-executor.js";
|
|
13
13
|
import "../delivery/index.js";
|
|
14
14
|
import { randomUUID } from "node:crypto";
|
|
15
15
|
//#region src/automations/service/automation-service.ts
|
|
@@ -17,10 +17,11 @@ init_logger();
|
|
|
17
17
|
init_transaction();
|
|
18
18
|
const log = createLogger("AutomationService");
|
|
19
19
|
const DEFAULT_MAX_CONCURRENT_RUNS = 5;
|
|
20
|
-
const MISSED_RUN_STAGGER_MS = 5e3;
|
|
21
20
|
const RUN_HEARTBEAT_INTERVAL_MS = 1e4;
|
|
22
21
|
const RUN_LEASE_DURATION_MS = 3e4;
|
|
23
22
|
const RETRY_BASE_DELAY_MS = 1e3;
|
|
23
|
+
var AutomationInvalidScheduleError = class extends Error {};
|
|
24
|
+
var AutomationInvalidAgentError = class extends Error {};
|
|
24
25
|
var AutomationAlreadyRunningError = class extends Error {
|
|
25
26
|
constructor(automationId, runningRunId) {
|
|
26
27
|
super(`Automation is already running: ${automationId}`);
|
|
@@ -43,7 +44,10 @@ var AutomationService = class {
|
|
|
43
44
|
onDeadLetter: (input) => this.deps.onReliabilityAttention?.(input)
|
|
44
45
|
});
|
|
45
46
|
deliveryRouter = new AutomationDeliveryRouter({
|
|
46
|
-
deliverGatewayEvent: (run, context) =>
|
|
47
|
+
deliverGatewayEvent: (run, context) => {
|
|
48
|
+
if (!this.deps.onRunCompleted) throw new Error("Notification service is unavailable. Delivery will retry.");
|
|
49
|
+
return this.deps.onRunCompleted(run, context);
|
|
50
|
+
},
|
|
47
51
|
onDeadLetter: (input) => this.deps.onReliabilityAttention?.(input)
|
|
48
52
|
});
|
|
49
53
|
timer = null;
|
|
@@ -114,6 +118,8 @@ var AutomationService = class {
|
|
|
114
118
|
createdAtMs: now,
|
|
115
119
|
updatedAtMs: now
|
|
116
120
|
});
|
|
121
|
+
this.assertExecutionAgent(automation);
|
|
122
|
+
this.prepareSchedule(automation, now);
|
|
117
123
|
this.pinBrowserVersion(automation);
|
|
118
124
|
if (getAutomation(automation.id)) throw new AutomationAlreadyExistsError(automation.id);
|
|
119
125
|
automation.updatedAtMs = Math.max(automation.updatedAtMs, (getDeletedAutomationRevision(automation.id) ?? -1) + 1);
|
|
@@ -121,6 +127,28 @@ var AutomationService = class {
|
|
|
121
127
|
saveAutomation(automation);
|
|
122
128
|
return automation;
|
|
123
129
|
}
|
|
130
|
+
assertExecutionAgent(automation) {
|
|
131
|
+
if (automation.action.kind !== "agent" || !automation.action.agentId || !this.deps.isAgentAvailable) return;
|
|
132
|
+
if (!this.deps.isAgentAvailable(automation.action.agentId)) throw new AutomationInvalidAgentError("Execution assistant is unavailable. Choose an available assistant or use the default.");
|
|
133
|
+
}
|
|
134
|
+
prepareSchedule(automation, now) {
|
|
135
|
+
if (automation.trigger.kind !== "schedule") return;
|
|
136
|
+
const schedule = automation.trigger.schedule;
|
|
137
|
+
if (schedule.kind === "interval") schedule.anchorMs ??= automation.createdAtMs || now;
|
|
138
|
+
if (schedule.kind === "once" && (!Number.isFinite(Date.parse(schedule.at)) || Date.parse(schedule.at) <= now)) throw new AutomationInvalidScheduleError("Choose a future run date and time.");
|
|
139
|
+
if (schedule.kind === "cron") {
|
|
140
|
+
schedule.tz ??= Intl.DateTimeFormat().resolvedOptions().timeZone || "UTC";
|
|
141
|
+
try {
|
|
142
|
+
new Intl.DateTimeFormat("en-US", { timeZone: schedule.tz });
|
|
143
|
+
} catch {
|
|
144
|
+
throw new AutomationInvalidScheduleError("Choose a valid timezone, such as Asia/Shanghai or America/New_York.");
|
|
145
|
+
}
|
|
146
|
+
if (computeNextAutomationRunAtMs({
|
|
147
|
+
enabled: true,
|
|
148
|
+
trigger: automation.trigger
|
|
149
|
+
}, now) === void 0) throw new AutomationInvalidScheduleError("The schedule has no upcoming run. Check its time rule.");
|
|
150
|
+
}
|
|
151
|
+
}
|
|
124
152
|
pinBrowserVersion(automation) {
|
|
125
153
|
if (automation.action.kind !== "browser_automation") return;
|
|
126
154
|
const browser = this.deps.browserAutomationService;
|
|
@@ -165,6 +193,8 @@ var AutomationService = class {
|
|
|
165
193
|
...parsed.state ?? {}
|
|
166
194
|
}
|
|
167
195
|
});
|
|
196
|
+
if (parsed.action) this.assertExecutionAgent(next);
|
|
197
|
+
if (parsed.trigger || parsed.enabled === true && next.trigger.kind === "schedule" && next.trigger.schedule.kind === "once") this.prepareSchedule(next, now);
|
|
168
198
|
this.pinBrowserVersion(next);
|
|
169
199
|
if ("enabled" in parsed || "trigger" in parsed) next.state.nextRunAtMs = computeNextAutomationRunAtMs(next, now);
|
|
170
200
|
saveAutomation(next);
|
|
@@ -256,7 +286,7 @@ var AutomationService = class {
|
|
|
256
286
|
}
|
|
257
287
|
dispatchRecoveryWork() {
|
|
258
288
|
this.eventDispatcher.dispatch();
|
|
259
|
-
this.deliveryRouter.
|
|
289
|
+
this.deliveryRouter.dispatchInBackground();
|
|
260
290
|
}
|
|
261
291
|
listEventRecords(input) {
|
|
262
292
|
return listAutomationEventRecords(input);
|
|
@@ -453,7 +483,7 @@ var AutomationService = class {
|
|
|
453
483
|
}
|
|
454
484
|
async recomputeNextRuns(options) {
|
|
455
485
|
const now = Date.now();
|
|
456
|
-
saveAutomations(listAutomations().map((automation
|
|
486
|
+
saveAutomations(listAutomations().map((automation) => {
|
|
457
487
|
const next = {
|
|
458
488
|
...automation,
|
|
459
489
|
state: { ...automation.state }
|
|
@@ -464,8 +494,11 @@ var AutomationService = class {
|
|
|
464
494
|
next.state.consecutiveFailures = (next.state.consecutiveFailures ?? 0) + 1;
|
|
465
495
|
delete next.state.runningRunId;
|
|
466
496
|
}
|
|
497
|
+
const previousDue = next.state.nextRunAtMs;
|
|
498
|
+
if (next.trigger.kind === "schedule" && next.trigger.schedule.kind === "interval") next.trigger.schedule.anchorMs ??= next.createdAtMs;
|
|
467
499
|
const computed = computeNextAutomationRunAtMs(next, now);
|
|
468
|
-
next.
|
|
500
|
+
const missed = next.enabled && next.trigger.kind === "schedule" && previousDue != null && previousDue <= now;
|
|
501
|
+
next.state.nextRunAtMs = options?.catchUp && missed && !next.state.runningRunId ? previousDue : computed;
|
|
469
502
|
return next;
|
|
470
503
|
}));
|
|
471
504
|
}
|
|
@@ -475,6 +508,7 @@ var AutomationService = class {
|
|
|
475
508
|
clearTimeout(this.timer);
|
|
476
509
|
this.timer = null;
|
|
477
510
|
}
|
|
511
|
+
if (this.availableRunSlots() === 0) return;
|
|
478
512
|
const next = listAutomations().filter((automation) => automation.enabled && automation.state.nextRunAtMs != null && !automation.state.runningRunId).toSorted((a, b) => (a.state.nextRunAtMs ?? 0) - (b.state.nextRunAtMs ?? 0))[0];
|
|
479
513
|
if (!next?.state.nextRunAtMs) return;
|
|
480
514
|
this.timer = setTimeout(() => {
|
|
@@ -491,7 +525,7 @@ var AutomationService = class {
|
|
|
491
525
|
this.runningScheduler = true;
|
|
492
526
|
try {
|
|
493
527
|
const now = Date.now();
|
|
494
|
-
const due = listAutomations().filter((automation) => automation.enabled && automation.trigger.kind === "schedule" && automation.state.nextRunAtMs != null && automation.state.nextRunAtMs <= now && !automation.state.runningRunId).slice(0, this.
|
|
528
|
+
const due = listAutomations().filter((automation) => automation.enabled && automation.trigger.kind === "schedule" && automation.state.nextRunAtMs != null && automation.state.nextRunAtMs <= now && !automation.state.runningRunId).slice(0, this.availableRunSlots());
|
|
495
529
|
await Promise.all(due.map((automation) => this.ingestTargetedTrigger(automation.id, {
|
|
496
530
|
id: `schedule:${automation.id}:${automation.state.nextRunAtMs}`,
|
|
497
531
|
type: "automation.schedule.due",
|
|
@@ -701,7 +735,7 @@ var AutomationService = class {
|
|
|
701
735
|
});
|
|
702
736
|
this.refreshSchedule();
|
|
703
737
|
this.eventDispatcher.runCompleted(run);
|
|
704
|
-
this.deliveryRouter.
|
|
738
|
+
this.deliveryRouter.dispatchInBackground();
|
|
705
739
|
}
|
|
706
740
|
}
|
|
707
741
|
async recoverInterruptedRuns() {
|
|
@@ -778,9 +812,10 @@ var AutomationService = class {
|
|
|
778
812
|
const consecutiveFailures = status === "failed" || status === "timeout" ? (current.state.consecutiveFailures ?? 0) + 1 : 0;
|
|
779
813
|
const disableAfter = current.reliability?.disableAfterConsecutiveFailures;
|
|
780
814
|
const shouldDisable = disableAfter != null && consecutiveFailures >= disableAfter;
|
|
815
|
+
const completedOnce = current.trigger.kind === "schedule" && current.trigger.schedule.kind === "once" && getAutomationRun(runId)?.manual === false;
|
|
781
816
|
const next = {
|
|
782
817
|
...current,
|
|
783
|
-
enabled: shouldDisable ? false : current.enabled,
|
|
818
|
+
enabled: shouldDisable || completedOnce ? false : current.enabled,
|
|
784
819
|
state: {
|
|
785
820
|
...current.state,
|
|
786
821
|
lastRunAtMs: finishedAtMs,
|
|
@@ -788,7 +823,7 @@ var AutomationService = class {
|
|
|
788
823
|
lastError: error,
|
|
789
824
|
consecutiveFailures
|
|
790
825
|
},
|
|
791
|
-
updatedAtMs: shouldDisable ? Math.max(finishedAtMs, current.updatedAtMs + 1) : current.updatedAtMs
|
|
826
|
+
updatedAtMs: shouldDisable || completedOnce ? Math.max(finishedAtMs, current.updatedAtMs + 1) : current.updatedAtMs
|
|
792
827
|
};
|
|
793
828
|
delete next.state.runningRunId;
|
|
794
829
|
next.state.nextRunAtMs = computeNextAutomationRunAtMs(next, finishedAtMs);
|
|
@@ -809,4 +844,4 @@ function readAutomationEventFromRunEvent(event) {
|
|
|
809
844
|
};
|
|
810
845
|
}
|
|
811
846
|
//#endregion
|
|
812
|
-
export { AutomationAlreadyExistsError, AutomationAlreadyRunningError, AutomationService };
|
|
847
|
+
export { AutomationAlreadyExistsError, AutomationAlreadyRunningError, AutomationInvalidAgentError, AutomationInvalidScheduleError, AutomationService };
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { AutomationActionExecutor } from "./action-executor.js";
|
|
2
|
-
import { AutomationAlreadyExistsError, AutomationAlreadyRunningError, AutomationService } from "./automation-service.js";
|
|
3
|
-
export { AutomationActionExecutor, AutomationAlreadyExistsError, AutomationAlreadyRunningError, AutomationService };
|
|
2
|
+
import { AutomationAlreadyExistsError, AutomationAlreadyRunningError, AutomationInvalidAgentError, AutomationInvalidScheduleError, AutomationService } from "./automation-service.js";
|
|
3
|
+
export { AutomationActionExecutor, AutomationAlreadyExistsError, AutomationAlreadyRunningError, AutomationInvalidAgentError, AutomationInvalidScheduleError, AutomationService };
|
|
@@ -3,9 +3,9 @@ import { browserPairingInvitationPayloadSchema, formatBrowserPairingInvitation }
|
|
|
3
3
|
import { init_src } from "../../packages/gateway-contract/src/index.js";
|
|
4
4
|
import { getGatewayIdentityPublicKeyRaw, getOrCreateGatewayIdentity } from "../storage/sqlite/gateway-identity-repository.js";
|
|
5
5
|
import { createDevicePairingSetup } from "../storage/sqlite/device-pairing-repository.js";
|
|
6
|
+
import { loadConfig } from "../config/loader.js";
|
|
6
7
|
import { browserEnrollmentPublicKeyThumbprint } from "./enrollment.js";
|
|
7
8
|
import { BROWSER_EXTENSION_ID, BROWSER_NATIVE_HOST_NAME } from "./extension-identity.js";
|
|
8
|
-
import { loadConfig } from "../config/loader.js";
|
|
9
9
|
import os from "node:os";
|
|
10
10
|
//#region src/browser/native-messaging-host.ts
|
|
11
11
|
init_src();
|
|
@@ -2,8 +2,8 @@ import { PACKAGE_VERSION, init_package_version } from "../../package-version.js"
|
|
|
2
2
|
import { resolveStateDir } from "../../config/paths-state.js";
|
|
3
3
|
import { createLogger } from "../../utils/logger/index.js";
|
|
4
4
|
import { init_logger } from "../../utils/logger.js";
|
|
5
|
-
import { init_paths, resolveBinDir, resolveConfigPath } from "../../config/paths.js";
|
|
6
5
|
import { init_write_file_atomic, writeTextAtomic } from "../../infra/write-file-atomic.js";
|
|
6
|
+
import { init_paths, resolveBinDir, resolveConfigPath } from "../../config/paths.js";
|
|
7
7
|
import { assertCacheDir } from "../cache-dir-policy.js";
|
|
8
8
|
import { BROWSER_EXTENSION_ID, BROWSER_NATIVE_HOST_NAME } from "../extension-identity.js";
|
|
9
9
|
import "../native-messaging-host.js";
|
|
@@ -13,8 +13,8 @@ import { accessSync, chmodSync, constants, existsSync, mkdirSync, readFileSync,
|
|
|
13
13
|
import { fileURLToPath } from "node:url";
|
|
14
14
|
import { createHash } from "node:crypto";
|
|
15
15
|
import { execFileSync, spawn } from "node:child_process";
|
|
16
|
-
import { readFile, readdir, rm } from "node:fs/promises";
|
|
17
16
|
import AdmZip from "adm-zip";
|
|
17
|
+
import { readFile, readdir, rm } from "node:fs/promises";
|
|
18
18
|
//#region src/browser/providers/browser-ext-install.ts
|
|
19
19
|
/**
|
|
20
20
|
* Install bundled Chrome extension artifacts into {resolveBinDir()}/browser-ext/.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { SqliteCommitEffectError, init_transaction } from "../../storage/sqlite/transaction.js";
|
|
2
|
-
import { OperationConflictError, executeAtomicOperation } from "./atomic-operations.js";
|
|
3
2
|
import { CapabilityError } from "./errors.js";
|
|
4
3
|
import { executeExternalOperation } from "./external-operations.js";
|
|
4
|
+
import { OperationConflictError, executeAtomicOperation } from "./atomic-operations.js";
|
|
5
5
|
import { createHash } from "node:crypto";
|
|
6
6
|
import { z } from "zod";
|
|
7
7
|
//#region src/capabilities/runtime/dispatcher.ts
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { CapabilityError } from "./errors.js";
|
|
2
2
|
import { CapabilityDispatcher } from "./dispatcher.js";
|
|
3
|
-
import { registerAgentCapabilities } from "../../agent-catalog/capabilities.js";
|
|
4
3
|
import { registerLocalAppReadCapabilities } from "../../local-apps/capabilities/read.js";
|
|
5
4
|
import { registerNoteReadCapabilities } from "../../notes/capabilities/read.js";
|
|
6
5
|
import { registerNoteWriteCapabilities } from "../../notes/capabilities/write.js";
|
|
@@ -17,6 +16,7 @@ import { registerAutomationDraftCapabilities } from "../../automations/capabilit
|
|
|
17
16
|
import { registerTaskWriteCapabilities } from "../../tasks/capabilities/write.js";
|
|
18
17
|
import { registerSettingsCapability } from "./settings.js";
|
|
19
18
|
import { registerAppContextCapability } from "./app-context.js";
|
|
19
|
+
import { registerAgentCapabilities } from "../../agent-catalog/capabilities.js";
|
|
20
20
|
//#region src/capabilities/runtime/product.ts
|
|
21
21
|
function createProductDispatcher(getNotes, taskWrites) {
|
|
22
22
|
const dispatcher = new CapabilityDispatcher();
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { downloadConnectorStoreZipBuffer, fetchStoreConnectorPackageDetail, listConnectorPackages, resolveSkillsStoreBaseUrl } from "../agent/skills/marketplace/adapters/store/store-api-client.js";
|
|
2
1
|
import { getCliAdapter } from "../connectors/cli/adapterRegistry.js";
|
|
3
2
|
import { assertStoreConnectorAvailable, isExcludedStoreConnector } from "../connectors/excluded-connectors.js";
|
|
4
3
|
import { validEndpointDomain } from "../connectors/endpoint-policy.js";
|
|
5
4
|
import { listConnectorInstances } from "../connectors/instances.js";
|
|
6
5
|
import { installConnectorDefinition } from "../connectors/install.js";
|
|
6
|
+
import { downloadConnectorStoreZipBuffer, fetchStoreConnectorPackageDetail, listConnectorPackages, resolveSkillsStoreBaseUrl } from "../agent/skills/marketplace/adapters/store/store-api-client.js";
|
|
7
7
|
import { createHash } from "node:crypto";
|
|
8
8
|
import AdmZip from "adm-zip";
|
|
9
9
|
import { isIP } from "node:net";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { createLogger } from "../../utils/logger/index.js";
|
|
2
2
|
import { init_logger } from "../../utils/logger.js";
|
|
3
|
-
import {
|
|
3
|
+
import { decodeInboundAttachmentBase64, readInboundAttachmentBuffer } from "./inbound-persist.js";
|
|
4
4
|
import { transcribe } from "../../voice/stt/transcribe-core.js";
|
|
5
|
+
import { isSTTAvailable } from "../../voice/stt/availability.js";
|
|
5
6
|
import "../../voice/stt/index.js";
|
|
6
|
-
import { decodeInboundAttachmentBase64, readInboundAttachmentBuffer } from "./inbound-persist.js";
|
|
7
7
|
//#region src/channels/attachments/voice-stt-webchat.ts
|
|
8
8
|
init_logger();
|
|
9
9
|
const STT_MAX_BYTES = 25 * 1024 * 1024;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { parseFrontmatterBlock } from "../markdown/frontmatter.js";
|
|
2
|
+
import { getChannelPlugin, getChannelRegistryVersion, listChannelPlugins, syncChannelPluginsFromManager } from "./plugins/registry.js";
|
|
2
3
|
import { findFenceSpanAt, isSafeFenceBreak, parseFenceSpans } from "../markdown/fences.js";
|
|
3
4
|
import { chunkText } from "../markdown/chunk.js";
|
|
4
5
|
import { chunkMarkdownIR, markdownToIR, markdownToIRWithMeta } from "../markdown/ir.js";
|
|
6
|
+
import { compileAllowlist, evaluateAccess, hasBotMention, removeBotMention, resolveAllowlistMatch, resolveAllowlistMatchSimple, resolveDmPolicy, resolveGroupPolicy } from "./security.js";
|
|
5
7
|
import { renderMarkdownWithMarkers } from "../markdown/render.js";
|
|
6
8
|
import { convertMarkdownTables } from "../markdown/tables.js";
|
|
7
9
|
import { buildCodeSpanIndex, createInlineCodeState } from "../markdown/code-spans.js";
|
|
8
10
|
import "./format.js";
|
|
9
|
-
import { compileAllowlist, evaluateAccess, hasBotMention, removeBotMention, resolveAllowlistMatch, resolveAllowlistMatchSimple, resolveDmPolicy, resolveGroupPolicy } from "./security.js";
|
|
10
11
|
import { MessagePipeline, createEnvelopeTimestampHandler, createFilterCommandsHandler, createFilterEmptyHandler, createFilterSelfHandler, createPipeline, standardPreflightHandlers, standardProcessHandlers } from "./pipeline.js";
|
|
11
|
-
import { getChannelPlugin, getChannelRegistryVersion, listChannelPlugins, syncChannelPluginsFromManager } from "./plugins/registry.js";
|
|
12
12
|
import { ChannelManager, createChannelManager } from "./manager.js";
|
|
13
13
|
import { collectSetupWizardChannels } from "./setup-wizard-discovery.js";
|
|
14
14
|
export { ChannelManager, MessagePipeline, buildCodeSpanIndex, chunkMarkdownIR, chunkText, collectSetupWizardChannels, compileAllowlist, convertMarkdownTables, createChannelManager, createEnvelopeTimestampHandler, createFilterCommandsHandler, createFilterEmptyHandler, createFilterSelfHandler, createInlineCodeState, createPipeline, evaluateAccess, findFenceSpanAt, getChannelPlugin, getChannelRegistryVersion, hasBotMention, isSafeFenceBreak, listChannelPlugins, markdownToIR, markdownToIRWithMeta, parseFenceSpans, parseFrontmatterBlock, removeBotMention, renderMarkdownWithMarkers, resolveAllowlistMatch, resolveAllowlistMatchSimple, resolveDmPolicy, resolveGroupPolicy, standardPreflightHandlers, standardProcessHandlers, syncChannelPluginsFromManager };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { createLogger } from "../utils/logger/index.js";
|
|
2
2
|
import { init_logger } from "../utils/logger.js";
|
|
3
|
-
import "./internal-outbound.js";
|
|
4
3
|
import { mergeTtsConfigFromAppConfig } from "../voice/tts/merge-config.js";
|
|
5
4
|
import { maybeApplyTtsToPayload } from "../voice/tts/payload.js";
|
|
5
|
+
import "./internal-outbound.js";
|
|
6
6
|
import { deliverOutboundMessage } from "./outbound/deliver.js";
|
|
7
7
|
import { OutboundPersistStore } from "./outbound/persist-store.js";
|
|
8
8
|
//#region src/channels/outbound-sender.ts
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
|
-
import
|
|
2
|
+
import fs from "node:fs";
|
|
3
3
|
//#region src/channels/pairing/allow-from-file.ts
|
|
4
4
|
function readAllowFromFile(filePath) {
|
|
5
5
|
try {
|
|
6
|
-
if (!
|
|
6
|
+
if (!fs.existsSync(filePath)) return {
|
|
7
7
|
version: 1,
|
|
8
8
|
allowFrom: []
|
|
9
9
|
};
|
|
10
|
-
const raw =
|
|
10
|
+
const raw = fs.readFileSync(filePath, "utf-8");
|
|
11
11
|
const parsed = JSON.parse(raw);
|
|
12
12
|
if (Array.isArray(parsed.allowFrom)) return {
|
|
13
13
|
version: 1,
|
|
@@ -26,13 +26,13 @@ function appendAllowFromIdSync(filePath, userId) {
|
|
|
26
26
|
const trimmed = userId.trim();
|
|
27
27
|
if (!trimmed) return { changed: false };
|
|
28
28
|
const dir = path.dirname(filePath);
|
|
29
|
-
|
|
29
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
30
30
|
const content = readAllowFromFile(filePath);
|
|
31
31
|
if (content.allowFrom.includes(trimmed)) return { changed: false };
|
|
32
32
|
content.allowFrom.push(trimmed);
|
|
33
|
-
|
|
33
|
+
fs.writeFileSync(filePath, JSON.stringify(content, null, 2), "utf-8");
|
|
34
34
|
try {
|
|
35
|
-
|
|
35
|
+
fs.chmodSync(filePath, 384);
|
|
36
36
|
} catch {}
|
|
37
37
|
return { changed: true };
|
|
38
38
|
}
|
|
@@ -43,13 +43,13 @@ function removeAllowFromIdSync(filePath, userId) {
|
|
|
43
43
|
const next = content.allowFrom.filter((id) => id !== trimmed);
|
|
44
44
|
if (next.length === content.allowFrom.length) return { changed: false };
|
|
45
45
|
const dir = path.dirname(filePath);
|
|
46
|
-
|
|
47
|
-
|
|
46
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
47
|
+
fs.writeFileSync(filePath, JSON.stringify({
|
|
48
48
|
version: 1,
|
|
49
49
|
allowFrom: next
|
|
50
50
|
}, null, 2), "utf-8");
|
|
51
51
|
try {
|
|
52
|
-
|
|
52
|
+
fs.chmodSync(filePath, 384);
|
|
53
53
|
} catch {}
|
|
54
54
|
return { changed: true };
|
|
55
55
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { appendAllowFromIdSync } from "./allow-from-file.js";
|
|
2
2
|
import "./pairing-constants.js";
|
|
3
3
|
import path from "node:path";
|
|
4
|
-
import
|
|
4
|
+
import fs from "node:fs";
|
|
5
5
|
import crypto from "node:crypto";
|
|
6
6
|
//#region src/channels/pairing/pairing-store.ts
|
|
7
7
|
const PAIRING_CODE_LENGTH = 8;
|
|
@@ -36,11 +36,11 @@ function requestAccountId(entry) {
|
|
|
36
36
|
}
|
|
37
37
|
function readStore(filePath) {
|
|
38
38
|
try {
|
|
39
|
-
if (!
|
|
39
|
+
if (!fs.existsSync(filePath)) return {
|
|
40
40
|
version: 1,
|
|
41
41
|
requests: []
|
|
42
42
|
};
|
|
43
|
-
const raw =
|
|
43
|
+
const raw = fs.readFileSync(filePath, "utf-8");
|
|
44
44
|
const parsed = JSON.parse(raw);
|
|
45
45
|
if (parsed && Array.isArray(parsed.requests)) return {
|
|
46
46
|
version: 1,
|
|
@@ -54,10 +54,10 @@ function readStore(filePath) {
|
|
|
54
54
|
}
|
|
55
55
|
function writeStore(filePath, store) {
|
|
56
56
|
const dir = path.dirname(filePath);
|
|
57
|
-
|
|
58
|
-
|
|
57
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
58
|
+
fs.writeFileSync(filePath, JSON.stringify(store, null, 2), "utf-8");
|
|
59
59
|
try {
|
|
60
|
-
|
|
60
|
+
fs.chmodSync(filePath, 384);
|
|
61
61
|
} catch {}
|
|
62
62
|
}
|
|
63
63
|
/**
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { normalizeAgentId } from "../agent-catalog/id.js";
|
|
2
2
|
import { init_agent_scope, resolveAgentProfileDir } from "../agent/agent-scope.js";
|
|
3
|
-
import { init_agent_session_key, resolveAgentIdFromConversationId } from "../routing/agent-session-key.js";
|
|
4
3
|
import { WORKSPACE_FILES, init_paths } from "../config/paths.js";
|
|
4
|
+
import { init_agent_session_key, resolveAgentIdFromConversationId } from "../routing/agent-session-key.js";
|
|
5
5
|
import { commandRegistry } from "./registry.js";
|
|
6
6
|
import { join } from "node:path";
|
|
7
7
|
import { readFile } from "node:fs/promises";
|
|
@@ -2,11 +2,11 @@ import { createLogger } from "../../utils/logger/index.js";
|
|
|
2
2
|
import { init_logger } from "../../utils/logger.js";
|
|
3
3
|
import { init_paths, resolveConfigPath } from "../../config/paths.js";
|
|
4
4
|
import { ConfigSchema, init_schema } from "../../config/schema.js";
|
|
5
|
-
import { loadConfig, saveConfig } from "../../config/loader.js";
|
|
6
|
-
import { resolveAllowlistMatchSimple } from "../../channels/security.js";
|
|
7
5
|
import { commandRegistry } from "../registry.js";
|
|
8
|
-
import { getConfigValueAtPath, parseConfigPath, setConfigValueAtPath, unsetConfigValueAtPath } from "../config-paths.js";
|
|
9
6
|
import { parseConfigValue } from "../config-value.js";
|
|
7
|
+
import { getConfigValueAtPath, parseConfigPath, setConfigValueAtPath, unsetConfigValueAtPath } from "../config-paths.js";
|
|
8
|
+
import { loadConfig, saveConfig } from "../../config/loader.js";
|
|
9
|
+
import { resolveAllowlistMatchSimple } from "../../channels/security.js";
|
|
10
10
|
//#region src/chat-commands/builtins/config.ts
|
|
11
11
|
init_schema();
|
|
12
12
|
init_paths();
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { commandRegistry } from "../registry.js";
|
|
2
1
|
import { formatThinkingLevels, normalizeReasoningLevel, normalizeThinkLevel, normalizeVerboseLevel } from "../../agent/transcript/thinking-types.js";
|
|
2
|
+
import { commandRegistry } from "../registry.js";
|
|
3
3
|
//#region src/chat-commands/builtins/thinking.ts
|
|
4
4
|
async function setSessionAgentField(store, conversationId, field, value) {
|
|
5
5
|
if (!store) return;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { isTTSAvailable } from "../../voice/tts/factory.js";
|
|
2
2
|
import { appendTtsReadinessNote, formatTtsSetupHint, mergeTtsConfigFromAppConfig } from "../../voice/tts/merge-config.js";
|
|
3
|
-
import { ttsStatusTracker } from "../../voice/tts/status-tracker.js";
|
|
4
3
|
import { commandRegistry } from "../registry.js";
|
|
4
|
+
import { ttsStatusTracker } from "../../voice/tts/status-tracker.js";
|
|
5
5
|
import "../../voice/tts/index.js";
|
|
6
6
|
//#region src/chat-commands/builtins/tts.ts
|
|
7
7
|
function defaultTtsVoiceForProvider(provider) {
|
|
@@ -4,8 +4,8 @@ import { getAgentDefaultModelRef, init_schema } from "../config/schema.js";
|
|
|
4
4
|
import { resolveEffectiveAgentConfigForSession } from "../config/agent-profile.js";
|
|
5
5
|
import { effectiveWorkspacePathForSession } from "../session/session-workspace.js";
|
|
6
6
|
import { getProjectForSession } from "../projects/workspace.js";
|
|
7
|
-
import { saveConfig } from "../config/loader.js";
|
|
8
7
|
import { getSessionDisplayName } from "./session-key.js";
|
|
8
|
+
import { saveConfig } from "../config/loader.js";
|
|
9
9
|
import { wrapMarkdownExportAsHtml } from "../session/chat-export.js";
|
|
10
10
|
import { join } from "path";
|
|
11
11
|
import { mkdir, writeFile } from "fs/promises";
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import { generateConversationId, getSessionDisplayName } from "./session-key.js";
|
|
2
1
|
import { normalizeTelegramCommandName, parseSlashCommand } from "./command-parse.js";
|
|
3
2
|
import { CommandRegistry, commandRegistry } from "./registry.js";
|
|
4
|
-
import {
|
|
5
|
-
import { CommandContextImpl, createCommandContext } from "./context.js";
|
|
3
|
+
import { generateConversationId, getSessionDisplayName } from "./session-key.js";
|
|
6
4
|
import { registerSessionCommands } from "./builtins/session.js";
|
|
7
5
|
import { registerModelCommands } from "./builtins/model.js";
|
|
8
6
|
import { registerSystemCommands } from "./builtins/system.js";
|
|
@@ -13,6 +11,8 @@ import { registerContextCommands } from "./builtins/context.js";
|
|
|
13
11
|
import { registerReviewCommand } from "./builtins/review.js";
|
|
14
12
|
import { registerSkillCommand } from "./builtins/skill.js";
|
|
15
13
|
import { registerUnderstandingCommands } from "./builtins/understanding.js";
|
|
14
|
+
import { registerAgentEditCommand } from "./agent-edit.js";
|
|
15
|
+
import { CommandContextImpl, createCommandContext } from "./context.js";
|
|
16
16
|
//#region src/chat-commands/index.ts
|
|
17
17
|
/**
|
|
18
18
|
* Unified Command System
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import { createLogger } from "../../utils/logger/index.js";
|
|
2
2
|
import { init_logger } from "../../utils/logger.js";
|
|
3
3
|
import { init_agent_scope, resolveDefaultAgentId } from "../../agent/agent-scope.js";
|
|
4
|
-
import { init_agent_session_key, resolveAgentMainConversationId } from "../../routing/agent-session-key.js";
|
|
5
4
|
import { getAgentDefaultModelRef, init_schema } from "../../config/schema.js";
|
|
6
|
-
import {
|
|
7
|
-
import { formatExamples, register } from "../registry.js";
|
|
8
|
-
import { getContextWithOpts } from "../context.js";
|
|
9
|
-
import { MessageBus, MessageBusShutdownError } from "../../infra/bus/queue.js";
|
|
10
|
-
import "../../infra/bus/index.js";
|
|
5
|
+
import { init_agent_session_key, resolveAgentMainConversationId } from "../../routing/agent-session-key.js";
|
|
11
6
|
import { getWorkspacePath } from "../../config/workspace-path-helpers.js";
|
|
12
|
-
import "../../config/index.js";
|
|
13
7
|
import { ExtensionLoader } from "../../extensions/loader.js";
|
|
14
8
|
import "../../extensions/index.js";
|
|
9
|
+
import { loadConfig } from "../../config/loader.js";
|
|
10
|
+
import { MessageBus, MessageBusShutdownError } from "../../infra/bus/queue.js";
|
|
11
|
+
import "../../infra/bus/index.js";
|
|
15
12
|
import { AgentService } from "../../agent/service.js";
|
|
16
|
-
import { getXopcCloudCatalogCoordinator } from "../../providers/xopc-cloud-catalog-coordinator.js";
|
|
17
13
|
import "../../agent/index.js";
|
|
14
|
+
import { formatExamples, register } from "../registry.js";
|
|
15
|
+
import { getContextWithOpts } from "../context.js";
|
|
16
|
+
import "../../config/index.js";
|
|
17
|
+
import { getXopcCloudCatalogCoordinator } from "../../providers/xopc-cloud-catalog-coordinator.js";
|
|
18
18
|
import { listSessions } from "./agent/sessions.js";
|
|
19
19
|
import { renderStreamToTerminal } from "./agent/stream-renderer.js";
|
|
20
20
|
import { startInteractiveChat } from "./agent/interactive.js";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { normalizeAgentId, validateAgentIdForNewAgent } from "../../agent-catalog/id.js";
|
|
2
2
|
import { AgentCatalogRepository, init_repository } from "../../agent-catalog/repository.js";
|
|
3
3
|
import { init_agent_scope, resolveAgentDir, resolveAgentWorkspaceDir, resolveDefaultAgentId } from "../../agent/agent-scope.js";
|
|
4
|
-
import { AgentCatalogService } from "../../agent-catalog/service.js";
|
|
5
4
|
import { resolveEffectiveAgentConfigForAgent } from "../../config/agent-profile.js";
|
|
5
|
+
import { AgentCatalogService } from "../../agent-catalog/service.js";
|
|
6
6
|
import { colors } from "../utils/colors.js";
|
|
7
7
|
//#region src/cli/commands/agents.ts
|
|
8
8
|
init_repository();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ConfigSchema, init_schema } from "../../config/schema.js";
|
|
2
|
-
import { formatExamples, register } from "../registry.js";
|
|
3
2
|
import { resolveGatewayLocalClientHost } from "../../config/gateway-bind.js";
|
|
3
|
+
import { formatExamples, register } from "../registry.js";
|
|
4
4
|
import { existsSync, readFileSync } from "fs";
|
|
5
5
|
import { Command } from "commander";
|
|
6
6
|
//#region src/cli/commands/config.ts
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { loadConfig, saveConfig } from "../../config/loader.js";
|
|
2
1
|
import { getStoreConnectorInstallPlan, installStoreConnector, listStoreConnectors } from "../../capabilities/store-connector.js";
|
|
2
|
+
import { loadConfig, saveConfig } from "../../config/loader.js";
|
|
3
3
|
import { register } from "../registry.js";
|
|
4
4
|
import { confirm } from "@inquirer/prompts";
|
|
5
5
|
import { Command } from "commander";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { loadConfig } from "../../../../config/loader.js";
|
|
2
1
|
import { listChannelPlugins } from "../../../../channels/plugins/registry.js";
|
|
2
|
+
import { loadConfig } from "../../../../config/loader.js";
|
|
3
3
|
import { existsSync } from "node:fs";
|
|
4
4
|
//#region src/cli/commands/doctor/checks/channel-plugins.ts
|
|
5
5
|
function toCheckResults(plugin, raw) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { loadConfig } from "../../../../config/loader.js";
|
|
2
1
|
import { resolveGatewayLocalClientHost } from "../../../../config/gateway-bind.js";
|
|
2
|
+
import { loadConfig } from "../../../../config/loader.js";
|
|
3
3
|
import { existsSync } from "node:fs";
|
|
4
4
|
//#region src/cli/commands/doctor/checks/gateway-health.ts
|
|
5
5
|
function resolveGatewayBaseUrl(cfg) {
|
|
@@ -3,10 +3,10 @@ import { PLUGIN_MANIFEST_PATHS } from "../../extensions/agent-plugins/formats.js
|
|
|
3
3
|
import { pluginServerId } from "../../extensions/agent-plugins/validation.js";
|
|
4
4
|
import { isGitPluginSource } from "../../extensions/agent-plugins/source-catalog.js";
|
|
5
5
|
import { AgentPluginStore } from "../../extensions/agent-plugins/store.js";
|
|
6
|
-
import { loadConfig } from "../../config/loader.js";
|
|
7
|
-
import { getContextWithOpts } from "../context.js";
|
|
8
6
|
import { getWorkspacePath } from "../../config/workspace-path-helpers.js";
|
|
7
|
+
import { loadConfig } from "../../config/loader.js";
|
|
9
8
|
import { PluginSetupService } from "../../extensions/agent-plugins/setup.js";
|
|
9
|
+
import { getContextWithOpts } from "../context.js";
|
|
10
10
|
import { isAgentPluginArchive, withAgentPluginSource } from "../../extensions/agent-plugins/sources.js";
|
|
11
11
|
import { removePluginCredentials } from "../../extensions/agent-plugins/credentials.js";
|
|
12
12
|
import { join, resolve } from "node:path";
|
|
@@ -3,9 +3,9 @@ import { createLogger } from "../../utils/logger/index.js";
|
|
|
3
3
|
import { init_logger } from "../../utils/logger.js";
|
|
4
4
|
import { init_paths, resolveConfigPath, resolveExtensionsDir } from "../../config/paths.js";
|
|
5
5
|
import { normalizeExtensionManifest } from "../../extensions/normalize-manifest.js";
|
|
6
|
+
import { checkEngineCompatibility } from "../../extensions/engine-check.js";
|
|
6
7
|
import { loadConfig } from "../../config/loader.js";
|
|
7
8
|
import { getContextWithOpts } from "../context.js";
|
|
8
|
-
import { checkEngineCompatibility } from "../../extensions/engine-check.js";
|
|
9
9
|
import { GatewayServer } from "../../gateway/server.js";
|
|
10
10
|
import { runGatewayLoop } from "../../gateway/run-loop.js";
|
|
11
11
|
import "../../gateway/index.js";
|
|
@@ -4,10 +4,10 @@ import { init_logger } from "../../utils/logger.js";
|
|
|
4
4
|
import { init_paths, resolveExtensionsDir } from "../../config/paths.js";
|
|
5
5
|
import { computeExtensionDirectoryIntegrity, getExtensionLockfileManager } from "../../extensions/lockfile.js";
|
|
6
6
|
import { AgentPluginStore } from "../../extensions/agent-plugins/store.js";
|
|
7
|
-
import { loadConfig, saveConfig } from "../../config/loader.js";
|
|
8
|
-
import { getContextWithOpts } from "../context.js";
|
|
9
7
|
import { checkEngineCompatibility } from "../../extensions/engine-check.js";
|
|
10
8
|
import { ExtensionLoader } from "../../extensions/loader.js";
|
|
9
|
+
import { loadConfig, saveConfig } from "../../config/loader.js";
|
|
10
|
+
import { getContextWithOpts } from "../context.js";
|
|
11
11
|
import { checkAllExtensionsHealth, getExtensionHealthChecker } from "../../extensions/health.js";
|
|
12
12
|
import { collectExtensionPackageDependencyIssues } from "../../extensions/package-contract.js";
|
|
13
13
|
import { withAgentPluginSource } from "../../extensions/agent-plugins/sources.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { formatExamples, register } from "../registry.js";
|
|
2
1
|
import { listImageGenerationProvidersSummary } from "../../agent/image/generation/runtime.js";
|
|
2
|
+
import { formatExamples, register } from "../registry.js";
|
|
3
3
|
import "../../agent/image/index.js";
|
|
4
4
|
import { Command } from "commander";
|
|
5
5
|
//#region src/cli/commands/image.ts
|
|
@@ -3,8 +3,8 @@ import { createLogger } from "../../utils/logger/index.js";
|
|
|
3
3
|
import { init_logger } from "../../utils/logger.js";
|
|
4
4
|
import { resolveAgentWorkspaceDir } from "../../agent/agent-scope.js";
|
|
5
5
|
import { WORKSPACE_FILES, init_paths, resolveAgentDir, resolveAgentHomeDir, resolveAgentProfileDir, resolveConfigPath } from "../../config/paths.js";
|
|
6
|
-
import { ensureStarterAgentsInitialized } from "../../agent/starter-agents.js";
|
|
7
6
|
import { loadConfig, saveConfig } from "../../config/loader.js";
|
|
7
|
+
import { ensureStarterAgentsInitialized } from "../../agent/starter-agents.js";
|
|
8
8
|
import { formatExamples, register } from "../registry.js";
|
|
9
9
|
import { join } from "path";
|
|
10
10
|
import { existsSync } from "fs";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { loadConfig } from "../../config/loader.js";
|
|
2
|
-
import { register } from "../registry.js";
|
|
3
1
|
import { getNativePiAgentDir, prepareNativeMcpConfig } from "../../agent/mcp/native-mcp.js";
|
|
2
|
+
import { loadConfig } from "../../config/loader.js";
|
|
4
3
|
import { resolveMcpSetupConfig } from "../../agent/mcp/effective-server.js";
|
|
4
|
+
import { register } from "../registry.js";
|
|
5
5
|
import { createGatewayHttpClientFromConfig } from "../../mcp/gateway-http-client.js";
|
|
6
6
|
import { createCapabilityMcpServer } from "../../mcp/capability-server.js";
|
|
7
7
|
import { join } from "node:path";
|