@capybara-hq/kernel 0.1.0-rc.2 → 0.1.0-rc.21
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 +94 -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 +85 -10
- package/dist/extensions/bootstrap.js +215 -36
- 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 +9 -3
- package/dist/lifecycle/kernel-lifecycle.js +51 -11
- 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,53 @@
|
|
|
1
|
+
import { type Selectable } from "kysely";
|
|
2
|
+
import type { EventLog } from "../conversations/event-log.js";
|
|
3
|
+
import type { SkillChangeRequestsTable } from "../db/kernel-schema.js";
|
|
4
|
+
import type { KernelDb } from "../infra/database/kernel-db.js";
|
|
5
|
+
import type { KernelLogger } from "../log.js";
|
|
6
|
+
import { type SkillsSnapshot } from "../runtime/context/skills.js";
|
|
7
|
+
/** What appending a conversation's skills catalog snapshot needs. */
|
|
8
|
+
export interface ConversationCatalogDeps {
|
|
9
|
+
db: KernelDb;
|
|
10
|
+
log: KernelLogger;
|
|
11
|
+
eventLog: EventLog;
|
|
12
|
+
}
|
|
13
|
+
/** Cancelled requests: draft prefixes to delete and (conversation, seq) to publish after the commit. */
|
|
14
|
+
export interface CancelledDrafts {
|
|
15
|
+
prefixes: string[];
|
|
16
|
+
seqs: [string, number][];
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* In the caller's transaction, derives the conversation's next skills catalog snapshot from its
|
|
20
|
+
* latest one and appends it (only when different). It first locks the conversation row (the lock
|
|
21
|
+
* `EventLog.append` takes) and reads the latest snapshot under it, so no other snapshot slips in
|
|
22
|
+
* between "read latest" and "append". Returns the seq written, or null when nothing was written;
|
|
23
|
+
* the caller calls `eventLog.notify` after the commit.
|
|
24
|
+
* `derive` gets the whole latest payload, so `pinned` and `toolMap` are carried forward; a pinned
|
|
25
|
+
* entry is kept only while `skills` has the same id, version and source (pinned ⊆ skills), and the
|
|
26
|
+
* pinned bodies still fit the size limit. The tool map is only recomputed at run start.
|
|
27
|
+
*/
|
|
28
|
+
export declare function appendConversationCatalog(deps: ConversationCatalogDeps, conversationId: string, derive: (base: SkillsSnapshot) => SkillsSnapshot | null, idemKey: string, runId?: string | null): Promise<number | null>;
|
|
29
|
+
/**
|
|
30
|
+
* When a draft stops applying (rejected / cancelled), appends a reverting snapshot to the
|
|
31
|
+
* requesting conversation in the caller's transaction: derived from that conversation's latest
|
|
32
|
+
* snapshot, the draft's entry is replaced by the skill's current real version (already the
|
|
33
|
+
* post-decision state in the transaction; for a version proposal the org skill it targets), or
|
|
34
|
+
* removed when there is none. No snapshot is written when the latest one no longer has the draft,
|
|
35
|
+
* nor for a request without a conversation or a share request (no trial). While the conversation
|
|
36
|
+
* runs, the notice lands at the current position (built after the tool results) and applies at
|
|
37
|
+
* the next step. A removal does not guess an org skill of the same name (it was replaced in the
|
|
38
|
+
* snapshot); the next run start's resolution brings it back.
|
|
39
|
+
*/
|
|
40
|
+
export declare function revertTrialCatalog(deps: ConversationCatalogDeps, req: Selectable<SkillChangeRequestsTable>): Promise<number | null>;
|
|
41
|
+
/**
|
|
42
|
+
* In the caller's transaction (the request row locked), cancels a pending request: status
|
|
43
|
+
* `cancelled`, audit `skill.change_decided` with the reason. A version draft also gets a
|
|
44
|
+
* reverting snapshot in its conversation (unless `revert` is false: the caller appends the next
|
|
45
|
+
* one) and its prefix is queued in `out` for deletion after the commit; a share request points at
|
|
46
|
+
* the skill's own version files, which stay.
|
|
47
|
+
*/
|
|
48
|
+
export declare function cancelRequestIn(deps: ConversationCatalogDeps, req: Selectable<SkillChangeRequestsTable>, out: CancelledDrafts, how: {
|
|
49
|
+
actorAccountId: string;
|
|
50
|
+
actorTokenId?: string;
|
|
51
|
+
reason: string;
|
|
52
|
+
revert?: boolean;
|
|
53
|
+
}): Promise<void>;
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import { sql } from "kysely";
|
|
2
|
+
import { audit } from "../identity/audit.js";
|
|
3
|
+
import { sameSnapshot, } from "../runtime/context/skills.js";
|
|
4
|
+
import { fitPinned, invocationOf, lockLatestCatalog } from "./catalog.js";
|
|
5
|
+
const byName = (a, b) => a.name < b.name ? -1 : a.name > b.name ? 1 : 0;
|
|
6
|
+
/**
|
|
7
|
+
* In the caller's transaction, derives the conversation's next skills catalog snapshot from its
|
|
8
|
+
* latest one and appends it (only when different). It first locks the conversation row (the lock
|
|
9
|
+
* `EventLog.append` takes) and reads the latest snapshot under it, so no other snapshot slips in
|
|
10
|
+
* between "read latest" and "append". Returns the seq written, or null when nothing was written;
|
|
11
|
+
* the caller calls `eventLog.notify` after the commit.
|
|
12
|
+
* `derive` gets the whole latest payload, so `pinned` and `toolMap` are carried forward; a pinned
|
|
13
|
+
* entry is kept only while `skills` has the same id, version and source (pinned ⊆ skills), and the
|
|
14
|
+
* pinned bodies still fit the size limit. The tool map is only recomputed at run start.
|
|
15
|
+
*/
|
|
16
|
+
export async function appendConversationCatalog(deps, conversationId, derive, idemKey, runId) {
|
|
17
|
+
const base = (await lockLatestCatalog(deps.db.db, conversationId)) ?? { skills: [] };
|
|
18
|
+
const derived = derive(base);
|
|
19
|
+
if (derived === null)
|
|
20
|
+
return null;
|
|
21
|
+
const skills = [...derived.skills].sort(byName);
|
|
22
|
+
const live = (p) => skills.some((s) => s.id === p.id && s.version === p.version && s.source === p.source);
|
|
23
|
+
const pinned = fitPinned((derived.pinned ?? []).filter(live), deps.log, { conversationId });
|
|
24
|
+
const next = {
|
|
25
|
+
skills,
|
|
26
|
+
...(pinned.length > 0 && { pinned }),
|
|
27
|
+
...(derived.toolMap !== undefined && { toolMap: derived.toolMap }),
|
|
28
|
+
};
|
|
29
|
+
if (sameSnapshot(base, next))
|
|
30
|
+
return null;
|
|
31
|
+
const written = await deps.eventLog.appendIn(conversationId, [
|
|
32
|
+
{
|
|
33
|
+
type: "skills_catalog",
|
|
34
|
+
...(runId !== undefined && runId !== null && { runId }),
|
|
35
|
+
idemKey,
|
|
36
|
+
payload: next,
|
|
37
|
+
},
|
|
38
|
+
]);
|
|
39
|
+
return Math.max(...written.map((e) => e.seq));
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* When a draft stops applying (rejected / cancelled), appends a reverting snapshot to the
|
|
43
|
+
* requesting conversation in the caller's transaction: derived from that conversation's latest
|
|
44
|
+
* snapshot, the draft's entry is replaced by the skill's current real version (already the
|
|
45
|
+
* post-decision state in the transaction; for a version proposal the org skill it targets), or
|
|
46
|
+
* removed when there is none. No snapshot is written when the latest one no longer has the draft,
|
|
47
|
+
* nor for a request without a conversation or a share request (no trial). While the conversation
|
|
48
|
+
* runs, the notice lands at the current position (built after the tool results) and applies at
|
|
49
|
+
* the next step. A removal does not guess an org skill of the same name (it was replaced in the
|
|
50
|
+
* snapshot); the next run start's resolution brings it back.
|
|
51
|
+
*/
|
|
52
|
+
export async function revertTrialCatalog(deps, req) {
|
|
53
|
+
const conversationId = req.requested_in_conversation;
|
|
54
|
+
if (conversationId === null || req.kind === "share")
|
|
55
|
+
return null;
|
|
56
|
+
const name = req.proposed_version.manifest.name;
|
|
57
|
+
let q = deps.db
|
|
58
|
+
.selectFrom("skills")
|
|
59
|
+
.innerJoin("skill_versions", (j) => j
|
|
60
|
+
.onRef("skill_versions.skill_id", "=", "skills.id")
|
|
61
|
+
.onRef("skill_versions.version", "=", "skills.current_version"))
|
|
62
|
+
.select([
|
|
63
|
+
"skills.id",
|
|
64
|
+
"skills.current_version",
|
|
65
|
+
"skill_versions.manifest",
|
|
66
|
+
"skill_versions.object_prefix",
|
|
67
|
+
])
|
|
68
|
+
.where("skills.org_id", "=", req.org_id)
|
|
69
|
+
.where("skills.deleted_at", "is", null);
|
|
70
|
+
// A proposal on a shared org skill goes back to that skill's current version; one served from
|
|
71
|
+
// a platform skill (promoted or linked without a pin) is removed instead, and the next run start
|
|
72
|
+
// resolves it again
|
|
73
|
+
q =
|
|
74
|
+
req.skill_id !== null
|
|
75
|
+
? q
|
|
76
|
+
.where("skills.id", "=", req.skill_id)
|
|
77
|
+
.where("skills.scope", "=", "org")
|
|
78
|
+
.where((eb) => eb.or([
|
|
79
|
+
eb("skills.platform_skill_id", "is", null),
|
|
80
|
+
eb("skills.pinned_version", "is not", null),
|
|
81
|
+
]))
|
|
82
|
+
: q
|
|
83
|
+
.where("skills.scope", "=", "agent")
|
|
84
|
+
.where("skills.agent_id", "=", req.agent_id)
|
|
85
|
+
.where("skills.name", "=", name);
|
|
86
|
+
const real = await q.executeTakeFirst();
|
|
87
|
+
return appendConversationCatalog(deps, conversationId, (base) => {
|
|
88
|
+
if (!base.skills.some((s) => s.source === req.object_prefix))
|
|
89
|
+
return null;
|
|
90
|
+
const rest = base.skills.filter((s) => s.source !== req.object_prefix);
|
|
91
|
+
// The draft's pinned entry goes (Decision 8): the next run start pins the real version
|
|
92
|
+
return {
|
|
93
|
+
...base,
|
|
94
|
+
// A manual-only current version (phase D) stays out of the model's catalog
|
|
95
|
+
skills: real && invocationOf(real.manifest).model
|
|
96
|
+
? [
|
|
97
|
+
...rest,
|
|
98
|
+
{
|
|
99
|
+
id: real.id,
|
|
100
|
+
name,
|
|
101
|
+
description: real.manifest.description,
|
|
102
|
+
version: real.current_version,
|
|
103
|
+
source: real.object_prefix,
|
|
104
|
+
},
|
|
105
|
+
]
|
|
106
|
+
: rest,
|
|
107
|
+
...(base.pinned && {
|
|
108
|
+
pinned: base.pinned.filter((p) => p.source !== req.object_prefix),
|
|
109
|
+
}),
|
|
110
|
+
};
|
|
111
|
+
}, `skills_catalog:revert:${req.id}`);
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* In the caller's transaction (the request row locked), cancels a pending request: status
|
|
115
|
+
* `cancelled`, audit `skill.change_decided` with the reason. A version draft also gets a
|
|
116
|
+
* reverting snapshot in its conversation (unless `revert` is false: the caller appends the next
|
|
117
|
+
* one) and its prefix is queued in `out` for deletion after the commit; a share request points at
|
|
118
|
+
* the skill's own version files, which stay.
|
|
119
|
+
*/
|
|
120
|
+
export async function cancelRequestIn(deps, req, out, how) {
|
|
121
|
+
await deps.db
|
|
122
|
+
.updateTable("skill_change_requests")
|
|
123
|
+
.set({ status: "cancelled", decided_at: sql `now()` })
|
|
124
|
+
.where("id", "=", req.id)
|
|
125
|
+
.execute();
|
|
126
|
+
await audit(deps.db.db, {
|
|
127
|
+
actorAccountId: how.actorAccountId,
|
|
128
|
+
...(how.actorTokenId !== undefined && { actorTokenId: how.actorTokenId }),
|
|
129
|
+
orgId: req.org_id,
|
|
130
|
+
action: "skill.change_decided",
|
|
131
|
+
target: req.id,
|
|
132
|
+
detail: {
|
|
133
|
+
decision: "cancelled",
|
|
134
|
+
reason: how.reason,
|
|
135
|
+
kind: req.kind,
|
|
136
|
+
agentId: req.agent_id,
|
|
137
|
+
name: req.proposed_version.manifest.name,
|
|
138
|
+
},
|
|
139
|
+
});
|
|
140
|
+
if (req.kind === "share")
|
|
141
|
+
return;
|
|
142
|
+
if (how.revert !== false) {
|
|
143
|
+
const seq = await revertTrialCatalog(deps, req);
|
|
144
|
+
if (seq !== null && req.requested_in_conversation !== null) {
|
|
145
|
+
out.seqs.push([req.requested_in_conversation, seq]);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
out.prefixes.push(req.object_prefix);
|
|
149
|
+
}
|
|
@@ -8,13 +8,13 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
8
8
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
9
9
|
};
|
|
10
10
|
import { Controller, Get, Header, Inject, Param } from "@nestjs/common";
|
|
11
|
-
import { z } from "zod";
|
|
12
11
|
import { CurrentPrincipal, requireUser } from "../identity/principal.js";
|
|
13
12
|
import { createZodDto } from "../infra/validation/create-zod-dto.js";
|
|
14
13
|
import { ZQuery } from "../infra/validation/zod-params.js";
|
|
15
14
|
import { CurrentOrg, OrgAction } from "../orgs/org.guard.js";
|
|
16
15
|
import { SkillInvoker } from "./invoke.js";
|
|
17
|
-
|
|
16
|
+
import { InvocableSkillsQuerySchema } from "./skills.schemas.js";
|
|
17
|
+
const ListQuery = InvocableSkillsQuerySchema;
|
|
18
18
|
class InvocableSkillsQuery extends createZodDto(ListQuery, "InvocableSkillsQuery") {
|
|
19
19
|
}
|
|
20
20
|
/**
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* The SKILL.md invocation keys (package ecosystem phase D) and their lenient reading: readers of
|
|
3
3
|
* stored files (catalog install and upgrade) and the Claude Code translation drop a key the strict
|
|
4
4
|
* `parseSkillMd` checks would refuse, with the reason, instead of refusing the skill or storing an
|
|
5
|
-
* invocation nobody can use. Uploads
|
|
5
|
+
* invocation nobody can use. Uploads and native imports stay strict.
|
|
6
6
|
*/
|
|
7
7
|
/** The frontmatter keys that make up a skill's invocation metadata. */
|
|
8
8
|
export declare const INVOCATION_KEYS: readonly ["disable-model-invocation", "user-invocable", "context", "agent", "argument-hint", "arguments"];
|
|
@@ -3,7 +3,7 @@ import { parseSkillMd } from "@capybara-hq/plugin-sdk";
|
|
|
3
3
|
* The SKILL.md invocation keys (package ecosystem phase D) and their lenient reading: readers of
|
|
4
4
|
* stored files (catalog install and upgrade) and the Claude Code translation drop a key the strict
|
|
5
5
|
* `parseSkillMd` checks would refuse, with the reason, instead of refusing the skill or storing an
|
|
6
|
-
* invocation nobody can use. Uploads
|
|
6
|
+
* invocation nobody can use. Uploads and native imports stay strict.
|
|
7
7
|
*/
|
|
8
8
|
/** The frontmatter keys that make up a skill's invocation metadata. */
|
|
9
9
|
export const INVOCATION_KEYS = [
|
package/dist/skills/invoke.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AgentLookup } from "../agents/agent-lookup.js";
|
|
2
|
-
import type
|
|
2
|
+
import { type AgentDefinition } from "../agents/definition.js";
|
|
3
3
|
import type { EventPayload } from "../conversations/events.js";
|
|
4
4
|
import type { KernelSchemaDb } from "../db/kernel-schema.js";
|
|
5
5
|
import { ApiError } from "../errors.js";
|
|
@@ -121,14 +121,14 @@ export declare class SkillInvoker {
|
|
|
121
121
|
* `storage.unavailable` (`skill_unreadable`) when the version is gone or its SKILL.md cannot be
|
|
122
122
|
* read, plain `storage.unavailable` when storage is down. `task` renders the text for the
|
|
123
123
|
* sub-agent's effective definition: the shell-injection line only when the sub-agent has
|
|
124
|
-
* `
|
|
124
|
+
* `Bash` (batch 3 review m1).
|
|
125
125
|
*/
|
|
126
126
|
renderTask(a: {
|
|
127
127
|
orgId: string;
|
|
128
128
|
conversationId: string;
|
|
129
129
|
skill: InvocationRecord;
|
|
130
130
|
}): Promise<{
|
|
131
|
-
task: (child: Pick<AgentDefinition, "
|
|
131
|
+
task: (child: Pick<AgentDefinition, "disabledTools" | "subagentTools">) => string;
|
|
132
132
|
warning?: string;
|
|
133
133
|
}>;
|
|
134
134
|
/** Reads and parses the version's SKILL.md (checked against the manifest), returns the body. */
|
package/dist/skills/invoke.js
CHANGED
|
@@ -7,16 +7,19 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
8
8
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
9
9
|
};
|
|
10
|
-
import { escapeSkillInvocationTags, hasShellInjection, parseSkillMd, renderSkillBody, renderSkillInvocation, SKILL_ENTRY_FILE, SKILL_INVOCATION_LIMITS, } from "@capybara-hq/plugin-sdk";
|
|
10
|
+
import { escapeSkillInvocationTags, hasShellInjection, parseSkillMd, renderSkillBody, renderSkillInvocation, SKILL_ENTRY_FILE, SKILL_INVOCATION_LIMITS, skillDigest, } from "@capybara-hq/plugin-sdk";
|
|
11
11
|
import { Inject, Injectable } from "@nestjs/common";
|
|
12
12
|
import { AgentLookup } from "../agents/agent-lookup.js";
|
|
13
|
+
import { builtinDisabled } from "../agents/definition.js";
|
|
13
14
|
import { ApiError } from "../errors.js";
|
|
14
15
|
import { KernelDb } from "../infra/database/kernel-db.js";
|
|
15
16
|
import { KERNEL_LOGGER } from "../infra/tokens.js";
|
|
16
17
|
import { isGeneralAlias, resolveSkillForkType } from "../runtime/subagents/roster.js";
|
|
17
18
|
import { StorageService } from "../storage/storage.service.js";
|
|
19
|
+
import { BUILTIN } from "../tools/builtin-names.js";
|
|
18
20
|
import { findSkillVersion, readSkillFile, SkillIntegrityError, } from "../tools/builtins/skill-load.js";
|
|
19
21
|
import { invocationOf, resolveSkills } from "./catalog.js";
|
|
22
|
+
import { skillFileStore } from "./usable.js";
|
|
20
23
|
/** A leading `/<name>` or `/<plugin>:<name>`, then whitespace or the end (spec §3.2). */
|
|
21
24
|
const SLASH_COMMAND_RE = /^\/([a-z0-9-]+(?::[a-z0-9-]+)?)(?:\s|$)/;
|
|
22
25
|
/** `/name args` at the very start of a message, or null (`/etc/hosts`, ` /x`, `/Upper`). */
|
|
@@ -142,14 +145,15 @@ let SkillInvoker = class SkillInvoker {
|
|
|
142
145
|
const body = await this.readBody(a.orgId, found);
|
|
143
146
|
const others = found.manifest.files.some((f) => f.path !== SKILL_ENTRY_FILE);
|
|
144
147
|
const lines = {
|
|
145
|
-
// the invocation itself makes the conversation's next run offer
|
|
148
|
+
// the invocation itself makes the conversation's next run offer Skill (skillLoadOffered)
|
|
146
149
|
...(others && { files: "load" }),
|
|
147
150
|
...(hasShellInjection(body) &&
|
|
148
|
-
hasBuiltin(a.agent,
|
|
151
|
+
hasBuiltin(a.agent, BUILTIN.Bash) && { shellHint: true }),
|
|
149
152
|
};
|
|
150
153
|
const input = {
|
|
151
154
|
name: a.name,
|
|
152
155
|
skillName: found.skill.name,
|
|
156
|
+
digest: skillDigest(found.manifest.files),
|
|
153
157
|
version: found.skill.version,
|
|
154
158
|
body,
|
|
155
159
|
invocation: inv,
|
|
@@ -158,7 +162,7 @@ let SkillInvoker = class SkillInvoker {
|
|
|
158
162
|
};
|
|
159
163
|
// a SKILL.md whose body alone renders over the limit can never be invoked: say so, rather than
|
|
160
164
|
// "shorten the arguments"
|
|
161
|
-
tooLarge(found.skill.name, () => renderSkillBody(body, inv, "", found.skill.name));
|
|
165
|
+
tooLarge(found.skill.name, () => renderSkillBody(body, inv, "", found.skill.name, input.digest));
|
|
162
166
|
const args = a.args.trim();
|
|
163
167
|
const record = {
|
|
164
168
|
id: found.skill.id,
|
|
@@ -192,7 +196,7 @@ let SkillInvoker = class SkillInvoker {
|
|
|
192
196
|
* `storage.unavailable` (`skill_unreadable`) when the version is gone or its SKILL.md cannot be
|
|
193
197
|
* read, plain `storage.unavailable` when storage is down. `task` renders the text for the
|
|
194
198
|
* sub-agent's effective definition: the shell-injection line only when the sub-agent has
|
|
195
|
-
* `
|
|
199
|
+
* `Bash` (batch 3 review m1).
|
|
196
200
|
*/
|
|
197
201
|
async renderTask(a) {
|
|
198
202
|
const { skill } = a;
|
|
@@ -218,6 +222,7 @@ let SkillInvoker = class SkillInvoker {
|
|
|
218
222
|
const task = (child) => renderSkillInvocation({
|
|
219
223
|
name: skill.name,
|
|
220
224
|
skillName: skill.name,
|
|
225
|
+
digest: skillDigest(found.manifest.files),
|
|
221
226
|
version: skill.version,
|
|
222
227
|
body,
|
|
223
228
|
invocation: inv,
|
|
@@ -225,7 +230,7 @@ let SkillInvoker = class SkillInvoker {
|
|
|
225
230
|
lines: {
|
|
226
231
|
...(others && { files: "load" }),
|
|
227
232
|
...(hasShellInjection(body) &&
|
|
228
|
-
hasBuiltin(child,
|
|
233
|
+
hasBuiltin(child, BUILTIN.Bash) && { shellHint: true }),
|
|
229
234
|
},
|
|
230
235
|
lead: false,
|
|
231
236
|
});
|
|
@@ -253,7 +258,9 @@ let SkillInvoker = class SkillInvoker {
|
|
|
253
258
|
this.storage.assertAvailable();
|
|
254
259
|
let bytes;
|
|
255
260
|
try {
|
|
256
|
-
|
|
261
|
+
// a platform version (`platform:<prefix>`) is read from deployment/ (ruling D2)
|
|
262
|
+
const { store, prefix } = skillFileStore(this.storage, orgId, r.skill.source);
|
|
263
|
+
bytes = await readSkillFile(store, `${prefix}${SKILL_ENTRY_FILE}`, md);
|
|
257
264
|
}
|
|
258
265
|
catch (e) {
|
|
259
266
|
if (e instanceof SkillIntegrityError)
|
|
@@ -283,7 +290,13 @@ SkillInvoker = __decorate([
|
|
|
283
290
|
__param(3, Inject(KERNEL_LOGGER))
|
|
284
291
|
], SkillInvoker);
|
|
285
292
|
export { SkillInvoker };
|
|
286
|
-
|
|
293
|
+
/**
|
|
294
|
+
* Does the definition leave builtin `name` on (tools default-on spec §4): not turned off and not
|
|
295
|
+
* removed by a sub-agent's key filter. Whether it can run now (a sandbox) is not checked.
|
|
296
|
+
*/
|
|
297
|
+
const hasBuiltin = (agent, name) => !builtinDisabled(agent.disabledTools, name) &&
|
|
298
|
+
!(agent.subagentTools?.deny ?? []).includes(name) &&
|
|
299
|
+
(agent.subagentTools?.allow === undefined || agent.subagentTools.allow.includes(name));
|
|
287
300
|
/** The skill's own body over the rendered limit: a 400 on `skill` naming the skill. */
|
|
288
301
|
function tooLarge(name, render) {
|
|
289
302
|
try {
|
package/dist/skills/package.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type SkillInvocation } from "@capybara-hq/plugin-sdk";
|
|
2
|
+
import type { SkillManifest } from "../db/kernel-schema.js";
|
|
2
3
|
/**
|
|
3
4
|
* 技能包(zip)解包与校验。zip 一律当作恶意输入:
|
|
4
5
|
*
|
|
@@ -45,7 +46,7 @@ export interface SkillPackage {
|
|
|
45
46
|
export declare function storedInvocation(i: SkillInvocation): SkillInvocation | undefined;
|
|
46
47
|
/**
|
|
47
48
|
* Invalid zip or skill content (`problems` lists each one, in English). Independent of HTTP: a
|
|
48
|
-
* skill upload maps it to `skill.invalid_package`,
|
|
49
|
+
* skill upload maps it to `skill.invalid_package`, a platform catalog import to
|
|
49
50
|
* `catalog.invalid_manifest`.
|
|
50
51
|
*/
|
|
51
52
|
export declare class SkillArchiveError extends Error {
|
|
@@ -85,3 +86,16 @@ export declare function checkSkillFiles(files: SkillPackageFile[], opts?: {
|
|
|
85
86
|
* 不合法 → {@link SkillArchiveError}。
|
|
86
87
|
*/
|
|
87
88
|
export declare function readZipFiles(bytes: Uint8Array, maxBytes: number): Promise<SkillPackageFile[]>;
|
|
89
|
+
/** A validated skill package: its name, description, files and invocation. */
|
|
90
|
+
export interface SkillPackageInput {
|
|
91
|
+
name: string;
|
|
92
|
+
description: string;
|
|
93
|
+
files: SkillPackageFile[];
|
|
94
|
+
/** Phase D: stored in the manifest when it is not the default. */
|
|
95
|
+
invocation?: SkillInvocation;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* The stored manifest of a skill package (the invocation only when it is not the default); org
|
|
99
|
+
* skills and platform skills store the same shape.
|
|
100
|
+
*/
|
|
101
|
+
export declare function skillManifest(pkg: SkillPackageInput): SkillManifest;
|
package/dist/skills/package.js
CHANGED
|
@@ -48,7 +48,7 @@ export function storedInvocation(i) {
|
|
|
48
48
|
const ignored = (path) => path.startsWith("__MACOSX/") || path === ".DS_Store" || path.endsWith("/.DS_Store");
|
|
49
49
|
/**
|
|
50
50
|
* Invalid zip or skill content (`problems` lists each one, in English). Independent of HTTP: a
|
|
51
|
-
* skill upload maps it to `skill.invalid_package`,
|
|
51
|
+
* skill upload maps it to `skill.invalid_package`, a platform catalog import to
|
|
52
52
|
* `catalog.invalid_manifest`.
|
|
53
53
|
*/
|
|
54
54
|
export class SkillArchiveError extends Error {
|
|
@@ -225,3 +225,16 @@ export async function readZipFiles(bytes, maxBytes) {
|
|
|
225
225
|
}
|
|
226
226
|
return raw;
|
|
227
227
|
}
|
|
228
|
+
/**
|
|
229
|
+
* The stored manifest of a skill package (the invocation only when it is not the default); org
|
|
230
|
+
* skills and platform skills store the same shape.
|
|
231
|
+
*/
|
|
232
|
+
export function skillManifest(pkg) {
|
|
233
|
+
const invocation = pkg.invocation && storedInvocation(pkg.invocation);
|
|
234
|
+
return {
|
|
235
|
+
name: pkg.name,
|
|
236
|
+
description: pkg.description,
|
|
237
|
+
files: pkg.files.map(({ path, size, sha256 }) => ({ path, size, sha256 })),
|
|
238
|
+
...(invocation !== undefined && { invocation }),
|
|
239
|
+
};
|
|
240
|
+
}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
+
import { OwnedItems, type OwnedSkillDeletePreview } from "../catalog/owned-items.js";
|
|
2
3
|
import { type CreatedAttachment } from "../conversations/attachments.service.js";
|
|
3
4
|
import { type Principal } from "../identity/principal.js";
|
|
4
5
|
import { type OrgContext } from "../orgs/org.guard.js";
|
|
6
|
+
import { SkillCreateBody, SkillIdParams } from "./skills.schemas.js";
|
|
5
7
|
import { type SkillDetail, type SkillSummary, SkillsService, type UploadedSkill } from "./skills.service.js";
|
|
6
8
|
declare const UploadBody: z.ZodObject<{
|
|
7
9
|
name: z.ZodString;
|
|
8
10
|
size: z.ZodNumber;
|
|
9
11
|
}, z.core.$strict>;
|
|
10
|
-
declare const
|
|
11
|
-
|
|
12
|
+
declare const ShareableBody: z.ZodObject<{
|
|
13
|
+
shareable: z.ZodBoolean;
|
|
12
14
|
}, z.core.$strict>;
|
|
13
15
|
/**
|
|
14
16
|
* The org skill library (`/api/v1/orgs/:orgId/skills`, human users only):
|
|
@@ -21,20 +23,44 @@ declare const CreateBody: z.ZodObject<{
|
|
|
21
23
|
* `POST /attachments/:id/finalize`, or skip it and let the next step finalize);
|
|
22
24
|
* 3. `POST /` `{ uploadId }` unpacks and checks it, creating a skill or adding a version to the
|
|
23
25
|
* skill with the same name;
|
|
24
|
-
* `DELETE /:id` soft-deletes (the web asks for confirmation, R3
|
|
26
|
+
* `DELETE /:id` soft-deletes (the web asks for confirmation, R3; `GET /:id/delete-preview` says
|
|
27
|
+
* what it does), `PUT /:id/shareable` sets 可共享 (plugin scope phase 3, ruling P3-6).
|
|
25
28
|
* When the deployment setting `customSkills` is deny, registering an upload and creating both
|
|
26
29
|
* return 403 `catalog.custom_disabled` (decided in the service, re-checked inside the org row lock
|
|
27
|
-
* on create); installing skills from the
|
|
30
|
+
* on create); installing skills from the platform catalog is unaffected.
|
|
28
31
|
*/
|
|
29
32
|
export declare class SkillsController {
|
|
30
33
|
private readonly skills;
|
|
31
|
-
|
|
34
|
+
/** The org's own items: 可共享 and the delete of a promoted skill (rulings P3-3, P3-19). */
|
|
35
|
+
private readonly owned;
|
|
36
|
+
constructor(skills: SkillsService,
|
|
37
|
+
/** The org's own items: 可共享 and the delete of a promoted skill (rulings P3-3, P3-19). */
|
|
38
|
+
owned: OwnedItems);
|
|
32
39
|
createUpload(principal: Principal, org: OrgContext, body: z.infer<typeof UploadBody>): Promise<CreatedAttachment>;
|
|
33
|
-
create(principal: Principal, org: OrgContext, body: z.infer<typeof
|
|
40
|
+
create(principal: Principal, org: OrgContext, body: z.infer<typeof SkillCreateBody>): Promise<UploadedSkill>;
|
|
34
41
|
list(principal: Principal, org: OrgContext): Promise<{
|
|
35
42
|
skills: SkillSummary[];
|
|
36
43
|
}>;
|
|
37
44
|
get(principal: Principal, org: OrgContext, id: string): Promise<SkillDetail>;
|
|
45
|
+
/**
|
|
46
|
+
* Sets 可共享 on the org's own skill (`{ shareable }` -> 200 `{ id, shareable }`): only an org
|
|
47
|
+
* skill of the org's own (P3-6: an agent's skill or a copy of another owner's platform skill ->
|
|
48
|
+
* 409 `catalog.not_owned`); one it promoted writes its platform row too (ruling P3-2).
|
|
49
|
+
*/
|
|
50
|
+
setShareable(principal: Principal, org: OrgContext, params: z.infer<typeof SkillIdParams>, body: z.infer<typeof ShareableBody>): Promise<{
|
|
51
|
+
id: string;
|
|
52
|
+
shareable: boolean;
|
|
53
|
+
}>;
|
|
54
|
+
/**
|
|
55
|
+
* What deleting the skill does (pre-flight F19, P3-19; nothing written): `outcome`
|
|
56
|
+
* `transferred` when it was shared and another org uses it (`orgs`), else `removed`; `agents`
|
|
57
|
+
* the org's agents that lose it.
|
|
58
|
+
*/
|
|
59
|
+
deletePreview(principal: Principal, org: OrgContext, params: z.infer<typeof SkillIdParams>): Promise<OwnedSkillDeletePreview>;
|
|
60
|
+
/**
|
|
61
|
+
* Soft-deletes the skill; one the org shared that another org uses is transferred to the
|
|
62
|
+
* platform first (P3-19, platform notice `ownership_transferred`). 204.
|
|
63
|
+
*/
|
|
38
64
|
remove(principal: Principal, org: OrgContext, id: string): Promise<void>;
|
|
39
65
|
}
|
|
40
66
|
export {};
|
|
@@ -8,13 +8,15 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
8
8
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
9
9
|
};
|
|
10
10
|
import { hasControlChars, MEDIA_NAME_MAX_CHARS } from "@capybara-hq/plugin-sdk";
|
|
11
|
-
import { Controller, Delete, Get, HttpCode, Inject, Param, Post } from "@nestjs/common";
|
|
11
|
+
import { Controller, Delete, Get, HttpCode, Inject, Param, Post, Put } from "@nestjs/common";
|
|
12
12
|
import { z } from "zod";
|
|
13
|
+
import { OwnedItems } from "../catalog/owned-items.js";
|
|
13
14
|
import { SKILL_PACKAGE_UPLOAD_MAX_BYTES, } from "../conversations/attachments.service.js";
|
|
14
15
|
import { CurrentPrincipal, patTokenId, requireUser, } from "../identity/principal.js";
|
|
15
16
|
import { createZodDto } from "../infra/validation/create-zod-dto.js";
|
|
16
|
-
import { ZBody } from "../infra/validation/zod-params.js";
|
|
17
|
+
import { ZBody, ZParam } from "../infra/validation/zod-params.js";
|
|
17
18
|
import { CurrentOrg, OrgAction } from "../orgs/org.guard.js";
|
|
19
|
+
import { SkillCreateBody, SkillIdParams, SkillShareableSchema } from "./skills.schemas.js";
|
|
18
20
|
import { SkillsService, } from "./skills.service.js";
|
|
19
21
|
const UploadBody = z
|
|
20
22
|
.object({
|
|
@@ -26,10 +28,14 @@ const UploadBody = z
|
|
|
26
28
|
size: z.number().int().min(1).max(SKILL_PACKAGE_UPLOAD_MAX_BYTES),
|
|
27
29
|
})
|
|
28
30
|
.strict();
|
|
29
|
-
const CreateBody = z.object({ uploadId: z.string().min(1).max(100) }).strict();
|
|
30
31
|
class SkillUploadBody extends createZodDto(UploadBody, "SkillUploadBody") {
|
|
31
32
|
}
|
|
32
|
-
class
|
|
33
|
+
class SkillCreateBodyDto extends createZodDto(SkillCreateBody, "SkillCreateBody") {
|
|
34
|
+
}
|
|
35
|
+
const ShareableBody = SkillShareableSchema;
|
|
36
|
+
class SkillIdParamsDto extends createZodDto(SkillIdParams, "SkillIdParams") {
|
|
37
|
+
}
|
|
38
|
+
class SkillShareableBody extends createZodDto(ShareableBody, "SkillShareableBody") {
|
|
33
39
|
}
|
|
34
40
|
/**
|
|
35
41
|
* The org skill library (`/api/v1/orgs/:orgId/skills`, human users only):
|
|
@@ -42,15 +48,20 @@ class SkillCreateBody extends createZodDto(CreateBody, "SkillCreateBody") {
|
|
|
42
48
|
* `POST /attachments/:id/finalize`, or skip it and let the next step finalize);
|
|
43
49
|
* 3. `POST /` `{ uploadId }` unpacks and checks it, creating a skill or adding a version to the
|
|
44
50
|
* skill with the same name;
|
|
45
|
-
* `DELETE /:id` soft-deletes (the web asks for confirmation, R3
|
|
51
|
+
* `DELETE /:id` soft-deletes (the web asks for confirmation, R3; `GET /:id/delete-preview` says
|
|
52
|
+
* what it does), `PUT /:id/shareable` sets 可共享 (plugin scope phase 3, ruling P3-6).
|
|
46
53
|
* When the deployment setting `customSkills` is deny, registering an upload and creating both
|
|
47
54
|
* return 403 `catalog.custom_disabled` (decided in the service, re-checked inside the org row lock
|
|
48
|
-
* on create); installing skills from the
|
|
55
|
+
* on create); installing skills from the platform catalog is unaffected.
|
|
49
56
|
*/
|
|
50
57
|
let SkillsController = class SkillsController {
|
|
51
58
|
skills;
|
|
52
|
-
|
|
59
|
+
owned;
|
|
60
|
+
constructor(skills,
|
|
61
|
+
/** The org's own items: 可共享 and the delete of a promoted skill (rulings P3-3, P3-19). */
|
|
62
|
+
owned) {
|
|
53
63
|
this.skills = skills;
|
|
64
|
+
this.owned = owned;
|
|
54
65
|
}
|
|
55
66
|
async createUpload(principal, org, body) {
|
|
56
67
|
const p = requireUser(principal);
|
|
@@ -58,7 +69,8 @@ let SkillsController = class SkillsController {
|
|
|
58
69
|
}
|
|
59
70
|
async create(principal, org, body) {
|
|
60
71
|
const p = requireUser(principal);
|
|
61
|
-
|
|
72
|
+
const tokenId = patTokenId(p);
|
|
73
|
+
return this.skills.upload(org.orgId, p.account.id, body.uploadId, tokenId, body.shareable);
|
|
62
74
|
}
|
|
63
75
|
async list(principal, org) {
|
|
64
76
|
requireUser(principal);
|
|
@@ -68,9 +80,34 @@ let SkillsController = class SkillsController {
|
|
|
68
80
|
requireUser(principal);
|
|
69
81
|
return this.skills.get(org.orgId, id);
|
|
70
82
|
}
|
|
83
|
+
/**
|
|
84
|
+
* Sets 可共享 on the org's own skill (`{ shareable }` -> 200 `{ id, shareable }`): only an org
|
|
85
|
+
* skill of the org's own (P3-6: an agent's skill or a copy of another owner's platform skill ->
|
|
86
|
+
* 409 `catalog.not_owned`); one it promoted writes its platform row too (ruling P3-2).
|
|
87
|
+
*/
|
|
88
|
+
async setShareable(principal, org, params, body) {
|
|
89
|
+
const p = requireUser(principal);
|
|
90
|
+
const tokenId = patTokenId(p);
|
|
91
|
+
await this.owned.setShareable(org.orgId, p.account.id, { kind: "skill", id: params.id }, body.shareable, tokenId !== undefined ? { actorTokenId: tokenId } : {});
|
|
92
|
+
return { id: params.id, shareable: body.shareable };
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* What deleting the skill does (pre-flight F19, P3-19; nothing written): `outcome`
|
|
96
|
+
* `transferred` when it was shared and another org uses it (`orgs`), else `removed`; `agents`
|
|
97
|
+
* the org's agents that lose it.
|
|
98
|
+
*/
|
|
99
|
+
async deletePreview(principal, org, params) {
|
|
100
|
+
requireUser(principal);
|
|
101
|
+
return this.owned.previewSkillDelete(org.orgId, params.id);
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Soft-deletes the skill; one the org shared that another org uses is transferred to the
|
|
105
|
+
* platform first (P3-19, platform notice `ownership_transferred`). 204.
|
|
106
|
+
*/
|
|
71
107
|
async remove(principal, org, id) {
|
|
72
108
|
const p = requireUser(principal);
|
|
73
|
-
|
|
109
|
+
const tokenId = patTokenId(p);
|
|
110
|
+
await this.owned.deleteSkill(org.orgId, p.account.id, id, tokenId !== undefined ? { actorTokenId: tokenId } : {});
|
|
74
111
|
}
|
|
75
112
|
};
|
|
76
113
|
__decorate([
|
|
@@ -85,7 +122,7 @@ __decorate([
|
|
|
85
122
|
OrgAction("skills.manage"),
|
|
86
123
|
__param(0, CurrentPrincipal()),
|
|
87
124
|
__param(1, CurrentOrg()),
|
|
88
|
-
__param(2, ZBody(
|
|
125
|
+
__param(2, ZBody(SkillCreateBodyDto))
|
|
89
126
|
], SkillsController.prototype, "create", null);
|
|
90
127
|
__decorate([
|
|
91
128
|
Get(),
|
|
@@ -100,6 +137,21 @@ __decorate([
|
|
|
100
137
|
__param(1, CurrentOrg()),
|
|
101
138
|
__param(2, Param("id"))
|
|
102
139
|
], SkillsController.prototype, "get", null);
|
|
140
|
+
__decorate([
|
|
141
|
+
Put(":id/shareable"),
|
|
142
|
+
OrgAction("skills.manage"),
|
|
143
|
+
__param(0, CurrentPrincipal()),
|
|
144
|
+
__param(1, CurrentOrg()),
|
|
145
|
+
__param(2, ZParam(SkillIdParamsDto)),
|
|
146
|
+
__param(3, ZBody(SkillShareableBody))
|
|
147
|
+
], SkillsController.prototype, "setShareable", null);
|
|
148
|
+
__decorate([
|
|
149
|
+
Get(":id/delete-preview"),
|
|
150
|
+
OrgAction("skills.manage"),
|
|
151
|
+
__param(0, CurrentPrincipal()),
|
|
152
|
+
__param(1, CurrentOrg()),
|
|
153
|
+
__param(2, ZParam(SkillIdParamsDto))
|
|
154
|
+
], SkillsController.prototype, "deletePreview", null);
|
|
103
155
|
__decorate([
|
|
104
156
|
Delete(":id"),
|
|
105
157
|
HttpCode(204),
|
|
@@ -110,6 +162,7 @@ __decorate([
|
|
|
110
162
|
], SkillsController.prototype, "remove", null);
|
|
111
163
|
SkillsController = __decorate([
|
|
112
164
|
Controller("api/v1/orgs/:orgId/skills"),
|
|
113
|
-
__param(0, Inject(SkillsService))
|
|
165
|
+
__param(0, Inject(SkillsService)),
|
|
166
|
+
__param(1, Inject(OwnedItems))
|
|
114
167
|
], SkillsController);
|
|
115
168
|
export { SkillsController };
|