@xopcai/xopc 0.0.385 → 0.0.387
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/dist/sidepanel.js +1 -1
- package/dist/browser-ext/manifest.json +1 -1
- package/dist/extensions/telegram/xopc.extension.json +1 -1
- package/dist/gateway/static/root/assets/{agent-avatar-dicebear-Cb9eaXxR.js → agent-avatar-dicebear-Bv8M5ygD.js} +1 -1
- package/dist/gateway/static/root/assets/{agent-defaults-settings-panel-DEV-xtgm.js → agent-defaults-settings-panel-UBy01-65.js} +1 -1
- package/dist/gateway/static/root/assets/{agent-plugin-dialog-DXKc3Luj.js → agent-plugin-dialog-Q9guA8kU.js} +1 -1
- package/dist/gateway/static/root/assets/{agents-DcNxwpJQ.js → agents-yfJFubD0.js} +3 -3
- package/dist/gateway/static/root/assets/{app-management-settings-panel-X5i0Tz7_.js → app-management-settings-panel-Cdyad8c1.js} +1 -1
- package/dist/gateway/static/root/assets/{appearance-settings-CmHHzquT.js → appearance-settings-DPPvnKH_.js} +1 -1
- package/dist/gateway/static/root/assets/{apps-page-ChFA4Zp0.js → apps-page-Bn_jwaeA.js} +1 -1
- package/dist/gateway/static/root/assets/{automations-page-BFqsIqOI.js → automations-page-CAB2sLJ5.js} +1 -1
- package/dist/gateway/static/root/assets/{automations-workspace-Blfak-fT.js → automations-workspace-CYRUhhH4.js} +1 -1
- package/dist/gateway/static/root/assets/{block-editor-CpOLG3Co.js → block-editor-B9DmMEa8.js} +1 -1
- package/dist/gateway/static/root/assets/{browser-automations-page-BSbTJ9j2.js → browser-automations-page-BHAWpZE2.js} +1 -1
- package/dist/gateway/static/root/assets/{browser-settings-page-BUlILJrB.js → browser-settings-page-BG_17NcQ.js} +2 -2
- package/dist/gateway/static/root/assets/{capabilities-2Do3eKMM.js → capabilities-BX1rCiVm.js} +1 -1
- package/dist/gateway/static/root/assets/{capabilities-XFwwUNU3.js → capabilities-CW389yo6.js} +1 -1
- package/dist/gateway/static/root/assets/{capabilities-page-CeRdkwRf.js → capabilities-page-BAnBYWlY.js} +2 -2
- package/dist/gateway/static/root/assets/{capabilities-settings-panel-S-cKsGja.js → capabilities-settings-panel-Ca-d6lXk.js} +3 -3
- package/dist/gateway/static/root/assets/{capability-header-actions-6w8pQhnn.js → capability-header-actions-B3TL8TcF.js} +1 -1
- package/dist/gateway/static/root/assets/{channels-DfNTGBmp.js → channels-BadpS-nq.js} +1 -1
- package/dist/gateway/static/root/assets/{chat-terminal-dock-DnoQHpDc.js → chat-terminal-dock-C_vntFpP.js} +1 -1
- package/dist/gateway/static/root/assets/{chunk-KS7C4IRE-BMYIfy9x.js → chunk-KS7C4IRE--EKdQGRF.js} +1 -1
- package/dist/gateway/static/root/assets/{computer-settings-page-7yliE7sG.js → computer-settings-page-B-5kxk70.js} +1 -1
- package/dist/gateway/static/root/assets/{connector-service-page-DOLAUFSW.js → connector-service-page-DTnfpLHL.js} +1 -1
- package/dist/gateway/static/root/assets/{connectors-page-DAsn97XG.js → connectors-page-CmJV7gqj.js} +1 -1
- package/dist/gateway/static/root/assets/constants-DeXt1mV-.js +1 -0
- package/dist/gateway/static/root/assets/{date-picker-DNDqr4Fk.js → date-picker-D5zYeC8q.js} +1 -1
- package/dist/gateway/static/root/assets/{dependency-picker-B5oG7RgE.js → dependency-picker-D72vT-tb.js} +1 -1
- package/dist/gateway/static/root/assets/{desktop-pet-K7kUCX1O.js → desktop-pet-DvoeVPf_.js} +1 -1
- package/dist/gateway/static/root/assets/{desktop-pet-settings-KgOAuqSh.js → desktop-pet-settings-Dfb392hs.js} +1 -1
- package/dist/gateway/static/root/assets/{device-pairing-wizard-DvqniZDm.js → device-pairing-wizard-B06Sqn5D.js} +1 -1
- package/dist/gateway/static/root/assets/{directory-picker-path-field-BmOguLDl.js → directory-picker-path-field-CA3H3bc-.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-debug-page-DtHNy4TE.js → extension-debug-page-B0wTBCx4.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-page-DSSuMQxp.js → extension-page-BeHiXhB1.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-provider-nbgU7xBS.js → extension-provider-CJZ5EVpQ.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-settings-page-DSd__mNd.js → extension-settings-page-Q88-LFCJ.js} +1 -1
- package/dist/gateway/static/root/assets/{fallback-models-D7bjbiwZ.js → fallback-models-BXoPCvzq.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-settings-hSXGWumL.js → gateway-settings-IICLMGDI.js} +1 -1
- package/dist/gateway/static/root/assets/{highlighted-body-KQOG7T2V-C7xJwE61.js → highlighted-body-KQOG7T2V-D336so8z.js} +1 -1
- package/dist/gateway/static/root/assets/home-page--MvqsFhQ.js +2 -0
- package/dist/gateway/static/root/assets/{imports-page-BufZPzGE.js → imports-page-muV1SduS.js} +1 -1
- package/dist/gateway/static/root/assets/index-D0qMv3jf.js +260 -0
- package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-B8pPP5RF.js → keyboard-shortcuts-settings-i1sDWcwl.js} +1 -1
- package/dist/gateway/static/root/assets/{local-app-workbench-page-zEtvE7pJ.js → local-app-workbench-page-DY9tXEO6.js} +1 -1
- package/dist/gateway/static/root/assets/{local-apps-page-Bli7e_eg.js → local-apps-page-BHD73STy.js} +1 -1
- package/dist/gateway/static/root/assets/local-session-drafts-Be4BGM4Z.js +1 -0
- package/dist/gateway/static/root/assets/{logs-page-BimZk3R4.js → logs-page-DsPpe8Ws.js} +1 -1
- package/dist/gateway/static/root/assets/{management-settings-5Y4COyU9.js → management-settings-Buwi2wQE.js} +1 -1
- package/dist/gateway/static/root/assets/{markdown-view-DHfQAvZQ.js → markdown-view-CBjl-XEc.js} +2 -2
- package/dist/gateway/static/root/assets/mermaid-MCJ5UELQ-D2mip-f9.js +1 -0
- package/dist/gateway/static/root/assets/{note-detail-panel-KLDPLVg7.js → note-detail-panel-D8n80Gbr.js} +3 -3
- package/dist/gateway/static/root/assets/{notes-api-nqN2wKYc.js → notes-api-BlGP533W.js} +1 -1
- package/dist/gateway/static/root/assets/{notes-page-DST0oPXD.js → notes-page-Btf-jSS_.js} +5 -5
- package/dist/gateway/static/root/assets/{page-context-capture-button-Bmed83-6.js → page-context-capture-button-97RL8Gc7.js} +1 -1
- package/dist/gateway/static/root/assets/{personal-page-BG4Ystrm.js → personal-page-B04L8Oz5.js} +1 -1
- package/dist/gateway/static/root/assets/product-open-page-9zEDvZa7.js +1 -0
- package/dist/gateway/static/root/assets/{product-preview-content-DjmupQSq.js → product-preview-content-DynBrIXq.js} +1 -1
- package/dist/gateway/static/root/assets/{project-detail-page-CzBmV0P6.js → project-detail-page-BM7MsoVA.js} +1 -1
- package/dist/gateway/static/root/assets/{projects-page-DByqe5Em.js → projects-page-pcyeEJnz.js} +1 -1
- package/dist/gateway/static/root/assets/{remote-access-hub-DTjj-odF.js → remote-access-hub-CphyTu22.js} +1 -1
- package/dist/gateway/static/root/assets/{runtime-tools-settings-panel-B_ptn3T8.js → runtime-tools-settings-panel-DPafoO0G.js} +1 -1
- package/dist/gateway/static/root/assets/{scenes-page-wkua4l5y.js → scenes-page-j97FrDRW.js} +2 -2
- package/dist/gateway/static/root/assets/{schema-form-VvOSM84Y.js → schema-form-CuJNwKHO.js} +1 -1
- package/dist/gateway/static/root/assets/{send-session-input-BCAF-Ikt.js → send-session-input-C293-Hbx.js} +1 -1
- package/dist/gateway/static/root/assets/session-manager-COd9RECl.js +16 -0
- package/dist/gateway/static/root/assets/{sessions-page-D06XwYAT.js → sessions-page-D8t_8fMl.js} +1 -1
- package/dist/gateway/static/root/assets/settings-advanced-gate-CDkitNHA.js +1 -0
- package/dist/gateway/static/root/assets/{settings-page-C-6BJdb1.js → settings-page-DS9DMYUe.js} +1 -1
- package/dist/gateway/static/root/assets/{setup-status-panel-L0JSG0K-.js → setup-status-panel-DRDvm9yZ.js} +1 -1
- package/dist/gateway/static/root/assets/{share-link-dialog-C47Xgzta.js → share-link-dialog-BKGI8Kr0.js} +1 -1
- package/dist/gateway/static/root/assets/{share-preview-page-nJ2FWAEP.js → share-preview-page-BF2WaO43.js} +1 -1
- package/dist/gateway/static/root/assets/{shares-settings-BbgAUM3v.js → shares-settings-DQTQZu6V.js} +1 -1
- package/dist/gateway/static/root/assets/{skill-api-BFU1tPyw.js → skill-api-DzVa7G-O.js} +1 -1
- package/dist/gateway/static/root/assets/{skills-page-DZw6el4o.js → skills-page-CfJIjRdS.js} +1 -1
- package/dist/gateway/static/root/assets/{system-settings-panel-DshSGWNg.js → system-settings-panel-Bzhqed-a.js} +1 -1
- package/dist/gateway/static/root/assets/task-detail-page-BYQFC0-U.js +2 -0
- package/dist/gateway/static/root/assets/task-expandable-content-C9ohICpw.js +1 -0
- package/dist/gateway/static/root/assets/{tasks-DJIeIk9C.js → tasks-PuIUgF9L.js} +1 -1
- package/dist/gateway/static/root/assets/{tunnel-api-DFDXwWnU.js → tunnel-api-DrgpZ81I.js} +1 -1
- package/dist/gateway/static/root/assets/{usage-page-2RJLg54s.js → usage-page-Drk8FWnj.js} +1 -1
- package/dist/gateway/static/root/assets/{use-composer-attachments-BFP3k6oC.js → use-composer-attachments-rgW7h4sD.js} +1 -1
- package/dist/gateway/static/root/assets/{use-file-preview-expanded-B1BiTQNS.js → use-file-preview-expanded-DSKIxfz9.js} +1 -1
- package/dist/gateway/static/root/assets/{user-model-page-y1gjGYPI.js → user-model-page-07t2-nFE.js} +2 -2
- package/dist/gateway/static/root/assets/{work-discovery-overlay-Ch-KfpCF.js → work-discovery-overlay-TQ5bjVot.js} +1 -1
- package/dist/gateway/static/root/assets/{workflow-run-setup-panel-CTu297Hc.js → workflow-run-setup-panel-C9HP2uGG.js} +1 -1
- package/dist/gateway/static/root/assets/{workflows-page-CRZXG_rm.js → workflows-page-DK01JRI1.js} +3 -3
- package/dist/gateway/static/root/assets/{workspace-api-Xr3wz8T3.js → workspace-api-JWHOFos6.js} +2 -2
- package/dist/gateway/static/root/assets/{xopc-cloud-account-card-hEfjVjnc.js → xopc-cloud-account-card-B-BhQdAf.js} +1 -1
- package/dist/gateway/static/root/index.html +16 -16
- package/dist/package.js +1 -1
- package/dist/packages/gateway-contract/src/index.js +4 -0
- package/dist/packages/gateway-contract/src/result-reference.js +25 -0
- package/dist/packages/gateway-contract/src/session-input-command.js +2 -1
- package/dist/packages/gateway-contract/src/task-research-result.js +90 -0
- package/dist/packages/gateway-contract/src/task-result-delivery.js +21 -0
- package/dist/packages/gateway-contract/src/tasks.js +7 -1
- package/dist/packages/gateway-contract/src/turn-outcome.js +4 -0
- package/dist/src/agent/agent-manager.js +3 -3
- package/dist/src/agent/background-review/run-background-review.js +1 -1
- package/dist/src/agent/child-agent-factory.d.ts +4 -1
- package/dist/src/agent/child-agent-factory.js +86 -12
- package/dist/src/agent/context/connection-objective-context.d.ts +1 -0
- package/dist/src/agent/context/connection-objective-context.js +33 -0
- package/dist/src/agent/data-acquisition/service.js +41 -6
- package/dist/src/agent/data-acquisition/types.d.ts +2 -0
- package/dist/src/agent/embedded/agent-profile-context.d.ts +7 -0
- package/dist/src/agent/embedded/agent-profile-context.js +92 -0
- package/dist/src/agent/embedded/run-for-session.js +5 -2
- package/dist/src/agent/embedded/run-turn.js +19 -6
- package/dist/src/agent/embedded/runs.d.ts +9 -2
- package/dist/src/agent/embedded/runs.js +30 -7
- package/dist/src/agent/embedded/session-runner.js +5 -2
- package/dist/src/agent/embedded/types.d.ts +4 -0
- package/dist/src/agent/embedded/xopc-tools-bridge.js +13 -2
- package/dist/src/agent/external-tools/cliProvider.js +1 -1
- package/dist/src/agent/external-tools/composio-provider.js +2 -2
- package/dist/src/agent/external-tools/endpoint-provider.js +2 -2
- package/dist/src/agent/external-tools/gateway-tools.js +8 -4
- package/dist/src/agent/inbound/attachment-pipeline.js +1 -1
- package/dist/src/agent/orchestration/agent-run-supervisor.js +2 -1
- package/dist/src/agent/orchestration/agent-turn-policy.js +5 -1
- package/dist/src/agent/orchestration/delegation-budget.d.ts +7 -1
- package/dist/src/agent/orchestration/delegation-budget.js +17 -9
- package/dist/src/agent/orchestration/research-checkpoint.d.ts +56 -0
- package/dist/src/agent/orchestration/research-checkpoint.js +64 -0
- package/dist/src/agent/orchestration/run-agent-turn-with-timeout.d.ts +3 -1
- package/dist/src/agent/orchestration/run-agent-turn-with-timeout.js +15 -2
- package/dist/src/agent/orchestration/run-termination.d.ts +12 -0
- package/dist/src/agent/orchestration/run-termination.js +24 -0
- package/dist/src/agent/orchestration/turn-recovery.d.ts +4 -1
- package/dist/src/agent/orchestration/turn-recovery.js +19 -3
- package/dist/src/agent/prompt/sections/agent-identity.js +12 -7
- package/dist/src/agent/prompt/sections/messaging-runtime.js +1 -1
- package/dist/src/agent/prompt/sections/project-context.js +1 -1
- package/dist/src/agent/prompt/sections/response-language.d.ts +1 -1
- package/dist/src/agent/prompt/sections/response-language.js +6 -2
- package/dist/src/agent/prompt/subagent-context.js +1 -1
- package/dist/src/agent/prompt/system-prompt.js +4 -6
- package/dist/src/agent/service/direct-turn-helpers.d.ts +2 -0
- package/dist/src/agent/service/direct-turn-helpers.js +4 -0
- package/dist/src/agent/service/process-direct-one-shot.js +4 -1
- package/dist/src/agent/service/process-direct-streaming.js +3 -2
- package/dist/src/agent/service.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/skill-manage-ops.js +1 -1
- package/dist/src/agent/source-context/index.js +1 -1
- package/dist/src/agent/source-context/result-context.d.ts +2 -0
- package/dist/src/agent/source-context/result-context.js +32 -0
- package/dist/src/agent/source-context/types.d.ts +2 -2
- package/dist/src/agent/source-context/types.js +1 -1
- package/dist/src/agent/tasks/task-judge-service.js +3 -1
- package/dist/src/agent/tools/apply-patch.js +1 -1
- package/dist/src/agent/tools/delegate-tool.js +216 -121
- package/dist/src/agent/tools/delegation-policy.js +13 -1
- package/dist/src/agent/tools/exec-command.js +47 -2
- package/dist/src/agent/tools/factory.js +19 -10
- package/dist/src/agent/tools/index.d.ts +1 -0
- package/dist/src/agent/tools/index.js +2 -1
- package/dist/src/agent/tools/language-diagnostics.js +1 -1
- package/dist/src/agent/tools/personal-performance.d.ts +2 -0
- package/dist/src/agent/tools/personal-performance.js +82 -0
- package/dist/src/agent/tools/personal-read-tool.js +1 -1
- package/dist/src/agent/tools/personal-request-tool.js +9 -14
- package/dist/src/agent/tools/personal-result-tool.d.ts +2 -0
- package/dist/src/agent/tools/personal-result-tool.js +106 -0
- package/dist/src/agent/tools/personal-task-tool.d.ts +12 -3
- package/dist/src/agent/tools/personal-task-tool.js +115 -10
- package/dist/src/agent/tools/publish-artifacts.js +1 -1
- package/dist/src/agent/tools/research-checkpoint-tool.d.ts +3 -0
- package/dist/src/agent/tools/research-checkpoint-tool.js +28 -0
- package/dist/src/agent/tools/review-workspace.js +21 -2
- package/dist/src/agent/tools/search/cache.d.ts +20 -0
- package/dist/src/agent/tools/search/cache.js +19 -0
- package/dist/src/agent/tools/search/errors.d.ts +19 -0
- package/dist/src/agent/tools/search/errors.js +69 -0
- package/dist/src/agent/tools/search/providers/bing-api.js +2 -1
- package/dist/src/agent/tools/search/providers/bing-html.js +2 -1
- package/dist/src/agent/tools/search/providers/brave.js +2 -1
- package/dist/src/agent/tools/search/providers/duckduckgo-html.js +2 -1
- package/dist/src/agent/tools/search/providers/searxng.js +2 -1
- package/dist/src/agent/tools/search/providers/tavily.js +2 -1
- package/dist/src/agent/tools/search/providers/xopc-cloud.d.ts +1 -0
- package/dist/src/agent/tools/search/providers/xopc-cloud.js +7 -2
- package/dist/src/agent/tools/search/registry.d.ts +21 -5
- package/dist/src/agent/tools/search/registry.js +252 -25
- package/dist/src/agent/tools/search/types.d.ts +25 -0
- package/dist/src/agent/tools/send-media.js +1 -1
- package/dist/src/agent/tools/task-collaboration-tool.d.ts +9 -1
- package/dist/src/agent/tools/task-collaboration-tool.js +121 -2
- package/dist/src/agent/tools/task-evidence.d.ts +3 -0
- package/dist/src/agent/tools/task-evidence.js +71 -0
- package/dist/src/agent/tools/task-result-tool.d.ts +2 -0
- package/dist/src/agent/tools/task-result-tool.js +93 -0
- package/dist/src/agent/tools/tool-media.js +1 -1
- package/dist/src/agent/tools/web.d.ts +16 -2
- package/dist/src/agent/tools/web.js +74 -29
- package/dist/src/agent/tools/xopc-use-tool.js +27 -6
- package/dist/src/agent/workspace-runtime/registry.js +1 -1
- package/dist/src/agent-catalog/capabilities.js +2 -2
- package/dist/src/automations/capabilities/drafts.js +1 -1
- package/dist/src/automations/capabilities/write.d.ts +4 -4
- package/dist/src/automations/domain/validation.d.ts +8 -8
- package/dist/src/automations/draft/automation-draft-validator.d.ts +2 -2
- package/dist/src/automations/service/action-executor.js +1 -1
- package/dist/src/bootstrap/application-state.js +1 -1
- package/dist/src/browser/automations/schema.d.ts +2 -2
- package/dist/src/browser/automations/service.d.ts +2 -2
- package/dist/src/capabilities/runtime/dispatcher.js +1 -1
- package/dist/src/capabilities/runtime/product.js +1 -1
- package/dist/src/chat-commands/agent-edit.js +1 -1
- package/dist/src/cli/commands/agent.js +1 -1
- package/dist/src/cli/commands/agents.js +1 -1
- package/dist/src/cli/commands/doctor/checks/database-schema.js +1 -1
- package/dist/src/cli/commands/models.js +1 -1
- package/dist/src/cli/commands/onboard/model.js +1 -1
- package/dist/src/cli/utils/init-workspace-core.js +1 -1
- package/dist/src/config/agent-profile.js +2 -2
- package/dist/src/config/index.js +2 -2
- package/dist/src/config/loader.js +1 -1
- package/dist/src/config/models-json.js +1 -1
- package/dist/src/config/schema.d.ts +1 -0
- package/dist/src/config/schema.js +5 -2
- package/dist/src/connectors/connection-recovery-service.d.ts +3 -1
- package/dist/src/connectors/connection-recovery-service.js +67 -6
- package/dist/src/discussions/action-tasks.d.ts +2 -2
- package/dist/src/extensions/agent-plugins/validation.js +1 -1
- package/dist/src/gateway/agent-builtin-tools.d.ts +1 -1
- package/dist/src/gateway/agents-admin.js +2 -2
- package/dist/src/gateway/hono/lib/config-payload.js +1 -1
- package/dist/src/gateway/hono/routes/agent-stream.js +1 -1
- package/dist/src/gateway/hono/routes/config-patch/misc.js +2 -2
- 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/notes.js +2 -2
- package/dist/src/gateway/hono/routes/projects.js +3 -3
- package/dist/src/gateway/hono/routes/session-input-handler.d.ts +18 -2
- package/dist/src/gateway/hono/routes/session-input-handler.js +2 -2
- package/dist/src/gateway/hono/routes/tasks.js +2 -2
- package/dist/src/gateway/image-generation-setup.js +1 -1
- package/dist/src/gateway/lock.js +1 -1
- package/dist/src/gateway/media-access.js +1 -1
- package/dist/src/gateway/service/agent-runner.d.ts +2 -0
- package/dist/src/gateway/service/agent-runner.js +30 -17
- package/dist/src/gateway/service/run-gateway-agent.js +32 -2
- package/dist/src/gateway/service/session-input-coordinator.d.ts +10 -1
- package/dist/src/gateway/service/session-input-coordinator.js +214 -27
- package/dist/src/gateway/service.d.ts +1 -0
- package/dist/src/gateway/service.js +49 -16
- package/dist/src/gateway/session-context-summary.js +1 -1
- package/dist/src/gateway/xopc-cloud-capability-setup.js +1 -1
- package/dist/src/home-intelligence/host.js +2 -2
- package/dist/src/local-apps/service.js +1 -1
- package/dist/src/media/session-references.js +1 -1
- package/dist/src/personal-agent/communication.js +1 -0
- package/dist/src/personal-agent/performance.d.ts +83 -0
- package/dist/src/personal-agent/performance.js +65 -0
- package/dist/src/personal-agent/policy.d.ts +1 -1
- package/dist/src/personal-agent/policy.js +1 -0
- package/dist/src/personal-agent/proactivity/service.js +1 -1
- package/dist/src/personal-agent/prompt-context.js +3 -1
- package/dist/src/personal-agent/prompts.js +10 -4
- package/dist/src/personal-agent/reply-composer.d.ts +1 -0
- package/dist/src/personal-agent/reply-composer.js +149 -20
- package/dist/src/personal-agent/reply-style.d.ts +1 -1
- package/dist/src/personal-agent/reply-style.js +1 -0
- package/dist/src/personal-agent/repository.d.ts +1 -1
- package/dist/src/personal-agent/repository.js +1 -1
- package/dist/src/personal-agent/request-delivery.js +3 -1
- package/dist/src/personal-agent/request-repository.d.ts +2 -0
- package/dist/src/personal-agent/request-service.d.ts +4 -0
- package/dist/src/personal-agent/request-service.js +91 -20
- package/dist/src/personal-agent/result-extraction.d.ts +42 -0
- package/dist/src/personal-agent/result-extraction.js +209 -0
- package/dist/src/personal-agent/result-file-links.d.ts +3 -0
- package/dist/src/personal-agent/result-file-links.js +21 -0
- package/dist/src/personal-agent/result-read-continuations.d.ts +13 -0
- package/dist/src/personal-agent/result-read-continuations.js +78 -0
- package/dist/src/personal-agent/result-reader.d.ts +43 -0
- package/dist/src/personal-agent/result-reader.js +461 -0
- package/dist/src/personal-agent/service.js +2 -2
- package/dist/src/personal-agent/task-cancel.js +85 -35
- package/dist/src/providers/model-catalog-persistence.js +1 -1
- package/dist/src/routing/resolve-route.js +1 -1
- package/dist/src/routing/resolve-tui-session-key.js +1 -1
- package/dist/src/scenes/taskFollowUp/service.d.ts +15 -5
- package/dist/src/session/client-history.d.ts +1 -1
- package/dist/src/session/client-history.js +1 -1
- package/dist/src/session/session-context-for-llm.js +4 -2
- package/dist/src/session/store.d.ts +3 -1
- package/dist/src/session/store.js +13 -3
- package/dist/src/share/hosted-session-share.js +1 -1
- package/dist/src/storage/sqlite/connection-wait-repository.d.ts +5 -2
- package/dist/src/storage/sqlite/connection-wait-repository.js +42 -17
- package/dist/src/storage/sqlite/index.d.ts +1 -0
- package/dist/src/storage/sqlite/index.js +3 -1
- package/dist/src/storage/sqlite/migrations/250_research_checkpoints.sql +15 -0
- package/dist/src/storage/sqlite/migrations/251_personal_result_reads.sql +40 -0
- package/dist/src/storage/sqlite/migrations/252_task_work_revisions.sql +15 -0
- package/dist/src/storage/sqlite/migrations/runner.d.ts +1 -1
- package/dist/src/storage/sqlite/migrations/runner.js +3 -3
- package/dist/src/storage/sqlite/research-checkpoint-repository.d.ts +24 -0
- package/dist/src/storage/sqlite/research-checkpoint-repository.js +91 -0
- package/dist/src/storage/sqlite/schema.js +1 -1
- package/dist/src/storage/sqlite/session-creation-repository.js +3 -2
- package/dist/src/storage/sqlite/session-input-repository.d.ts +16 -0
- package/dist/src/storage/sqlite/session-input-repository.js +41 -7
- package/dist/src/tasks/capabilities/management.d.ts +2 -2
- package/dist/src/tasks/capabilities/read.js +2 -2
- package/dist/src/tasks/capabilities/relations.d.ts +7 -7
- package/dist/src/tasks/capabilities/write.d.ts +2 -2
- package/dist/src/tasks/capabilities/write.js +1 -1
- package/dist/src/tasks/index.js +1 -1
- package/dist/src/tasks/task-allocation-service.d.ts +2 -0
- package/dist/src/tasks/task-allocation-service.js +100 -8
- package/dist/src/tasks/task-application-service.d.ts +18 -0
- package/dist/src/tasks/task-application-service.js +133 -2
- package/dist/src/tasks/task-context-assembler.js +13 -5
- package/dist/src/tasks/task-continuation.d.ts +1 -0
- package/dist/src/tasks/task-continuation.js +1 -0
- package/dist/src/tasks/task-contract-definition.d.ts +3 -0
- package/dist/src/tasks/task-contract-planner.d.ts +1 -0
- package/dist/src/tasks/task-contract-planner.js +61 -20
- package/dist/src/tasks/task-conversation-repository.js +1 -1
- package/dist/src/tasks/task-evidence-ranges.d.ts +7 -0
- package/dist/src/tasks/task-evidence-ranges.js +20 -0
- package/dist/src/tasks/task-execution-capabilities.d.ts +26 -0
- package/dist/src/tasks/task-execution-capabilities.js +117 -0
- package/dist/src/tasks/task-handoff-service.js +1 -1
- package/dist/src/tasks/task-handoff.d.ts +56 -0
- package/dist/src/tasks/task-handoff.js +510 -0
- package/dist/src/tasks/task-model-call.d.ts +7 -0
- package/dist/src/tasks/task-model-call.js +35 -0
- package/dist/src/tasks/task-read-model-projector.d.ts +6 -0
- package/dist/src/tasks/task-read-model-projector.js +12 -1
- package/dist/src/tasks/task-research-repair.d.ts +19 -0
- package/dist/src/tasks/task-research-repair.js +79 -0
- package/dist/src/tasks/task-research-result.d.ts +99 -0
- package/dist/src/tasks/task-research-result.js +478 -0
- package/dist/src/tasks/task-result-delivery-repository.js +37 -3
- package/dist/src/tasks/task-result-delivery-service.js +38 -10
- package/dist/src/tasks/task-run-coordinator.js +71 -15
- package/dist/src/tasks/task-run-dispatcher.d.ts +1 -0
- package/dist/src/tasks/task-run-dispatcher.js +3 -1
- package/dist/src/tasks/task-run-repository.d.ts +5 -0
- package/dist/src/tasks/task-run-repository.js +88 -1
- package/dist/src/tui/backends/embedded-backend.js +2 -2
- package/dist/src/voice/realtime/persona-context.js +1 -1
- package/package.json +12 -6
- package/dist/gateway/static/root/assets/constants-Dy8Gw0sF.js +0 -1
- package/dist/gateway/static/root/assets/home-page-DJNmlMfH.js +0 -2
- package/dist/gateway/static/root/assets/index-K8SXDtxr.js +0 -260
- package/dist/gateway/static/root/assets/local-session-drafts-D_tYFy7d.js +0 -1
- package/dist/gateway/static/root/assets/mermaid-MCJ5UELQ-DBRj4-1-.js +0 -1
- package/dist/gateway/static/root/assets/product-open-page-CXkYP9xE.js +0 -1
- package/dist/gateway/static/root/assets/session-manager-_yy4bxhT.js +0 -16
- package/dist/gateway/static/root/assets/settings-advanced-gate-DoAHy1wj.js +0 -1
- package/dist/gateway/static/root/assets/task-detail-page-CfZhq4XZ.js +0 -2
- package/dist/gateway/static/root/assets/task-expandable-content-CF6Bj-Qa.js +0 -1
|
@@ -9,6 +9,7 @@ import { getPersonalRequest, init_request_repository, updatePersonalRequest } fr
|
|
|
9
9
|
import { appendTranscriptEntry, init_transcript_repository, loadLlmMessagesForSession } from "../storage/sqlite/transcript-repository.js";
|
|
10
10
|
import { getPersonalAgentByConversation } from "./repository.js";
|
|
11
11
|
import { emitSessionTranscriptUpdate } from "../session/transcript-events.js";
|
|
12
|
+
import { warmPersonalResult } from "./result-reader.js";
|
|
12
13
|
import { TaskConversationRepository } from "../tasks/task-conversation-repository.js";
|
|
13
14
|
import { TaskCollaborationRepository } from "../tasks/task-collaboration-repository.js";
|
|
14
15
|
import { PersonalRequestResultSchema, renderPersonalRequestResult } from "./request-result.js";
|
|
@@ -105,7 +106,7 @@ function drainPersonalRequestResults(notify) {
|
|
|
105
106
|
const parsed = !outdated && stored.result_json && stored.result_run_id === run.id ? PersonalRequestResultSchema.safeParse(JSON.parse(stored.result_json)) : void 0;
|
|
106
107
|
const assistant = (run.conversationId ? loadLlmMessagesForSession(run.conversationId) : []).filter((message) => message.role === "assistant").at(-1);
|
|
107
108
|
const fallback = assistant?.role === "assistant" ? assistant.content.filter((part) => part.type === "text").map((part) => part.text).join("\n").trim() : "";
|
|
108
|
-
const content = parsed?.success ? renderPersonalRequestResult(parsed.data) : fallback && fallback !== "NO_REPLY" ? fallback
|
|
109
|
+
const content = parsed?.success ? renderPersonalRequestResult(parsed.data) : fallback && fallback !== "NO_REPLY" ? fallback : receipt?.summary?.trim() || "Request finished without a readable result.";
|
|
109
110
|
const failed = run.status !== "succeeded";
|
|
110
111
|
const adoptionWarning = outdated ? "Supplemental requirements arrived after the saved connected-app result. Their completion is unverified; do not treat the older structured items as current." : "";
|
|
111
112
|
const display = failed ? `查询未完成。\n\n${content}` : content;
|
|
@@ -134,6 +135,7 @@ function drainPersonalRequestResults(notify) {
|
|
|
134
135
|
createdAt: now
|
|
135
136
|
});
|
|
136
137
|
const personal = getPersonalAgentByConversation(request.conversationId);
|
|
138
|
+
if (personal) warmPersonalResult(request.conversationId, delivery.deliveryId);
|
|
137
139
|
if (personal) enqueuePersonalReply({
|
|
138
140
|
delivery,
|
|
139
141
|
objective: request.objective,
|
|
@@ -17,5 +17,9 @@ export declare function resolvePersonalRequestConnection(wait: ConnectionWait, r
|
|
|
17
17
|
/** A worker can request access recovery without requiring a new main-chat turn. */
|
|
18
18
|
export declare function requirePersonalWorkerConnection(conversationId: string): PersonalRequest;
|
|
19
19
|
export declare function personalRequestSnapshot(request: PersonalRequest): PersonalRequest;
|
|
20
|
+
/** Dispatch only the request's bound execution; SDK acknowledgement must not block input. */
|
|
21
|
+
export declare function stopPersonalRequestExecution(request: PersonalRequest): {
|
|
22
|
+
executionStopConfirmed: boolean;
|
|
23
|
+
};
|
|
20
24
|
export declare function cancelPersonalRequest(request: PersonalRequest): PersonalRequest;
|
|
21
25
|
export declare function publishPersonalRequest(request: PersonalRequest): void;
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { createLogger } from "../utils/logger/index.js";
|
|
2
|
+
import { init_logger } from "../utils/logger.js";
|
|
1
3
|
import { getSqliteDatabase, init_transaction, runSqliteWriteTransaction } from "../storage/sqlite/transaction.js";
|
|
2
4
|
import { TaskCreateRequestSchema } from "../../packages/gateway-contract/src/tasks.js";
|
|
3
5
|
import { init_src } from "../../packages/gateway-contract/src/index.js";
|
|
@@ -15,13 +17,14 @@ import { canAccessConnectorAccount } from "../connectors/account-access.js";
|
|
|
15
17
|
import { connectorPrincipalForSession } from "../connectors/principal.js";
|
|
16
18
|
import { resolveConnectionCandidate } from "../connectors/connection-candidates.js";
|
|
17
19
|
import { TaskCollaborationRepository } from "../tasks/task-collaboration-repository.js";
|
|
18
|
-
import { TaskApplicationService } from "../tasks/task-application-service.js";
|
|
19
20
|
import { defineTaskContract } from "../tasks/task-contract-definition.js";
|
|
21
|
+
import { abortEmbeddedRun } from "../agent/embedded/runs.js";
|
|
22
|
+
import { TaskApplicationService } from "../tasks/task-application-service.js";
|
|
23
|
+
import { PERSONAL_WORKER_RESULT_GUIDANCE } from "./communication.js";
|
|
20
24
|
import { assessSpecialist } from "../agent-matching/service.js";
|
|
25
|
+
import { personalCapabilities } from "./capability-service.js";
|
|
21
26
|
import { AgentSelectionRepository, selectionRequestHash } from "../agent-matching/selection-repository.js";
|
|
22
27
|
import { assertSpecialistEligible } from "../agent-matching/delegation-service.js";
|
|
23
|
-
import { PERSONAL_WORKER_RESULT_GUIDANCE } from "./communication.js";
|
|
24
|
-
import { personalCapabilities } from "./capability-service.js";
|
|
25
28
|
import { createHash, randomUUID } from "node:crypto";
|
|
26
29
|
//#region src/personal-agent/request-service.ts
|
|
27
30
|
init_src();
|
|
@@ -34,6 +37,9 @@ init_task_repository();
|
|
|
34
37
|
init_task_run_repository();
|
|
35
38
|
init_connector_account_repository();
|
|
36
39
|
init_connector_repository();
|
|
40
|
+
init_logger();
|
|
41
|
+
const log = createLogger("PersonalRequest");
|
|
42
|
+
const pendingStops = /* @__PURE__ */ new Set();
|
|
37
43
|
function requestAssessment(request, accountId) {
|
|
38
44
|
const principal = connectorPrincipalForSession(request.conversationId);
|
|
39
45
|
const capability = personalCapabilities(request.conversationId, request.connectorId, accountId).find((item) => item.connectorId === request.connectorId);
|
|
@@ -294,7 +300,11 @@ function startPersonalRequest(request, accountId) {
|
|
|
294
300
|
return updatePersonalRequest(request, {
|
|
295
301
|
state: result.ok ? "queued" : "failed",
|
|
296
302
|
accountId,
|
|
297
|
-
taskId
|
|
303
|
+
taskId,
|
|
304
|
+
parameters: {
|
|
305
|
+
...request.parameters,
|
|
306
|
+
taskRunId: result.ok ? result.runId : void 0
|
|
307
|
+
}
|
|
298
308
|
});
|
|
299
309
|
}
|
|
300
310
|
/** Called inside the connection-resolution transaction; ordinary waits return undefined. */
|
|
@@ -407,7 +417,11 @@ function requirePersonalWorkerConnection(conversationId) {
|
|
|
407
417
|
});
|
|
408
418
|
return updatePersonalRequest(request, {
|
|
409
419
|
state: "waiting_connection",
|
|
410
|
-
connectionWaitId: result.waitId
|
|
420
|
+
connectionWaitId: result.waitId,
|
|
421
|
+
parameters: {
|
|
422
|
+
...request.parameters,
|
|
423
|
+
taskRunId: run.id
|
|
424
|
+
}
|
|
411
425
|
});
|
|
412
426
|
});
|
|
413
427
|
}
|
|
@@ -420,16 +434,58 @@ function personalRequestSnapshot(request) {
|
|
|
420
434
|
state
|
|
421
435
|
};
|
|
422
436
|
}
|
|
423
|
-
function
|
|
437
|
+
function personalRequestRunId(request) {
|
|
438
|
+
if (request.parameters.taskRunId) return request.parameters.taskRunId;
|
|
439
|
+
if (request.connectionWaitId) {
|
|
440
|
+
const wait = getSqliteDatabase().prepare(`SELECT task_run_id FROM task_waits
|
|
441
|
+
WHERE task_id = ? AND json_extract(condition_json, '$.connectionWaitId') = ? LIMIT 1`).get(request.taskId ?? null, request.connectionWaitId);
|
|
442
|
+
if (wait?.task_run_id) return wait.task_run_id;
|
|
443
|
+
}
|
|
444
|
+
const selected = new AgentSelectionRepository().find(request.conversationId, `personal-request-start:${request.requestId}`)?.taskRunId;
|
|
445
|
+
if (selected) return selected;
|
|
446
|
+
return (request.taskId ? getSqliteDatabase().prepare(`SELECT run_id FROM task_runs
|
|
447
|
+
WHERE task_id = ? AND parent_run_id IS NULL ORDER BY queued_at, rowid LIMIT 1`).get(request.taskId) : void 0)?.run_id;
|
|
448
|
+
}
|
|
449
|
+
/** Dispatch only the request's bound execution; SDK acknowledgement must not block input. */
|
|
450
|
+
function stopPersonalRequestExecution(request) {
|
|
451
|
+
if (request.state !== "cancelled") return { executionStopConfirmed: false };
|
|
452
|
+
const runId = personalRequestRunId(request);
|
|
453
|
+
const run = runId ? new TaskRunRepository().get(runId) : void 0;
|
|
454
|
+
if (!run || !run.conversationId && !run.startedAt) return { executionStopConfirmed: true };
|
|
455
|
+
if (run.conversationId) {
|
|
456
|
+
const state = getSessionInputState(run.conversationId);
|
|
457
|
+
const input = state.activeInputId ? getSessionInputById(run.conversationId, state.activeInputId) : void 0;
|
|
458
|
+
if (state.activeRunId && input?.taskRunId === run.id && !pendingStops.has(state.activeRunId)) {
|
|
459
|
+
const executionId = state.activeRunId;
|
|
460
|
+
pendingStops.add(executionId);
|
|
461
|
+
abortEmbeddedRun(run.conversationId, "user_cancelled", executionId).catch((err) => {
|
|
462
|
+
log.warn({
|
|
463
|
+
err,
|
|
464
|
+
requestId: request.requestId,
|
|
465
|
+
runId,
|
|
466
|
+
executionId
|
|
467
|
+
}, "Request cancelled; execution stop was not confirmed");
|
|
468
|
+
}).finally(() => {
|
|
469
|
+
pendingStops.delete(executionId);
|
|
470
|
+
});
|
|
471
|
+
}
|
|
472
|
+
}
|
|
473
|
+
return { executionStopConfirmed: false };
|
|
474
|
+
}
|
|
475
|
+
function cancelPersonalRequestTask(request, runId = personalRequestRunId(request)) {
|
|
424
476
|
if (!request.taskId) return;
|
|
425
477
|
const runs = new TaskRunRepository();
|
|
426
|
-
const run = runs.
|
|
478
|
+
const run = runId ? runs.get(runId) : void 0;
|
|
427
479
|
if (!run) return;
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
480
|
+
if (![
|
|
481
|
+
"queued",
|
|
482
|
+
"running",
|
|
483
|
+
"waiting",
|
|
484
|
+
"verifying",
|
|
485
|
+
"cancelled"
|
|
486
|
+
].includes(run.status)) return;
|
|
487
|
+
runs.resolveCancelledRunWaits(run.id, { kind: "user" });
|
|
488
|
+
if (run.status === "cancelled") return;
|
|
433
489
|
if (!new TaskApplicationService().completeRun({
|
|
434
490
|
runId: run.id,
|
|
435
491
|
expectedRunVersion: run.version,
|
|
@@ -452,12 +508,17 @@ function cancelPersonalRequestTask(request) {
|
|
|
452
508
|
}).ok) throw new Error("Task changed while cancelling");
|
|
453
509
|
}
|
|
454
510
|
function cancelPersonalRequest(request) {
|
|
455
|
-
const
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
511
|
+
const cancelled = runSqliteWriteTransaction(() => {
|
|
512
|
+
request = getPersonalRequest(request.requestId);
|
|
513
|
+
if (request.parameters.cancellationCleanupCompleted) return request;
|
|
514
|
+
const snapshot = personalRequestSnapshot(request);
|
|
515
|
+
if (["completed", "failed"].includes(snapshot.state)) return snapshot;
|
|
516
|
+
const active = request.taskId ? new TaskRunRepository().getActiveRoot(request.taskId) : void 0;
|
|
517
|
+
const runId = personalRequestRunId(request);
|
|
518
|
+
const replacementRun = active && runId && active.id !== runId;
|
|
519
|
+
if (request.connectionWaitId) cancelConnectionObjective(request.conversationId, request.connectionWaitId);
|
|
520
|
+
cancelPersonalRequestTask(request, runId);
|
|
521
|
+
if (request.taskId && !replacementRun) {
|
|
461
522
|
const task = new TaskRepository().require(request.taskId);
|
|
462
523
|
if (task.phase !== "closed") new TaskApplicationService().execute({
|
|
463
524
|
taskId: task.id,
|
|
@@ -471,11 +532,21 @@ function cancelPersonalRequest(request) {
|
|
|
471
532
|
});
|
|
472
533
|
getSqliteDatabase().prepare("UPDATE task_allocations SET status = 'cancelled', lease_token = NULL WHERE task_id = ?").run(request.taskId);
|
|
473
534
|
}
|
|
474
|
-
|
|
535
|
+
const current = getPersonalRequest(request.requestId);
|
|
536
|
+
return updatePersonalRequest(current, {
|
|
537
|
+
state: "cancelled",
|
|
538
|
+
parameters: {
|
|
539
|
+
...current.parameters,
|
|
540
|
+
taskRunId: runId,
|
|
541
|
+
cancellationCleanupCompleted: true
|
|
542
|
+
}
|
|
543
|
+
});
|
|
475
544
|
});
|
|
545
|
+
stopPersonalRequestExecution(cancelled);
|
|
546
|
+
return cancelled;
|
|
476
547
|
}
|
|
477
548
|
function publishPersonalRequest(request) {
|
|
478
549
|
publishConnectionWait(request.conversationId);
|
|
479
550
|
}
|
|
480
551
|
//#endregion
|
|
481
|
-
export { assertPersonalRequestTimeRange, cancelPersonalRequest, personalRequestSnapshot, publishPersonalRequest, requirePersonalWorkerConnection, resolvePersonalRequestConnection, submitPersonalRequest };
|
|
552
|
+
export { assertPersonalRequestTimeRange, cancelPersonalRequest, personalRequestSnapshot, publishPersonalRequest, requirePersonalWorkerConnection, resolvePersonalRequestConnection, stopPersonalRequestExecution, submitPersonalRequest };
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export interface ResultSection {
|
|
2
|
+
id: string;
|
|
3
|
+
title: string;
|
|
4
|
+
offset: number;
|
|
5
|
+
length: number;
|
|
6
|
+
locator: Record<string, unknown>;
|
|
7
|
+
}
|
|
8
|
+
export interface ResultPreparation {
|
|
9
|
+
database: string;
|
|
10
|
+
documentId: string;
|
|
11
|
+
lease: string;
|
|
12
|
+
file?: string;
|
|
13
|
+
expectedSha256?: string;
|
|
14
|
+
title: string;
|
|
15
|
+
mimeType?: string;
|
|
16
|
+
text?: string;
|
|
17
|
+
}
|
|
18
|
+
export declare const RESULT_PARSER_VERSION = 2;
|
|
19
|
+
export declare const resultFingerprint: (value: {
|
|
20
|
+
size: number;
|
|
21
|
+
mtimeMs: number;
|
|
22
|
+
ctimeMs: number;
|
|
23
|
+
}) => string;
|
|
24
|
+
/** Runs only in a bounded background worker. No document code or macros are executed. */
|
|
25
|
+
export declare function extractResult(input: Pick<ResultPreparation, 'file' | 'title' | 'mimeType' | 'text' | 'expectedSha256'>): Promise<{
|
|
26
|
+
unsupported: true;
|
|
27
|
+
reason: string;
|
|
28
|
+
text?: undefined;
|
|
29
|
+
sections?: undefined;
|
|
30
|
+
limitations?: undefined;
|
|
31
|
+
fingerprint?: undefined;
|
|
32
|
+
revision?: undefined;
|
|
33
|
+
} | {
|
|
34
|
+
unsupported: false;
|
|
35
|
+
text: string;
|
|
36
|
+
sections: ResultSection[];
|
|
37
|
+
limitations: string[];
|
|
38
|
+
fingerprint: string;
|
|
39
|
+
revision: string;
|
|
40
|
+
reason?: undefined;
|
|
41
|
+
}>;
|
|
42
|
+
export declare function prepareResultDocument(input: ResultPreparation): Promise<void>;
|