@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,102 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
8
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
9
|
+
};
|
|
10
|
+
import { Inject, Injectable } from "@nestjs/common";
|
|
11
|
+
import { sql } from "kysely";
|
|
12
|
+
import { ApiError } from "../errors.js";
|
|
13
|
+
import { enabledExtensionsQuery } from "../extensions/enabled.js";
|
|
14
|
+
import { KernelDb } from "../infra/database/kernel-db.js";
|
|
15
|
+
import { TransactionHost } from "../infra/database/transaction-host.js";
|
|
16
|
+
import { Transactional } from "../infra/database/transactional.decorator.js";
|
|
17
|
+
import { ClientAccess } from "./client-access.service.js";
|
|
18
|
+
/** Reports older than this (by `last_at`) are deleted by the daily prune (spec §10.4). */
|
|
19
|
+
export const REPORT_RETENTION_DAYS = 30;
|
|
20
|
+
/**
|
|
21
|
+
* Crash and load reports of client code (client extensions spec §10.4): one row per (plugin,
|
|
22
|
+
* build, org, contribution, kind), upserted so a crash loop is one row with a count. A report is
|
|
23
|
+
* accepted only for a build the reporter could fetch ({@link ClientAccess.fetchable}), in an org
|
|
24
|
+
* an extension enabled there, and a `contribution` that is null or a component of that build's
|
|
25
|
+
* manifest, so nobody writes rows about plugins or orgs they cannot see and the key bounds the
|
|
26
|
+
* rows (a made-up contribution cannot add one); anything else is the same 404
|
|
27
|
+
* `client.not_found` the delivery route answers.
|
|
28
|
+
*/
|
|
29
|
+
let ClientReports = class ClientReports {
|
|
30
|
+
db;
|
|
31
|
+
txHost;
|
|
32
|
+
access;
|
|
33
|
+
constructor(db, txHost, access) {
|
|
34
|
+
this.db = db;
|
|
35
|
+
this.txHost = txHost;
|
|
36
|
+
this.access = access;
|
|
37
|
+
}
|
|
38
|
+
/** A report from a workspace page of org `orgId`. */
|
|
39
|
+
async recordForOrg(accountId, orgId, body) {
|
|
40
|
+
const enabled = await this.db.db
|
|
41
|
+
.selectFrom(enabledExtensionsQuery(this.db.db, orgId).as("en"))
|
|
42
|
+
.select("en.plugin")
|
|
43
|
+
.where("en.plugin", "=", body.plugin)
|
|
44
|
+
.executeTakeFirst();
|
|
45
|
+
if (enabled === undefined)
|
|
46
|
+
throw notFound();
|
|
47
|
+
await this.check(accountId, false, body);
|
|
48
|
+
await this.upsert(orgId, body);
|
|
49
|
+
}
|
|
50
|
+
/** A report from the admin console (no org; super admins only, the caller checks that). */
|
|
51
|
+
async recordForAdmin(accountId, body) {
|
|
52
|
+
await this.check(accountId, true, body);
|
|
53
|
+
await this.upsert(null, body);
|
|
54
|
+
}
|
|
55
|
+
/** The build must be fetchable and the contribution null or one of its components. */
|
|
56
|
+
async check(accountId, superAdmin, b) {
|
|
57
|
+
const build = await this.access.fetchable(accountId, superAdmin, b.plugin, b.build);
|
|
58
|
+
if (build === null)
|
|
59
|
+
throw notFound();
|
|
60
|
+
if (b.contribution !== null && !build.components.has(b.contribution))
|
|
61
|
+
throw notFound();
|
|
62
|
+
}
|
|
63
|
+
async upsert(orgId, b) {
|
|
64
|
+
await this.db.db
|
|
65
|
+
.insertInto("extension_client_reports")
|
|
66
|
+
.values({
|
|
67
|
+
plugin: b.plugin,
|
|
68
|
+
build: b.build,
|
|
69
|
+
org_id: orgId,
|
|
70
|
+
contribution: b.contribution,
|
|
71
|
+
kind: b.kind,
|
|
72
|
+
last_message: b.message,
|
|
73
|
+
})
|
|
74
|
+
.onConflict((oc) => oc
|
|
75
|
+
.expression(sql `plugin, build, (coalesce(org_id, '')), (coalesce(contribution, '')), kind`)
|
|
76
|
+
.doUpdateSet({
|
|
77
|
+
count: sql `extension_client_reports.count + 1`,
|
|
78
|
+
last_at: sql `now()`,
|
|
79
|
+
last_message: b.message,
|
|
80
|
+
}))
|
|
81
|
+
.execute();
|
|
82
|
+
}
|
|
83
|
+
/** Deletes the reports last seen more than {@link REPORT_RETENTION_DAYS} days ago; the count. */
|
|
84
|
+
async prune() {
|
|
85
|
+
const r = await this.db.db
|
|
86
|
+
.deleteFrom("extension_client_reports")
|
|
87
|
+
.where("last_at", "<", sql `now() - make_interval(days => ${REPORT_RETENTION_DAYS})`)
|
|
88
|
+
.executeTakeFirst();
|
|
89
|
+
return Number(r.numDeletedRows);
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
__decorate([
|
|
93
|
+
Transactional()
|
|
94
|
+
], ClientReports.prototype, "upsert", null);
|
|
95
|
+
ClientReports = __decorate([
|
|
96
|
+
Injectable(),
|
|
97
|
+
__param(0, Inject(KernelDb)),
|
|
98
|
+
__param(1, Inject(TransactionHost)),
|
|
99
|
+
__param(2, Inject(ClientAccess))
|
|
100
|
+
], ClientReports);
|
|
101
|
+
export { ClientReports };
|
|
102
|
+
const notFound = () => new ApiError("client.not_found", "Client file not found");
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { Keyring } from "../ctx/secrets.js";
|
|
2
|
+
import type { UserPrincipal } from "../identity/principal.js";
|
|
3
|
+
/**
|
|
4
|
+
* The sign-in ids of the shell reads (client extensions spec §4.2, `ClientApi.signIn`): an opaque
|
|
5
|
+
* id per plugin that stays the same for one sign-in (one web session, across token refreshes and
|
|
6
|
+
* every tab of it) and changes on the next sign-in, so client code can do something once per
|
|
7
|
+
* sign-in. It is `HMAC-SHA256(key, "<sign-in>\0<plugin>")` truncated to 128 bits, the key derived
|
|
8
|
+
* from the master keyring: not a credential and not reversible to the session id. The plugin name
|
|
9
|
+
* is an input only so that the id is not the same string in every plugin; that is no isolation
|
|
10
|
+
* boundary: client code runs with full trust in the page (spec D2) and can read the whole shell
|
|
11
|
+
* read (or the query cache), which lists every plugin's id. Derived per request from the
|
|
12
|
+
* principal, no state. A personal token (no session) is its own sign-in. Rotating the master key
|
|
13
|
+
* changes every id once (client code then treats the session as a new sign-in); during a rolling
|
|
14
|
+
* restart old and new replicas answer different ids, so it may look like more than one.
|
|
15
|
+
*/
|
|
16
|
+
export declare class ClientSignIn {
|
|
17
|
+
private readonly key;
|
|
18
|
+
constructor(keyring: Keyring);
|
|
19
|
+
/** The id function of the caller's sign-in: plugin name → that plugin's sign-in id. */
|
|
20
|
+
of(principal: UserPrincipal): (plugin: string) => string;
|
|
21
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
8
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
9
|
+
};
|
|
10
|
+
import { createHmac } from "node:crypto";
|
|
11
|
+
import { Inject, Injectable } from "@nestjs/common";
|
|
12
|
+
import { KEYRING } from "../infra/tokens.js";
|
|
13
|
+
/** The HKDF purpose of the sign-in id key (`capybara:client-sign-in/v1`). */
|
|
14
|
+
const SIGN_IN_KEY_INFO = "client-sign-in/v1";
|
|
15
|
+
/** A sign-in id is 128 bits of the HMAC, base64url (22 characters). */
|
|
16
|
+
const SIGN_IN_ID_BYTES = 16;
|
|
17
|
+
/**
|
|
18
|
+
* The sign-in ids of the shell reads (client extensions spec §4.2, `ClientApi.signIn`): an opaque
|
|
19
|
+
* id per plugin that stays the same for one sign-in (one web session, across token refreshes and
|
|
20
|
+
* every tab of it) and changes on the next sign-in, so client code can do something once per
|
|
21
|
+
* sign-in. It is `HMAC-SHA256(key, "<sign-in>\0<plugin>")` truncated to 128 bits, the key derived
|
|
22
|
+
* from the master keyring: not a credential and not reversible to the session id. The plugin name
|
|
23
|
+
* is an input only so that the id is not the same string in every plugin; that is no isolation
|
|
24
|
+
* boundary: client code runs with full trust in the page (spec D2) and can read the whole shell
|
|
25
|
+
* read (or the query cache), which lists every plugin's id. Derived per request from the
|
|
26
|
+
* principal, no state. A personal token (no session) is its own sign-in. Rotating the master key
|
|
27
|
+
* changes every id once (client code then treats the session as a new sign-in); during a rolling
|
|
28
|
+
* restart old and new replicas answer different ids, so it may look like more than one.
|
|
29
|
+
*/
|
|
30
|
+
let ClientSignIn = class ClientSignIn {
|
|
31
|
+
key;
|
|
32
|
+
constructor(keyring) {
|
|
33
|
+
this.key = keyring.deriveKey(SIGN_IN_KEY_INFO).current;
|
|
34
|
+
}
|
|
35
|
+
/** The id function of the caller's sign-in: plugin name → that plugin's sign-in id. */
|
|
36
|
+
of(principal) {
|
|
37
|
+
const signIn = principal.via === "session" ? `session:${principal.sessionId}` : `pat:${principal.tokenId}`;
|
|
38
|
+
return (plugin) => createHmac("sha256", this.key)
|
|
39
|
+
.update(`${signIn}\0${plugin}`)
|
|
40
|
+
.digest()
|
|
41
|
+
.subarray(0, SIGN_IN_ID_BYTES)
|
|
42
|
+
.toString("base64url");
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
ClientSignIn = __decorate([
|
|
46
|
+
Injectable(),
|
|
47
|
+
__param(0, Inject(KEYRING))
|
|
48
|
+
], ClientSignIn);
|
|
49
|
+
export { ClientSignIn };
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { z } from "zod";
|
|
2
|
+
import { type Principal } from "../identity/principal.js";
|
|
3
|
+
import { type OrgContext } from "../orgs/org.guard.js";
|
|
4
|
+
import { AdminClientQuery, type ClientExtensionsResponse, ReportBody } from "./client.schemas.js";
|
|
5
|
+
import { ClientAccess } from "./client-access.service.js";
|
|
6
|
+
import { ClientReports } from "./client-reports.service.js";
|
|
7
|
+
import { ClientSignIn } from "./client-sign-in.service.js";
|
|
8
|
+
/**
|
|
9
|
+
* The workspace shell read of client extensions (client extensions spec §9.2), `ui.use` (guest and
|
|
10
|
+
* up; a person, not a service token): `GET /api/v1/orgs/:orgId/ui/client` →
|
|
11
|
+
* {@link ClientExtensionsResponse}: the extensions enabled in the org that run with an approved
|
|
12
|
+
* client build, their file URLs and integrity, the components the caller's role may use and the
|
|
13
|
+
* caller's sign-in id per plugin (`ClientSignIn`);
|
|
14
|
+
* `enabled: false` with no items under the kill switch. `no-store`: the set changes with an org
|
|
15
|
+
* switch, an upgrade or the kill switch.
|
|
16
|
+
*/
|
|
17
|
+
export declare class OrgClientController {
|
|
18
|
+
private readonly access;
|
|
19
|
+
private readonly reports;
|
|
20
|
+
private readonly signIn;
|
|
21
|
+
constructor(access: ClientAccess, reports: ClientReports, signIn: ClientSignIn);
|
|
22
|
+
list(principal: Principal, org: OrgContext): Promise<ClientExtensionsResponse>;
|
|
23
|
+
/**
|
|
24
|
+
* `POST /api/v1/orgs/:orgId/ui/client/reports` (spec §10.4), `ui.use`, a person, 20 per minute
|
|
25
|
+
* per account (`client-reports`): a crash or load report of client code → 204. 404
|
|
26
|
+
* `client.not_found` for an extension not on in the org or a build the caller cannot fetch; 400
|
|
27
|
+
* for a message over 500 characters.
|
|
28
|
+
*/
|
|
29
|
+
report(principal: Principal, org: OrgContext, body: z.infer<typeof ReportBody>): Promise<void>;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* The admin console's client set (spec §9.6), super admins only: `GET /api/v1/admin/ui/client
|
|
33
|
+
* ?plugin=` → {@link ClientExtensionsResponse} with only `platform.page` components and no
|
|
34
|
+
* stylesheets (the admin console runs no org client code); with `plugin`, at most that one (the
|
|
35
|
+
* page `/admin/p/<plugin>/<id>` reads its own). `no-store`.
|
|
36
|
+
*/
|
|
37
|
+
export declare class AdminClientController {
|
|
38
|
+
private readonly access;
|
|
39
|
+
private readonly reports;
|
|
40
|
+
private readonly signIn;
|
|
41
|
+
constructor(access: ClientAccess, reports: ClientReports, signIn: ClientSignIn);
|
|
42
|
+
list(principal: Principal, q: z.infer<typeof AdminClientQuery>): Promise<ClientExtensionsResponse>;
|
|
43
|
+
/**
|
|
44
|
+
* `POST /api/v1/admin/ui/client/reports` (spec §10.4), super admins, 20 per minute per account:
|
|
45
|
+
* a report from an admin page (stored with no org) → 204; 404 `client.not_found` for a build
|
|
46
|
+
* that has no `platform.page` component or is not served.
|
|
47
|
+
*/
|
|
48
|
+
report(principal: Principal, body: z.infer<typeof ReportBody>): Promise<void>;
|
|
49
|
+
}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
8
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
9
|
+
};
|
|
10
|
+
import { Controller, Get, Header, HttpCode, Inject, Post } from "@nestjs/common";
|
|
11
|
+
import { CurrentPrincipal, requireUser, SuperAdmin, } from "../identity/principal.js";
|
|
12
|
+
import { Throttled } from "../infra/throttler/throttler.guard.js";
|
|
13
|
+
import { createZodDto } from "../infra/validation/create-zod-dto.js";
|
|
14
|
+
import { ZBody, ZQuery } from "../infra/validation/zod-params.js";
|
|
15
|
+
import { CurrentOrg, OrgAction } from "../orgs/org.guard.js";
|
|
16
|
+
import { AdminClientQuery, ReportBody } from "./client.schemas.js";
|
|
17
|
+
import { ClientAccess } from "./client-access.service.js";
|
|
18
|
+
import { ClientReports } from "./client-reports.service.js";
|
|
19
|
+
import { ClientSignIn } from "./client-sign-in.service.js";
|
|
20
|
+
class AdminClientQueryDto extends createZodDto(AdminClientQuery, "AdminClientQuery") {
|
|
21
|
+
}
|
|
22
|
+
class ReportBodyDto extends createZodDto(ReportBody, "ClientReportBody") {
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* The workspace shell read of client extensions (client extensions spec §9.2), `ui.use` (guest and
|
|
26
|
+
* up; a person, not a service token): `GET /api/v1/orgs/:orgId/ui/client` →
|
|
27
|
+
* {@link ClientExtensionsResponse}: the extensions enabled in the org that run with an approved
|
|
28
|
+
* client build, their file URLs and integrity, the components the caller's role may use and the
|
|
29
|
+
* caller's sign-in id per plugin (`ClientSignIn`);
|
|
30
|
+
* `enabled: false` with no items under the kill switch. `no-store`: the set changes with an org
|
|
31
|
+
* switch, an upgrade or the kill switch.
|
|
32
|
+
*/
|
|
33
|
+
let OrgClientController = class OrgClientController {
|
|
34
|
+
access;
|
|
35
|
+
reports;
|
|
36
|
+
signIn;
|
|
37
|
+
constructor(access, reports, signIn) {
|
|
38
|
+
this.access = access;
|
|
39
|
+
this.reports = reports;
|
|
40
|
+
this.signIn = signIn;
|
|
41
|
+
}
|
|
42
|
+
async list(principal, org) {
|
|
43
|
+
const user = requireUser(principal);
|
|
44
|
+
return this.access.orgSet(org.orgId, org.role, this.signIn.of(user));
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* `POST /api/v1/orgs/:orgId/ui/client/reports` (spec §10.4), `ui.use`, a person, 20 per minute
|
|
48
|
+
* per account (`client-reports`): a crash or load report of client code → 204. 404
|
|
49
|
+
* `client.not_found` for an extension not on in the org or a build the caller cannot fetch; 400
|
|
50
|
+
* for a message over 500 characters.
|
|
51
|
+
*/
|
|
52
|
+
async report(principal, org, body) {
|
|
53
|
+
const user = requireUser(principal);
|
|
54
|
+
await this.reports.recordForOrg(user.account.id, org.orgId, body);
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
__decorate([
|
|
58
|
+
Get(),
|
|
59
|
+
OrgAction("ui.use"),
|
|
60
|
+
Header("cache-control", "no-store"),
|
|
61
|
+
__param(0, CurrentPrincipal()),
|
|
62
|
+
__param(1, CurrentOrg())
|
|
63
|
+
], OrgClientController.prototype, "list", null);
|
|
64
|
+
__decorate([
|
|
65
|
+
Post("reports"),
|
|
66
|
+
OrgAction("ui.use"),
|
|
67
|
+
HttpCode(204),
|
|
68
|
+
Throttled("client-reports"),
|
|
69
|
+
__param(0, CurrentPrincipal()),
|
|
70
|
+
__param(1, CurrentOrg()),
|
|
71
|
+
__param(2, ZBody(ReportBodyDto))
|
|
72
|
+
], OrgClientController.prototype, "report", null);
|
|
73
|
+
OrgClientController = __decorate([
|
|
74
|
+
Controller("api/v1/orgs/:orgId/ui/client"),
|
|
75
|
+
__param(0, Inject(ClientAccess)),
|
|
76
|
+
__param(1, Inject(ClientReports)),
|
|
77
|
+
__param(2, Inject(ClientSignIn))
|
|
78
|
+
], OrgClientController);
|
|
79
|
+
export { OrgClientController };
|
|
80
|
+
/**
|
|
81
|
+
* The admin console's client set (spec §9.6), super admins only: `GET /api/v1/admin/ui/client
|
|
82
|
+
* ?plugin=` → {@link ClientExtensionsResponse} with only `platform.page` components and no
|
|
83
|
+
* stylesheets (the admin console runs no org client code); with `plugin`, at most that one (the
|
|
84
|
+
* page `/admin/p/<plugin>/<id>` reads its own). `no-store`.
|
|
85
|
+
*/
|
|
86
|
+
let AdminClientController = class AdminClientController {
|
|
87
|
+
access;
|
|
88
|
+
reports;
|
|
89
|
+
signIn;
|
|
90
|
+
constructor(access, reports, signIn) {
|
|
91
|
+
this.access = access;
|
|
92
|
+
this.reports = reports;
|
|
93
|
+
this.signIn = signIn;
|
|
94
|
+
}
|
|
95
|
+
async list(principal, q) {
|
|
96
|
+
const user = requireUser(principal);
|
|
97
|
+
return this.access.platformSet(this.signIn.of(user), q.plugin);
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* `POST /api/v1/admin/ui/client/reports` (spec §10.4), super admins, 20 per minute per account:
|
|
101
|
+
* a report from an admin page (stored with no org) → 204; 404 `client.not_found` for a build
|
|
102
|
+
* that has no `platform.page` component or is not served.
|
|
103
|
+
*/
|
|
104
|
+
async report(principal, body) {
|
|
105
|
+
const user = requireUser(principal);
|
|
106
|
+
await this.reports.recordForAdmin(user.account.id, body);
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
__decorate([
|
|
110
|
+
Get(),
|
|
111
|
+
Header("cache-control", "no-store"),
|
|
112
|
+
__param(0, CurrentPrincipal()),
|
|
113
|
+
__param(1, ZQuery(AdminClientQueryDto))
|
|
114
|
+
], AdminClientController.prototype, "list", null);
|
|
115
|
+
__decorate([
|
|
116
|
+
Post("reports"),
|
|
117
|
+
HttpCode(204),
|
|
118
|
+
Throttled("client-reports"),
|
|
119
|
+
__param(0, CurrentPrincipal()),
|
|
120
|
+
__param(1, ZBody(ReportBodyDto))
|
|
121
|
+
], AdminClientController.prototype, "report", null);
|
|
122
|
+
AdminClientController = __decorate([
|
|
123
|
+
Controller("api/v1/admin/ui/client"),
|
|
124
|
+
SuperAdmin(),
|
|
125
|
+
__param(0, Inject(ClientAccess)),
|
|
126
|
+
__param(1, Inject(ClientReports)),
|
|
127
|
+
__param(2, Inject(ClientSignIn))
|
|
128
|
+
], AdminClientController);
|
|
129
|
+
export { AdminClientController };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Client extensions (spec 2026-11-09-client-extensions-design.md): the client builds stored with
|
|
3
|
+
* extension packages ({@link ClientBuilds}) and who may load them ({@link ClientAccess}: the
|
|
4
|
+
* delivery route and the shell reads, whose controllers the api role lists; {@link ClientSignIn}:
|
|
5
|
+
* the per-plugin sign-in ids of those reads).
|
|
6
|
+
*/
|
|
7
|
+
export declare class ClientModule {
|
|
8
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { Module } from "@nestjs/common";
|
|
8
|
+
import { StorageModule } from "../storage/storage.module.js";
|
|
9
|
+
import { ClientAccess } from "./client-access.service.js";
|
|
10
|
+
import { ClientBuilds } from "./client-builds.service.js";
|
|
11
|
+
import { ClientReports } from "./client-reports.service.js";
|
|
12
|
+
import { ClientSignIn } from "./client-sign-in.service.js";
|
|
13
|
+
/**
|
|
14
|
+
* Client extensions (spec 2026-11-09-client-extensions-design.md): the client builds stored with
|
|
15
|
+
* extension packages ({@link ClientBuilds}) and who may load them ({@link ClientAccess}: the
|
|
16
|
+
* delivery route and the shell reads, whose controllers the api role lists; {@link ClientSignIn}:
|
|
17
|
+
* the per-plugin sign-in ids of those reads).
|
|
18
|
+
*/
|
|
19
|
+
let ClientModule = class ClientModule {
|
|
20
|
+
};
|
|
21
|
+
ClientModule = __decorate([
|
|
22
|
+
Module({
|
|
23
|
+
imports: [StorageModule],
|
|
24
|
+
providers: [ClientBuilds, ClientAccess, ClientReports, ClientSignIn],
|
|
25
|
+
exports: [ClientBuilds, ClientAccess, ClientReports, ClientSignIn],
|
|
26
|
+
})
|
|
27
|
+
], ClientModule);
|
|
28
|
+
export { ClientModule };
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { type UiSlotId } from "@capybara-hq/plugin-sdk";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
/** The DTO schemas and response shapes of the client extension routes (spec §9.2). */
|
|
4
|
+
/** `GET /api/v1/admin/ui/client?plugin=`: at most that plugin's platform set. */
|
|
5
|
+
export declare const AdminClientQuery: z.ZodObject<{
|
|
6
|
+
plugin: z.ZodOptional<z.ZodString>;
|
|
7
|
+
}, z.core.$strip>;
|
|
8
|
+
/** One file URL of a client build, with the integrity recorded when the package was stored. */
|
|
9
|
+
export interface ClientFileRef {
|
|
10
|
+
url: string;
|
|
11
|
+
integrity: string;
|
|
12
|
+
}
|
|
13
|
+
/** One extension of a shell read: its build's files and the components the viewer may use. */
|
|
14
|
+
export interface ClientExtensionItem {
|
|
15
|
+
plugin: string;
|
|
16
|
+
/** The package sha256: the build id in the file URLs. */
|
|
17
|
+
build: string;
|
|
18
|
+
entry: ClientFileRef | null;
|
|
19
|
+
/** Empty in the admin set (spec §9.6). */
|
|
20
|
+
styles: ClientFileRef[];
|
|
21
|
+
components: {
|
|
22
|
+
id: string;
|
|
23
|
+
slot: UiSlotId;
|
|
24
|
+
}[];
|
|
25
|
+
/**
|
|
26
|
+
* The viewer's sign-in id for this plugin (`ClientApi.signIn.id`, spec §4.2): opaque, the same
|
|
27
|
+
* for every read of one sign-in and different after the next one; a different string per plugin,
|
|
28
|
+
* not a secret between plugins (client code is full trust and reads the whole set).
|
|
29
|
+
*/
|
|
30
|
+
signInId: string;
|
|
31
|
+
}
|
|
32
|
+
/** The shell read (spec §9.2). */
|
|
33
|
+
export interface ClientExtensionsResponse {
|
|
34
|
+
/** False under the kill switch: `items` is then empty. */
|
|
35
|
+
enabled: boolean;
|
|
36
|
+
/** The host's `CLIENT_API_VERSION`, echoed for diagnostics. */
|
|
37
|
+
apiVersion: number;
|
|
38
|
+
items: ClientExtensionItem[];
|
|
39
|
+
}
|
|
40
|
+
/** The most characters of a report's `message` (spec §10.4): longer is refused, not truncated. */
|
|
41
|
+
export declare const REPORT_MESSAGE_MAX = 500;
|
|
42
|
+
/**
|
|
43
|
+
* `POST /api/v1/orgs/:orgId/ui/client/reports` and `POST /api/v1/admin/ui/client/reports` (spec
|
|
44
|
+
* §10.4): one crash or load report of client code, from the browser that ran it. `build` is the
|
|
45
|
+
* package sha256 the files were loaded from; `contribution` the component id (null: the whole
|
|
46
|
+
* extension, e.g. the entry failed to load), which must be a component of that build's manifest.
|
|
47
|
+
*/
|
|
48
|
+
export declare const ReportBody: z.ZodObject<{
|
|
49
|
+
plugin: z.ZodString;
|
|
50
|
+
build: z.ZodString;
|
|
51
|
+
contribution: z.ZodNullable<z.ZodString>;
|
|
52
|
+
kind: z.ZodEnum<{
|
|
53
|
+
api: "api";
|
|
54
|
+
budget: "budget";
|
|
55
|
+
event: "event";
|
|
56
|
+
load: "load";
|
|
57
|
+
render: "render";
|
|
58
|
+
}>;
|
|
59
|
+
message: z.ZodString;
|
|
60
|
+
}, z.core.$strip>;
|
|
61
|
+
export type ReportBodyInput = z.infer<typeof ReportBody>;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { EXTENSION_NAME_RE } from "@capybara-hq/plugin-sdk";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
/** The DTO schemas and response shapes of the client extension routes (spec §9.2). */
|
|
4
|
+
/** `GET /api/v1/admin/ui/client?plugin=`: at most that plugin's platform set. */
|
|
5
|
+
export const AdminClientQuery = z.object({
|
|
6
|
+
plugin: z.string().regex(EXTENSION_NAME_RE, "must be an extension name").optional(),
|
|
7
|
+
});
|
|
8
|
+
/** The most characters of a report's `message` (spec §10.4): longer is refused, not truncated. */
|
|
9
|
+
export const REPORT_MESSAGE_MAX = 500;
|
|
10
|
+
/** The UI contribution id grammar of the SDK (`ui[].id`): what a report's `contribution` names. */
|
|
11
|
+
const COMPONENT_ID_RE = /^[a-z][a-z0-9-]{0,39}$/;
|
|
12
|
+
/**
|
|
13
|
+
* `POST /api/v1/orgs/:orgId/ui/client/reports` and `POST /api/v1/admin/ui/client/reports` (spec
|
|
14
|
+
* §10.4): one crash or load report of client code, from the browser that ran it. `build` is the
|
|
15
|
+
* package sha256 the files were loaded from; `contribution` the component id (null: the whole
|
|
16
|
+
* extension, e.g. the entry failed to load), which must be a component of that build's manifest.
|
|
17
|
+
*/
|
|
18
|
+
export const ReportBody = z.object({
|
|
19
|
+
plugin: z.string().regex(EXTENSION_NAME_RE, "must be an extension name"),
|
|
20
|
+
build: z.string().regex(/^[0-9a-f]{64}$/, "must be a 64-character lowercase hex sha256"),
|
|
21
|
+
contribution: z
|
|
22
|
+
.string()
|
|
23
|
+
.regex(COMPONENT_ID_RE, "must be a component id of the build (or null)")
|
|
24
|
+
.nullable(),
|
|
25
|
+
kind: z.enum(["load", "render", "event", "api", "budget"]),
|
|
26
|
+
message: z.string().max(REPORT_MESSAGE_MAX),
|
|
27
|
+
});
|
package/dist/config/docs.js
CHANGED
|
@@ -63,7 +63,9 @@ export function renderConfigDocs(schema) {
|
|
|
63
63
|
// body and package upload limits), apps/web/server.mjs (PORT / CAPYBARA_WEB_HOST) and
|
|
64
64
|
// apps/web/src/dev/catalog/routes.tsx (CAPYBARA_DEV_UI); change this text together with them.
|
|
65
65
|
// CAPYBARA_WEB_TRUST_PROXY: apps/web/src/lib/peer.ts; CAPYBARA_WEB_SHUTDOWN_GRACE_MS: apps/web/server.mjs.
|
|
66
|
+
// CAPYBARA_WEB_KEEP_ALIVE_TIMEOUT_MS: apps/web/src/lib/keep-alive.ts.
|
|
66
67
|
// CAPYBARA_WEB_OBJECT_STORE_*: apps/web/src/lib/object-store-proxy.ts.
|
|
68
|
+
// CAPYBARA_WEB_GATEWAY_URL: apps/web/src/lib/device-connect-proxy.ts.
|
|
67
69
|
"## Web tier (apps/web) environment variables",
|
|
68
70
|
"",
|
|
69
71
|
"The web tier is a separate process (started through `apps/web/server.mjs`); it does not read the kernel config and only honors the following environment variables:",
|
|
@@ -74,11 +76,13 @@ export function renderConfigDocs(schema) {
|
|
|
74
76
|
"| `PORT` / `CAPYBARA_WEB_HOST` | The web tier's listen port (default 3000) and address |",
|
|
75
77
|
"| `CAPYBARA_WEB_TRUST_PROXY` | Proxies in front of the web tier (TLS proxy, load balancer) trusted to report the client address in `X-Forwarded-For`: a hop count (`1` = the nearest proxy) or a list of IPs / CIDRs, comma-separated or a JSON array, in the grammar of `http.trustProxy` (dotted netmasks, `loopback` / `linklocal` / `uniquelocal`; a range that trusts every address such as `/0` is refused; no `true` / `false`). Unset (default) trusts nothing: the socket peer is the client, so behind a proxy every user shares the proxy's address for login rate limiting. A hop count is only safe when the web tier is reachable solely through exactly that many proxies. Either way the kernel receives one sanitized client address; a malformed value stops the web tier at startup |",
|
|
76
78
|
"| `CAPYBARA_WEB_SHUTDOWN_GRACE_MS` | Production only: after SIGTERM / SIGINT, how long in-flight requests (including SSE streams) may run before the process exits; default 5000 |",
|
|
79
|
+
"| `CAPYBARA_WEB_KEEP_ALIVE_TIMEOUT_MS` | How long an idle HTTP keep-alive connection to the web tier stays open, in milliseconds; default 65000. Keep it above the idle timeout of any load balancer or proxy in front of the web tier (often 60 s): otherwise the web tier may close a connection just as the proxy reuses it, and that request fails (a 502 at the proxy). A value that is not a positive integer stops the web tier at startup |",
|
|
77
80
|
"| `CAPYBARA_WEB_MAX_BODY_BYTES` | Request body limit of the `/api/*` proxy, default 1 MiB (matches the kernel's bodyLimit) |",
|
|
78
|
-
"| `CAPYBARA_WEB_MAX_PACKAGE_BYTES` | Request body limit for extension package and plugin uploads (`/api/v1/admin/extensions/packages/file`, `/api/v1/admin/catalog/import/file`), default 50 MiB, forwarded while being read. This is the web tier's limit; the kernel additionally rejects by `packages.maxBytes`. Raise both together, otherwise a large package uploaded through the web is first rejected by the web tier with a 413 |",
|
|
81
|
+
"| `CAPYBARA_WEB_MAX_PACKAGE_BYTES` | Request body limit for extension package and plugin uploads (`/api/v1/admin/extensions/packages/file`, `/api/v1/admin/catalog/import/file`, `/api/v1/orgs/:orgId/catalog/uploads/file`), default 50 MiB, forwarded while being read. This is the web tier's limit; the kernel additionally rejects by `packages.maxBytes`. Raise both together, otherwise a large package uploaded through the web is first rejected by the web tier with a 413 |",
|
|
79
82
|
"| `CAPYBARA_WEB_OBJECT_STORE_URL` | Object storage on the web origin: the object store's address as web reaches it (e.g. `http://seaweedfs-s3:8333`). When set, web proxies `/<bucket>/**` (and `/<bucket>` itself for POST only) there, so browsers upload attachments (presigned POST) and download attachments and artifacts (presigned GET) through web; set the object-store extension's `publicEndpoint` to the web origin with `forcePathStyle: true`. Only GET, HEAD and POST; the path is forwarded unchanged; cookies and authorization are not forwarded; responses carry `X-Content-Type-Options: nosniff` and `Content-Security-Policy: sandbox`; uploads are capped at `CAPYBARA_WEB_MAX_PACKAGE_BYTES`. Unset (default): off |",
|
|
80
83
|
"| `CAPYBARA_WEB_OBJECT_STORE_BUCKET` | With `CAPYBARA_WEB_OBJECT_STORE_URL`: the bucket, equal to the object-store extension's `bucket` (it is the first path segment web proxies) |",
|
|
81
84
|
"| `CAPYBARA_WEB_OBJECT_STORE_PUBLIC_HOST` | With `CAPYBARA_WEB_OBJECT_STORE_URL`: the host of the extension's `publicEndpoint` (a host such as `capybara.example.com`, or that URL). Sent upstream as `Host` instead of the incoming one, because presigned URLs sign the host they were issued for and front proxies rewrite it |",
|
|
85
|
+
"| `CAPYBARA_WEB_GATEWAY_URL` | Local devices on the web origin: a `gateway` replica's address as web reaches it (an http(s) URL, e.g. `http://gateway:8080`). WebSocket upgrades on exactly `/device/connect` are forwarded to it (`capybara-device` connects at `<http.publicUrl>/device/connect`). Unset, they go to `CAPYBARA_KERNEL_URL` (the kernel runs every role unless the deployment splits them), so only deployments with separate gateway replicas set it (compose does). A malformed value stops the web tier at startup |",
|
|
82
86
|
"| `CAPYBARA_DEV_UI` | When set to `1`, production builds also serve the `/dev/ui` component catalog page (off by default) |",
|
|
83
87
|
"",
|
|
84
88
|
].join("\n");
|
package/dist/config/schema.d.ts
CHANGED
|
@@ -51,6 +51,7 @@ export declare const KernelConfigSchema: z.ZodObject<{
|
|
|
51
51
|
url: z.ZodString;
|
|
52
52
|
poolMax: z.ZodDefault<z.ZodNumber>;
|
|
53
53
|
connectTimeoutMs: z.ZodDefault<z.ZodNumber>;
|
|
54
|
+
idleTimeoutMs: z.ZodDefault<z.ZodNumber>;
|
|
54
55
|
}, z.core.$strip>>;
|
|
55
56
|
redis: z.ZodPrefault<z.ZodObject<{
|
|
56
57
|
url: z.ZodString;
|
|
@@ -119,6 +120,7 @@ export declare const KernelConfigSchema: z.ZodObject<{
|
|
|
119
120
|
}, z.core.$strip>>;
|
|
120
121
|
runtime: z.ZodDefault<z.ZodObject<{
|
|
121
122
|
maxSteps: z.ZodDefault<z.ZodNumber>;
|
|
123
|
+
wakeOnBackgroundTask: z.ZodDefault<z.ZodBoolean>;
|
|
122
124
|
maxRunSeconds: z.ZodDefault<z.ZodNumber>;
|
|
123
125
|
streamIdleMs: z.ZodDefault<z.ZodNumber>;
|
|
124
126
|
maxOutputTokens: z.ZodDefault<z.ZodNumber>;
|
|
@@ -175,15 +177,32 @@ export declare const KernelConfigSchema: z.ZodObject<{
|
|
|
175
177
|
requestMediaBytes: z.ZodDefault<z.ZodNumber>;
|
|
176
178
|
}, z.core.$strip>>;
|
|
177
179
|
subagents: z.ZodPrefault<z.ZodObject<{
|
|
178
|
-
|
|
180
|
+
maxDepth: z.ZodDefault<z.ZodNumber>;
|
|
181
|
+
maxConcurrentPerConversation: z.ZodDefault<z.ZodNumber>;
|
|
179
182
|
maxDispatchesPerRun: z.ZodDefault<z.ZodNumber>;
|
|
180
183
|
maxTokensPerRun: z.ZodDefault<z.ZodNumber>;
|
|
181
184
|
}, z.core.$strip>>;
|
|
185
|
+
web: z.ZodPrefault<z.ZodObject<{
|
|
186
|
+
search: z.ZodPrefault<z.ZodObject<{
|
|
187
|
+
maxResults: z.ZodDefault<z.ZodNumber>;
|
|
188
|
+
}, z.core.$strip>>;
|
|
189
|
+
fetch: z.ZodPrefault<z.ZodObject<{
|
|
190
|
+
maxPageChars: z.ZodDefault<z.ZodNumber>;
|
|
191
|
+
maxAnswerTokens: z.ZodDefault<z.ZodNumber>;
|
|
192
|
+
cacheSeconds: z.ZodDefault<z.ZodNumber>;
|
|
193
|
+
timeoutMs: z.ZodDefault<z.ZodNumber>;
|
|
194
|
+
}, z.core.$strip>>;
|
|
195
|
+
}, z.core.$strip>>;
|
|
182
196
|
sandbox: z.ZodPrefault<z.ZodObject<{
|
|
183
|
-
image: z.
|
|
197
|
+
image: z.ZodOptional<z.ZodString>;
|
|
184
198
|
lockWaitSeconds: z.ZodDefault<z.ZodNumber>;
|
|
185
199
|
maxConcurrentCommands: z.ZodDefault<z.ZodNumber>;
|
|
186
200
|
deliverMaxBytes: z.ZodDefault<z.ZodNumber>;
|
|
201
|
+
background: z.ZodPrefault<z.ZodObject<{
|
|
202
|
+
maxTasks: z.ZodDefault<z.ZodNumber>;
|
|
203
|
+
maxSeconds: z.ZodDefault<z.ZodNumber>;
|
|
204
|
+
pollSeconds: z.ZodDefault<z.ZodNumber>;
|
|
205
|
+
}, z.core.$strip>>;
|
|
187
206
|
limits: z.ZodPrefault<z.ZodObject<{
|
|
188
207
|
cpu: z.ZodDefault<z.ZodNumber>;
|
|
189
208
|
memoryMb: z.ZodDefault<z.ZodNumber>;
|
|
@@ -200,6 +219,16 @@ export declare const KernelConfigSchema: z.ZodObject<{
|
|
|
200
219
|
allowHosts: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
201
220
|
}, z.core.$strip>>;
|
|
202
221
|
}, z.core.$strip>>;
|
|
222
|
+
devices: z.ZodPrefault<z.ZodObject<{
|
|
223
|
+
maxPersonal: z.ZodDefault<z.ZodNumber>;
|
|
224
|
+
local: z.ZodPrefault<z.ZodObject<{
|
|
225
|
+
reconnectGraceSeconds: z.ZodDefault<z.ZodNumber>;
|
|
226
|
+
leaseTtlMs: z.ZodDefault<z.ZodNumber>;
|
|
227
|
+
authCodeTtlSeconds: z.ZodDefault<z.ZodNumber>;
|
|
228
|
+
pollIntervalSeconds: z.ZodDefault<z.ZodNumber>;
|
|
229
|
+
maxFrameBytes: z.ZodDefault<z.ZodNumber>;
|
|
230
|
+
}, z.core.$strip>>;
|
|
231
|
+
}, z.core.$strip>>;
|
|
203
232
|
evals: z.ZodPrefault<z.ZodObject<{
|
|
204
233
|
orgConcurrency: z.ZodDefault<z.ZodNumber>;
|
|
205
234
|
workerConcurrency: z.ZodDefault<z.ZodNumber>;
|
|
@@ -210,6 +239,10 @@ export declare const KernelConfigSchema: z.ZodObject<{
|
|
|
210
239
|
judgeMaxOutputTokens: z.ZodDefault<z.ZodNumber>;
|
|
211
240
|
maxConsecutiveErrors: z.ZodDefault<z.ZodNumber>;
|
|
212
241
|
}, z.core.$strip>>;
|
|
242
|
+
models: z.ZodPrefault<z.ZodObject<{
|
|
243
|
+
listTimeoutMs: z.ZodDefault<z.ZodNumber>;
|
|
244
|
+
embedTimeoutMs: z.ZodDefault<z.ZodNumber>;
|
|
245
|
+
}, z.core.$strip>>;
|
|
213
246
|
hooks: z.ZodPrefault<z.ZodObject<{
|
|
214
247
|
timeoutMs: z.ZodDefault<z.ZodNumber>;
|
|
215
248
|
usageReportConcurrency: z.ZodDefault<z.ZodNumber>;
|