@xopcai/xopc 0.0.393 → 0.0.394
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/telegram/src/plugin.js +1 -1
- package/dist/extensions/telegram/xopc.extension.json +1 -1
- package/dist/gateway/static/root/assets/{agent-avatar-dicebear-1AF2KGju.js → agent-avatar-dicebear-CIpp0ZG6.js} +1 -1
- package/dist/gateway/static/root/assets/agent-defaults-settings-panel-DzkKx0Dv.js +1 -0
- package/dist/gateway/static/root/assets/{agent-plugin-dialog-cjJXJj_3.js → agent-plugin-dialog-dWqozfQm.js} +1 -1
- package/dist/gateway/static/root/assets/agents-CXG8SYr5.js +77 -0
- package/dist/gateway/static/root/assets/{app-management-settings-panel-B_MFhXXU.js → app-management-settings-panel-SmT1HDDg.js} +1 -1
- package/dist/gateway/static/root/assets/{appearance-settings-TYGidVnd.js → appearance-settings-Da9jf0ZC.js} +1 -1
- package/dist/gateway/static/root/assets/apps-page-DYaxWrTI.js +1 -0
- package/dist/gateway/static/root/assets/{archive-plugin-BrFfEp0u.js → archive-plugin-D6bFXdsA.js} +1 -1
- package/dist/gateway/static/root/assets/{automations-page-B7OofUPF.js → automations-page-CM3wI2Nr.js} +1 -1
- package/dist/gateway/static/root/assets/automations-workspace-BSMdKgxD.js +6 -0
- package/dist/gateway/static/root/assets/{binary-plugins-BfAWnYG8.js → binary-plugins-CYKGdQnF.js} +1 -1
- package/dist/gateway/static/root/assets/{block-editor-_Y-QwZ-3.js → block-editor-Fx38xFF4.js} +40 -40
- package/dist/gateway/static/root/assets/{browser-automation-inputs-DH9QHI9m.js → browser-automation-inputs-CQMc-Gol.js} +1 -1
- package/dist/gateway/static/root/assets/browser-automations-page-C4VhFvyu.js +3 -0
- package/dist/gateway/static/root/assets/browser-settings-page-8WZOkfL7.js +3 -0
- package/dist/gateway/static/root/assets/capabilities-page-dreSJEes.js +2 -0
- package/dist/gateway/static/root/assets/capabilities-settings-panel-9DviVNpG.js +8 -0
- package/dist/gateway/static/root/assets/{capability-header-actions-CFVx3iaZ.js → capability-header-actions-AbVbg7kZ.js} +1 -1
- package/dist/gateway/static/root/assets/channels-DqGCiVmr.js +1 -0
- package/dist/gateway/static/root/assets/{chat-terminal-dock-D3GuiG3N.js → chat-terminal-dock-djkqphez.js} +16 -16
- package/dist/gateway/static/root/assets/{computer-settings-page-CIbHDlp8.js → computer-settings-page-DE9zl7bK.js} +1 -1
- package/dist/gateway/static/root/assets/{connector-service-page-CDyCHkpK.js → connector-service-page--gB9vL3C.js} +1 -1
- package/dist/gateway/static/root/assets/connectors-page-Bcr2NNoX.js +1 -0
- package/dist/gateway/static/root/assets/{date-picker-C424c_g9.js → date-picker-D9q-5a8a.js} +1 -1
- package/dist/gateway/static/root/assets/{dependency-picker-BVJh9sYc.js → dependency-picker-Ci0dApIr.js} +1 -1
- package/dist/gateway/static/root/assets/{desktop-pet-Q52A8vjp.js → desktop-pet-CjaVVJDQ.js} +1 -1
- package/dist/gateway/static/root/assets/{desktop-pet-settings-CZr1CXxu.js → desktop-pet-settings-C7TFazyr.js} +1 -1
- package/dist/gateway/static/root/assets/device-pairing-wizard-B6S-RpNJ.js +1 -0
- package/dist/gateway/static/root/assets/{directory-picker-path-field-C6cUgrvg.js → directory-picker-path-field-BpymM_E_.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-debug-page-DyyfC4gA.js → extension-debug-page-CABAv66K.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-page-Dho9o3ZZ.js → extension-page-B3dACpKA.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-settings-page-CdnIGyCH.js → extension-settings-page-B3bwBvgp.js} +1 -1
- package/dist/gateway/static/root/assets/gateway-settings-CzA1bTXZ.js +1 -0
- package/dist/gateway/static/root/assets/{highlighted-body-KQOG7T2V-BNpj_mIM.js → highlighted-body-KQOG7T2V-53FJXO9w.js} +1 -1
- package/dist/gateway/static/root/assets/home-page-KRPp-I4O.js +2 -0
- package/dist/gateway/static/root/assets/{image-generation-api-DwkO2y46.js → image-generation-api-DWRmAkoe.js} +1 -1
- package/dist/gateway/static/root/assets/{imports-page-BrYvomnU.js → imports-page-B0Y8iy6G.js} +1 -1
- package/dist/gateway/static/root/assets/index-BvAvfZ5R.js +260 -0
- package/dist/gateway/static/root/assets/index-CMRCop32.css +1 -0
- package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-BveDYfYk.js → keyboard-shortcuts-settings-CjkACa5H.js} +1 -1
- package/dist/gateway/static/root/assets/{local-app-workbench-page-CcIi1BhT.js → local-app-workbench-page-DROP52YA.js} +1 -1
- package/dist/gateway/static/root/assets/{local-apps-page-B1a69mlV.js → local-apps-page-BELUF7Pg.js} +1 -1
- package/dist/gateway/static/root/assets/logs-page-DBm3g8Mu.js +2 -0
- package/dist/gateway/static/root/assets/management-settings-CcsW4Z-r.js +1 -0
- package/dist/gateway/static/root/assets/{media-plugins-CR1fp6IL.js → media-plugins-UU3qSAhq.js} +1 -1
- package/dist/gateway/static/root/assets/mermaid-MCJ5UELQ-CG664NRI.js +1 -0
- package/dist/gateway/static/root/assets/note-detail-panel-BS9XnQ8a.js +5 -0
- package/dist/gateway/static/root/assets/notes-page-Cfy_WnU-.js +8 -0
- package/dist/gateway/static/root/assets/{page-context-capture-button-Cn_WK68Y.js → page-context-capture-button-BD7T7uqR.js} +1 -1
- package/dist/gateway/static/root/assets/personal-page-DZEh3dXq.js +1 -0
- package/dist/gateway/static/root/assets/{preview-open-alternatives-3NbiWGRG.js → preview-open-alternatives--3aGeYJ5.js} +1 -1
- package/dist/gateway/static/root/assets/{product-open-page-KKE5-V8k.js → product-open-page-B0ZxsnFO.js} +1 -1
- package/dist/gateway/static/root/assets/{product-preview-content-BM0oqNxi.js → product-preview-content-CheSHKJq.js} +1 -1
- package/dist/gateway/static/root/assets/project-detail-page-Bm7bVHVo.js +1 -0
- package/dist/gateway/static/root/assets/projects-page-DPA6QL_Z.js +1 -0
- package/dist/gateway/static/root/assets/remote-access-hub-Pxf4EiKh.js +1 -0
- package/dist/gateway/static/root/assets/{runtime-tools-settings-panel-W0X_Fy7b.js → runtime-tools-settings-panel-2BnqCeNt.js} +1 -1
- package/dist/gateway/static/root/assets/{schema-form-DNM2Zdyr.js → schema-form-KmnpEBtP.js} +1 -1
- package/dist/gateway/static/root/assets/sessions-page-d0anT7iK.js +1 -0
- package/dist/gateway/static/root/assets/settings-advanced-gate-DfDaPyh5.js +1 -0
- package/dist/gateway/static/root/assets/{settings-form-section-DCSHPFAN.js → settings-form-section-Db5XOKMH.js} +1 -1
- package/dist/gateway/static/root/assets/{settings-page-B18UbbaJ.js → settings-page-aRM6ax6B.js} +1 -1
- package/dist/gateway/static/root/assets/setup-status-panel-DCNAcalA.js +1 -0
- package/dist/gateway/static/root/assets/{share-preview-page-BLnS3hoH.js → share-preview-page-DR3Esqa_.js} +1 -1
- package/dist/gateway/static/root/assets/shares-settings-CvEwnQch.js +1 -0
- package/dist/gateway/static/root/assets/{skill-api-CcYGkRPL.js → skill-api-BJBU8YgD.js} +1 -1
- package/dist/gateway/static/root/assets/{skill-reload-api-PnUZjoPK.js → skill-reload-api-DEQ1bdN9.js} +1 -1
- package/dist/gateway/static/root/assets/skills-page-BXNFSIIy.js +2 -0
- package/dist/gateway/static/root/assets/sliding-indicator-hwz0sx3h.js +1 -0
- package/dist/gateway/static/root/assets/{style-BQqU-1pP.js → style-Df_wL13k.js} +1 -1
- package/dist/gateway/static/root/assets/{system-settings-panel-C974myUM.js → system-settings-panel-DWnyafB7.js} +1 -1
- package/dist/gateway/static/root/assets/task-detail-page-DyHDW8A5.js +2 -0
- package/dist/gateway/static/root/assets/tracing-settings-page-vvREqbQ3.js +1 -0
- package/dist/gateway/static/root/assets/{tunnel-api-DWyI3uA3.js → tunnel-api-BEzsymVO.js} +1 -1
- package/dist/gateway/static/root/assets/usage-page-ByYOqsHo.js +1 -0
- package/dist/gateway/static/root/assets/{use-autosave-CY0YuljR.js → use-autosave-Cp4kZ3E-.js} +1 -1
- package/dist/gateway/static/root/assets/user-model-page-D0qeCXwD.js +2 -0
- package/dist/gateway/static/root/assets/{voice-api-key-field-BNG4ixJE.js → voice-api-key-field-DH3OdR-w.js} +1 -1
- package/dist/gateway/static/root/assets/{work-discovery-overlay-CohIoAre.js → work-discovery-overlay-CICdfBBR.js} +1 -1
- package/dist/gateway/static/root/assets/workflow-run-setup-panel-VIJQCUY5.js +3 -0
- package/dist/gateway/static/root/assets/workflows-page-DDYp2Jbo.js +6 -0
- package/dist/gateway/static/root/assets/{xopc-cloud-account-card-C_COnY_B.js → xopc-cloud-account-card-BTMfgVTk.js} +1 -1
- package/dist/gateway/static/root/index.html +3 -2
- package/dist/package.js +1 -1
- package/dist/src/agent/agent-manager.js +10 -10
- package/dist/src/agent/background-review/run-background-review.js +5 -5
- package/dist/src/agent/coding/run-verification.js +4 -4
- package/dist/src/agent/context/execution-context.js +3 -3
- package/dist/src/agent/context/project-context.js +3 -3
- package/dist/src/agent/embedded/agent-profile-context.js +10 -4
- package/dist/src/agent/embedded/execution-tool-policy.js +1 -1
- package/dist/src/agent/embedded/run-for-session.js +2 -2
- package/dist/src/agent/embedded/run-turn.js +1 -1
- package/dist/src/agent/external-tools/cliProvider.js +1 -1
- package/dist/src/agent/external-tools/composio-provider.js +1 -1
- package/dist/src/agent/inbound/attachment-pipeline.js +3 -3
- package/dist/src/agent/prompt/response-language.js +1 -1
- package/dist/src/agent/prompt/service-prompt-builder.js +1 -1
- 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/process-direct-streaming.js +1 -1
- package/dist/src/agent/service.js +9 -9
- package/dist/src/agent/session/session-config-service.js +2 -2
- 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-pull.js +2 -2
- 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/tasks/task-judge-service.js +6 -6
- package/dist/src/agent/tools/exec-command.d.ts +2 -0
- package/dist/src/agent/tools/exec-command.js +45 -1
- package/dist/src/agent/tools/factory.js +4 -4
- package/dist/src/agent/tools/personal-attention-tool.js +1 -1
- package/dist/src/agent/tools/personal-request-result-tool.js +1 -1
- package/dist/src/agent/tools/personal-request-tool.js +2 -2
- package/dist/src/agent/tools/personal-task-tool.js +6 -6
- package/dist/src/agent/tools/publish-artifacts.js +1 -1
- package/dist/src/agent/tools/review-workspace.js +1 -1
- package/dist/src/agent/tools/skills-tools.js +1 -1
- package/dist/src/agent/tools/task-collaboration-tool.js +3 -3
- package/dist/src/agent/tools/write.js +1 -1
- package/dist/src/agent/tools/xopc-use-tool.js +4 -4
- package/dist/src/agent-matching/delegation-service.js +1 -1
- package/dist/src/ai-assist/text-assist.js +1 -1
- package/dist/src/auth/oauth/xopc-cloud.js +2 -2
- package/dist/src/auth/sync-provider-auth.js +1 -1
- package/dist/src/automations/domain/index.js +1 -1
- package/dist/src/automations/draft/automation-draft-service.js +1 -1
- package/dist/src/automations/index.js +2 -2
- package/dist/src/capabilities/store-connector.js +2 -2
- package/dist/src/channels/index.js +1 -1
- package/dist/src/channels/manager.js +1 -1
- package/dist/src/chat-commands/builtins/config.js +1 -1
- package/dist/src/chat-commands/context.js +1 -1
- package/dist/src/cli/commands/channels.js +1 -1
- package/dist/src/cli/commands/connectors.js +1 -1
- package/dist/src/cli/commands/extension-marketplace.js +2 -2
- package/dist/src/cli/commands/models.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/skills.js +1 -1
- package/dist/src/computer/flows.js +1 -1
- package/dist/src/config/agent-model-intents.js +1 -1
- package/dist/src/config/index.js +1 -1
- package/dist/src/config/loader.js +1 -1
- package/dist/src/config/models-json.d.ts +16 -16
- package/dist/src/config/models-json.js +1 -1
- package/dist/src/config/schema.js +6 -6
- 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 +1 -1
- package/dist/src/connectors/connected-source-understanding.js +2 -2
- package/dist/src/connectors/health.js +1 -1
- package/dist/src/extensions/agent-plugins/auth.js +1 -1
- package/dist/src/extensions/agent-plugins/credentials.js +1 -1
- package/dist/src/extensions/agent-plugins/source-http-fetch.js +1 -1
- package/dist/src/extensions/api.js +1 -1
- package/dist/src/extensions/install.js +1 -1
- package/dist/src/extensions/sdk/index.js +1 -1
- package/dist/src/extensions/update.js +1 -1
- package/dist/src/gateway/file-path-classifier.js +1 -1
- package/dist/src/gateway/hono/lib/config-payload.js +1 -1
- package/dist/src/gateway/hono/routes/commands-skills.js +3 -3
- package/dist/src/gateway/hono/routes/config-patch/misc.js +4 -4
- package/dist/src/gateway/hono/routes/context-sources.js +2 -2
- package/dist/src/gateway/hono/routes/memory-learning.js +2 -2
- package/dist/src/gateway/hono/routes/models.js +2 -2
- package/dist/src/gateway/hono/routes/projects.js +3 -3
- package/dist/src/gateway/hono/routes/runtime-tools.js +1 -1
- package/dist/src/gateway/hono/routes/session-input-handler.js +1 -1
- package/dist/src/gateway/hono/routes/sessions.js +1 -1
- package/dist/src/gateway/hono/routes/tasks.js +1 -1
- package/dist/src/gateway/hono/routes/user-model-refresh.js +1 -1
- package/dist/src/gateway/hono/routes/user-model.js +6 -6
- package/dist/src/gateway/hono/routes/voice.js +1 -1
- package/dist/src/gateway/media-access.js +1 -1
- package/dist/src/gateway/service/agent-runner.js +3 -3
- package/dist/src/gateway/service/marketplace-service.js +2 -2
- package/dist/src/gateway/service/run-gateway-agent.js +1 -1
- package/dist/src/gateway/service/session-command-service.js +2 -2
- package/dist/src/gateway/service.js +31 -31
- package/dist/src/gateway/session-context-summary.js +4 -4
- package/dist/src/home-intelligence/generator.js +2 -2
- package/dist/src/home-intelligence/host.js +2 -2
- package/dist/src/imports/compatibility.js +1 -1
- package/dist/src/imports/inventory.js +3 -3
- package/dist/src/imports/productImport.js +2 -2
- package/dist/src/imports/runtime.js +1 -1
- package/dist/src/knowledge/connected-knowledge-pipeline.js +1 -1
- package/dist/src/knowledge-memory/repository.js +1 -1
- package/dist/src/local-apps/service.js +2 -2
- package/dist/src/memory-learning/source-learning.js +2 -2
- package/dist/src/notes/index.js +1 -1
- package/dist/src/notes/service.js +3 -3
- package/dist/src/personal-agent/capability-service.js +2 -2
- package/dist/src/personal-agent/proactivity/routes.js +1 -1
- package/dist/src/personal-agent/proactivity/service.js +5 -5
- package/dist/src/personal-agent/prompt-context.js +7 -7
- package/dist/src/personal-agent/reply-composer.js +7 -7
- package/dist/src/personal-agent/request-delivery.js +2 -2
- package/dist/src/personal-agent/request-service.js +6 -6
- package/dist/src/personal-agent/result-reader.js +1 -1
- package/dist/src/personal-agent/service.js +1 -1
- package/dist/src/personal-agent/task-cancel.js +1 -1
- package/dist/src/platform/index.js +1 -1
- 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/cloud-thinking.d.ts +3 -0
- package/dist/src/providers/cloud-thinking.js +13 -0
- package/dist/src/providers/model-registry.js +4 -1
- package/dist/src/providers/register-runtime-providers.js +3 -0
- package/dist/src/routing/agent-session-key.js +1 -1
- package/dist/src/session/index.js +1 -1
- 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 +2 -2
- package/dist/src/share/hosted-session-share.js +2 -2
- package/dist/src/share/session-share-service.js +1 -1
- package/dist/src/tasks/capabilities/read.js +2 -2
- package/dist/src/tasks/capabilities/write.js +1 -1
- package/dist/src/tasks/home-query-service.js +1 -1
- package/dist/src/tasks/index.js +3 -3
- package/dist/src/tasks/task-allocation-service.js +5 -5
- 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 +1 -1
- 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 +5 -5
- package/dist/src/tui/tui-commands.js +2 -2
- package/dist/src/tui/tui-skills-autocomplete.js +1 -1
- package/dist/src/tui/tui-startup-resources.js +3 -3
- package/dist/src/tui/tui.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/voice/realtime/memory-context.js +5 -5
- package/dist/src/voice/realtime/runtime.js +1 -1
- package/dist/src/work-discovery/incremental-repository.js +1 -1
- package/dist/src/work-discovery/service.js +7 -7
- package/dist/src/workflows/context/workflow-context.js +1 -1
- package/dist/src/workflows/service/workflow-run-service.js +5 -5
- package/package.json +3 -3
- package/dist/gateway/static/root/assets/agent-defaults-settings-panel-CPJr7NRR.js +0 -1
- package/dist/gateway/static/root/assets/agents-DW3TlnIg.js +0 -77
- package/dist/gateway/static/root/assets/apps-page-DOkyvOF0.js +0 -1
- package/dist/gateway/static/root/assets/automations-workspace-DIod-bfm.js +0 -6
- package/dist/gateway/static/root/assets/browser-automations-page-B_SnD9B0.js +0 -3
- package/dist/gateway/static/root/assets/browser-settings-page-BPlqYpMM.js +0 -3
- package/dist/gateway/static/root/assets/capabilities-page-BtzZvMIK.js +0 -2
- package/dist/gateway/static/root/assets/capabilities-settings-panel-WzoG3oBb.js +0 -8
- package/dist/gateway/static/root/assets/channels-BXA55GY2.js +0 -1
- package/dist/gateway/static/root/assets/connectors-page-DA2b6cJu.js +0 -1
- package/dist/gateway/static/root/assets/device-pairing-wizard-D_WWTsze.js +0 -1
- package/dist/gateway/static/root/assets/gateway-settings-D0KSQRNZ.js +0 -1
- package/dist/gateway/static/root/assets/home-page-CH_A0W29.js +0 -2
- package/dist/gateway/static/root/assets/index-CKdOZoVu.js +0 -260
- package/dist/gateway/static/root/assets/index-Rxjt-jc3.css +0 -1
- package/dist/gateway/static/root/assets/logs-page-Us1jv3C4.js +0 -2
- package/dist/gateway/static/root/assets/management-settings-C9RAM7-s.js +0 -1
- package/dist/gateway/static/root/assets/mermaid-MCJ5UELQ-DQdcaMiu.js +0 -1
- package/dist/gateway/static/root/assets/note-detail-panel-Q4yRx9iZ.js +0 -5
- package/dist/gateway/static/root/assets/notes-page-C9qu16IN.js +0 -8
- package/dist/gateway/static/root/assets/personal-page-DrP6hEcg.js +0 -1
- package/dist/gateway/static/root/assets/project-detail-page-CPZrwf8n.js +0 -1
- package/dist/gateway/static/root/assets/projects-page-Besfx_07.js +0 -1
- package/dist/gateway/static/root/assets/remote-access-hub-CTDghL5L.js +0 -1
- package/dist/gateway/static/root/assets/sessions-page-Dxtablvd.js +0 -1
- package/dist/gateway/static/root/assets/settings-advanced-gate-C7zklouD.js +0 -1
- package/dist/gateway/static/root/assets/setup-status-panel-JoSfluza.js +0 -1
- package/dist/gateway/static/root/assets/shares-settings-DcIuPJK3.js +0 -1
- package/dist/gateway/static/root/assets/skills-page-D3JAw62U.js +0 -2
- package/dist/gateway/static/root/assets/task-detail-page-CiljFekC.js +0 -2
- package/dist/gateway/static/root/assets/tracing-settings-page-DEE75MUn.js +0 -1
- package/dist/gateway/static/root/assets/usage-page-DJYvbxk7.js +0 -1
- package/dist/gateway/static/root/assets/user-model-page-eHZJD6Fw.js +0 -2
- package/dist/gateway/static/root/assets/workflow-run-setup-panel-BXI8eyYh.js +0 -3
- package/dist/gateway/static/root/assets/workflows-page-CVti0u-l.js +0 -6
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { TaskRepository, init_task_repository } from "../../tasks/task-repository.js";
|
|
2
2
|
import { getSessionMetadata } from "../../storage/sqlite/session-read-repository.js";
|
|
3
3
|
import { init_sqlite } from "../../storage/sqlite/index.js";
|
|
4
|
+
import { TaskReadModelProjector } from "../../tasks/task-read-model-projector.js";
|
|
5
|
+
import { ProjectStore } from "../../projects/project-store.js";
|
|
6
|
+
import { getProjectForSession, getProjectWorkspacePathForSession } from "../../projects/workspace.js";
|
|
4
7
|
import { canUseKnowledge } from "../../knowledge-memory/usage-policy.js";
|
|
5
8
|
import { listKnowledgeItems, searchKnowledgeItems } from "../../knowledge-memory/repository.js";
|
|
6
9
|
import "../../knowledge-memory/index.js";
|
|
7
|
-
import { ProjectStore } from "../../projects/project-store.js";
|
|
8
|
-
import { getProjectForSession, getProjectWorkspacePathForSession } from "../../projects/workspace.js";
|
|
9
|
-
import { TaskReadModelProjector } from "../../tasks/task-read-model-projector.js";
|
|
10
10
|
import { sanitizeForPromptLiteral } from "../prompt/sanitize-for-prompt.js";
|
|
11
11
|
import { LocalAppStore } from "../../local-apps/store.js";
|
|
12
12
|
//#region src/agent/context/project-context.ts
|
|
@@ -53,18 +53,25 @@ function createAgentProfileContextExtension(conversationId) {
|
|
|
53
53
|
previous: data?.configuration?.[key] ?? null,
|
|
54
54
|
current: configuration[key] ?? null
|
|
55
55
|
}]));
|
|
56
|
+
if (!changed) return;
|
|
57
|
+
const projected = Object.fromEntries(Object.entries(configuration).filter(([key]) => [
|
|
58
|
+
"agentId",
|
|
59
|
+
"name",
|
|
60
|
+
"role"
|
|
61
|
+
].includes(key) || changedFields.includes(key)));
|
|
56
62
|
return {
|
|
57
63
|
role: "custom",
|
|
58
64
|
timestamp: Date.now(),
|
|
59
65
|
customType: AGENT_PROFILE_UPDATE_EVENT,
|
|
60
66
|
content: JSON.stringify({
|
|
61
|
-
event:
|
|
67
|
+
event: "agent_configuration_updated",
|
|
62
68
|
source: "xopc-runtime",
|
|
63
69
|
...changed ? {
|
|
64
70
|
changedFields: changedFields.length ? changedFields : ["instructions"],
|
|
65
71
|
updates
|
|
66
72
|
} : {},
|
|
67
|
-
|
|
73
|
+
scope: "agent_defaults",
|
|
74
|
+
current: projected
|
|
68
75
|
}),
|
|
69
76
|
display: false
|
|
70
77
|
};
|
|
@@ -75,10 +82,9 @@ function createAgentProfileContextExtension(conversationId) {
|
|
|
75
82
|
});
|
|
76
83
|
pi.on("context_with_system", (event, context) => {
|
|
77
84
|
snapshot ??= snapshotForTurn(context);
|
|
78
|
-
if (!snapshot) return;
|
|
79
85
|
const messages = event.messages.filter((message) => message.role !== "system" && !(message.role === "custom" && message.customType === "xopc.agent-profile-update"));
|
|
80
86
|
const inputIndex = messages.findLastIndex((message) => message.role === "user" || message.role === "custom");
|
|
81
|
-
messages.splice(inputIndex < 0 ? messages.length : inputIndex, 0, snapshot);
|
|
87
|
+
if (snapshot) messages.splice(inputIndex < 0 ? messages.length : inputIndex, 0, snapshot);
|
|
82
88
|
return { messages: [{
|
|
83
89
|
role: "system",
|
|
84
90
|
content: context.getSystemPrompt(),
|
|
@@ -3,8 +3,8 @@ import { init_request_repository, personalRequestForExecution } from "../../pers
|
|
|
3
3
|
import { getSessionMetadata } from "../../storage/sqlite/session-read-repository.js";
|
|
4
4
|
import { init_session_repository } from "../../storage/sqlite/session-repository.js";
|
|
5
5
|
import { isPersonalConversation } from "../../personal-agent/repository.js";
|
|
6
|
-
import { PERSONAL_MAIN_TOOL_IDS } from "../../personal-agent/policy.js";
|
|
7
6
|
import { TaskConversationRepository } from "../../tasks/task-conversation-repository.js";
|
|
7
|
+
import { PERSONAL_MAIN_TOOL_IDS } from "../../personal-agent/policy.js";
|
|
8
8
|
//#region src/agent/embedded/execution-tool-policy.ts
|
|
9
9
|
init_request_repository();
|
|
10
10
|
init_connection();
|
|
@@ -2,13 +2,13 @@ import { createLogger } from "../../utils/logger/index.js";
|
|
|
2
2
|
import { init_logger } from "../../utils/logger.js";
|
|
3
3
|
import { parseTurnOutcome } from "../../../packages/gateway-contract/src/turn-outcome.js";
|
|
4
4
|
import { init_src } from "../../../packages/gateway-contract/src/index.js";
|
|
5
|
-
import {
|
|
5
|
+
import { isPersonalConversation } from "../../personal-agent/repository.js";
|
|
6
6
|
import { resolveEffectiveAgentProfileForSession } from "../../config/agent-profile.js";
|
|
7
|
+
import { assertProviderUsage, getModelUsageOrigin, init_model_usage, isProviderUsageScopeError } from "../../providers/model-usage.js";
|
|
7
8
|
import { init_providers, resolveModel } from "../../providers/index.js";
|
|
8
9
|
import { appendDynamicPromptSection } from "../prompt/cache-boundary.js";
|
|
9
10
|
import { setTraceIdentity, startObservation, traceOperation, traceRun } from "../../observability/runtime.js";
|
|
10
11
|
import { resolveAgentTurnTimeoutMs } from "../orchestration/run-agent-turn-with-timeout.js";
|
|
11
|
-
import { isPersonalConversation } from "../../personal-agent/repository.js";
|
|
12
12
|
import { filterExecutionTools, resolveExecutionToolPolicy } from "./execution-tool-policy.js";
|
|
13
13
|
import { runWithEmbeddedExecutionSession } from "./execution-context.js";
|
|
14
14
|
import { resolvePromptCachePolicy } from "../../providers/prompt-cache-plan.js";
|
|
@@ -6,8 +6,8 @@ import { getConnectionResumeInput, init_connection_wait_repository, isConnection
|
|
|
6
6
|
import { getSessionMetadata } from "../../storage/sqlite/session-read-repository.js";
|
|
7
7
|
import { init_session_repository } from "../../storage/sqlite/session-repository.js";
|
|
8
8
|
import { init_sqlite } from "../../storage/sqlite/index.js";
|
|
9
|
-
import { ProviderUsageScopeError, init_model_usage } from "../../providers/model-usage.js";
|
|
10
9
|
import { resolveEffectiveAgentConfigForSession } from "../../config/agent-profile.js";
|
|
10
|
+
import { ProviderUsageScopeError, init_model_usage } from "../../providers/model-usage.js";
|
|
11
11
|
import { setTraceIdentity, traceOperation, traceRun, traceTools } from "../../observability/runtime.js";
|
|
12
12
|
import { continuesAfterTool, trackAiUsageStream } from "../../usage/recorder.js";
|
|
13
13
|
import { cloudCreditBudgetStopMessage, isCloudCreditBudgetExhausted, reportCloudCreditError, withCloudCreditBudget } from "../../providers/xopc-cloud-credit-budget.js";
|
|
@@ -8,8 +8,8 @@ import { init_sqlite } from "../../storage/sqlite/index.js";
|
|
|
8
8
|
import { CapabilityError } from "../../capabilities/runtime/errors.js";
|
|
9
9
|
import { ExternalEffectNotAppliedError, executeExternalOperation } from "../../capabilities/runtime/external-operations.js";
|
|
10
10
|
import "../../capabilities/runtime/dispatcher.js";
|
|
11
|
-
import { connectorArgumentsHash, connectorArgumentsPreview } from "../../connectors/approval.js";
|
|
12
11
|
import { connectorPrincipalForSession } from "../../connectors/principal.js";
|
|
12
|
+
import { connectorArgumentsHash, connectorArgumentsPreview } from "../../connectors/approval.js";
|
|
13
13
|
import { selectConnectorAccount } from "../../connectors/account-selection.js";
|
|
14
14
|
import { cliContextPath } from "../../connectors/cli/process.js";
|
|
15
15
|
import { validateActionInput } from "../../connectors/cli/protocol.js";
|
|
@@ -7,9 +7,9 @@ import { bindObjectiveAccount, connectionBinding, connectionBindings, connectorO
|
|
|
7
7
|
import { init_sqlite } from "../../storage/sqlite/index.js";
|
|
8
8
|
import { CapabilityError } from "../../capabilities/runtime/errors.js";
|
|
9
9
|
import { ExternalEffectNotAppliedError, executeExternalOperation } from "../../capabilities/runtime/external-operations.js";
|
|
10
|
-
import { connectorArgumentsHash, connectorArgumentsPreview } from "../../connectors/approval.js";
|
|
11
10
|
import { canAccessConnectorAccount, currentAccountConnections } from "../../connectors/account-access.js";
|
|
12
11
|
import { connectorPrincipalForSession } from "../../connectors/principal.js";
|
|
12
|
+
import { connectorArgumentsHash, connectorArgumentsPreview } from "../../connectors/approval.js";
|
|
13
13
|
import { connectorIdentitySummary } from "../../connectors/connector-identity.js";
|
|
14
14
|
import { evaluateConnectorExecutionPolicy } from "../../connectors/policy.js";
|
|
15
15
|
import { ComposioSessionsAdapter } from "../../connectors/composio-sessions.js";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { stripRuntimeUserMessageEnvelope } from "../../../packages/gateway-contract/src/user-message-display.js";
|
|
2
2
|
import { init_src } from "../../../packages/gateway-contract/src/index.js";
|
|
3
|
-
import { extractProfileAgentId } from "../../config/agent-profile.js";
|
|
4
|
-
import { readAgentMessageContent } from "../memory/agent-message-access.js";
|
|
5
|
-
import { isPersonalConversation } from "../../personal-agent/repository.js";
|
|
6
3
|
import { mimeTypeFromMediaPath } from "../../media/store.js";
|
|
7
4
|
import { readMediaReference } from "../../media/media-reference.js";
|
|
5
|
+
import { isPersonalConversation } from "../../personal-agent/repository.js";
|
|
6
|
+
import { extractProfileAgentId } from "../../config/agent-profile.js";
|
|
7
|
+
import { readAgentMessageContent } from "../memory/agent-message-access.js";
|
|
8
8
|
import { MODEL_IMAGE_MAX_BYTES, MODEL_IMAGE_SOURCE_MAX_BYTES, prepareImageForModel } from "../image/prepare-image-for-model.js";
|
|
9
9
|
import { isImageInboundAttachment } from "../../channels/attachments/attachment-classifiers.js";
|
|
10
10
|
import "../../channels/attachments/inbound-persist.js";
|
|
@@ -2,9 +2,9 @@ import { isXopcDatabaseOpen } from "../../storage/sqlite/connection.js";
|
|
|
2
2
|
import { TaskRepository, init_task_repository } from "../../tasks/task-repository.js";
|
|
3
3
|
import { getSessionConfig } from "../../storage/sqlite/config-repository.js";
|
|
4
4
|
import { init_sqlite } from "../../storage/sqlite/index.js";
|
|
5
|
-
import { init_response_language, resolveResponseLanguage } from "../../i18n/response-language.js";
|
|
6
5
|
import { resolveTaskLocale } from "../../tasks/task-language.js";
|
|
7
6
|
import { TaskConversationRepository } from "../../tasks/task-conversation-repository.js";
|
|
7
|
+
import { init_response_language, resolveResponseLanguage } from "../../i18n/response-language.js";
|
|
8
8
|
//#region src/agent/prompt/response-language.ts
|
|
9
9
|
init_response_language();
|
|
10
10
|
init_sqlite();
|
|
@@ -6,9 +6,9 @@ import { getInteractionState } from "../../storage/sqlite/interaction-state-repo
|
|
|
6
6
|
import { DEFAULT_USER_TRUST_LEVEL, init_trust_policy } from "../../user-context/trust-policy.js";
|
|
7
7
|
import { getUserTrustPolicy } from "../../storage/sqlite/user-trust-repository.js";
|
|
8
8
|
import { init_sqlite } from "../../storage/sqlite/index.js";
|
|
9
|
-
import { appendStablePromptSection } from "./cache-boundary.js";
|
|
10
9
|
import { getUserTimezone } from "../../user-model/repository.js";
|
|
11
10
|
import "../../user-model/index.js";
|
|
11
|
+
import { appendStablePromptSection } from "./cache-boundary.js";
|
|
12
12
|
import { resolveSystemPromptBuildParams } from "./system-prompt-params.js";
|
|
13
13
|
import { buildSystemPrompt } from "./system-prompt.js";
|
|
14
14
|
import { resolveResponseLanguageForSession } from "./response-language.js";
|
|
@@ -2,8 +2,8 @@ import { PACKAGE_VERSION, init_package_version } from "../../package-version.js"
|
|
|
2
2
|
import { getConversationRouting } from "../../storage/sqlite/conversation-repository.js";
|
|
3
3
|
import { isCronConversationId, isSubagentConversationId } from "../../routing/agent-session-key.js";
|
|
4
4
|
import { init_session_key } from "../../routing/session-key.js";
|
|
5
|
-
import { normalizePromptSection } from "./cache-boundary.js";
|
|
6
5
|
import { isPersonalConversation } from "../../personal-agent/repository.js";
|
|
6
|
+
import { normalizePromptSection } from "./cache-boundary.js";
|
|
7
7
|
import { listChannelPlugins } from "../../channels/plugins/registry.js";
|
|
8
8
|
//#region src/agent/prompt/system-prompt-params.ts
|
|
9
9
|
init_package_version();
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createLogger } from "../../utils/logger/index.js";
|
|
2
2
|
import { init_logger } from "../../utils/logger.js";
|
|
3
|
-
import { validatePath, validateWritePath } from "./path-policy.js";
|
|
4
3
|
import { prepareSafeToolEnv } from "./sanitize-env-vars.js";
|
|
4
|
+
import { validatePath, validateWritePath } from "./path-policy.js";
|
|
5
5
|
import { auditCommand, validateCommand } from "./command-validator.js";
|
|
6
6
|
import { DEFAULT_SANDBOX_CONFIG } from "./types.js";
|
|
7
7
|
import { resolve } from "node:path";
|
|
@@ -5,13 +5,13 @@ import { getClarificationResumeInput, init_clarification_wait_repository } from
|
|
|
5
5
|
import { getConnectionResumeInput, init_connection_wait_repository } from "../../storage/sqlite/connection-wait-repository.js";
|
|
6
6
|
import { init_agent_scope, resolveDefaultAgentId } from "../agent-scope.js";
|
|
7
7
|
import { init_agent_session_key, resolveAgentMainConversationId } from "../../routing/agent-session-key.js";
|
|
8
|
+
import { isSessionSourceBinding, summarizeSourceContext } from "../source-context/types.js";
|
|
8
9
|
import { init_model_usage, modelUsageOriginFromTurn, withModelUsageOrigin } from "../../providers/model-usage.js";
|
|
9
10
|
import { readAgentMessageContent } from "../memory/agent-message-access.js";
|
|
10
11
|
import { abortEmbeddedRun } from "../embedded/runs.js";
|
|
11
12
|
import { clearPendingTranscriptUserMessage, setPendingTranscriptUserMessage } from "../inbound/attachment-pipeline.js";
|
|
12
13
|
import { mergeSttConfigFromAppConfig } from "../../voice/stt/config.js";
|
|
13
14
|
import "../../voice/stt/index.js";
|
|
14
|
-
import { isSessionSourceBinding, summarizeSourceContext } from "../source-context/types.js";
|
|
15
15
|
import { formatAgentRunErrorForClient } from "../client-error-format.js";
|
|
16
16
|
import { resolveConfiguredActivityDetailDefault, resolveEffectiveReasoningLevel } from "../../session/thinking-resolve.js";
|
|
17
17
|
import { initSessionTurn } from "../../session/init-session-turn.js";
|
|
@@ -3,23 +3,23 @@ import { init_logger } from "../utils/logger.js";
|
|
|
3
3
|
import { init_attachment_ref, parseNoteAttachmentTarget } from "../notes/attachment-ref.js";
|
|
4
4
|
import { init_agent_scope, resolveAgentHomeDir, resolveDefaultAgentId } from "./agent-scope.js";
|
|
5
5
|
import { extractTextContent } from "./context/workspace.js";
|
|
6
|
+
import { onSessionTranscriptUpdate } from "../session/transcript-events.js";
|
|
7
|
+
import { getUserTimezone } from "../user-model/repository.js";
|
|
6
8
|
import { init_agent_session_key, resolveAgentIdFromConversationId } from "../routing/agent-session-key.js";
|
|
9
|
+
import "../user-model/index.js";
|
|
10
|
+
import { resolveWorkspaceSkillsDir, resolveWorkspaceSkillsLockPath } from "./skills/workspace-skills-dir.js";
|
|
11
|
+
import { removeSkillsLockEntry } from "./skills/hub-lock.js";
|
|
12
|
+
import { installSkillFromZip } from "./skills/managed-store.js";
|
|
13
|
+
import { pullSkillFromSource } from "./skills/hub-pull.js";
|
|
7
14
|
import { extractProfileAgentId, resolveEffectiveAgentConfigForSession } from "../config/agent-profile.js";
|
|
15
|
+
import { effectiveWorkspacePathForSession } from "../session/session-workspace.js";
|
|
16
|
+
import { getProjectForSession } from "../projects/workspace.js";
|
|
8
17
|
import { getAgentDefaultModelRef, init_schema } from "../config/schema.js";
|
|
9
18
|
import { init_providers, resolveModel } from "../providers/index.js";
|
|
10
19
|
import { configureTracing, flushTracing } from "../observability/runtime.js";
|
|
11
|
-
import { getUserTimezone } from "../user-model/repository.js";
|
|
12
20
|
import { resolveAgentTurnTimeoutMs } from "./orchestration/run-agent-turn-with-timeout.js";
|
|
13
21
|
import { applyConfigOverrides } from "../config/runtime-overrides.js";
|
|
14
|
-
import { effectiveWorkspacePathForSession } from "../session/session-workspace.js";
|
|
15
|
-
import { getProjectForSession } from "../projects/workspace.js";
|
|
16
|
-
import "../user-model/index.js";
|
|
17
|
-
import { onSessionTranscriptUpdate } from "../session/transcript-events.js";
|
|
18
22
|
import { runWithEmbeddedExecutionSession } from "./embedded/execution-context.js";
|
|
19
|
-
import { removeSkillsLockEntry } from "./skills/hub-lock.js";
|
|
20
|
-
import { installSkillFromZip } from "./skills/managed-store.js";
|
|
21
|
-
import { resolveWorkspaceSkillsDir, resolveWorkspaceSkillsLockPath } from "./skills/workspace-skills-dir.js";
|
|
22
|
-
import { pullSkillFromSource } from "./skills/hub-pull.js";
|
|
23
23
|
import { persistInboundAttachments } from "../channels/attachments/inbound-persist.js";
|
|
24
24
|
import { buildTranscriptUserMessage, hydrateUserTurnForLlm } from "./inbound/attachment-pipeline.js";
|
|
25
25
|
import { drainEmbeddedSessionRunnerShutdowns } from "./embedded/session-runner.js";
|
|
@@ -2,11 +2,11 @@ import { createLogger } from "../../utils/logger/index.js";
|
|
|
2
2
|
import { init_logger } from "../../utils/logger.js";
|
|
3
3
|
import { chooseModelThinking } from "../../../packages/gateway-contract/src/model-selection.js";
|
|
4
4
|
import { init_src } from "../../../packages/gateway-contract/src/index.js";
|
|
5
|
-
import {
|
|
5
|
+
import { isPersonalConversation } from "../../personal-agent/repository.js";
|
|
6
6
|
import { resolveEffectiveAgentConfigForSession } from "../../config/agent-profile.js";
|
|
7
7
|
import { normalizeWorkingDirectoryInput } from "../../session/session-workspace.js";
|
|
8
8
|
import { getProjectWorkspacePathForSession } from "../../projects/workspace.js";
|
|
9
|
-
import {
|
|
9
|
+
import { ResponseLanguageSchema, init_response_language } from "../../i18n/response-language.js";
|
|
10
10
|
import { getModelThinking } from "../../providers/model-thinking.js";
|
|
11
11
|
import { normalizeReasoningLevel, normalizeThinkLevel, normalizeVerboseLevel } from "../transcript/thinking-types.js";
|
|
12
12
|
import "../../session/index.js";
|
|
@@ -2,10 +2,10 @@ import { createLogger } from "../../utils/logger/index.js";
|
|
|
2
2
|
import { init_logger } from "../../utils/logger.js";
|
|
3
3
|
import { init_workspace_defaults, resolveDefaultAgentWorkspaceDir } from "../../config/workspace-defaults.js";
|
|
4
4
|
import { resolveEffectiveAgentProfileForSession } from "../../config/agent-profile.js";
|
|
5
|
-
import { init_providers, resolveModel } from "../../providers/index.js";
|
|
6
5
|
import { getExecutionEnvironmentForSession } from "../../execution-environments/subject.js";
|
|
7
6
|
import { effectiveWorkspacePathForSession, projectWorkspacePath } from "../../session/session-workspace.js";
|
|
8
7
|
import { getProjectForSession } from "../../projects/workspace.js";
|
|
8
|
+
import { init_providers, resolveModel } from "../../providers/index.js";
|
|
9
9
|
import { resolveCompactionPolicy } from "../memory/compaction-policy.js";
|
|
10
10
|
import { resolveVerboseLevel } from "../../session/config-store.js";
|
|
11
11
|
import { resolveConfiguredActivityDetailDefault, resolveEffectiveReasoningLevel, resolveEffectiveThinkingLevel } from "../../session/thinking-resolve.js";
|
|
@@ -2,10 +2,10 @@ import { resolveStateDir } from "../../config/paths-state.js";
|
|
|
2
2
|
import { createLogger } from "../../utils/logger/index.js";
|
|
3
3
|
import { init_logger } from "../../utils/logger.js";
|
|
4
4
|
import { init_paths, resolveSkillsDir } from "../../config/paths.js";
|
|
5
|
-
import { isManagedSkillTransientDirName } from "./managed-store.js";
|
|
6
5
|
import { createSkillConfigManager } from "./config.js";
|
|
7
6
|
import { resolveWorkspaceSkillsDir } from "./workspace-skills-dir.js";
|
|
8
7
|
import { resolveAgentsSkillsDir, resolveWorkspaceAgentsSkillsDir } from "./skill-sources.js";
|
|
8
|
+
import { isManagedSkillTransientDirName } from "./managed-store.js";
|
|
9
9
|
import path from "node:path";
|
|
10
10
|
import chokidar from "chokidar";
|
|
11
11
|
//#region src/agent/skills/filesystem-watcher.ts
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { parseFrontmatter } from "../../markdown/frontmatter.js";
|
|
2
|
-
import { getSkillsLockEntry, recordSkillsHubInstall } from "./hub-lock.js";
|
|
3
|
-
import { installSkillFromZip, isIgnorableZipEntry, isValidSkillId, prepareManagedSkillTempDir, promoteManagedSkillTempDir } from "./managed-store.js";
|
|
4
2
|
import { formatScanSummary, scanSkillDirectory } from "./scanner.js";
|
|
5
3
|
import { computeSkillTreeHashSync } from "./hub-hash.js";
|
|
4
|
+
import { getSkillsLockEntry, recordSkillsHubInstall } from "./hub-lock.js";
|
|
5
|
+
import { installSkillFromZip, isIgnorableZipEntry, isValidSkillId, prepareManagedSkillTempDir, promoteManagedSkillTempDir } from "./managed-store.js";
|
|
6
6
|
import { tmpdir } from "node:os";
|
|
7
7
|
import { basename, dirname, join, normalize, resolve, sep } from "node:path";
|
|
8
8
|
import { cpSync, existsSync, mkdirSync, mkdtempSync, readFileSync, readdirSync, rmSync, statSync, writeFileSync } from "node:fs";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { downloadSkillZipBuffer, fetchMarketplacePackageDetail, listSkillCategories, listSkillPackages, resolveSkillZipDownloadUrl, resolveSkillsStoreBaseUrl, skillIdForMarketplaceInstall, verifyStoreArtifactSha256 } from "./store-api-client.js";
|
|
2
1
|
import { registerMarketplaceAdapter } from "../../registry.js";
|
|
3
2
|
import { buildSkillMarkdownPreviewFromRaw } from "../../../skill-markdown-preview-from-raw.js";
|
|
3
|
+
import { downloadSkillZipBuffer, fetchMarketplacePackageDetail, listSkillCategories, listSkillPackages, resolveSkillZipDownloadUrl, resolveSkillsStoreBaseUrl, skillIdForMarketplaceInstall, verifyStoreArtifactSha256 } from "./store-api-client.js";
|
|
4
4
|
//#region src/agent/skills/marketplace/adapters/store/adapter.ts
|
|
5
5
|
const storeMarketplaceAdapter = {
|
|
6
6
|
id: "store",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { MAX_SKILL_ZIP_BYTES, isValidSkillId } from "../../../managed-store.js";
|
|
1
2
|
import { init_resolution, resolveConnectedPlatformEndpoint } from "../../../../../platform/resolution.js";
|
|
2
3
|
import { MAX_EXTENSION_STORE_ZIP_BYTES } from "../../../../../extensions/store-zip-limits.js";
|
|
3
|
-
import { MAX_SKILL_ZIP_BYTES, isValidSkillId } from "../../../managed-store.js";
|
|
4
4
|
import { createHash } from "node:crypto";
|
|
5
5
|
//#region src/agent/skills/marketplace/adapters/store/store-api-client.ts
|
|
6
6
|
/**
|
|
@@ -2,20 +2,20 @@ import { createLogger } from "../../utils/logger/index.js";
|
|
|
2
2
|
import { init_logger } from "../../utils/logger.js";
|
|
3
3
|
import { TaskRepository, init_task_repository } from "../../tasks/task-repository.js";
|
|
4
4
|
import { TaskRunRepository, init_task_run_repository } from "../../tasks/task-run-repository.js";
|
|
5
|
+
import { resolveTaskLocale } from "../../tasks/task-language.js";
|
|
5
6
|
import { resolveEffectiveAgentProfileForSession } from "../../config/agent-profile.js";
|
|
7
|
+
import { TaskCollaborationRepository } from "../../tasks/task-collaboration-repository.js";
|
|
8
|
+
import { TaskConversationRepository } from "../../tasks/task-conversation-repository.js";
|
|
9
|
+
import { extractAssistantText, getAssistantMessageErrorReason, isTransientProviderErrorMessage, stripCodeFences } from "../../providers/model-response.js";
|
|
6
10
|
import { getAgentDefaultModelRef, init_schema } from "../../config/schema.js";
|
|
7
11
|
import { getApiKey, init_providers, resolveModel } from "../../providers/index.js";
|
|
8
12
|
import { completeWithResolvedCredentials } from "../../providers/model-call.js";
|
|
9
|
-
import {
|
|
13
|
+
import { currentTaskResearchResult } from "../../tasks/task-research-result.js";
|
|
14
|
+
import { TaskApplicationService } from "../../tasks/task-application-service.js";
|
|
10
15
|
import { canResumeAfterModelFailure } from "../orchestration/turn-recovery.js";
|
|
11
|
-
import { resolveTaskLocale } from "../../tasks/task-language.js";
|
|
12
|
-
import { TaskConversationRepository } from "../../tasks/task-conversation-repository.js";
|
|
13
16
|
import { readWorkspaceRevision } from "../coding/workspace-revision.js";
|
|
14
|
-
import { TaskCollaborationRepository } from "../../tasks/task-collaboration-repository.js";
|
|
15
|
-
import { currentTaskResearchResult } from "../../tasks/task-research-result.js";
|
|
16
17
|
import { buildResponseLanguageSection } from "../prompt/sections/response-language.js";
|
|
17
18
|
import { resolveResponseLanguageForSession } from "../prompt/response-language.js";
|
|
18
|
-
import { TaskApplicationService } from "../../tasks/task-application-service.js";
|
|
19
19
|
//#region src/agent/tasks/task-judge-service.ts
|
|
20
20
|
init_schema();
|
|
21
21
|
init_providers();
|
|
@@ -22,6 +22,8 @@ export interface ExecCommandDetails {
|
|
|
22
22
|
aggregatedOutput: string;
|
|
23
23
|
failureHint?: string;
|
|
24
24
|
artifacts?: TurnOutcomeDeliverable[];
|
|
25
|
+
executionPerformed?: boolean;
|
|
26
|
+
reusedFromToolCallId?: string;
|
|
25
27
|
}
|
|
26
28
|
export interface ExecCommandUpdateDetails {
|
|
27
29
|
kind: 'command_output_delta';
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { runProcess } from "../../process/run-process.js";
|
|
2
|
+
import { readWorkspaceRevision } from "../coding/workspace-revision.js";
|
|
2
3
|
import { commandRegistry, commandTimeout } from "../commands/command-registry.js";
|
|
3
4
|
import { evaluateExecPolicy } from "../sandbox/exec-policy.js";
|
|
4
5
|
import { formatSize, truncateTail } from "./truncate.js";
|
|
5
6
|
import { publishArtifactPaths } from "./publish-artifacts.js";
|
|
7
|
+
import { classifyVerificationCommand } from "../coding/verification-command.js";
|
|
6
8
|
import { resolve } from "node:path";
|
|
7
9
|
import { Type } from "@sinclair/typebox";
|
|
8
10
|
//#region src/agent/tools/exec-command.ts
|
|
@@ -17,6 +19,7 @@ const ExecCommandSchema = Type.Object({
|
|
|
17
19
|
maximum: 6e4,
|
|
18
20
|
description: "Return a running job after this wait; manage it with managed_job. Omit to wait for completion. Cannot be combined with outputs."
|
|
19
21
|
})),
|
|
22
|
+
reuseVerification: Type.Optional(Type.Boolean({ description: "Publish outputs using this exact command and cwd from a prior successful check at the identical workspace revision, without executing again. Requires outputs. Fails closed if no matching evidence; omit when a fresh execution is required." })),
|
|
20
23
|
outputs: Type.Optional(Type.Array(Type.String({ minLength: 1 }), {
|
|
21
24
|
maxItems: 50,
|
|
22
25
|
description: "Final user-facing files to persist after this command succeeds, including files written earlier in the task. Put all final paths on the final verification command to verify and publish in one call. Relative paths resolve under the effective cwd."
|
|
@@ -52,6 +55,7 @@ function formatOutputForModel(details, maxOutputChars) {
|
|
|
52
55
|
};
|
|
53
56
|
}
|
|
54
57
|
function createExecCommandTool(workspaceCwd, options) {
|
|
58
|
+
const successfulChecks = /* @__PURE__ */ new Map();
|
|
55
59
|
return {
|
|
56
60
|
name: "exec_command",
|
|
57
61
|
description: [
|
|
@@ -60,7 +64,7 @@ function createExecCommandTool(workspaceCwd, options) {
|
|
|
60
64
|
"Use apply_patch for file edits; do not edit files by shell redirection unless explicitly necessary.",
|
|
61
65
|
"Relative cwd values resolve under the current agent workspace.",
|
|
62
66
|
"Use a fresh output directory with mkdir -p. Avoid destructive cleanup such as rm -rf on variable paths; blocked cleanup should be removed, never disguised or moved to bypass policy. A syntax preflight on Unix host commands prevents partial writes from malformed shell syntax.",
|
|
63
|
-
"
|
|
67
|
+
"Default delivery is a workspace link. For requested downloads, add outputs to a necessary check. After it passed, use reuseVerification:true with the same cmd/cwd and outputs to publish without executing again; never rerun solely for attachments. Successful receipts need no republishing."
|
|
64
68
|
].join(" "),
|
|
65
69
|
parameters: ExecCommandSchema,
|
|
66
70
|
label: "Run Command",
|
|
@@ -170,9 +174,40 @@ function createExecCommandTool(workspaceCwd, options) {
|
|
|
170
174
|
};
|
|
171
175
|
}
|
|
172
176
|
}
|
|
177
|
+
const checkKey = JSON.stringify([policy.effectiveCwd, command]);
|
|
178
|
+
if (params.reuseVerification) {
|
|
179
|
+
signal?.throwIfAborted();
|
|
180
|
+
const previous = successfulChecks.get(checkKey);
|
|
181
|
+
const revision = await readWorkspaceRevision(workspaceCwd);
|
|
182
|
+
if (!params.outputs?.length || isolation || !revision || previous?.revision !== revision) throw new Error("Nothing executed or published: no reusable successful check at this workspace revision. Use an existing artifact receipt, publish_artifacts, or perform necessary fresh verification.");
|
|
183
|
+
const artifacts = await publishArtifactPaths({
|
|
184
|
+
paths: params.outputs,
|
|
185
|
+
baseDir: policy.effectiveCwd,
|
|
186
|
+
workspaceRoot: workspaceCwd,
|
|
187
|
+
toolCallId
|
|
188
|
+
});
|
|
189
|
+
return {
|
|
190
|
+
content: [{
|
|
191
|
+
type: "text",
|
|
192
|
+
text: `No command executed. Reused successful check ${previous.toolCallId} at unchanged revision ${revision}. Artifacts: ${artifacts.filter((item) => item.availability === "available").length} published.`
|
|
193
|
+
}],
|
|
194
|
+
details: {
|
|
195
|
+
...previous.details,
|
|
196
|
+
id: void 0,
|
|
197
|
+
durationMs: 0,
|
|
198
|
+
stdout: "",
|
|
199
|
+
stderr: "",
|
|
200
|
+
aggregatedOutput: "",
|
|
201
|
+
executionPerformed: false,
|
|
202
|
+
reusedFromToolCallId: previous.toolCallId,
|
|
203
|
+
artifacts
|
|
204
|
+
}
|
|
205
|
+
};
|
|
206
|
+
}
|
|
173
207
|
const runtimeEnv = options?.prepareEnv ? await options.prepareEnv(policy.sanitizedEnv, policy.effectiveCwd) : policy.sanitizedEnv;
|
|
174
208
|
const owner = options?.getConversationId?.() ?? workspaceCwd;
|
|
175
209
|
const registry = commandRegistry();
|
|
210
|
+
successfulChecks.delete(checkKey);
|
|
176
211
|
let commandResult = await registry.start({
|
|
177
212
|
workspace: workspaceCwd,
|
|
178
213
|
isolation,
|
|
@@ -234,6 +269,15 @@ function createExecCommandTool(workspaceCwd, options) {
|
|
|
234
269
|
resultText += `\n\nArtifacts: ${published} published${failed > 0 ? `, ${failed} failed` : ""}.`;
|
|
235
270
|
resultText += `\n${details.artifacts.map((item) => `${JSON.stringify(item.title)}: ${item.availability}`).join("\n")}`;
|
|
236
271
|
}
|
|
272
|
+
if (!isolation && details.status === "success" && details.exitCode === 0 && classifyVerificationCommand(command) === "check") {
|
|
273
|
+
const revision = await readWorkspaceRevision(workspaceCwd);
|
|
274
|
+
const receipt = commandResult;
|
|
275
|
+
if (revision && receipt.startRevision === revision && receipt.endRevision === revision) successfulChecks.set(checkKey, {
|
|
276
|
+
revision,
|
|
277
|
+
toolCallId,
|
|
278
|
+
details
|
|
279
|
+
});
|
|
280
|
+
}
|
|
237
281
|
return {
|
|
238
282
|
content: [{
|
|
239
283
|
type: "text",
|
|
@@ -9,10 +9,12 @@ import { patchSessionMetadata } from "../../storage/sqlite/session-repository.js
|
|
|
9
9
|
import { getSessionTaskPlan, setSessionTaskPlan } from "../../storage/sqlite/session-task-plan-repository.js";
|
|
10
10
|
import { init_sqlite } from "../../storage/sqlite/index.js";
|
|
11
11
|
import { init_agent_scope, resolveDefaultAgentId } from "../agent-scope.js";
|
|
12
|
-
import {
|
|
12
|
+
import { buildRuntimeEnvironment } from "../../runtime-tools/environment.js";
|
|
13
|
+
import { skillEnvironmentId } from "../skills/installer.js";
|
|
13
14
|
import { resolveEffectiveAgentConfigForAgent } from "../../config/agent-profile.js";
|
|
14
|
-
import { PERSONAL_TOOL_DESCRIPTIONS } from "../../personal-agent/policy.js";
|
|
15
15
|
import { TaskConversationRepository } from "../../tasks/task-conversation-repository.js";
|
|
16
|
+
import { resolveUserContextSessionAccess } from "../../user-context/access-policy.js";
|
|
17
|
+
import { PERSONAL_TOOL_DESCRIPTIONS } from "../../personal-agent/policy.js";
|
|
16
18
|
import { PERSONAL_REQUEST_TOOL_IDS, TASK_EXECUTION_TOOL_IDS, filterExecutionTools, resolveExecutionToolPolicy } from "../embedded/execution-tool-policy.js";
|
|
17
19
|
import { LOCAL_READ_MAX_CHARS } from "./local-read-budget.js";
|
|
18
20
|
import { createPersonalAttentionTool } from "./personal-attention-tool.js";
|
|
@@ -24,8 +26,6 @@ import { wrapToolsWithProtection } from "./executor.js";
|
|
|
24
26
|
import { createDefaultExternalToolGatewayTools } from "../external-tools/index.js";
|
|
25
27
|
import { createReadFileTool } from "./read.js";
|
|
26
28
|
import { createDataBatchTool } from "./dataBatch.js";
|
|
27
|
-
import { buildRuntimeEnvironment } from "../../runtime-tools/environment.js";
|
|
28
|
-
import { skillEnvironmentId } from "../skills/installer.js";
|
|
29
29
|
import { createWriteFileTool } from "./write.js";
|
|
30
30
|
import { createListDirTool } from "./list-dir.js";
|
|
31
31
|
import { createPublishArtifactsTool } from "./publish-artifacts.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { getSqliteDatabase, init_transaction } from "../../storage/sqlite/transaction.js";
|
|
2
2
|
import { init_session_instance_repository, readCurrentTranscriptId } from "../../storage/sqlite/session-instance-repository.js";
|
|
3
|
-
import { resolveUserContextSessionAccess } from "../../user-context/access-policy.js";
|
|
4
3
|
import { getPersonalAgentByConversation } from "../../personal-agent/repository.js";
|
|
4
|
+
import { resolveUserContextSessionAccess } from "../../user-context/access-policy.js";
|
|
5
5
|
import { boundedPersonalResult } from "./personal-result-budget.js";
|
|
6
6
|
import { parseLocalCheckTime } from "../../personal-agent/proactivity/follow-up-request.js";
|
|
7
7
|
import { applyThreadFeedback, getAttention, getProactivitySettings, listAttention, listInterestCandidates, patchAttention, patchProactivitySettings, rollbackStrategy, saveAttention, strategyState, userText } from "../../personal-agent/proactivity/repository.js";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { getSqliteDatabase, init_transaction, runSqliteWriteTransaction } from "../../storage/sqlite/transaction.js";
|
|
2
2
|
import { TaskRunRepository, init_task_run_repository } from "../../tasks/task-run-repository.js";
|
|
3
3
|
import { init_request_repository, personalRequestForExecution } from "../../personal-agent/request-repository.js";
|
|
4
|
-
import { assertPersonalRequestAccountAccess } from "../../personal-agent/request-access.js";
|
|
5
4
|
import { TaskCollaborationRepository } from "../../tasks/task-collaboration-repository.js";
|
|
6
5
|
import { selectionRequestHash } from "../../agent-matching/selection-repository.js";
|
|
6
|
+
import { assertPersonalRequestAccountAccess } from "../../personal-agent/request-access.js";
|
|
7
7
|
import { PersonalRequestResultSchema } from "../../personal-agent/request-result.js";
|
|
8
8
|
import { Type } from "@sinclair/typebox";
|
|
9
9
|
//#region src/agent/tools/personal-request-result-tool.ts
|
|
@@ -5,11 +5,11 @@ import { getPersonalRequest, init_request_repository, listPersonalRequests, upda
|
|
|
5
5
|
import { getActiveConnectionWait, init_connection_wait_repository, reviseCurrentConnectionObjective, updateConnectionWait } from "../../storage/sqlite/connection-wait-repository.js";
|
|
6
6
|
import { getSessionMetadata } from "../../storage/sqlite/session-read-repository.js";
|
|
7
7
|
import { init_session_repository } from "../../storage/sqlite/session-repository.js";
|
|
8
|
-
import { isPersonalConversation } from "../../personal-agent/repository.js";
|
|
9
8
|
import { TaskAllocationRepository } from "../../tasks/task-allocation-repository.js";
|
|
9
|
+
import { isPersonalConversation } from "../../personal-agent/repository.js";
|
|
10
|
+
import { selectionRequestHash } from "../../agent-matching/selection-repository.js";
|
|
10
11
|
import { boundedPersonalResult } from "./personal-result-budget.js";
|
|
11
12
|
import { personalCapabilities } from "../../personal-agent/capability-service.js";
|
|
12
|
-
import { selectionRequestHash } from "../../agent-matching/selection-repository.js";
|
|
13
13
|
import { createPersonalTaskTool } from "./personal-task-tool.js";
|
|
14
14
|
import { assertPersonalRequestTimeRange, cancelPersonalRequest, personalRequestSnapshot, publishPersonalRequest, stopPersonalRequestExecution, submitPersonalRequest } from "../../personal-agent/request-service.js";
|
|
15
15
|
import { Type } from "@sinclair/typebox";
|
|
@@ -6,20 +6,20 @@ import { TaskRepository, init_task_repository } from "../../tasks/task-repositor
|
|
|
6
6
|
import { getPersonalRequest, init_request_repository } from "../../personal-agent/request-repository.js";
|
|
7
7
|
import { getSessionMetadata } from "../../storage/sqlite/session-read-repository.js";
|
|
8
8
|
import { init_sqlite } from "../../storage/sqlite/index.js";
|
|
9
|
-
import { isPersonalConversation } from "../../personal-agent/repository.js";
|
|
10
9
|
import { TaskAllocationRepository } from "../../tasks/task-allocation-repository.js";
|
|
11
10
|
import { TaskReadModelProjector } from "../../tasks/task-read-model-projector.js";
|
|
11
|
+
import { isPersonalConversation } from "../../personal-agent/repository.js";
|
|
12
12
|
import { TaskOriginRepository } from "../../tasks/task-origin-repository.js";
|
|
13
|
-
import { boundedPersonalResult } from "./personal-result-budget.js";
|
|
14
|
-
import { TaskCollaborationRepository } from "../../tasks/task-collaboration-repository.js";
|
|
15
|
-
import { PERSONAL_WORKER_RESULT_GUIDANCE } from "../../personal-agent/communication.js";
|
|
16
13
|
import { parseTaskHandoffReferences } from "../../tasks/task-handoff.js";
|
|
14
|
+
import { TaskCollaborationRepository } from "../../tasks/task-collaboration-repository.js";
|
|
17
15
|
import { TaskApplicationService } from "../../tasks/task-application-service.js";
|
|
16
|
+
import { AgentSelectionRepository, selectionRequestHash } from "../../agent-matching/selection-repository.js";
|
|
18
17
|
import { getAvailablePersonalAgentTools, personalAgentModelAvailability } from "../../personal-agent/specialist-capabilities.js";
|
|
19
18
|
import { assessSpecialist, matchSpecialists } from "../../agent-matching/service.js";
|
|
20
|
-
import { createXopcUseTool } from "./xopc-use-tool.js";
|
|
21
|
-
import { AgentSelectionRepository, selectionRequestHash } from "../../agent-matching/selection-repository.js";
|
|
22
19
|
import { assertSpecialistEligible, createSelectedTask } from "../../agent-matching/delegation-service.js";
|
|
20
|
+
import { boundedPersonalResult } from "./personal-result-budget.js";
|
|
21
|
+
import { PERSONAL_WORKER_RESULT_GUIDANCE } from "../../personal-agent/communication.js";
|
|
22
|
+
import { createXopcUseTool } from "./xopc-use-tool.js";
|
|
23
23
|
import { cancelPersonalTask } from "../../personal-agent/task-cancel.js";
|
|
24
24
|
import { randomUUID } from "node:crypto";
|
|
25
25
|
import { Type } from "@sinclair/typebox";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { turnOutcomeKindFromFileName, turnOutcomeMimeTypeFromFileName } from "../../../packages/gateway-contract/src/turn-outcome.js";
|
|
2
2
|
import { init_src } from "../../../packages/gateway-contract/src/index.js";
|
|
3
|
+
import { fileResourceId, fileSpaceId } from "../../files/file-service.js";
|
|
3
4
|
import { evaluateFilePolicy } from "../sandbox/exec-policy.js";
|
|
4
5
|
import { readWorkspaceFile } from "../sandbox/fileAccess.js";
|
|
5
6
|
import { resolvePathUnderWorkspace } from "./tool-paths.js";
|
|
6
|
-
import { fileResourceId, fileSpaceId } from "../../files/file-service.js";
|
|
7
7
|
import { persistToolMedia } from "./tool-media.js";
|
|
8
8
|
import { basename, isAbsolute, relative, sep } from "node:path";
|
|
9
9
|
import { Type } from "@sinclair/typebox";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { readWorkspaceRevision } from "../coding/workspace-revision.js";
|
|
2
1
|
import { prepareSafeToolEnv } from "../sandbox/sanitize-env-vars.js";
|
|
2
|
+
import { readWorkspaceRevision } from "../coding/workspace-revision.js";
|
|
3
3
|
import { evaluateFilePolicy } from "../sandbox/exec-policy.js";
|
|
4
4
|
import { checkedFilePath, readWorkspaceFile } from "../sandbox/fileAccess.js";
|
|
5
5
|
import { resolve } from "node:path";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { resolveStateDir } from "../../config/paths-state.js";
|
|
2
2
|
import { init_paths } from "../../config/paths.js";
|
|
3
|
-
import { DEFAULT_MAX_BYTES, formatSize, truncateHead } from "./truncate.js";
|
|
4
3
|
import { createSkillConfigManager, isSkillEnabled, resolveSkillConfig } from "../skills/config.js";
|
|
4
|
+
import { DEFAULT_MAX_BYTES, formatSize, truncateHead } from "./truncate.js";
|
|
5
5
|
import { resolveSkillReadablePath } from "../skills/skill-view-path.js";
|
|
6
6
|
import { readFileSync, statSync } from "fs";
|
|
7
7
|
import { Type } from "@sinclair/typebox";
|
|
@@ -6,11 +6,11 @@ import { init_request_repository, personalRequestForExecution } from "../../pers
|
|
|
6
6
|
import { getSessionMetadata } from "../../storage/sqlite/session-read-repository.js";
|
|
7
7
|
import { init_session_repository } from "../../storage/sqlite/session-repository.js";
|
|
8
8
|
import { TaskReadModelProjector } from "../../tasks/task-read-model-projector.js";
|
|
9
|
-
import {
|
|
10
|
-
import { getEmbeddedExecutionSession } from "../embedded/execution-context.js";
|
|
9
|
+
import { assertTaskHandoffAccess, assertTaskHandoffExecutorAccess, getTaskHandoff, materializeTaskHandoffFile, readTaskHandoffSource } from "../../tasks/task-handoff.js";
|
|
11
10
|
import { TaskCollaborationRepository } from "../../tasks/task-collaboration-repository.js";
|
|
11
|
+
import { TaskConversationRepository } from "../../tasks/task-conversation-repository.js";
|
|
12
12
|
import { taskResearchEvidence } from "../../tasks/task-research-result.js";
|
|
13
|
-
import {
|
|
13
|
+
import { getEmbeddedExecutionSession } from "../embedded/execution-context.js";
|
|
14
14
|
import { createXopcUseTool } from "./xopc-use-tool.js";
|
|
15
15
|
import { Type } from "@sinclair/typebox";
|
|
16
16
|
//#region src/agent/tools/task-collaboration-tool.ts
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { appendProductDeliveryText } from "../../../packages/gateway-contract/src/product-delivery.js";
|
|
2
2
|
import { init_src } from "../../../packages/gateway-contract/src/index.js";
|
|
3
|
+
import { fileResourceId, fileSpaceId } from "../../files/file-service.js";
|
|
3
4
|
import { writeWorkspaceFile } from "../sandbox/fileAccess.js";
|
|
4
5
|
import { checkFileSafety } from "../prompt/safety.js";
|
|
5
6
|
import { isBareProfileMarkdownFileName, resolvePathUnderWorkspace, resolveProfileMarkdownPathIfBareName } from "./tool-paths.js";
|
|
6
|
-
import { fileResourceId, fileSpaceId } from "../../files/file-service.js";
|
|
7
7
|
import { basename, relative, sep } from "path";
|
|
8
8
|
import { realpath } from "fs/promises";
|
|
9
9
|
import { Type } from "@sinclair/typebox";
|