@capybara-hq/kernel 0.1.0-rc.2 → 0.1.0-rc.20
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/bootstrap.json +85 -5
- package/dist/admin/admin-agents.controller.d.ts +28 -0
- package/dist/admin/admin-agents.controller.js +79 -0
- package/dist/admin/admin-connectors.controller.d.ts +29 -0
- package/dist/admin/admin-connectors.controller.js +79 -0
- package/dist/admin/admin-items.schemas.d.ts +42 -0
- package/dist/admin/admin-items.schemas.js +48 -0
- package/dist/admin/admin.controller.d.ts +52 -80
- package/dist/admin/admin.controller.js +112 -81
- package/dist/admin/admin.module.d.ts +4 -1
- package/dist/admin/admin.module.js +50 -4
- package/dist/admin/admin.schemas.d.ts +69 -0
- package/dist/admin/admin.schemas.js +53 -0
- package/dist/admin/audit.controller.d.ts +14 -0
- package/dist/admin/audit.controller.js +42 -0
- package/dist/admin/audit.schemas.d.ts +8 -0
- package/dist/admin/audit.schemas.js +17 -0
- package/dist/admin/extensions.controller.d.ts +34 -3
- package/dist/admin/extensions.controller.js +66 -8
- package/dist/admin/extensions.schemas.d.ts +7 -0
- package/dist/admin/extensions.schemas.js +10 -0
- package/dist/admin/health.service.d.ts +104 -0
- package/dist/admin/health.service.js +246 -0
- package/dist/admin/limit-defaults.d.ts +20 -0
- package/dist/admin/limit-defaults.js +10 -0
- package/dist/admin/overview.controller.d.ts +31 -0
- package/dist/admin/overview.controller.js +78 -0
- package/dist/admin/overview.schemas.d.ts +8 -0
- package/dist/admin/overview.schemas.js +13 -0
- package/dist/admin/overview.service.d.ts +112 -0
- package/dist/admin/overview.service.js +223 -0
- package/dist/admin/platform-audit.service.d.ts +41 -0
- package/dist/admin/platform-audit.service.js +70 -0
- package/dist/admin/setup-lock.d.ts +1 -1
- package/dist/admin/setup-lock.js +1 -1
- package/dist/admin/setup.controller.d.ts +1 -1
- package/dist/admin/setup.controller.js +1 -1
- package/dist/admin/setup.service.d.ts +4 -4
- package/dist/admin/setup.service.js +8 -8
- package/dist/admin/usage.service.d.ts +149 -0
- package/dist/admin/usage.service.js +321 -0
- package/dist/agents/admin-agents.d.ts +92 -0
- package/dist/agents/admin-agents.js +170 -0
- package/dist/agents/agent-lookup.d.ts +24 -0
- package/dist/agents/agent-lookup.js +46 -2
- package/dist/agents/agent-profile.service.d.ts +31 -0
- package/dist/agents/agent-profile.service.js +122 -0
- package/dist/agents/agents.controller.d.ts +53 -168
- package/dist/agents/agents.controller.js +163 -34
- package/dist/agents/agents.module.d.ts +6 -2
- package/dist/agents/agents.module.js +41 -7
- package/dist/agents/agents.schemas.d.ts +392 -0
- package/dist/agents/agents.schemas.js +126 -0
- package/dist/agents/agents.service.d.ts +121 -36
- package/dist/agents/agents.service.js +411 -121
- package/dist/agents/definition.d.ts +142 -21
- package/dist/agents/definition.js +389 -43
- package/dist/agents/from-template.d.ts +106 -0
- package/dist/agents/from-template.js +680 -0
- package/dist/agents/from-template.service.d.ts +72 -0
- package/dist/agents/from-template.service.js +178 -0
- package/dist/agents/instruction-files.d.ts +60 -0
- package/dist/agents/instruction-files.js +111 -0
- package/dist/agents/models.controller.d.ts +44 -6
- package/dist/agents/models.controller.js +84 -8
- package/dist/agents/org-templates.d.ts +186 -0
- package/dist/agents/org-templates.js +876 -0
- package/dist/agents/pending-connector-requests.d.ts +79 -0
- package/dist/agents/pending-connector-requests.js +215 -0
- package/dist/agents/pending-connectors.controller.d.ts +39 -0
- package/dist/agents/pending-connectors.controller.js +91 -0
- package/dist/agents/pending-connectors.service.d.ts +62 -0
- package/dist/agents/pending-connectors.service.js +282 -0
- package/dist/agents/profile.d.ts +114 -0
- package/dist/agents/profile.js +55 -0
- package/dist/agents/readiness.controller.d.ts +26 -0
- package/dist/agents/readiness.controller.js +56 -0
- package/dist/agents/templates.controller.d.ts +77 -5
- package/dist/agents/templates.controller.js +153 -7
- package/dist/agents/templates.d.ts +127 -23
- package/dist/agents/templates.js +482 -44
- package/dist/agents/templates.schemas.d.ts +20 -0
- package/dist/agents/templates.schemas.js +45 -0
- package/dist/background/background.controller.d.ts +38 -0
- package/dist/background/background.controller.js +88 -0
- package/dist/background/background.module.d.ts +10 -0
- package/dist/background/background.module.js +39 -0
- package/dist/background/background.schemas.d.ts +10 -0
- package/dist/background/background.schemas.js +16 -0
- package/dist/background/finish.d.ts +44 -0
- package/dist/background/finish.js +95 -0
- package/dist/background/launch-lock.d.ts +15 -0
- package/dist/background/launch-lock.js +40 -0
- package/dist/background/launch.d.ts +42 -0
- package/dist/background/launch.js +77 -0
- package/dist/background/poll.job.d.ts +56 -0
- package/dist/background/poll.job.js +195 -0
- package/dist/background/render.d.ts +23 -0
- package/dist/background/render.js +48 -0
- package/dist/background/session.d.ts +48 -0
- package/dist/background/session.js +80 -0
- package/dist/background/status.d.ts +35 -0
- package/dist/background/status.js +57 -0
- package/dist/background/stop.d.ts +68 -0
- package/dist/background/stop.js +244 -0
- package/dist/background/store.d.ts +167 -0
- package/dist/background/store.js +361 -0
- package/dist/background/store.module.d.ts +6 -0
- package/dist/background/store.module.js +22 -0
- package/dist/background/tasks.service.d.ts +109 -0
- package/dist/background/tasks.service.js +271 -0
- package/dist/background/wake-rules.d.ts +66 -0
- package/dist/background/wake-rules.js +113 -0
- package/dist/background/wake.d.ts +30 -0
- package/dist/background/wake.js +63 -0
- package/dist/catalog/admin-catalog.controller.d.ts +136 -52
- package/dist/catalog/admin-catalog.controller.js +275 -65
- package/dist/catalog/admin-catalog.schemas.d.ts +82 -0
- package/dist/catalog/admin-catalog.schemas.js +99 -0
- package/dist/catalog/appearance.schemas.d.ts +10 -0
- package/dist/catalog/appearance.schemas.js +20 -0
- package/dist/catalog/appearance.service.d.ts +105 -0
- package/dist/catalog/appearance.service.js +306 -0
- package/dist/catalog/catalog-content.d.ts +122 -35
- package/dist/catalog/catalog-content.js +122 -14
- package/dist/catalog/catalog-files.d.ts +42 -0
- package/dist/catalog/catalog-files.js +89 -0
- package/dist/catalog/catalog-import.module.d.ts +7 -0
- package/dist/catalog/catalog-import.module.js +63 -0
- package/dist/catalog/catalog-items.d.ts +122 -7
- package/dist/catalog/catalog-items.js +301 -13
- package/dist/catalog/catalog-scope.service.d.ts +293 -0
- package/dist/catalog/catalog-scope.service.js +1236 -0
- package/dist/catalog/catalog.module.d.ts +7 -9
- package/dist/catalog/catalog.module.js +47 -31
- package/dist/catalog/catalog.service.d.ts +122 -31
- package/dist/catalog/catalog.service.js +177 -105
- package/dist/catalog/claude/agents.js +15 -10
- package/dist/catalog/claude/translate.js +3 -0
- package/dist/catalog/cli.d.ts +11 -1
- package/dist/catalog/cli.js +29 -1
- package/dist/catalog/component-promotion.d.ts +96 -0
- package/dist/catalog/component-promotion.js +395 -0
- package/dist/catalog/component-scope.controller.d.ts +102 -0
- package/dist/catalog/component-scope.controller.js +257 -0
- package/dist/catalog/component-scope.schemas.d.ts +118 -0
- package/dist/catalog/component-scope.schemas.js +97 -0
- package/dist/catalog/component-scope.service.d.ts +394 -0
- package/dist/catalog/component-scope.service.js +1133 -0
- package/dist/catalog/component-state.d.ts +207 -0
- package/dist/catalog/component-state.js +484 -0
- package/dist/catalog/git-source.d.ts +9 -1
- package/dist/catalog/git-source.js +29 -2
- package/dist/catalog/job-ids.d.ts +30 -0
- package/dist/catalog/job-ids.js +25 -0
- package/dist/catalog/marketplace-fetch.d.ts +1 -1
- package/dist/catalog/marketplace-icons.d.ts +64 -0
- package/dist/catalog/marketplace-icons.js +131 -0
- package/dist/catalog/marketplaces.controller.d.ts +50 -41
- package/dist/catalog/marketplaces.controller.js +130 -46
- package/dist/catalog/marketplaces.schemas.d.ts +48 -0
- package/dist/catalog/marketplaces.schemas.js +53 -0
- package/dist/catalog/marketplaces.service.d.ts +110 -17
- package/dist/catalog/marketplaces.service.js +337 -29
- package/dist/catalog/org-catalog.controller.d.ts +114 -62
- package/dist/catalog/org-catalog.controller.js +191 -98
- package/dist/catalog/org-catalog.schemas.d.ts +104 -0
- package/dist/catalog/org-catalog.schemas.js +107 -0
- package/dist/catalog/org-catalog.service.d.ts +72 -33
- package/dist/catalog/org-catalog.service.js +367 -158
- package/dist/catalog/org-extension-switch.d.ts +41 -0
- package/dist/catalog/org-extension-switch.js +115 -0
- package/dist/catalog/org-extension.controller.d.ts +133 -0
- package/dist/catalog/org-extension.controller.js +313 -0
- package/dist/catalog/org-extension.schemas.d.ts +15 -0
- package/dist/catalog/org-extension.schemas.js +22 -0
- package/dist/catalog/org-plugin-uploads.controller.d.ts +77 -0
- package/dist/catalog/org-plugin-uploads.controller.js +200 -0
- package/dist/catalog/org-plugin-uploads.d.ts +71 -0
- package/dist/catalog/org-plugin-uploads.js +122 -0
- package/dist/catalog/org-plugin-uploads.schemas.d.ts +20 -0
- package/dist/catalog/org-plugin-uploads.schemas.js +32 -0
- package/dist/catalog/owned-items.d.ts +188 -0
- package/dist/catalog/owned-items.js +808 -0
- package/dist/catalog/owned-plugin-cleanup.d.ts +56 -0
- package/dist/catalog/owned-plugin-cleanup.js +194 -0
- package/dist/catalog/ownership.d.ts +172 -0
- package/dist/catalog/ownership.js +326 -0
- package/dist/catalog/platform-components.d.ts +243 -0
- package/dist/catalog/platform-components.js +872 -0
- package/dist/catalog/platform-migration.d.ts +115 -0
- package/dist/catalog/platform-migration.js +583 -0
- package/dist/catalog/plugin-import.d.ts +254 -47
- package/dist/catalog/plugin-import.js +810 -112
- package/dist/catalog/plugin-install.d.ts +205 -42
- package/dist/catalog/plugin-install.js +828 -126
- package/dist/catalog/plugin-package.d.ts +43 -4
- package/dist/catalog/plugin-package.js +194 -7
- package/dist/catalog/plugin-upgrade.d.ts +308 -225
- package/dist/catalog/plugin-upgrade.js +1325 -1131
- package/dist/catalog/request-rules.d.ts +65 -0
- package/dist/catalog/request-rules.js +217 -0
- package/dist/catalog/requests.service.d.ts +194 -118
- package/dist/catalog/requests.service.js +530 -343
- package/dist/catalog/reserved-names.d.ts +8 -0
- package/dist/catalog/reserved-names.js +42 -0
- package/dist/catalog/scope-orgs.d.ts +21 -0
- package/dist/catalog/scope-orgs.js +67 -0
- package/dist/catalog/scope-state.d.ts +35 -0
- package/dist/catalog/scope-state.js +87 -0
- package/dist/catalog/scope-sync-workers.d.ts +7 -0
- package/dist/catalog/scope-sync-workers.js +29 -0
- package/dist/catalog/scope-sync.d.ts +176 -0
- package/dist/catalog/scope-sync.js +576 -0
- package/dist/catalog/scope.d.ts +42 -0
- package/dist/catalog/scope.js +42 -0
- package/dist/catalog/unshare.d.ts +22 -0
- package/dist/catalog/unshare.js +119 -0
- package/dist/channels/actions.js +10 -3
- package/dist/channels/cards.d.ts +36 -10
- package/dist/channels/cards.js +100 -25
- package/dist/channels/channels.module.js +13 -2
- package/dist/channels/channels.schemas.d.ts +41 -0
- package/dist/channels/channels.schemas.js +40 -0
- package/dist/channels/connections.controller.d.ts +46 -37
- package/dist/channels/connections.controller.js +76 -34
- package/dist/channels/connections.service.d.ts +102 -10
- package/dist/channels/connections.service.js +271 -24
- package/dist/channels/inbound.d.ts +11 -1
- package/dist/channels/inbound.js +87 -7
- package/dist/channels/outbound.d.ts +14 -1
- package/dist/channels/outbound.js +64 -15
- package/dist/channels/phrases.d.ts +33 -2
- package/dist/channels/phrases.js +29 -1
- package/dist/channels/supervisor.d.ts +2 -0
- package/dist/channels/supervisor.js +4 -0
- package/dist/channels/threads.d.ts +5 -0
- package/dist/channels/threads.js +8 -0
- package/dist/channels/webhook.d.ts +21 -1
- package/dist/channels/webhook.js +39 -4
- package/dist/client/client-access.service.d.ts +102 -0
- package/dist/client/client-access.service.js +303 -0
- package/dist/client/client-builds.service.d.ts +109 -0
- package/dist/client/client-builds.service.js +229 -0
- package/dist/client/client-delivery.controller.d.ts +25 -0
- package/dist/client/client-delivery.controller.js +66 -0
- package/dist/client/client-files.d.ts +48 -0
- package/dist/client/client-files.js +136 -0
- package/dist/client/client-reports.cron.d.ts +13 -0
- package/dist/client/client-reports.cron.js +42 -0
- package/dist/client/client-reports.service.d.ts +30 -0
- package/dist/client/client-reports.service.js +102 -0
- package/dist/client/client-sign-in.service.d.ts +21 -0
- package/dist/client/client-sign-in.service.js +49 -0
- package/dist/client/client.controller.d.ts +49 -0
- package/dist/client/client.controller.js +129 -0
- package/dist/client/client.module.d.ts +8 -0
- package/dist/client/client.module.js +28 -0
- package/dist/client/client.schemas.d.ts +61 -0
- package/dist/client/client.schemas.js +27 -0
- package/dist/config/docs.js +5 -1
- package/dist/config/schema.d.ts +35 -2
- package/dist/config/schema.js +216 -21
- package/dist/conversations/access.d.ts +6 -4
- package/dist/conversations/access.js +29 -5
- package/dist/conversations/agent-tree.d.ts +46 -0
- package/dist/conversations/agent-tree.js +92 -0
- package/dist/conversations/artifacts.d.ts +1 -1
- package/dist/conversations/artifacts.js +1 -1
- package/dist/conversations/attachments.service.d.ts +30 -0
- package/dist/conversations/attachments.service.js +130 -5
- package/dist/conversations/conversations.controller.d.ts +79 -44
- package/dist/conversations/conversations.controller.js +133 -82
- package/dist/conversations/conversations.module.d.ts +1 -1
- package/dist/conversations/conversations.module.js +10 -7
- package/dist/conversations/conversations.schemas.d.ts +52 -0
- package/dist/conversations/conversations.schemas.js +79 -0
- package/dist/conversations/conversations.service.d.ts +161 -13
- package/dist/conversations/conversations.service.js +329 -57
- package/dist/conversations/device-status.d.ts +24 -0
- package/dist/conversations/device-status.js +71 -0
- package/dist/conversations/event-log.d.ts +45 -9
- package/dist/conversations/event-log.js +113 -6
- package/dist/conversations/events.d.ts +255 -9
- package/dist/conversations/events.js +250 -34
- package/dist/conversations/message-context.d.ts +79 -0
- package/dist/conversations/message-context.js +145 -0
- package/dist/conversations/queue.d.ts +5 -2
- package/dist/conversations/queue.js +24 -4
- package/dist/conversations/queue.service.d.ts +2 -2
- package/dist/conversations/queue.service.js +21 -3
- package/dist/conversations/titles.d.ts +12 -3
- package/dist/conversations/titles.js +40 -16
- package/dist/conversations/tree.d.ts +17 -0
- package/dist/conversations/tree.js +42 -0
- package/dist/ctx/create-ctx.d.ts +48 -5
- package/dist/ctx/create-ctx.js +174 -34
- package/dist/db/kernel-schema.d.ts +668 -27
- package/dist/db/pool.d.ts +5 -0
- package/dist/db/pool.js +3 -0
- package/dist/devices/access.d.ts +66 -0
- package/dist/devices/access.js +113 -0
- package/dist/devices/conversation-devices.d.ts +75 -0
- package/dist/devices/conversation-devices.js +230 -0
- package/dist/devices/devices.controller.d.ts +36 -0
- package/dist/devices/devices.controller.js +124 -0
- package/dist/devices/devices.module.d.ts +8 -0
- package/dist/devices/devices.module.js +34 -0
- package/dist/devices/devices.schemas.d.ts +3 -0
- package/dist/devices/devices.schemas.js +14 -0
- package/dist/devices/devices.service.d.ts +251 -0
- package/dist/devices/devices.service.js +791 -0
- package/dist/devices/dto.d.ts +25 -0
- package/dist/devices/dto.js +12 -0
- package/dist/devices/label.d.ts +11 -0
- package/dist/devices/label.js +25 -0
- package/dist/devices/legacy-cleanup.job.d.ts +34 -0
- package/dist/devices/legacy-cleanup.job.js +141 -0
- package/dist/errors.d.ts +215 -3
- package/dist/errors.js +215 -3
- package/dist/evals/evals.module.js +11 -2
- package/dist/evals/evals.schemas.d.ts +110 -0
- package/dist/evals/evals.schemas.js +107 -0
- package/dist/evals/reconstruct.d.ts +18 -9
- package/dist/evals/reconstruct.js +36 -10
- package/dist/evals/recorded-tools.d.ts +37 -1
- package/dist/evals/recorded-tools.js +120 -10
- package/dist/evals/run-replay.d.ts +20 -3
- package/dist/evals/run-replay.js +78 -14
- package/dist/evals/runs.controller.d.ts +2 -57
- package/dist/evals/runs.controller.js +1 -42
- package/dist/evals/runs.service.d.ts +8 -7
- package/dist/evals/runs.service.js +45 -30
- package/dist/evals/sets.controller.d.ts +2 -28
- package/dist/evals/sets.controller.js +1 -31
- package/dist/evals/sets.service.d.ts +7 -7
- package/dist/evals/sets.service.js +23 -17
- package/dist/evals/snapshot.d.ts +3 -2
- package/dist/evals/snapshot.js +17 -4
- package/dist/evals/step-replay.d.ts +4 -6
- package/dist/evals/step-replay.js +16 -9
- package/dist/evals/trajectory.d.ts +5 -3
- package/dist/evals/trajectory.js +4 -1
- package/dist/evals/trajectory.service.d.ts +8 -3
- package/dist/evals/trajectory.service.js +26 -14
- package/dist/evals/worker.d.ts +5 -5
- package/dist/evals/worker.js +9 -3
- package/dist/extensions/admin-ops.d.ts +81 -14
- package/dist/extensions/admin-ops.js +181 -47
- package/dist/extensions/admin-view.d.ts +57 -10
- package/dist/extensions/admin-view.js +249 -27
- package/dist/extensions/approvals.d.ts +12 -2
- package/dist/extensions/blobs.d.ts +14 -1
- package/dist/extensions/blobs.js +49 -5
- package/dist/extensions/bootstrap.d.ts +41 -5
- package/dist/extensions/bootstrap.js +121 -19
- package/dist/extensions/cli.d.ts +12 -0
- package/dist/extensions/cli.js +11 -2
- package/dist/extensions/config-hash.d.ts +10 -0
- package/dist/extensions/config-hash.js +38 -0
- package/dist/extensions/config-issues.d.ts +13 -1
- package/dist/extensions/config-issues.js +22 -5
- package/dist/extensions/config-json-schema.d.ts +43 -7
- package/dist/extensions/config-json-schema.js +124 -58
- package/dist/extensions/deployment-config-store.d.ts +6 -0
- package/dist/extensions/deployment-config.d.ts +94 -9
- package/dist/extensions/deployment-config.js +255 -34
- package/dist/extensions/display-name.d.ts +22 -0
- package/dist/extensions/display-name.js +77 -0
- package/dist/extensions/effective-config.d.ts +133 -0
- package/dist/extensions/effective-config.js +379 -0
- package/dist/extensions/extensions.module.js +31 -12
- package/dist/extensions/guide-places.d.ts +68 -0
- package/dist/extensions/guide-places.js +152 -0
- package/dist/extensions/hooks.d.ts +37 -4
- package/dist/extensions/hooks.js +82 -16
- package/dist/extensions/host.d.ts +105 -12
- package/dist/extensions/host.js +372 -87
- package/dist/extensions/installs.d.ts +30 -9
- package/dist/extensions/installs.js +57 -16
- package/dist/extensions/instance.d.ts +17 -2
- package/dist/extensions/instance.js +21 -0
- package/dist/extensions/ledger.d.ts +1 -1
- package/dist/extensions/locks.d.ts +12 -0
- package/dist/extensions/locks.js +26 -0
- package/dist/extensions/org-config.d.ts +97 -7
- package/dist/extensions/org-config.js +215 -45
- package/dist/extensions/org-levels.d.ts +37 -0
- package/dist/extensions/org-levels.js +71 -0
- package/dist/extensions/org-overrides.d.ts +151 -0
- package/dist/extensions/org-overrides.js +524 -0
- package/dist/extensions/package.d.ts +18 -4
- package/dist/extensions/package.js +56 -3
- package/dist/extensions/permission-set.d.ts +35 -5
- package/dist/extensions/permission-set.js +36 -5
- package/dist/extensions/permission-view.d.ts +106 -13
- package/dist/extensions/permission-view.js +33 -15
- package/dist/extensions/plugin-guides.d.ts +282 -0
- package/dist/extensions/plugin-guides.js +554 -0
- package/dist/extensions/plugin-icons.d.ts +54 -0
- package/dist/extensions/plugin-icons.js +125 -0
- package/dist/extensions/plugin-items.d.ts +21 -0
- package/dist/extensions/plugin-items.js +42 -0
- package/dist/extensions/point-defaults.controller.d.ts +28 -0
- package/dist/extensions/point-defaults.controller.js +69 -0
- package/dist/extensions/point-defaults.d.ts +73 -0
- package/dist/extensions/point-defaults.js +236 -0
- package/dist/extensions/point-defaults.schemas.d.ts +9 -0
- package/dist/extensions/point-defaults.schemas.js +14 -0
- package/dist/extensions/registry.d.ts +1 -1
- package/dist/extensions/registry.js +2 -0
- package/dist/extensions/resolve.d.ts +51 -1
- package/dist/extensions/resolve.js +85 -3
- package/dist/extensions/single-provider.d.ts +92 -0
- package/dist/extensions/single-provider.js +180 -0
- package/dist/extensions/sources.d.ts +13 -2
- package/dist/extensions/sources.js +2 -0
- package/dist/extensions/state.module.d.ts +9 -0
- package/dist/extensions/state.module.js +46 -0
- package/dist/extensions/unavailable.d.ts +50 -0
- package/dist/extensions/unavailable.js +115 -0
- package/dist/files/previewers.controller.js +2 -3
- package/dist/files/previewers.d.ts +10 -3
- package/dist/files/previewers.js +40 -11
- package/dist/files/previewers.schemas.d.ts +10 -0
- package/dist/files/previewers.schemas.js +9 -0
- package/dist/http/api.module.js +76 -4
- package/dist/http/app.d.ts +11 -2
- package/dist/http/app.js +31 -5
- package/dist/http/gateway-routes.d.ts +7 -3
- package/dist/http/gateway-routes.js +6 -3
- package/dist/http/nest-logger.d.ts +6 -5
- package/dist/http/nest-logger.js +24 -10
- package/dist/http/plugin-dispatch.d.ts +4 -1
- package/dist/http/plugin-dispatch.js +14 -2
- package/dist/identity/accounts.d.ts +77 -31
- package/dist/identity/accounts.js +133 -52
- package/dist/identity/audit.d.ts +2 -1
- package/dist/identity/auth.controller.js +9 -5
- package/dist/identity/auth.guard.d.ts +13 -5
- package/dist/identity/auth.guard.js +35 -9
- package/dist/identity/cookies.d.ts +26 -5
- package/dist/identity/cookies.js +58 -6
- package/dist/identity/identity.module.d.ts +1 -1
- package/dist/identity/identity.module.js +7 -4
- package/dist/identity/initial-passwords.controller.d.ts +22 -0
- package/dist/identity/initial-passwords.controller.js +49 -0
- package/dist/identity/initial-passwords.d.ts +61 -0
- package/dist/identity/initial-passwords.job.d.ts +16 -0
- package/dist/identity/initial-passwords.job.js +46 -0
- package/dist/identity/initial-passwords.js +159 -0
- package/dist/identity/me.controller.d.ts +17 -1
- package/dist/identity/me.controller.js +45 -4
- package/dist/identity/me.schemas.d.ts +24 -0
- package/dist/identity/me.schemas.js +25 -0
- package/dist/identity/principal.d.ts +11 -3
- package/dist/identity/principal.js +11 -3
- package/dist/identity/sessions.d.ts +12 -0
- package/dist/identity/sessions.js +45 -0
- package/dist/identity/settings.d.ts +99 -12
- package/dist/identity/settings.js +234 -25
- package/dist/identity/{enterprise-admin.d.ts → super-admin.d.ts} +5 -5
- package/dist/identity/{enterprise-admin.js → super-admin.js} +24 -24
- package/dist/identity/write-actor.d.ts +11 -0
- package/dist/identity/write-actor.js +7 -0
- package/dist/inbox/inbox.module.d.ts +4 -1
- package/dist/inbox/inbox.module.js +7 -3
- package/dist/inbox/inbox.schemas.d.ts +8 -0
- package/dist/inbox/inbox.schemas.js +11 -0
- package/dist/inbox/inbox.service.d.ts +64 -4
- package/dist/inbox/inbox.service.js +74 -4
- package/dist/inbox/org-notices.d.ts +63 -0
- package/dist/inbox/org-notices.js +91 -0
- package/dist/inbox/platform-inbox.controller.d.ts +23 -0
- package/dist/inbox/platform-inbox.controller.js +58 -0
- package/dist/inbox/platform-inbox.service.d.ts +157 -0
- package/dist/inbox/platform-inbox.service.js +281 -0
- package/dist/inbox/platform-notices.d.ts +19 -0
- package/dist/inbox/platform-notices.js +9 -0
- package/dist/index.d.ts +6 -2
- package/dist/index.js +7 -1
- package/dist/infra/cli/kernel-cli.module.js +9 -1
- package/dist/infra/config/kernel-config.service.js +32 -1
- package/dist/infra/database/database.module.js +1 -0
- package/dist/infra/database/xact-lock.d.ts +1 -1
- package/dist/infra/database/xact-lock.js +1 -1
- package/dist/infra/events/kernel-events.d.ts +31 -3
- package/dist/infra/lifecycle/process-guards.js +4 -0
- package/dist/infra/lock/lock.service.d.ts +8 -0
- package/dist/infra/lock/lock.service.js +27 -0
- package/dist/infra/logging/logging.module.d.ts +4 -2
- package/dist/infra/logging/logging.module.js +24 -6
- package/dist/infra/presence/presence.module.d.ts +6 -0
- package/dist/infra/presence/presence.module.js +22 -0
- package/dist/infra/presence/replica-presence.d.ts +87 -0
- package/dist/infra/presence/replica-presence.js +189 -0
- package/dist/infra/queue/add-job-once.d.ts +14 -0
- package/dist/infra/queue/add-job-once.js +16 -0
- package/dist/infra/queue/redis-connection.d.ts +6 -0
- package/dist/infra/queue/redis-connection.js +7 -0
- package/dist/infra/redis/redis.module.js +6 -2
- package/dist/infra/throttler/named-throttlers.d.ts +12 -0
- package/dist/infra/throttler/named-throttlers.js +67 -0
- package/dist/infra/throttler/throttler.guard.js +1 -1
- package/dist/infra/tokens.d.ts +6 -1
- package/dist/infra/tokens.js +6 -1
- package/dist/kernel.module.js +15 -0
- package/dist/lifecycle/kernel-lifecycle.d.ts +4 -2
- package/dist/lifecycle/kernel-lifecycle.js +35 -7
- package/dist/local-devices/device-auth.controller.d.ts +42 -0
- package/dist/local-devices/device-auth.controller.js +116 -0
- package/dist/local-devices/device-auth.d.ts +119 -0
- package/dist/local-devices/device-auth.js +401 -0
- package/dist/local-devices/device-auth.module.d.ts +7 -0
- package/dist/local-devices/device-auth.module.js +25 -0
- package/dist/local-devices/device-routes.d.ts +36 -0
- package/dist/local-devices/device-routes.js +90 -0
- package/dist/local-devices/dto.d.ts +66 -0
- package/dist/local-devices/dto.js +44 -0
- package/dist/local-devices/keys.d.ts +25 -0
- package/dist/local-devices/keys.js +25 -0
- package/dist/local-devices/local-device-gateway.d.ts +134 -0
- package/dist/local-devices/local-device-gateway.js +542 -0
- package/dist/local-devices/local-device-provider.d.ts +89 -0
- package/dist/local-devices/local-device-provider.js +151 -0
- package/dist/local-devices/local-devices.module.d.ts +16 -0
- package/dist/local-devices/local-devices.module.js +44 -0
- package/dist/local-devices/machines.d.ts +118 -0
- package/dist/local-devices/machines.js +366 -0
- package/dist/local-devices/relay.d.ts +100 -0
- package/dist/local-devices/relay.js +373 -0
- package/dist/local-devices/targets.d.ts +28 -0
- package/dist/local-devices/targets.js +73 -0
- package/dist/log.d.ts +13 -1
- package/dist/log.js +93 -17
- package/dist/models/embeddings.d.ts +82 -0
- package/dist/models/embeddings.js +326 -0
- package/dist/models/enablement.controller.d.ts +40 -0
- package/dist/models/enablement.controller.js +74 -0
- package/dist/models/enablement.d.ts +101 -0
- package/dist/models/enablement.js +264 -0
- package/dist/models/models.module.d.ts +5 -1
- package/dist/models/models.module.js +16 -4
- package/dist/models/org-models.schemas.d.ts +8 -0
- package/dist/models/org-models.schemas.js +22 -0
- package/dist/models/prices.d.ts +8 -6
- package/dist/models/prices.js +11 -9
- package/dist/models/purposes.controller.d.ts +6 -4
- package/dist/models/purposes.controller.js +13 -7
- package/dist/models/purposes.d.ts +72 -14
- package/dist/models/purposes.js +115 -34
- package/dist/orgs/directory-sync.d.ts +14 -5
- package/dist/orgs/directory-sync.js +41 -17
- package/dist/orgs/offboarding.d.ts +12 -8
- package/dist/orgs/offboarding.js +54 -33
- package/dist/orgs/org-lock.d.ts +5 -0
- package/dist/orgs/org-lock.js +13 -0
- package/dist/orgs/org.guard.d.ts +10 -0
- package/dist/orgs/org.guard.js +43 -32
- package/dist/orgs/orgs.controller.d.ts +2 -5
- package/dist/orgs/orgs.controller.js +3 -6
- package/dist/orgs/orgs.module.js +3 -0
- package/dist/orgs/orgs.schemas.d.ts +8 -0
- package/dist/orgs/orgs.schemas.js +16 -0
- package/dist/orgs/orgs.service.d.ts +23 -8
- package/dist/orgs/orgs.service.js +38 -16
- package/dist/orgs/roles.d.ts +1 -1
- package/dist/orgs/roles.js +5 -1
- package/dist/orgs/settings.controller.d.ts +1 -1
- package/dist/orgs/settings.service.d.ts +66 -6
- package/dist/orgs/settings.service.js +89 -10
- package/dist/overrides.d.ts +16 -1
- package/dist/overrides.js +10 -0
- package/dist/platform/actor.d.ts +48 -0
- package/dist/platform/actor.js +100 -0
- package/dist/platform/agent-docs.d.ts +18 -0
- package/dist/platform/agent-docs.js +59 -0
- package/dist/platform/availability.d.ts +14 -0
- package/dist/platform/availability.js +43 -0
- package/dist/platform/errors.d.ts +28 -0
- package/dist/platform/errors.js +65 -0
- package/dist/platform/exclusions.d.ts +11 -0
- package/dist/platform/exclusions.js +774 -0
- package/dist/platform/method.d.ts +6 -0
- package/dist/platform/method.js +15 -0
- package/dist/platform/operation.d.ts +169 -0
- package/dist/platform/operation.js +102 -0
- package/dist/platform/ops/accounts.ops.d.ts +32 -0
- package/dist/platform/ops/accounts.ops.js +291 -0
- package/dist/platform/ops/admin-items.ops.d.ts +37 -0
- package/dist/platform/ops/admin-items.ops.js +278 -0
- package/dist/platform/ops/admin.ops.d.ts +38 -0
- package/dist/platform/ops/admin.ops.js +497 -0
- package/dist/platform/ops/agent-skills.ops.d.ts +50 -0
- package/dist/platform/ops/agent-skills.ops.js +509 -0
- package/dist/platform/ops/agent-templates.ops.d.ts +17 -0
- package/dist/platform/ops/agent-templates.ops.js +272 -0
- package/dist/platform/ops/agents.ops.d.ts +37 -0
- package/dist/platform/ops/agents.ops.js +730 -0
- package/dist/platform/ops/approvals.ops.d.ts +30 -0
- package/dist/platform/ops/approvals.ops.js +116 -0
- package/dist/platform/ops/background.ops.d.ts +14 -0
- package/dist/platform/ops/background.ops.js +134 -0
- package/dist/platform/ops/catalog-admin.ops.d.ts +92 -0
- package/dist/platform/ops/catalog-admin.ops.js +682 -0
- package/dist/platform/ops/channels.ops.d.ts +16 -0
- package/dist/platform/ops/channels.ops.js +195 -0
- package/dist/platform/ops/components.ops.d.ts +46 -0
- package/dist/platform/ops/components.ops.js +854 -0
- package/dist/platform/ops/connectors.ops.d.ts +17 -0
- package/dist/platform/ops/connectors.ops.js +190 -0
- package/dist/platform/ops/conversations.ops.d.ts +30 -0
- package/dist/platform/ops/conversations.ops.js +470 -0
- package/dist/platform/ops/devices.ops.d.ts +26 -0
- package/dist/platform/ops/devices.ops.js +311 -0
- package/dist/platform/ops/errors.d.ts +16 -0
- package/dist/platform/ops/errors.js +30 -0
- package/dist/platform/ops/evals.ops.d.ts +28 -0
- package/dist/platform/ops/evals.ops.js +783 -0
- package/dist/platform/ops/extensions-admin.ops.d.ts +25 -0
- package/dist/platform/ops/extensions-admin.ops.js +372 -0
- package/dist/platform/ops/extensions.ops.d.ts +25 -0
- package/dist/platform/ops/extensions.ops.js +347 -0
- package/dist/platform/ops/inbox.ops.d.ts +25 -0
- package/dist/platform/ops/inbox.ops.js +381 -0
- package/dist/platform/ops/marketplaces.ops.d.ts +22 -0
- package/dist/platform/ops/marketplaces.ops.js +466 -0
- package/dist/platform/ops/models.ops.d.ts +25 -0
- package/dist/platform/ops/models.ops.js +232 -0
- package/dist/platform/ops/org-plugins.ops.d.ts +35 -0
- package/dist/platform/ops/org-plugins.ops.js +388 -0
- package/dist/platform/ops/org-settings.ops.d.ts +18 -0
- package/dist/platform/ops/org-settings.ops.js +127 -0
- package/dist/platform/ops/orgs.ops.d.ts +28 -0
- package/dist/platform/ops/orgs.ops.js +298 -0
- package/dist/platform/ops/other-orgs.d.ts +20 -0
- package/dist/platform/ops/other-orgs.js +72 -0
- package/dist/platform/ops/paging.d.ts +14 -0
- package/dist/platform/ops/paging.js +20 -0
- package/dist/platform/ops/platform.ops.d.ts +30 -0
- package/dist/platform/ops/platform.ops.js +231 -0
- package/dist/platform/ops/plugins.ops.d.ts +35 -0
- package/dist/platform/ops/plugins.ops.js +476 -0
- package/dist/platform/ops/previewers.ops.d.ts +14 -0
- package/dist/platform/ops/previewers.ops.js +109 -0
- package/dist/platform/ops/requests.ops.d.ts +14 -0
- package/dist/platform/ops/requests.ops.js +191 -0
- package/dist/platform/ops/role.d.ts +4 -0
- package/dist/platform/ops/role.js +10 -0
- package/dist/platform/ops/setup.ops.d.ts +24 -0
- package/dist/platform/ops/setup.ops.js +212 -0
- package/dist/platform/ops/skills.ops.d.ts +17 -0
- package/dist/platform/ops/skills.ops.js +160 -0
- package/dist/platform/ops/summary.d.ts +10 -0
- package/dist/platform/ops/summary.js +18 -0
- package/dist/platform/ops/themes.ops.d.ts +14 -0
- package/dist/platform/ops/themes.ops.js +47 -0
- package/dist/platform/ops/ui.ops.d.ts +8 -0
- package/dist/platform/ops/ui.ops.js +41 -0
- package/dist/platform/ops/unavailable.d.ts +23 -0
- package/dist/platform/ops/unavailable.js +118 -0
- package/dist/platform/parity.d.ts +33 -0
- package/dist/platform/parity.js +272 -0
- package/dist/platform/platform-ops.module.d.ts +43 -0
- package/dist/platform/platform-ops.module.js +142 -0
- package/dist/platform/platform.module.d.ts +8 -0
- package/dist/platform/platform.module.js +25 -0
- package/dist/platform/registry.d.ts +30 -0
- package/dist/platform/registry.js +111 -0
- package/dist/platform/route-schemas.d.ts +18 -0
- package/dist/platform/route-schemas.js +85 -0
- package/dist/roles/gateway-role.d.ts +18 -3
- package/dist/roles/gateway-role.js +33 -5
- package/dist/roles/gateway.module.d.ts +2 -1
- package/dist/roles/gateway.module.js +6 -3
- package/dist/roles/worker-role.d.ts +6 -4
- package/dist/roles/worker-role.js +14 -7
- package/dist/roles/worker.module.d.ts +1 -1
- package/dist/roles/worker.module.js +21 -1
- package/dist/runtime/context/build.d.ts +21 -13
- package/dist/runtime/context/build.js +106 -29
- package/dist/runtime/context/claude-tools.d.ts +4 -1
- package/dist/runtime/context/claude-tools.js +13 -12
- package/dist/runtime/context/compaction.js +24 -1
- package/dist/runtime/context/device-paths.d.ts +40 -0
- package/dist/runtime/context/device-paths.js +48 -0
- package/dist/runtime/context/legacy-text.d.ts +22 -0
- package/dist/runtime/context/legacy-text.js +37 -0
- package/dist/runtime/context/reminders.d.ts +2 -0
- package/dist/runtime/context/reminders.js +2 -0
- package/dist/runtime/context/run-context.d.ts +65 -0
- package/dist/runtime/context/run-context.js +215 -0
- package/dist/runtime/context/skills.d.ts +29 -11
- package/dist/runtime/context/skills.js +46 -32
- package/dist/runtime/context/tool-changes.d.ts +27 -0
- package/dist/runtime/context/tool-changes.js +60 -0
- package/dist/runtime/hook-calls.d.ts +8 -1
- package/dist/runtime/hook-calls.js +40 -7
- package/dist/runtime/langgraph-loop.d.ts +3 -1
- package/dist/runtime/langgraph-loop.js +36 -17
- package/dist/runtime/loop.d.ts +35 -6
- package/dist/runtime/maintenance.d.ts +9 -4
- package/dist/runtime/maintenance.js +35 -8
- package/dist/runtime/model-call.d.ts +54 -11
- package/dist/runtime/model-call.js +105 -28
- package/dist/runtime/providers.d.ts +149 -29
- package/dist/runtime/providers.js +332 -63
- package/dist/runtime/run-context.service.d.ts +65 -0
- package/dist/runtime/run-context.service.js +236 -0
- package/dist/runtime/run-control.d.ts +11 -1
- package/dist/runtime/run-control.js +12 -0
- package/dist/runtime/run-drafts.d.ts +85 -0
- package/dist/runtime/run-drafts.js +230 -0
- package/dist/runtime/run-finish.d.ts +1 -1
- package/dist/runtime/run-jobs.d.ts +3 -5
- package/dist/runtime/run-jobs.js +7 -9
- package/dist/runtime/run-queue.d.ts +62 -5
- package/dist/runtime/run-queue.js +313 -40
- package/dist/runtime/run-worker.d.ts +19 -8
- package/dist/runtime/run-worker.js +105 -44
- package/dist/runtime/runtime.module.js +13 -3
- package/dist/runtime/step-log.d.ts +15 -4
- package/dist/runtime/step-log.js +24 -7
- package/dist/runtime/stream.controller.d.ts +23 -1
- package/dist/runtime/stream.controller.js +60 -3
- package/dist/runtime/stream.d.ts +4 -1
- package/dist/runtime/stream.js +27 -3
- package/dist/runtime/subagents/child.d.ts +55 -7
- package/dist/runtime/subagents/child.js +105 -7
- package/dist/runtime/subagents/definition.d.ts +31 -26
- package/dist/runtime/subagents/definition.js +89 -142
- package/dist/runtime/subagents/deliveries.d.ts +71 -0
- package/dist/runtime/subagents/deliveries.js +228 -0
- package/dist/runtime/subagents/dispatch.d.ts +116 -27
- package/dist/runtime/subagents/dispatch.js +213 -142
- package/dist/runtime/subagents/limits.d.ts +24 -5
- package/dist/runtime/subagents/limits.js +40 -6
- package/dist/runtime/subagents/messages.d.ts +95 -0
- package/dist/runtime/subagents/messages.js +328 -0
- package/dist/runtime/subagents/org-agents.js +2 -1
- package/dist/runtime/subagents/preamble.d.ts +4 -4
- package/dist/runtime/subagents/preamble.js +9 -7
- package/dist/runtime/subagents/progress.d.ts +8 -6
- package/dist/runtime/subagents/progress.js +11 -6
- package/dist/runtime/subagents/render.d.ts +30 -0
- package/dist/runtime/subagents/render.js +53 -0
- package/dist/runtime/subagents/roster.d.ts +25 -8
- package/dist/runtime/subagents/roster.js +48 -12
- package/dist/runtime/subagents/skill-fork.d.ts +4 -3
- package/dist/runtime/subagents/skill-fork.js +9 -5
- package/dist/runtime/subagents/status.d.ts +14 -0
- package/dist/runtime/subagents/status.js +23 -0
- package/dist/runtime/subagents/subagents.service.d.ts +9 -6
- package/dist/runtime/subagents/subagents.service.js +13 -8
- package/dist/runtime/usage-report-jobs.d.ts +88 -0
- package/dist/runtime/usage-report-jobs.js +158 -0
- package/dist/runtime/usage-report.d.ts +35 -39
- package/dist/runtime/usage-report.js +171 -97
- package/dist/runtime/waits.d.ts +148 -39
- package/dist/runtime/waits.js +426 -112
- package/dist/sandbox/jobs.d.ts +40 -13
- package/dist/sandbox/jobs.js +57 -20
- package/dist/sandbox/leases.d.ts +37 -54
- package/dist/sandbox/leases.js +71 -115
- package/dist/sandbox/providers.d.ts +34 -7
- package/dist/sandbox/providers.js +54 -9
- package/dist/sandbox/sandbox-file-reader.d.ts +35 -0
- package/dist/sandbox/sandbox-file-reader.js +98 -0
- package/dist/sandbox/sandbox.module.d.ts +3 -2
- package/dist/sandbox/sandbox.module.js +10 -4
- package/dist/sandbox/sandbox.service.d.ts +345 -132
- package/dist/sandbox/sandbox.service.js +883 -399
- package/dist/sandbox/unreachable.d.ts +30 -0
- package/dist/sandbox/unreachable.js +108 -0
- package/dist/setup/kernel-checks.d.ts +91 -0
- package/dist/setup/kernel-checks.js +295 -0
- package/dist/setup/oauth-token-probe.d.ts +47 -0
- package/dist/setup/oauth-token-probe.js +108 -0
- package/dist/setup/redact-check.d.ts +18 -0
- package/dist/setup/redact-check.js +46 -0
- package/dist/setup/setup-check-registry.d.ts +86 -0
- package/dist/setup/setup-check-registry.js +75 -0
- package/dist/setup/setup-checks.controller.d.ts +28 -0
- package/dist/setup/setup-checks.controller.js +78 -0
- package/dist/setup/setup-checks.schemas.d.ts +38 -0
- package/dist/setup/setup-checks.schemas.js +43 -0
- package/dist/setup/setup-checks.service.d.ts +144 -0
- package/dist/setup/setup-checks.service.js +683 -0
- package/dist/setup/setup-guides.controller.d.ts +18 -0
- package/dist/setup/setup-guides.controller.js +48 -0
- package/dist/setup/setup-guides.schemas.d.ts +10 -0
- package/dist/setup/setup-guides.schemas.js +6 -0
- package/dist/setup/setup-guides.service.d.ts +126 -0
- package/dist/setup/setup-guides.service.js +315 -0
- package/dist/setup/setup.module.d.ts +8 -0
- package/dist/setup/setup.module.js +31 -0
- package/dist/skills/agent-skills.controller.d.ts +48 -0
- package/dist/skills/agent-skills.controller.js +131 -0
- package/dist/skills/agent-skills.service.d.ts +262 -0
- package/dist/skills/agent-skills.service.js +996 -0
- package/dist/skills/catalog.d.ts +14 -11
- package/dist/skills/catalog.js +32 -50
- package/dist/skills/changes.controller.d.ts +12 -22
- package/dist/skills/changes.controller.js +27 -56
- package/dist/skills/changes.service.d.ts +69 -115
- package/dist/skills/changes.service.js +249 -598
- package/dist/skills/conversation-catalog.d.ts +53 -0
- package/dist/skills/conversation-catalog.js +149 -0
- package/dist/skills/invocable.controller.d.ts +1 -1
- package/dist/skills/invocable.controller.js +2 -2
- package/dist/skills/invocation-keys.d.ts +1 -1
- package/dist/skills/invocation-keys.js +1 -1
- package/dist/skills/invoke.d.ts +3 -3
- package/dist/skills/invoke.js +21 -8
- package/dist/skills/package.d.ts +15 -1
- package/dist/skills/package.js +14 -1
- package/dist/skills/skills.controller.d.ts +32 -6
- package/dist/skills/skills.controller.js +64 -11
- package/dist/skills/skills.module.js +25 -3
- package/dist/skills/skills.schemas.d.ts +44 -0
- package/dist/skills/skills.schemas.js +68 -0
- package/dist/skills/skills.service.d.ts +123 -26
- package/dist/skills/skills.service.js +493 -76
- package/dist/skills/usable.d.ts +82 -0
- package/dist/skills/usable.js +388 -0
- package/dist/themes/render-css.d.ts +13 -0
- package/dist/themes/render-css.js +135 -0
- package/dist/themes/theme-delivery.service.d.ts +36 -0
- package/dist/themes/theme-delivery.service.js +116 -0
- package/dist/themes/theme-state.d.ts +116 -0
- package/dist/themes/theme-state.js +221 -0
- package/dist/themes/theme-usage.d.ts +61 -0
- package/dist/themes/theme-usage.js +98 -0
- package/dist/themes/themes-public.controller.d.ts +33 -0
- package/dist/themes/themes-public.controller.js +98 -0
- package/dist/themes/themes.controller.d.ts +13 -0
- package/dist/themes/themes.controller.js +38 -0
- package/dist/themes/themes.module.d.ts +3 -0
- package/dist/themes/themes.module.js +21 -0
- package/dist/themes/themes.schemas.d.ts +3 -0
- package/dist/themes/themes.schemas.js +2 -0
- package/dist/themes/themes.service.d.ts +50 -0
- package/dist/themes/themes.service.js +99 -0
- package/dist/time-zone.d.ts +5 -0
- package/dist/time-zone.js +19 -0
- package/dist/tools/admin-connectors.d.ts +69 -0
- package/dist/tools/admin-connectors.js +135 -0
- package/dist/tools/approvals.controller.js +2 -3
- package/dist/tools/approvals.schemas.d.ts +21 -0
- package/dist/tools/approvals.schemas.js +15 -0
- package/dist/tools/approvals.service.d.ts +26 -2
- package/dist/tools/approvals.service.js +44 -5
- package/dist/tools/builtin-names.d.ts +104 -0
- package/dist/tools/builtin-names.js +164 -0
- package/dist/tools/builtins/agent.d.ts +27 -25
- package/dist/tools/builtins/agent.js +66 -63
- package/dist/tools/builtins/ask-user.d.ts +1 -1
- package/dist/tools/builtins/ask-user.js +5 -4
- package/dist/tools/builtins/builtin-tools.d.ts +23 -4
- package/dist/tools/builtins/builtin-tools.js +78 -12
- package/dist/tools/builtins/current-time.d.ts +26 -0
- package/dist/tools/builtins/current-time.js +99 -0
- package/dist/tools/builtins/handback.d.ts +28 -0
- package/dist/tools/builtins/handback.js +53 -0
- package/dist/tools/builtins/platform.d.ts +51 -0
- package/dist/tools/builtins/platform.js +451 -0
- package/dist/tools/builtins/read-tool-output.d.ts +1 -1
- package/dist/tools/builtins/read-tool-output.js +2 -2
- package/dist/tools/builtins/sandbox/bash.d.ts +5 -5
- package/dist/tools/builtins/sandbox/bash.js +291 -39
- package/dist/tools/builtins/sandbox/common.d.ts +135 -36
- package/dist/tools/builtins/sandbox/common.js +222 -62
- package/dist/tools/builtins/sandbox/deliver.d.ts +1 -1
- package/dist/tools/builtins/sandbox/deliver.js +19 -16
- package/dist/tools/builtins/sandbox/edit.d.ts +1 -1
- package/dist/tools/builtins/sandbox/edit.js +64 -50
- package/dist/tools/builtins/sandbox/file-state.d.ts +34 -0
- package/dist/tools/builtins/sandbox/file-state.js +34 -0
- package/dist/tools/builtins/sandbox/glob-match.d.ts +1 -1
- package/dist/tools/builtins/sandbox/glob-match.js +1 -1
- package/dist/tools/builtins/sandbox/glob.d.ts +1 -1
- package/dist/tools/builtins/sandbox/glob.js +17 -12
- package/dist/tools/builtins/sandbox/grep.d.ts +7 -4
- package/dist/tools/builtins/sandbox/grep.js +153 -34
- package/dist/tools/builtins/sandbox/index.d.ts +9 -5
- package/dist/tools/builtins/sandbox/index.js +13 -5
- package/dist/tools/builtins/sandbox/read.d.ts +2 -2
- package/dist/tools/builtins/sandbox/read.js +29 -19
- package/dist/tools/builtins/sandbox/task-output.d.ts +79 -0
- package/dist/tools/builtins/sandbox/task-output.js +334 -0
- package/dist/tools/builtins/sandbox/task-stop.d.ts +10 -0
- package/dist/tools/builtins/sandbox/task-stop.js +113 -0
- package/dist/tools/builtins/sandbox/write.d.ts +1 -1
- package/dist/tools/builtins/sandbox/write.js +51 -44
- package/dist/tools/builtins/send-message.d.ts +56 -0
- package/dist/tools/builtins/send-message.js +100 -0
- package/dist/tools/builtins/skill-load.d.ts +29 -18
- package/dist/tools/builtins/skill-load.js +125 -73
- package/dist/tools/builtins/tool-search.d.ts +13 -9
- package/dist/tools/builtins/tool-search.js +25 -14
- package/dist/tools/builtins/web/errors.d.ts +8 -0
- package/dist/tools/builtins/web/errors.js +53 -0
- package/dist/tools/builtins/web/extract.d.ts +62 -0
- package/dist/tools/builtins/web/extract.js +271 -0
- package/dist/tools/builtins/web/fetch.d.ts +55 -0
- package/dist/tools/builtins/web/fetch.js +175 -0
- package/dist/tools/builtins/web/index.d.ts +13 -0
- package/dist/tools/builtins/web/index.js +12 -0
- package/dist/tools/builtins/web/page-cache.d.ts +25 -0
- package/dist/tools/builtins/web/page-cache.js +77 -0
- package/dist/tools/builtins/web/search.d.ts +25 -0
- package/dist/tools/builtins/web/search.js +210 -0
- package/dist/tools/builtins/web/url.d.ts +17 -0
- package/dist/tools/builtins/web/url.js +43 -0
- package/dist/tools/connector-account-policies.d.ts +51 -0
- package/dist/tools/connector-account-policies.js +165 -0
- package/dist/tools/connectors.controller.d.ts +74 -9
- package/dist/tools/connectors.controller.js +133 -16
- package/dist/tools/connectors.schemas.d.ts +27 -0
- package/dist/tools/connectors.schemas.js +34 -0
- package/dist/tools/connectors.service.d.ts +101 -8
- package/dist/tools/connectors.service.js +266 -28
- package/dist/tools/credentials.d.ts +23 -0
- package/dist/tools/credentials.js +90 -1
- package/dist/tools/display-names.d.ts +9 -0
- package/dist/tools/display-names.js +24 -0
- package/dist/tools/drift.js +5 -5
- package/dist/tools/elicitation.js +1 -1
- package/dist/tools/extension-tools.controller.d.ts +14 -0
- package/dist/tools/extension-tools.controller.js +37 -0
- package/dist/tools/info.d.ts +61 -4
- package/dist/tools/info.js +119 -33
- package/dist/tools/legacy-data.d.ts +34 -0
- package/dist/tools/legacy-data.js +76 -0
- package/dist/tools/legacy-keys.d.ts +51 -0
- package/dist/tools/legacy-keys.js +114 -0
- package/dist/tools/naming.d.ts +1 -5
- package/dist/tools/naming.js +1 -7
- package/dist/tools/oauth/flow-paths.d.ts +1 -1
- package/dist/tools/oauth/flow-paths.js +1 -1
- package/dist/tools/oauth/flow.js +1 -1
- package/dist/tools/oauth/tokens.d.ts +54 -7
- package/dist/tools/oauth/tokens.js +87 -17
- package/dist/tools/org-tool-switches.d.ts +89 -0
- package/dist/tools/org-tool-switches.js +201 -0
- package/dist/tools/outputs.js +1 -1
- package/dist/tools/pipeline.d.ts +67 -47
- package/dist/tools/pipeline.js +319 -380
- package/dist/tools/policy.d.ts +30 -23
- package/dist/tools/policy.js +142 -64
- package/dist/tools/questions.controller.d.ts +1 -1
- package/dist/tools/questions.controller.js +1 -1
- package/dist/tools/questions.service.d.ts +23 -2
- package/dist/tools/questions.service.js +104 -2
- package/dist/tools/registry.d.ts +189 -68
- package/dist/tools/registry.js +318 -236
- package/dist/tools/resources.d.ts +1 -1
- package/dist/tools/resources.js +1 -1
- package/dist/tools/tools.module.js +31 -3
- package/dist/tools/validate.js +1 -1
- package/dist/ui/admin-ui.controller.d.ts +56 -0
- package/dist/ui/admin-ui.controller.js +192 -0
- package/dist/ui/arrangement.d.ts +65 -0
- package/dist/ui/arrangement.js +171 -0
- package/dist/ui/embed-token.d.ts +2 -2
- package/dist/ui/embed-token.js +30 -5
- package/dist/ui/registry.d.ts +42 -17
- package/dist/ui/registry.js +46 -14
- package/dist/ui/slots.controller.d.ts +11 -0
- package/dist/ui/slots.controller.js +25 -0
- package/dist/ui/ui-stream.d.ts +20 -3
- package/dist/ui/ui-stream.js +25 -7
- package/dist/ui/ui.schemas.d.ts +70 -0
- package/dist/ui/ui.schemas.js +65 -0
- package/dist/ui/views.controller.d.ts +35 -49
- package/dist/ui/views.controller.js +48 -70
- package/dist/ui/views.d.ts +112 -18
- package/dist/ui/views.js +254 -47
- package/package.json +6 -3
- package/src/migrations/0063_tool_keys_claude_code.sql +220 -0
- package/src/migrations/0064_account_last_org.sql +7 -0
- package/src/migrations/0065_conversation_archive.sql +8 -0
- package/src/migrations/0066_extension_display_name.sql +4 -0
- package/src/migrations/0067_agent_profiles.sql +20 -0
- package/src/migrations/0068_agent_avatar_uploads.sql +7 -0
- package/src/migrations/0069_attachments_agent_idx.sql +3 -0
- package/src/migrations/0070_background_tasks.sql +37 -0
- package/src/migrations/0071_background_tasks_reserve.sql +6 -0
- package/src/migrations/0072_background_tasks_stopping.sql +5 -0
- package/src/migrations/0073_org_extension_point_defaults.sql +11 -0
- package/src/migrations/0074_subagent_tree.sql +50 -0
- package/src/migrations/0075_plugin_scope.sql +61 -0
- package/src/migrations/0076_skills_created_by_nullable.sql +6 -0
- package/src/migrations/0077_scope_requests.sql +52 -0
- package/src/migrations/0078_scope_grant_switches.sql +18 -0
- package/src/migrations/0079_scope_live_install_switches.sql +19 -0
- package/src/migrations/0080_rename_enterprise_admin.sql +18 -0
- package/src/migrations/0081_platform_components.sql +129 -0
- package/src/migrations/0082_platform_migration.sql +33 -0
- package/src/migrations/0083_plugin_scope_sync_failures.sql +15 -0
- package/src/migrations/0084_org_owned_items.sql +85 -0
- package/src/migrations/0085_agent_templates_phase4.sql +45 -0
- package/src/migrations/0086_org_layering.sql +30 -0
- package/src/migrations/0087_approval_summary.sql +6 -0
- package/src/migrations/0088_environments.sql +80 -0
- package/src/migrations/0089_model_kinds_usage.sql +38 -0
- package/src/migrations/0090_initial_passwords.sql +27 -0
- package/src/migrations/0091_account_time_zone.sql +4 -0
- package/src/migrations/0092_tools_default_on.sql +27 -0
- package/src/migrations/0093_connected_environments.sql +37 -0
- package/src/migrations/0094_environment_paths_idx.sql +7 -0
- package/src/migrations/0095_environment_files_resets.sql +5 -0
- package/src/migrations/0096_environment_demoted_default.sql +18 -0
- package/src/migrations/0097_extension_installs_enabled_at.sql +16 -0
- package/src/migrations/0098_single_provider_running_first.sql +41 -0
- package/src/migrations/0099_channel_connection_guide_ack.sql +6 -0
- package/src/migrations/0100_catalog_files.sql +13 -0
- package/src/migrations/0101_marketplace_icons.sql +32 -0
- package/src/migrations/0102_themes.sql +64 -0
- package/src/migrations/0103_ui_theme_setting.sql +7 -0
- package/src/migrations/0104_connector_tool_account_policies.sql +16 -0
- package/src/migrations/0105_devices_rename.sql +136 -0
- package/src/migrations/0106_setup_guides_v2.sql +10 -0
- package/src/migrations/0107_extension_client_builds.sql +50 -0
- package/src/migrations/0108_question_skipped.sql +6 -0
- package/src/migrations/0109_audit_platform_idx.sql +5 -0
- package/src/migrations/0110_usage_time_idx.sql +8 -0
- package/src/migrations/0111_agent_skill_sharing.sql +22 -0
- package/src/migrations/0112_skill_share_requests.sql +4 -0
- package/dist/catalog/upgrade-targets.d.ts +0 -56
- package/dist/catalog/upgrade-targets.js +0 -90
- package/dist/conversations/sandbox-status.d.ts +0 -24
- package/dist/conversations/sandbox-status.js +0 -52
- package/dist/extensions/org-config.controller.d.ts +0 -24
- package/dist/extensions/org-config.controller.js +0 -62
- package/dist/tools/builtins/sandbox/names.d.ts +0 -7
- package/dist/tools/builtins/sandbox/names.js +0 -20
- package/dist/tools/builtins/skill-write.d.ts +0 -59
- package/dist/tools/builtins/skill-write.js +0 -244
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { BUILTIN } from "./builtin-names.js";
|
|
2
|
+
export const LEGACY_BUILTINS = Object.freeze({
|
|
3
|
+
sandbox_bash: {
|
|
4
|
+
name: BUILTIN.Bash,
|
|
5
|
+
params: { timeoutSeconds: "timeout" },
|
|
6
|
+
msParams: ["timeout"],
|
|
7
|
+
},
|
|
8
|
+
sandbox_read: { name: BUILTIN.Read, params: { path: "file_path" } },
|
|
9
|
+
sandbox_write: { name: BUILTIN.Write, params: { path: "file_path" } },
|
|
10
|
+
sandbox_edit: {
|
|
11
|
+
name: BUILTIN.Edit,
|
|
12
|
+
params: {
|
|
13
|
+
path: "file_path",
|
|
14
|
+
oldText: "old_string",
|
|
15
|
+
newText: "new_string",
|
|
16
|
+
replaceAll: "replace_all",
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
sandbox_glob: { name: BUILTIN.Glob, params: {} },
|
|
20
|
+
sandbox_grep: { name: BUILTIN.Grep, params: { ignoreCase: "-i" } },
|
|
21
|
+
sandbox_deliver: { name: BUILTIN.Deliver, params: { path: "file_path" } },
|
|
22
|
+
skill_load: { name: BUILTIN.Skill, params: { name: "skill" } },
|
|
23
|
+
ask_user: { name: BUILTIN.AskUserQuestion, params: {} },
|
|
24
|
+
read_tool_output: { name: BUILTIN.ReadToolOutput, params: {} },
|
|
25
|
+
tool_search: { name: BUILTIN.ToolSearch, params: { limit: "max_results" } },
|
|
26
|
+
agent: { name: BUILTIN.Agent, params: {} },
|
|
27
|
+
});
|
|
28
|
+
/** Is `key` a release-candidate builtin name? */
|
|
29
|
+
export const isLegacyBuiltinKey = (key) => Object.hasOwn(LEGACY_BUILTINS, key);
|
|
30
|
+
/** A key in the current format for connector and extension tools (`mcp__…`, `plugin__…`). */
|
|
31
|
+
const CURRENT_PREFIXED_RE = /^(mcp|plugin)__/;
|
|
32
|
+
/** An rc connector or extension key `<x>__<tool>` (the SQL of migration 0063 uses the same test). */
|
|
33
|
+
const LEGACY_PREFIXED_RE = /^[a-z0-9][a-z0-9_-]*__./;
|
|
34
|
+
/**
|
|
35
|
+
* Is `key` an rc `<x>__<tool>` key, which only a {@link LegacyScope} can map? Keys in the current
|
|
36
|
+
* format (`mcp__…`, `plugin__…`) never are.
|
|
37
|
+
*/
|
|
38
|
+
export const isLegacyPrefixedKey = (key) => LEGACY_PREFIXED_RE.test(key) && !CURRENT_PREFIXED_RE.test(key);
|
|
39
|
+
/**
|
|
40
|
+
* The current key of a release-candidate key: a builtin by the frozen map; `<x>__<tool>` becomes
|
|
41
|
+
* `mcp__x__tool` when `x` is only a connector slug in `scope`, `plugin__x__tool` when only an
|
|
42
|
+
* extension name, else null (ambiguous, unknown, or not an old key; a key in the current format
|
|
43
|
+
* is never mapped again).
|
|
44
|
+
*/
|
|
45
|
+
export function legacyToolKey(key, scope) {
|
|
46
|
+
if (isLegacyBuiltinKey(key))
|
|
47
|
+
return LEGACY_BUILTINS[key].name;
|
|
48
|
+
if (scope === undefined || !isLegacyPrefixedKey(key))
|
|
49
|
+
return null;
|
|
50
|
+
const i = key.indexOf("__");
|
|
51
|
+
if (i <= 0 || i + 2 >= key.length)
|
|
52
|
+
return null;
|
|
53
|
+
const head = key.slice(0, i);
|
|
54
|
+
const tool = key.slice(i + 2);
|
|
55
|
+
const connector = scope.connectorSlugs.has(head);
|
|
56
|
+
const extension = scope.extensionNames.has(head);
|
|
57
|
+
if (connector === extension)
|
|
58
|
+
return null;
|
|
59
|
+
return connector ? `mcp__${head}__${tool}` : `plugin__${head}__${tool}`;
|
|
60
|
+
}
|
|
61
|
+
/** The input of an old builtin call in the current parameter names (seconds -> milliseconds). */
|
|
62
|
+
export function legacyToolInput(oldKey, input) {
|
|
63
|
+
if (!isLegacyBuiltinKey(oldKey))
|
|
64
|
+
return input;
|
|
65
|
+
if (typeof input !== "object" || input === null || Array.isArray(input))
|
|
66
|
+
return input;
|
|
67
|
+
const { params, msParams } = LEGACY_BUILTINS[oldKey];
|
|
68
|
+
const out = {};
|
|
69
|
+
for (const [k, v] of Object.entries(input)) {
|
|
70
|
+
const next = Object.hasOwn(params, k) ? params[k] : k;
|
|
71
|
+
out[next] = msParams?.includes(next) === true && typeof v === "number" ? v * 1000 : v;
|
|
72
|
+
}
|
|
73
|
+
return out;
|
|
74
|
+
}
|
|
75
|
+
/** The new parameters of the builtins whose parameters were renamed (model-visible hint text). */
|
|
76
|
+
const HINT_PARAMS = {
|
|
77
|
+
Bash: "command, description, timeout in milliseconds",
|
|
78
|
+
Read: "file_path, offset, limit",
|
|
79
|
+
Write: "file_path, content",
|
|
80
|
+
Edit: "file_path, old_string, new_string, replace_all",
|
|
81
|
+
Grep: "pattern, path, glob, -i, output_mode, -n, -A, -B, -C, head_limit, offset",
|
|
82
|
+
Deliver: "file_path, name",
|
|
83
|
+
Skill: "skill, args",
|
|
84
|
+
ToolSearch: "query, max_results",
|
|
85
|
+
};
|
|
86
|
+
/** The model-visible hint for a call to an old builtin key; null for any other key. */
|
|
87
|
+
export function legacyHint(key) {
|
|
88
|
+
if (!isLegacyBuiltinKey(key))
|
|
89
|
+
return null;
|
|
90
|
+
const { name } = LEGACY_BUILTINS[key];
|
|
91
|
+
const params = HINT_PARAMS[name];
|
|
92
|
+
return `Tool "${key}" no longer exists; it is now "${name}"${params === undefined ? "" : ` (parameters: ${params})`}.`;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* The current key(s) an rc key stands for, to name in a refusal when a definition is saved with
|
|
96
|
+
* it: a builtin's new name; for `<x>__<tool>`, the candidates among `known` (the agent's tool
|
|
97
|
+
* keys), else both `mcp__<x>__<tool>` and `plugin__<x>__<tool>`. Empty when `key` is no rc key.
|
|
98
|
+
*/
|
|
99
|
+
export function legacyKeyCandidates(key, known) {
|
|
100
|
+
if (isLegacyBuiltinKey(key))
|
|
101
|
+
return [LEGACY_BUILTINS[key].name];
|
|
102
|
+
if (!isLegacyPrefixedKey(key))
|
|
103
|
+
return [];
|
|
104
|
+
const all = [`mcp__${key}`, `plugin__${key}`];
|
|
105
|
+
const hit = all.filter((k) => known?.has(k) === true);
|
|
106
|
+
return hit.length > 0 ? hit : all;
|
|
107
|
+
}
|
|
108
|
+
/** The refusal text for saving rc key `key` (null when it is none): names the new key(s). */
|
|
109
|
+
export function legacyKeySaveText(key, known) {
|
|
110
|
+
const c = legacyKeyCandidates(key, known);
|
|
111
|
+
if (c.length === 0)
|
|
112
|
+
return null;
|
|
113
|
+
return `"${key}" is a release-candidate tool key; use ${c.map((x) => `"${x}"`).join(" or ")}`;
|
|
114
|
+
}
|
package/dist/tools/naming.d.ts
CHANGED
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* 工具命名(Global Constraints):模型可见的工具 key 必须匹配 `^[a-zA-Z0-9_-]{1,64}$`;
|
|
3
|
-
* 插件工具为
|
|
3
|
+
* 插件工具为 `plugin__<plugin>__<tool>`,连接器工具为 `mcp__<connectorSlug>__<tool>`(拼与拆见 SDK 的 tool-key.ts),内置工具就是其名字本身。
|
|
4
4
|
* 超长或含非法字符的 key 一律报出来,不截断、不猜。
|
|
5
5
|
*/
|
|
6
6
|
export declare const TOOL_KEY_RE: RegExp;
|
|
7
7
|
export declare const TOOL_KEY_MAX = 64;
|
|
8
8
|
/** 连接器 slug:小写字母开头,小写字母 / 数字 / 下划线,最长 24。 */
|
|
9
9
|
export declare const APP_SLUG_RE: RegExp;
|
|
10
|
-
/** 前缀与工具名之间的分隔符。 */
|
|
11
|
-
export declare const KEY_SEPARATOR = "__";
|
|
12
10
|
/**
|
|
13
11
|
* slug 是否合法:除正则外,不得含连续下划线、不得以下划线结尾——否则 `a__b` + `c` 与 `a` + `b__c`
|
|
14
12
|
* 会拼出同一个 key。
|
|
@@ -21,7 +19,5 @@ export declare const SLUG_RULE = "Slug must start with a lowercase letter, conta
|
|
|
21
19
|
* 截到 24 位(再去掉尾部下划线)。推导不出合法 slug(如名称全是中文)时返回 null,由调用方要求显式给出。
|
|
22
20
|
*/
|
|
23
21
|
export declare function deriveSlug(name: string): string | null;
|
|
24
|
-
/** 拼 `<prefix>__<name>`。 */
|
|
25
|
-
export declare function toolKey(prefix: string, name: string): string;
|
|
26
22
|
/** key 不合法时返回英文原因,合法时返回 null。 */
|
|
27
23
|
export declare function toolKeyIssue(key: string): string | null;
|
package/dist/tools/naming.js
CHANGED
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* 工具命名(Global Constraints):模型可见的工具 key 必须匹配 `^[a-zA-Z0-9_-]{1,64}$`;
|
|
3
|
-
* 插件工具为
|
|
3
|
+
* 插件工具为 `plugin__<plugin>__<tool>`,连接器工具为 `mcp__<connectorSlug>__<tool>`(拼与拆见 SDK 的 tool-key.ts),内置工具就是其名字本身。
|
|
4
4
|
* 超长或含非法字符的 key 一律报出来,不截断、不猜。
|
|
5
5
|
*/
|
|
6
6
|
export const TOOL_KEY_RE = /^[a-zA-Z0-9_-]{1,64}$/;
|
|
7
7
|
export const TOOL_KEY_MAX = 64;
|
|
8
8
|
/** 连接器 slug:小写字母开头,小写字母 / 数字 / 下划线,最长 24。 */
|
|
9
9
|
export const APP_SLUG_RE = /^[a-z][a-z0-9_]{0,23}$/;
|
|
10
|
-
/** 前缀与工具名之间的分隔符。 */
|
|
11
|
-
export const KEY_SEPARATOR = "__";
|
|
12
10
|
/**
|
|
13
11
|
* slug 是否合法:除正则外,不得含连续下划线、不得以下划线结尾——否则 `a__b` + `c` 与 `a` + `b__c`
|
|
14
12
|
* 会拼出同一个 key。
|
|
@@ -31,10 +29,6 @@ export function deriveSlug(name) {
|
|
|
31
29
|
.replace(/_+$/, "");
|
|
32
30
|
return isValidSlug(s) ? s : null;
|
|
33
31
|
}
|
|
34
|
-
/** 拼 `<prefix>__<name>`。 */
|
|
35
|
-
export function toolKey(prefix, name) {
|
|
36
|
-
return `${prefix}${KEY_SEPARATOR}${name}`;
|
|
37
|
-
}
|
|
38
32
|
/** key 不合法时返回英文原因,合法时返回 null。 */
|
|
39
33
|
export function toolKeyIssue(key) {
|
|
40
34
|
if (key.length > TOOL_KEY_MAX) {
|
|
@@ -6,7 +6,7 @@ export declare const OAUTH_STATE_TTL_SECONDS = 600;
|
|
|
6
6
|
/** 浏览器绑定 Cookie:回调必须来自发起连接的同一个浏览器。 */
|
|
7
7
|
export declare const OAUTH_BINDING_COOKIE = "cap_oauth";
|
|
8
8
|
/** 回调失败、或连接时没给回跳页面时回到的网页(next-intl 会补语言前缀)。 */
|
|
9
|
-
export declare const DEFAULT_RETURN_PATH = "/
|
|
9
|
+
export declare const DEFAULT_RETURN_PATH = "/account/connections";
|
|
10
10
|
/** OAuth 连接器需要 `http.publicUrl`(回调地址);未配置 → 这条校验错误。 */
|
|
11
11
|
export declare const publicUrlRequired: () => ApiError;
|
|
12
12
|
export declare function callbackUrl(publicUrl: string): string;
|
|
@@ -8,7 +8,7 @@ export const OAUTH_STATE_TTL_SECONDS = 600;
|
|
|
8
8
|
/** 浏览器绑定 Cookie:回调必须来自发起连接的同一个浏览器。 */
|
|
9
9
|
export const OAUTH_BINDING_COOKIE = "cap_oauth";
|
|
10
10
|
/** 回调失败、或连接时没给回跳页面时回到的网页(next-intl 会补语言前缀)。 */
|
|
11
|
-
export const DEFAULT_RETURN_PATH = "/
|
|
11
|
+
export const DEFAULT_RETURN_PATH = "/account/connections";
|
|
12
12
|
/** OAuth 连接器需要 `http.publicUrl`(回调地址);未配置 → 这条校验错误。 */
|
|
13
13
|
export const publicUrlRequired = () => new ApiError("validation_failed", "Request validation failed", [
|
|
14
14
|
{
|
package/dist/tools/oauth/flow.js
CHANGED
|
@@ -178,7 +178,7 @@ let OAuthFlow = class OAuthFlow {
|
|
|
178
178
|
redirect_uri: rec.redirectUri,
|
|
179
179
|
code_verifier: rec.verifier,
|
|
180
180
|
resource: client.resource,
|
|
181
|
-
}, oauthHttpOptions(this.config.get()));
|
|
181
|
+
}, oauthHttpOptions(this.config.get()), { tokenTypes: app.auth.tokenTypes });
|
|
182
182
|
}
|
|
183
183
|
catch (e) {
|
|
184
184
|
this.log.warn("oauth code exchange failed", { orgId, connectorId, err: e });
|
|
@@ -41,13 +41,24 @@ export type OAuthOwner = {
|
|
|
41
41
|
kind: "user";
|
|
42
42
|
accountId: string;
|
|
43
43
|
};
|
|
44
|
-
/**
|
|
44
|
+
/**
|
|
45
|
+
* The token endpoint refused with an RFC 6749-shaped error code (`invalid_grant`, ...): a 400 / 401
|
|
46
|
+
* with `error`, or a 200 whose body carries `ok: false` (Slack) or an `error` and no token.
|
|
47
|
+
*/
|
|
45
48
|
export declare class OAuthGrantError extends Error {
|
|
46
49
|
readonly error: string;
|
|
47
50
|
constructor(error: string);
|
|
48
51
|
}
|
|
49
|
-
/**
|
|
52
|
+
/**
|
|
53
|
+
* These codes say the credential itself is dead (refresh token / client); only they invalidate the
|
|
54
|
+
* tokens. Besides RFC 6749's, Slack's `invalid_refresh_token`, `token_revoked` and `token_expired`.
|
|
55
|
+
*/
|
|
50
56
|
export declare const INVALIDATING_ERRORS: ReadonlySet<string>;
|
|
57
|
+
/**
|
|
58
|
+
* `token_type` values (lower case) stored and sent as `Authorization: Bearer`: RFC 6750 `Bearer`
|
|
59
|
+
* and Slack's `user` (`oauth.v2.user.access`). A template may allow more with `auth.tokenTypes`.
|
|
60
|
+
*/
|
|
61
|
+
export declare const BEARER_TOKEN_TYPES: ReadonlySet<string>;
|
|
51
62
|
/** 授权服务器暂时不可用(网络、超时、5xx、畸形响应):模型可见的英文说明,计入「服务不可用」。 */
|
|
52
63
|
export declare class OAuthUnavailable extends ToolError {
|
|
53
64
|
constructor(message?: string);
|
|
@@ -59,12 +70,46 @@ export declare class OAuthReconnectRequired extends Error {
|
|
|
59
70
|
}
|
|
60
71
|
/** access token 过期前多久就刷新。 */
|
|
61
72
|
export declare const REFRESH_MARGIN_MS = 60000;
|
|
73
|
+
/** What the connector's auth settings add to a token request. */
|
|
74
|
+
export interface TokenRequestOptions {
|
|
75
|
+
/** More `token_type` values to accept as bearer tokens (`auth.tokenTypes`, case-insensitive). */
|
|
76
|
+
tokenTypes?: readonly string[] | undefined;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* The headers and form of a token request (RFC 6749 §3.2): client_id / secret per the client's
|
|
80
|
+
* auth method (Basic form-encodes them first, §2.3.1; otherwise `client_id`, plus
|
|
81
|
+
* `client_secret` for `client_secret_post`). Empty parameters are left out.
|
|
82
|
+
*/
|
|
83
|
+
export declare function tokenRequestInit(client: OAuthClientRecord, params: Record<string, string | undefined>): {
|
|
84
|
+
headers: Record<string, string>;
|
|
85
|
+
body: URLSearchParams;
|
|
86
|
+
};
|
|
87
|
+
/** The form encoding of a Basic client credential part (RFC 6749 §2.3.1). */
|
|
88
|
+
export declare const formEncode: (s: string) => string;
|
|
89
|
+
/** The `Authorization` value of `client_secret_basic` (both parts form-encoded first). */
|
|
90
|
+
export declare const basicClientAuth: (clientId: string, clientSecret: string) => string;
|
|
91
|
+
/**
|
|
92
|
+
* The refusal code of a token endpoint answer, or null when it is not a refusal (the one parser of
|
|
93
|
+
* token refusals): a 400 / 401 whose JSON body has an RFC 6749-shaped `error`, or a 200 whose body
|
|
94
|
+
* carries `ok: false` (Slack) or an `error` and no `access_token`, with a code that is not
|
|
95
|
+
* transient. Only codes matching the RFC 6749 shape are returned, never other text of the body.
|
|
96
|
+
*/
|
|
97
|
+
export declare function parseTokenRefusal(status: number, body: unknown): string | null;
|
|
62
98
|
/**
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
99
|
+
* Calls the token endpoint (RFC 6749 §3.2), sending client_id / secret per the client's auth method
|
|
100
|
+
* (Basic form-encodes them first, §2.3.1).
|
|
101
|
+
* - 400 / 401 with a parsable RFC 6749 `error` code -> OAuthGrantError.
|
|
102
|
+
* - 200 with `ok: false` (Slack reports every error this way), or with an `error` code and no
|
|
103
|
+
* `access_token` -> OAuthGrantError with that code (`ok: false` wins over an `access_token`); a
|
|
104
|
+
* transient code (`temporarily_unavailable`, `server_error`, Slack's `ratelimited`, ...) or no
|
|
105
|
+
* parsable code -> OAuthUnavailable.
|
|
106
|
+
* - Everything else (network error, timeout, 429, 408, 403 and other 4xx, a 4xx without a code,
|
|
107
|
+
* 5xx, 3xx, a malformed body) -> OAuthUnavailable: a gateway's rate limit or a WAF block is not a
|
|
108
|
+
* dead credential.
|
|
109
|
+
* - A `token_type` other than Bearer / `user` / `opts.tokenTypes` -> OAuthGrantError
|
|
110
|
+
* `unsupported_token_type`; an accepted one is stored as `Bearer`.
|
|
66
111
|
*/
|
|
67
|
-
export declare function tokenRequest(client: OAuthClientRecord, params: Record<string, string | undefined>, http: OAuthHttpOptions): Promise<OAuthTokenRecord>;
|
|
112
|
+
export declare function tokenRequest(client: OAuthClientRecord, params: Record<string, string | undefined>, http: OAuthHttpOptions, opts?: TokenRequestOptions): Promise<OAuthTokenRecord>;
|
|
68
113
|
/** 令牌与客户端的存取(由 Credentials 实现:信封加密存入 capybara.secrets)。 */
|
|
69
114
|
export interface OAuthStore {
|
|
70
115
|
readClient(orgId: string, connectorId: string): Promise<OAuthClientRecord | null>;
|
|
@@ -73,11 +118,13 @@ export interface OAuthStore {
|
|
|
73
118
|
deleteTokens(orgId: string, connectorId: string, owner: OAuthOwner): Promise<void>;
|
|
74
119
|
}
|
|
75
120
|
/** 取 token 所需的认证方式字段(与 credentials.ts 的 OAuthAuth 对应)。 */
|
|
76
|
-
export type TokenAuth = {
|
|
121
|
+
export type TokenAuth = ({
|
|
77
122
|
type: "oauth_code";
|
|
78
123
|
} | {
|
|
79
124
|
type: "oauth_client";
|
|
80
125
|
scopes?: string[] | undefined;
|
|
126
|
+
}) & {
|
|
127
|
+
tokenTypes?: string[] | undefined;
|
|
81
128
|
};
|
|
82
129
|
/**
|
|
83
130
|
* access token 的获取与刷新。
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { randomUUID } from "node:crypto";
|
|
2
2
|
import { ToolError } from "@capybara-hq/plugin-sdk";
|
|
3
3
|
import { OAuthSetupError, oauthFetch } from "./discovery.js";
|
|
4
|
-
/**
|
|
4
|
+
/**
|
|
5
|
+
* The token endpoint refused with an RFC 6749-shaped error code (`invalid_grant`, ...): a 400 / 401
|
|
6
|
+
* with `error`, or a 200 whose body carries `ok: false` (Slack) or an `error` and no token.
|
|
7
|
+
*/
|
|
5
8
|
export class OAuthGrantError extends Error {
|
|
6
9
|
error;
|
|
7
10
|
constructor(error) {
|
|
@@ -10,12 +13,37 @@ export class OAuthGrantError extends Error {
|
|
|
10
13
|
this.name = "OAuthGrantError";
|
|
11
14
|
}
|
|
12
15
|
}
|
|
13
|
-
/**
|
|
16
|
+
/**
|
|
17
|
+
* These codes say the credential itself is dead (refresh token / client); only they invalidate the
|
|
18
|
+
* tokens. Besides RFC 6749's, Slack's `invalid_refresh_token`, `token_revoked` and `token_expired`.
|
|
19
|
+
*/
|
|
14
20
|
export const INVALIDATING_ERRORS = new Set([
|
|
15
21
|
"invalid_grant",
|
|
16
22
|
"invalid_client",
|
|
17
23
|
"unauthorized_client",
|
|
24
|
+
"invalid_refresh_token",
|
|
25
|
+
"token_revoked",
|
|
26
|
+
"token_expired",
|
|
27
|
+
]);
|
|
28
|
+
/**
|
|
29
|
+
* Error codes of a 200 error body that mean "try again later", not a refusal: they count as
|
|
30
|
+
* unavailable like a 429 / 5xx. RFC 6749's `temporarily_unavailable` / `server_error` and Slack's
|
|
31
|
+
* Web API codes.
|
|
32
|
+
*/
|
|
33
|
+
const TRANSIENT_ERRORS = new Set([
|
|
34
|
+
"temporarily_unavailable",
|
|
35
|
+
"server_error",
|
|
36
|
+
"ratelimited",
|
|
37
|
+
"service_unavailable",
|
|
38
|
+
"internal_error",
|
|
39
|
+
"fatal_error",
|
|
40
|
+
"request_timeout",
|
|
18
41
|
]);
|
|
42
|
+
/**
|
|
43
|
+
* `token_type` values (lower case) stored and sent as `Authorization: Bearer`: RFC 6750 `Bearer`
|
|
44
|
+
* and Slack's `user` (`oauth.v2.user.access`). A template may allow more with `auth.tokenTypes`.
|
|
45
|
+
*/
|
|
46
|
+
export const BEARER_TOKEN_TYPES = new Set(["bearer", "user"]);
|
|
19
47
|
/** 授权服务器暂时不可用(网络、超时、5xx、畸形响应):模型可见的英文说明,计入「服务不可用」。 */
|
|
20
48
|
export class OAuthUnavailable extends ToolError {
|
|
21
49
|
constructor(message = "Could not obtain an access token: the app's authorization server is unavailable. Try again later.") {
|
|
@@ -40,11 +68,11 @@ const isObj = (v) => typeof v === "object" && v !== null && !Array.isArray(v);
|
|
|
40
68
|
/** RFC 6749 §5.2 形式的错误码(只有这种串才写进日志 / 错误,不回显对方任意文本)。 */
|
|
41
69
|
const OAUTH_ERROR_RE = /^[a-z][a-z0-9_]{0,63}$/;
|
|
42
70
|
/**
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
*
|
|
71
|
+
* The headers and form of a token request (RFC 6749 §3.2): client_id / secret per the client's
|
|
72
|
+
* auth method (Basic form-encodes them first, §2.3.1; otherwise `client_id`, plus
|
|
73
|
+
* `client_secret` for `client_secret_post`). Empty parameters are left out.
|
|
46
74
|
*/
|
|
47
|
-
export
|
|
75
|
+
export function tokenRequestInit(client, params) {
|
|
48
76
|
const form = new URLSearchParams();
|
|
49
77
|
for (const [k, v] of Object.entries(params))
|
|
50
78
|
if (v !== undefined && v !== "")
|
|
@@ -54,8 +82,7 @@ export async function tokenRequest(client, params, http) {
|
|
|
54
82
|
accept: "application/json",
|
|
55
83
|
};
|
|
56
84
|
if (client.authMethod === "client_secret_basic" && client.clientSecret !== undefined) {
|
|
57
|
-
|
|
58
|
-
headers.authorization = `Basic ${Buffer.from(`${enc(client.clientId)}:${enc(client.clientSecret)}`).toString("base64")}`;
|
|
85
|
+
headers.authorization = basicClientAuth(client.clientId, client.clientSecret);
|
|
59
86
|
}
|
|
60
87
|
else {
|
|
61
88
|
form.set("client_id", client.clientId);
|
|
@@ -63,6 +90,46 @@ export async function tokenRequest(client, params, http) {
|
|
|
63
90
|
form.set("client_secret", client.clientSecret);
|
|
64
91
|
}
|
|
65
92
|
}
|
|
93
|
+
return { headers, body: form };
|
|
94
|
+
}
|
|
95
|
+
/** The form encoding of a Basic client credential part (RFC 6749 §2.3.1). */
|
|
96
|
+
export const formEncode = (s) => encodeURIComponent(s).replace(/%20/g, "+");
|
|
97
|
+
/** The `Authorization` value of `client_secret_basic` (both parts form-encoded first). */
|
|
98
|
+
export const basicClientAuth = (clientId, clientSecret) => `Basic ${Buffer.from(`${formEncode(clientId)}:${formEncode(clientSecret)}`).toString("base64")}`;
|
|
99
|
+
/**
|
|
100
|
+
* The refusal code of a token endpoint answer, or null when it is not a refusal (the one parser of
|
|
101
|
+
* token refusals): a 400 / 401 whose JSON body has an RFC 6749-shaped `error`, or a 200 whose body
|
|
102
|
+
* carries `ok: false` (Slack) or an `error` and no `access_token`, with a code that is not
|
|
103
|
+
* transient. Only codes matching the RFC 6749 shape are returned, never other text of the body.
|
|
104
|
+
*/
|
|
105
|
+
export function parseTokenRefusal(status, body) {
|
|
106
|
+
const code = isObj(body) ? body.error : undefined;
|
|
107
|
+
const shaped = typeof code === "string" && OAUTH_ERROR_RE.test(code) ? code : null;
|
|
108
|
+
if (status === 400 || status === 401)
|
|
109
|
+
return shaped;
|
|
110
|
+
if (status !== 200 || !isObj(body))
|
|
111
|
+
return null;
|
|
112
|
+
if (body.ok === false || (body.access_token === undefined && body.error !== undefined)) {
|
|
113
|
+
return shaped !== null && !TRANSIENT_ERRORS.has(shaped) ? shaped : null;
|
|
114
|
+
}
|
|
115
|
+
return null;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Calls the token endpoint (RFC 6749 §3.2), sending client_id / secret per the client's auth method
|
|
119
|
+
* (Basic form-encodes them first, §2.3.1).
|
|
120
|
+
* - 400 / 401 with a parsable RFC 6749 `error` code -> OAuthGrantError.
|
|
121
|
+
* - 200 with `ok: false` (Slack reports every error this way), or with an `error` code and no
|
|
122
|
+
* `access_token` -> OAuthGrantError with that code (`ok: false` wins over an `access_token`); a
|
|
123
|
+
* transient code (`temporarily_unavailable`, `server_error`, Slack's `ratelimited`, ...) or no
|
|
124
|
+
* parsable code -> OAuthUnavailable.
|
|
125
|
+
* - Everything else (network error, timeout, 429, 408, 403 and other 4xx, a 4xx without a code,
|
|
126
|
+
* 5xx, 3xx, a malformed body) -> OAuthUnavailable: a gateway's rate limit or a WAF block is not a
|
|
127
|
+
* dead credential.
|
|
128
|
+
* - A `token_type` other than Bearer / `user` / `opts.tokenTypes` -> OAuthGrantError
|
|
129
|
+
* `unsupported_token_type`; an accepted one is stored as `Bearer`.
|
|
130
|
+
*/
|
|
131
|
+
export async function tokenRequest(client, params, http, opts = {}) {
|
|
132
|
+
const { headers, body: form } = tokenRequestInit(client, params);
|
|
66
133
|
let res;
|
|
67
134
|
try {
|
|
68
135
|
res = await oauthFetch(client.tokenEndpoint, { method: "POST", headers, body: form }, http);
|
|
@@ -79,18 +146,21 @@ export async function tokenRequest(client, params, http) {
|
|
|
79
146
|
catch {
|
|
80
147
|
body = undefined;
|
|
81
148
|
}
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
throw new OAuthGrantError(code);
|
|
86
|
-
}
|
|
149
|
+
const refusal = parseTokenRefusal(res.status, body);
|
|
150
|
+
if (refusal !== null)
|
|
151
|
+
throw new OAuthGrantError(refusal);
|
|
87
152
|
if (res.status !== 200 || !isObj(body))
|
|
88
153
|
throw new OAuthUnavailable();
|
|
154
|
+
// an error body without a usable code (or a transient one): unavailable, not a refusal
|
|
155
|
+
if (body.ok === false || (body.access_token === undefined && body.error !== undefined)) {
|
|
156
|
+
throw new OAuthUnavailable();
|
|
157
|
+
}
|
|
89
158
|
const { access_token, refresh_token, expires_in, token_type, scope } = body;
|
|
90
159
|
if (typeof access_token !== "string" || access_token === "")
|
|
91
160
|
throw new OAuthUnavailable();
|
|
92
|
-
const type = typeof token_type === "string" ? token_type : "Bearer";
|
|
93
|
-
|
|
161
|
+
const type = (typeof token_type === "string" ? token_type : "Bearer").toLowerCase();
|
|
162
|
+
const accepted = BEARER_TOKEN_TYPES.has(type) || opts.tokenTypes?.some((t) => t.toLowerCase() === type);
|
|
163
|
+
if (!accepted)
|
|
94
164
|
throw new OAuthGrantError("unsupported_token_type");
|
|
95
165
|
return {
|
|
96
166
|
access_token,
|
|
@@ -229,14 +299,14 @@ export class OAuthTokens {
|
|
|
229
299
|
grant_type: "refresh_token",
|
|
230
300
|
refresh_token: rec.refresh_token,
|
|
231
301
|
resource: client.resource,
|
|
232
|
-
}, this.http());
|
|
302
|
+
}, this.http(), { tokenTypes: auth.tokenTypes });
|
|
233
303
|
// 授权服务器不轮换时沿用旧 refresh token
|
|
234
304
|
if (next.refresh_token === undefined)
|
|
235
305
|
next = { ...next, refresh_token: rec.refresh_token };
|
|
236
306
|
}
|
|
237
307
|
else {
|
|
238
308
|
const scopes = auth.scopes ?? client.scopes;
|
|
239
|
-
next = await tokenRequest(client, { grant_type: "client_credentials", scope: scopes?.join(" "), resource: client.resource }, this.http());
|
|
309
|
+
next = await tokenRequest(client, { grant_type: "client_credentials", scope: scopes?.join(" "), resource: client.resource }, this.http(), { tokenTypes: auth.tokenTypes });
|
|
240
310
|
}
|
|
241
311
|
}
|
|
242
312
|
catch (e) {
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { ExtensionHost } from "../extensions/host.js";
|
|
2
|
+
import { KernelDb } from "../infra/database/kernel-db.js";
|
|
3
|
+
import { TransactionHost } from "../infra/database/transaction-host.js";
|
|
4
|
+
import { OrgLock } from "../orgs/org-lock.js";
|
|
5
|
+
/** One tool of an extension with its switch in the org. */
|
|
6
|
+
export interface OrgToolSwitch {
|
|
7
|
+
tool: string;
|
|
8
|
+
enabled: boolean;
|
|
9
|
+
}
|
|
10
|
+
/** An org agent whose current version selects the tool being switched off. */
|
|
11
|
+
export interface AffectedAgent {
|
|
12
|
+
id: string;
|
|
13
|
+
name: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* The result of {@link OrgToolSwitches.set}: the PCM §5 rule 8 preview of a switch-off (the org's
|
|
17
|
+
* agents that selected the tool and the hash to confirm it with), or the switch applied.
|
|
18
|
+
*/
|
|
19
|
+
export type OrgToolSwitchResult = {
|
|
20
|
+
applied: false;
|
|
21
|
+
affectedAgents: AffectedAgent[];
|
|
22
|
+
confirm: string;
|
|
23
|
+
} | {
|
|
24
|
+
applied: true;
|
|
25
|
+
};
|
|
26
|
+
/** Model-visible (English): why a turned-off extension tool is not offered. */
|
|
27
|
+
export declare const toolTurnedOffReason: (key: string) => string;
|
|
28
|
+
/**
|
|
29
|
+
* Per-org switches of single extension tools (layering spec A §7, table `org_tool_switches`): an
|
|
30
|
+
* org admin turns off one tool an extension registers (`ctx.tools.register`); it is then not
|
|
31
|
+
* offered to any agent of the org (`ToolRegistry.forAgent`) and refused if called
|
|
32
|
+
* (`ToolPipeline`). No row means on. A row of a tool the extension stops registering is kept and
|
|
33
|
+
* applies again if the tool comes back. Builtin and connector tools are out of scope. Read from PG
|
|
34
|
+
* on every use, no in-process state.
|
|
35
|
+
*/
|
|
36
|
+
export declare class OrgToolSwitches {
|
|
37
|
+
private readonly kdb;
|
|
38
|
+
readonly txHost: TransactionHost;
|
|
39
|
+
private readonly host;
|
|
40
|
+
/** The org row lock: re-checks `org.extensions.manage` under the lock. */
|
|
41
|
+
private readonly orgLock;
|
|
42
|
+
constructor(kdb: KernelDb, txHost: TransactionHost, host: Pick<ExtensionHost, "tools" | "current">,
|
|
43
|
+
/** The org row lock: re-checks `org.extensions.manage` under the lock. */
|
|
44
|
+
orgLock: Pick<OrgLock, "lockAndAuthorize">);
|
|
45
|
+
private get db();
|
|
46
|
+
/** The tool names `plugin` registers on this replica, in registration order. */
|
|
47
|
+
private registered;
|
|
48
|
+
/**
|
|
49
|
+
* The tools of an extension the org sees: running here and visible under plugin scope, else 404
|
|
50
|
+
* `extension.not_found` (an invisible one is answered like an unknown one). An extension that
|
|
51
|
+
* runs but registers no tools (a channel, a model provider) answers an empty list, not 404.
|
|
52
|
+
*/
|
|
53
|
+
private toolsFor;
|
|
54
|
+
/** The stored switches of the org (all extensions, or one), `false` ones only matter. */
|
|
55
|
+
private offRows;
|
|
56
|
+
/** Every tool the extension registers on this replica with its switch (default on). */
|
|
57
|
+
list(orgId: string, plugin: string): Promise<OrgToolSwitch[]>;
|
|
58
|
+
/**
|
|
59
|
+
* What turning one tool off would affect (nothing written): the agents selecting it and the
|
|
60
|
+
* confirm hash {@link set} takes, or null when it is off already. Unknown tool -> 404
|
|
61
|
+
* `extension.tool_not_found`.
|
|
62
|
+
*/
|
|
63
|
+
previewOff(orgId: string, plugin: string, tool: string): Promise<{
|
|
64
|
+
affectedAgents: AffectedAgent[];
|
|
65
|
+
confirm: string;
|
|
66
|
+
} | null>;
|
|
67
|
+
/** The model-visible keys (`plugin__<extension>__<tool>`) of the tools turned off in the org. */
|
|
68
|
+
offKeys(orgId: string): Promise<Set<string>>;
|
|
69
|
+
/** Whether the org turned off this tool. */
|
|
70
|
+
isToolOff(orgId: string, plugin: string, tool: string): Promise<boolean>;
|
|
71
|
+
/**
|
|
72
|
+
* Switches one tool in the org. On applies at once. Off, while the tool is on: without
|
|
73
|
+
* `confirm` the preview (the org's agents whose current version does not turn it off) and its hash,
|
|
74
|
+
* with the current hash the switch is written (a changed preview -> 409 `plugin.switch_stale`).
|
|
75
|
+
* A tool the extension does not register -> 404 `extension.tool_not_found`. A change writes the
|
|
76
|
+
* audit row `extension.tool_switched`.
|
|
77
|
+
*/
|
|
78
|
+
set(orgId: string, plugin: string, tool: string, enabled: boolean, actor: {
|
|
79
|
+
accountId: string;
|
|
80
|
+
tokenId?: string | undefined;
|
|
81
|
+
/** Merged into the audit detail (a write made through the Platform tool). */
|
|
82
|
+
auditDetail?: Record<string, unknown>;
|
|
83
|
+
}, confirm?: string): Promise<OrgToolSwitchResult>;
|
|
84
|
+
/**
|
|
85
|
+
* The org's live agents whose current version has extension tool `tool` of `plugin` on: tools
|
|
86
|
+
* are on by default (tools default-on spec §4), so every agent that does not turn it off.
|
|
87
|
+
*/
|
|
88
|
+
private agentsSelecting;
|
|
89
|
+
}
|