@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
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
//#region src/tasks/task-evidence-ranges.ts
|
|
2
|
+
/** Offsets are Unicode code points into a persisted successful tool result, never the input command. */
|
|
3
|
+
function observedEvidenceExcerpt(body, range) {
|
|
4
|
+
const points = Array.from(body);
|
|
5
|
+
if (!Number.isInteger(range.start) || !Number.isInteger(range.end) || range.start < 0 || range.end <= range.start || range.end > points.length || range.end - range.start > 1e3) throw new Error("Evidence range must select 1..1000 observed Unicode characters within the successful read");
|
|
6
|
+
return points.slice(range.start, range.end).join("");
|
|
7
|
+
}
|
|
8
|
+
function suggestedEvidenceRanges(body) {
|
|
9
|
+
const length = Array.from(body).length;
|
|
10
|
+
if (!length) return [];
|
|
11
|
+
return [{
|
|
12
|
+
start: 0,
|
|
13
|
+
end: Math.min(1e3, length)
|
|
14
|
+
}, ...length > 1e3 ? [{
|
|
15
|
+
start: Math.max(1e3, length - 1e3),
|
|
16
|
+
end: length
|
|
17
|
+
}] : []];
|
|
18
|
+
}
|
|
19
|
+
//#endregion
|
|
20
|
+
export { observedEvidenceExcerpt, suggestedEvidenceRanges };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { SpecialistTaskRequirements } from '@xopcai/gateway-contract';
|
|
2
|
+
import { type MatchingContext, type SpecialistAssessment } from '../agent-matching/service.js';
|
|
3
|
+
import { type TaskAggregate } from './task-repository.js';
|
|
4
|
+
export declare const EXECUTION_CAPABILITIES: {
|
|
5
|
+
readonly read_input: readonly ["read_file", "read_media", "exec_command"];
|
|
6
|
+
readonly execute_code: readonly ["exec_command"];
|
|
7
|
+
readonly publish_files: readonly ["publish_artifacts"];
|
|
8
|
+
readonly web_research: readonly ["web_fetch", "browser_use"];
|
|
9
|
+
readonly browser: readonly ["browser_use"];
|
|
10
|
+
readonly generate_image: readonly ["image_generate"];
|
|
11
|
+
};
|
|
12
|
+
export type ExecutionCapability = keyof typeof EXECUTION_CAPABILITIES;
|
|
13
|
+
export interface ExecutionRequirement {
|
|
14
|
+
capability: ExecutionCapability;
|
|
15
|
+
source: 'structured_input' | 'background_inference';
|
|
16
|
+
reason: string;
|
|
17
|
+
}
|
|
18
|
+
export declare function taskExecutionRequirements(task: TaskAggregate, requirements: SpecialistTaskRequirements, inferred?: ExecutionCapability[]): ExecutionRequirement[];
|
|
19
|
+
export declare function assessTaskExecutor(agentId: string, requirements: SpecialistTaskRequirements, needs: ExecutionRequirement[], context: MatchingContext, taskId?: string): SpecialistAssessment;
|
|
20
|
+
export declare function captureExecutionRequirements(task: TaskAggregate, requirements: SpecialistTaskRequirements, needs: ExecutionRequirement[]): void;
|
|
21
|
+
export declare function savedExecutionRequirements(taskId: string): {
|
|
22
|
+
requirements: SpecialistTaskRequirements;
|
|
23
|
+
needs: ExecutionRequirement[];
|
|
24
|
+
contractVersion: number;
|
|
25
|
+
} | undefined;
|
|
26
|
+
export declare function assertTaskExecutorReady(taskId: string, originConversationId: string, agentId: string, context: MatchingContext): void;
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import { getSqliteDatabase, init_transaction } from "../storage/sqlite/transaction.js";
|
|
2
|
+
import { TaskRepository, init_task_repository } from "./task-repository.js";
|
|
3
|
+
import { TaskContextRepository } from "./task-context-repository.js";
|
|
4
|
+
import { assertTaskHandoffExecutorAccess } from "./task-handoff.js";
|
|
5
|
+
import { assessSpecialist } from "../agent-matching/service.js";
|
|
6
|
+
import { personalCapabilities } from "../personal-agent/capability-service.js";
|
|
7
|
+
//#region src/tasks/task-execution-capabilities.ts
|
|
8
|
+
init_transaction();
|
|
9
|
+
init_task_repository();
|
|
10
|
+
const EXECUTION_CAPABILITIES = {
|
|
11
|
+
read_input: [
|
|
12
|
+
"read_file",
|
|
13
|
+
"read_media",
|
|
14
|
+
"exec_command"
|
|
15
|
+
],
|
|
16
|
+
execute_code: ["exec_command"],
|
|
17
|
+
publish_files: ["publish_artifacts"],
|
|
18
|
+
web_research: ["web_fetch", "browser_use"],
|
|
19
|
+
browser: ["browser_use"],
|
|
20
|
+
generate_image: ["image_generate"]
|
|
21
|
+
};
|
|
22
|
+
function taskExecutionRequirements(task, requirements, inferred = []) {
|
|
23
|
+
const needs = /* @__PURE__ */ new Map();
|
|
24
|
+
const add = (capability, source, reason) => needs.set(capability, {
|
|
25
|
+
capability,
|
|
26
|
+
source,
|
|
27
|
+
reason
|
|
28
|
+
});
|
|
29
|
+
for (const capability of inferred) if (capability in EXECUTION_CAPABILITIES) add(capability, "background_inference", "Minimal operation inferred by the background contract planner; no authority granted");
|
|
30
|
+
if (requirements.inputKinds?.some((kind) => /^(csv|xlsx|pdf|docx|pptx|file|document|spreadsheet|text)$/.test(kind))) add("read_input", "structured_input", "Structured file input requires a registered reader or execution tool");
|
|
31
|
+
if (requirements.outputKinds?.some((kind) => /^(file|pdf|docx|pptx|xlsx|csv|spreadsheet|document)$/.test(kind))) add("publish_files", "structured_input", "Requested file output requires publication");
|
|
32
|
+
if (requirements.inputKinds?.some((kind) => /^(pdf|docx|pptx|xlsx)$/.test(kind))) add("execute_code", "structured_input", "Binary input requires an executable parser; text readers alone do not establish binary processing capability");
|
|
33
|
+
if (!requirements.connector && (task.body?.length ?? 0) > 12e3) requirements.requiredTools = [...new Set([...requirements.requiredTools ?? [], "task_collaboration"])];
|
|
34
|
+
return [...needs.values()];
|
|
35
|
+
}
|
|
36
|
+
function assessTaskExecutor(agentId, requirements, needs, context, taskId) {
|
|
37
|
+
const assessment = assessSpecialist(agentId, requirements, context);
|
|
38
|
+
for (const need of needs) {
|
|
39
|
+
const options = EXECUTION_CAPABILITIES[need.capability].map((tool) => assessSpecialist(agentId, {
|
|
40
|
+
...requirements,
|
|
41
|
+
requiredSkills: [],
|
|
42
|
+
requiredTools: [tool]
|
|
43
|
+
}, context));
|
|
44
|
+
const available = options.find((option) => option.checks.some((check) => check.condition.startsWith("tool:") && check.state === "verified"));
|
|
45
|
+
assessment.checks.push({
|
|
46
|
+
condition: `capability:${need.capability}`,
|
|
47
|
+
state: available ? "verified" : "blocked",
|
|
48
|
+
reasonCode: available ? "registered_operation_available" : "required_operation_unavailable",
|
|
49
|
+
detail: available ? available.checks.find((check) => check.condition.startsWith("tool:"))?.condition : JSON.stringify(options.flatMap((option) => option.checks.filter((check) => check.condition.startsWith("tool:"))))
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
if (taskId) try {
|
|
53
|
+
assertTaskHandoffExecutorAccess(taskId, agentId);
|
|
54
|
+
} catch (error) {
|
|
55
|
+
assessment.checks.push({
|
|
56
|
+
condition: "source_authorization",
|
|
57
|
+
state: "blocked",
|
|
58
|
+
reasonCode: "selected_source_unavailable",
|
|
59
|
+
detail: error instanceof Error ? error.message : String(error)
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
assessment.eligibility = assessment.checks.some((check) => check.state === "blocked") ? "blocked" : assessment.checks.some((check) => check.state === "unknown") ? "needs_verification" : "eligible";
|
|
63
|
+
return assessment;
|
|
64
|
+
}
|
|
65
|
+
function captureExecutionRequirements(task, requirements, needs) {
|
|
66
|
+
new TaskContextRepository().captureSnapshot({
|
|
67
|
+
ownerKind: "task",
|
|
68
|
+
ownerId: task.id,
|
|
69
|
+
query: task.contract?.objective ?? task.title,
|
|
70
|
+
relationshipPolicy: {
|
|
71
|
+
kind: "task_execution_requirements",
|
|
72
|
+
contractVersion: task.latestContractVersion
|
|
73
|
+
},
|
|
74
|
+
selectedItems: [{
|
|
75
|
+
requirements,
|
|
76
|
+
needs,
|
|
77
|
+
contractVersion: task.latestContractVersion,
|
|
78
|
+
requirementOrigins: {
|
|
79
|
+
requestedAgentId: "provided_requirement",
|
|
80
|
+
requiredSkills: "provided_requirement",
|
|
81
|
+
requiredTools: "provided_requirement_or_host_bounded_reader",
|
|
82
|
+
acceptanceCriteria: "current_contract"
|
|
83
|
+
}
|
|
84
|
+
}],
|
|
85
|
+
authorizationSnapshot: {
|
|
86
|
+
expandsAuthority: false,
|
|
87
|
+
liveRecheckRequired: true
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
function savedExecutionRequirements(taskId) {
|
|
92
|
+
const row = getSqliteDatabase().prepare(`SELECT selected_items_json FROM context_snapshots
|
|
93
|
+
WHERE owner_kind = 'task' AND owner_id = ? AND json_extract(relationship_policy_json, '$.kind') = 'task_execution_requirements'
|
|
94
|
+
ORDER BY created_at DESC, rowid DESC LIMIT 1`).get(taskId);
|
|
95
|
+
return row ? JSON.parse(row.selected_items_json)[0] : void 0;
|
|
96
|
+
}
|
|
97
|
+
function assertTaskExecutorReady(taskId, originConversationId, agentId, context) {
|
|
98
|
+
const saved = savedExecutionRequirements(taskId);
|
|
99
|
+
if (!saved) return;
|
|
100
|
+
if (new TaskRepository().require(taskId).latestContractVersion !== saved.contractVersion) throw new Error("Task contract changed after capability validation; reallocate before execution");
|
|
101
|
+
const connector = saved.requirements.connector;
|
|
102
|
+
if (connector) {
|
|
103
|
+
const permitted = personalCapabilities(originConversationId, connector.connectorId, connector.accountId).some((capability) => capability.status === "ready" && capability.accounts.some((account) => account.accountId === connector.accountId && account.executorAgentIds.includes(agentId)));
|
|
104
|
+
context = {
|
|
105
|
+
...context,
|
|
106
|
+
checkConnector: () => ({
|
|
107
|
+
condition: "connector",
|
|
108
|
+
state: permitted ? "verified" : "blocked",
|
|
109
|
+
reasonCode: permitted ? "account_authorized" : "account_unavailable"
|
|
110
|
+
})
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
const fresh = assessTaskExecutor(agentId, saved.requirements, saved.needs, context, taskId);
|
|
114
|
+
if (fresh.eligibility !== "eligible") throw new Error(`Task executor capability changed: ${JSON.stringify(fresh.checks.filter((check) => ["blocked", "unknown"].includes(check.state)))}`);
|
|
115
|
+
}
|
|
116
|
+
//#endregion
|
|
117
|
+
export { EXECUTION_CAPABILITIES, assertTaskExecutorReady, assessTaskExecutor, captureExecutionRequirements, savedExecutionRequirements, taskExecutionRequirements };
|
|
@@ -2,9 +2,9 @@ import { createLogger } from "../utils/logger/index.js";
|
|
|
2
2
|
import { init_logger } from "../utils/logger.js";
|
|
3
3
|
import { TaskRepository, init_task_repository } from "./task-repository.js";
|
|
4
4
|
import { TaskRunRepository, init_task_run_repository } from "./task-run-repository.js";
|
|
5
|
+
import { init_session_key, resolveConversationId, sanitizeSegment } from "../routing/session-key.js";
|
|
5
6
|
import { normalizeAgentId } from "../agent-catalog/id.js";
|
|
6
7
|
import { init_agent_scope, listAgentEntries } from "../agent/agent-scope.js";
|
|
7
|
-
import { init_session_key, resolveConversationId, sanitizeSegment } from "../routing/session-key.js";
|
|
8
8
|
import { TaskConversationRepository } from "./task-conversation-repository.js";
|
|
9
9
|
import { TaskContextRepository } from "./task-context-repository.js";
|
|
10
10
|
//#region src/tasks/task-handoff-service.ts
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { type TurnContextRef } from '../agent/source-context/types.js';
|
|
2
|
+
import type { Config } from '../config/schema.js';
|
|
3
|
+
import { type PersonalResultInput } from '../personal-agent/result-reader.js';
|
|
4
|
+
export interface TaskHandoff {
|
|
5
|
+
version: 1;
|
|
6
|
+
conversationId: string;
|
|
7
|
+
transcriptId: string;
|
|
8
|
+
inputId?: string;
|
|
9
|
+
originalRequest?: string;
|
|
10
|
+
interpretation: string;
|
|
11
|
+
baseline: {
|
|
12
|
+
contractVersion: number;
|
|
13
|
+
assignmentEpoch: number;
|
|
14
|
+
instructionSequence: number;
|
|
15
|
+
};
|
|
16
|
+
sources: Array<{
|
|
17
|
+
kind: string;
|
|
18
|
+
sourceId: string;
|
|
19
|
+
version: string;
|
|
20
|
+
title: string;
|
|
21
|
+
text: string;
|
|
22
|
+
truncated: boolean;
|
|
23
|
+
representation?: 'text' | 'metadata' | 'directory';
|
|
24
|
+
purpose: string;
|
|
25
|
+
contentHash: string;
|
|
26
|
+
}>;
|
|
27
|
+
requestedSources?: TurnContextRef[];
|
|
28
|
+
attachments: unknown[];
|
|
29
|
+
completeness: {
|
|
30
|
+
originalInput: 'captured' | 'unavailable';
|
|
31
|
+
omitted: string[];
|
|
32
|
+
unresolvedReferences: string[];
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
/** Normalize model-facing references without fetching any source on the submission path. */
|
|
36
|
+
export declare function parseTaskHandoffReferences(raw: unknown): TurnContextRef[] | null;
|
|
37
|
+
/** Called inside task.create's transaction; no discovery, parsing or remote IO. */
|
|
38
|
+
export declare function captureTaskHandoff(taskId: string, conversationId: string, interpretation: string, references?: TurnContextRef[]): void;
|
|
39
|
+
export declare function getTaskHandoff(taskId: string): TaskHandoff | undefined;
|
|
40
|
+
export declare function assertTaskHandoffAccess(handoff: TaskHandoff): void;
|
|
41
|
+
/** Selected result pointers delegate only the pinned source, never the owner's result directory. */
|
|
42
|
+
export declare function readTaskHandoffSource(taskId: string, sourceIndex: number, input: PersonalResultInput, config?: Config): Promise<Record<string, unknown>>;
|
|
43
|
+
/** Resolve the main Agent's selected history pointers only after the foreground commit. */
|
|
44
|
+
export declare function resolveTaskHandoffReferences(taskId: string, config?: Config): Promise<TaskHandoff | undefined>;
|
|
45
|
+
/** Copy only the selected pinned input into this executor's workspace, without granting access to the owner's root. */
|
|
46
|
+
export declare function materializeTaskHandoffFile(taskId: string, sourceIndex: number, workspace: string, config: Config): Promise<{
|
|
47
|
+
materialized: boolean;
|
|
48
|
+
sourceId: string;
|
|
49
|
+
version: string;
|
|
50
|
+
readOnlyPath: string;
|
|
51
|
+
executionInputRoot: string;
|
|
52
|
+
sha256: string;
|
|
53
|
+
bytes: number;
|
|
54
|
+
scope: string;
|
|
55
|
+
}>;
|
|
56
|
+
export declare function assertTaskHandoffExecutorAccess(taskId: string, agentId: string): void;
|