@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
|
@@ -18,8 +18,8 @@ import { OrgsService } from "../orgs/orgs.service.js";
|
|
|
18
18
|
import { SetupLock } from "./setup-lock.js";
|
|
19
19
|
const alreadyCompleted = () => new ApiError("setup.already_completed", "Deployment is already set up");
|
|
20
20
|
/**
|
|
21
|
-
* The setup wizard. The CLI's
|
|
22
|
-
* `
|
|
21
|
+
* The setup wizard. The CLI's super admin creation (`createSuperAdmin`,
|
|
22
|
+
* `createSuperAdminIfNone`) is on `AccountsService`, under the same {@link SetupLock}.
|
|
23
23
|
*/
|
|
24
24
|
let SetupService = class SetupService {
|
|
25
25
|
db;
|
|
@@ -34,13 +34,13 @@ let SetupService = class SetupService {
|
|
|
34
34
|
this.accounts = accounts;
|
|
35
35
|
this.orgs = orgs;
|
|
36
36
|
}
|
|
37
|
-
/**
|
|
37
|
+
/** 不存在活跃超级管理员即需要初始化(每次实时查 PG,不缓存)。 */
|
|
38
38
|
async status() {
|
|
39
|
-
return { needsSetup: (await this.accounts.
|
|
39
|
+
return { needsSetup: (await this.accounts.countSuperAdmins()) === 0 };
|
|
40
40
|
}
|
|
41
41
|
/**
|
|
42
42
|
* Completes the setup in one transaction: {@link SetupLock} serializes concurrent setups, and
|
|
43
|
-
* under it there must still be no active
|
|
43
|
+
* under it there must still be no active super admin; then creates the super admin
|
|
44
44
|
* and (with `orgName`) an org it owns. Any failure rolls everything back. `inTx` runs last in the
|
|
45
45
|
* same transaction (the wizard creates the session there), its result is `extra`; its failure
|
|
46
46
|
* rolls back too.
|
|
@@ -48,20 +48,20 @@ let SetupService = class SetupService {
|
|
|
48
48
|
async complete(input, inTx) {
|
|
49
49
|
// A cheap pre-check first (a set-up deployment does not run scrypt for nothing), then the hash
|
|
50
50
|
// before BEGIN: no scrypt inside the transaction holding the lock; the check runs again under it
|
|
51
|
-
if ((await this.accounts.
|
|
51
|
+
if ((await this.accounts.countSuperAdmins()) > 0)
|
|
52
52
|
throw alreadyCompleted();
|
|
53
53
|
const passwordHash = await this.accounts.hashNewPassword(input.password);
|
|
54
54
|
return this.completeIn(input, passwordHash, inTx);
|
|
55
55
|
}
|
|
56
56
|
async completeIn(input, passwordHash, inTx) {
|
|
57
57
|
await this.setupLock.lock();
|
|
58
|
-
if ((await this.accounts.
|
|
58
|
+
if ((await this.accounts.countSuperAdmins()) > 0)
|
|
59
59
|
throw alreadyCompleted();
|
|
60
60
|
const account = await this.accounts.createLocal({
|
|
61
61
|
login: input.login,
|
|
62
62
|
password: input.password,
|
|
63
63
|
displayName: input.displayName,
|
|
64
|
-
|
|
64
|
+
superAdmin: true,
|
|
65
65
|
}, passwordHash);
|
|
66
66
|
const org = input.orgName !== undefined
|
|
67
67
|
? await this.orgs.create({ name: input.orgName }, account)
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import { SettingsService } from "../identity/settings.js";
|
|
2
|
+
import { CacheService } from "../infra/cache/cache.service.js";
|
|
3
|
+
import { KernelDb } from "../infra/database/kernel-db.js";
|
|
4
|
+
import { TransactionHost } from "../infra/database/transaction-host.js";
|
|
5
|
+
import { PricesService } from "../models/prices.js";
|
|
6
|
+
/** Seam token of the kernel's own tests: a shorter statement timeout and a fixed clock. */
|
|
7
|
+
export declare const ADMIN_USAGE_TIMINGS: unique symbol;
|
|
8
|
+
export interface AdminUsageTimings {
|
|
9
|
+
/** The aggregate's `statement_timeout` in milliseconds (default 10 000). */
|
|
10
|
+
statementTimeoutMs: number;
|
|
11
|
+
/** The clock "today" is read from (default `Date.now`). */
|
|
12
|
+
now: () => number;
|
|
13
|
+
}
|
|
14
|
+
/** Days in the window: today and the 6 days before. */
|
|
15
|
+
export declare const USAGE_WINDOW_DAYS = 7;
|
|
16
|
+
/** Orgs listed by name; the rest are summed in `otherOrgs`. */
|
|
17
|
+
export declare const USAGE_TOP_ORGS = 10;
|
|
18
|
+
/** Seconds one computed week stays cached (shared by every replica, Redis). */
|
|
19
|
+
export declare const USAGE_CACHE_TTL = 300;
|
|
20
|
+
/** Tokens of one day; the four chat kinds do not overlap (plugin-sdk `ModelUsage`). */
|
|
21
|
+
export interface UsageTokens {
|
|
22
|
+
input: number;
|
|
23
|
+
output: number;
|
|
24
|
+
cacheRead: number;
|
|
25
|
+
cacheWrite: number;
|
|
26
|
+
/** Input tokens of `ctx.models.embed` calls (`model_usage`). */
|
|
27
|
+
embedding: number;
|
|
28
|
+
}
|
|
29
|
+
/** One calendar day in the requested time zone. */
|
|
30
|
+
export interface UsageDay {
|
|
31
|
+
/** `YYYY-MM-DD` in the answer's `tz`. */
|
|
32
|
+
date: string;
|
|
33
|
+
/** Runs created that day (every run: sub-agent and eval replay runs included, D6). */
|
|
34
|
+
runs: number;
|
|
35
|
+
tokens: UsageTokens;
|
|
36
|
+
/**
|
|
37
|
+
* Estimated cost in `currency` of the priced tokens; null when the day used tokens and none of
|
|
38
|
+
* them had a price (0 for a day with no tokens).
|
|
39
|
+
*/
|
|
40
|
+
cost: number | null;
|
|
41
|
+
}
|
|
42
|
+
/** One org's week: totals only (never per account, agent or conversation; spec §9). */
|
|
43
|
+
export interface UsageOrg {
|
|
44
|
+
orgId: string;
|
|
45
|
+
/** The org's name (its id when the org row is gone). */
|
|
46
|
+
name: string;
|
|
47
|
+
runs: number;
|
|
48
|
+
/** Every token kind summed, embeddings included. */
|
|
49
|
+
tokens: number;
|
|
50
|
+
/** As {@link UsageDay.cost}, over the org's week. */
|
|
51
|
+
cost: number | null;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* `AdminUsageService.week(tz)` (admin overview spec §4.3, §5.2): the platform's runs, tokens and
|
|
55
|
+
* estimated cost per calendar day in `tz` over today and the 6 days before, and the 10 orgs that
|
|
56
|
+
* used the most tokens (the rest summed in `otherOrgs`).
|
|
57
|
+
*/
|
|
58
|
+
export interface AdminUsageWeek {
|
|
59
|
+
/** Start of the first day in `tz` (ISO 8601, UTC). */
|
|
60
|
+
from: string;
|
|
61
|
+
/** End of today in `tz`, exclusive (ISO 8601, UTC). */
|
|
62
|
+
to: string;
|
|
63
|
+
tz: string;
|
|
64
|
+
/** The deployment setting `priceCurrency`. */
|
|
65
|
+
currency: string;
|
|
66
|
+
/** Exactly 7 days, oldest first, today last; days without usage are zeros. */
|
|
67
|
+
days: UsageDay[];
|
|
68
|
+
/** Some tokens of the week had no price: the costs count only the priced ones. */
|
|
69
|
+
costPartial: boolean;
|
|
70
|
+
/** At most 10, by total tokens descending (then runs, then id). */
|
|
71
|
+
orgs: UsageOrg[];
|
|
72
|
+
/** The orgs with usage outside the top 10, summed; `count` 0 when there are none. */
|
|
73
|
+
otherOrgs: {
|
|
74
|
+
count: number;
|
|
75
|
+
runs: number;
|
|
76
|
+
tokens: number;
|
|
77
|
+
cost: number | null;
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
/** `YYYY-MM-DD` of `at` in `tz`. */
|
|
81
|
+
export declare function dateIn(tz: string, at: number): string;
|
|
82
|
+
/** The calendar date `days` after `date` (`YYYY-MM-DD`; date arithmetic, no time zone involved). */
|
|
83
|
+
export declare function addDays(date: string, days: number): string;
|
|
84
|
+
interface TokenRow {
|
|
85
|
+
day: string;
|
|
86
|
+
org_id: string;
|
|
87
|
+
provider: string;
|
|
88
|
+
model: string;
|
|
89
|
+
input: string;
|
|
90
|
+
output: string;
|
|
91
|
+
cache_read: string;
|
|
92
|
+
cache_write: string;
|
|
93
|
+
}
|
|
94
|
+
interface RunRow {
|
|
95
|
+
day: string;
|
|
96
|
+
org_id: string;
|
|
97
|
+
runs: string;
|
|
98
|
+
}
|
|
99
|
+
interface EmbeddingRow {
|
|
100
|
+
day: string;
|
|
101
|
+
org_id: string;
|
|
102
|
+
provider: string;
|
|
103
|
+
model: string;
|
|
104
|
+
input: string;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* The admin overview's usage block (spec §4.3, §5.2, §5.4). Three grouped queries over a bounded
|
|
108
|
+
* window (`conversation_events_usage_idx`, `runs_created_idx`, `model_usage_time_idx`) in one
|
|
109
|
+
* read-only transaction with a statement timeout; priced here with the model price table. The
|
|
110
|
+
* answer is cached in Redis for 300 s per time zone and first day, so every replica serves the
|
|
111
|
+
* same answer and a zone is recomputed at most once per 5 minutes (prices or currency changed in
|
|
112
|
+
* between show after the TTL). Aggregates only: no account, agent or conversation, no content.
|
|
113
|
+
*/
|
|
114
|
+
export declare class AdminUsageService {
|
|
115
|
+
private readonly db;
|
|
116
|
+
readonly txHost: TransactionHost;
|
|
117
|
+
readonly cacheService: CacheService;
|
|
118
|
+
private readonly prices;
|
|
119
|
+
private readonly settings;
|
|
120
|
+
private readonly statementTimeoutMs;
|
|
121
|
+
private readonly now;
|
|
122
|
+
constructor(db: KernelDb, txHost: TransactionHost, cacheService: CacheService, prices: Pick<PricesService, "table">, settings: Pick<SettingsService, "get">, timings?: Partial<AdminUsageTimings>);
|
|
123
|
+
/**
|
|
124
|
+
* The week ending today in `tz` (an IANA zone the caller validated, `IanaTimeZone`; normalized to
|
|
125
|
+
* its canonical spelling, which the answer echoes and the cache key holds). Throws
|
|
126
|
+
* `admin.usage_unavailable` (503) when the aggregate ran past its statement timeout, and
|
|
127
|
+
* `validation_failed` (400) for a zone PG does not know.
|
|
128
|
+
*
|
|
129
|
+
* Never call it inside a transaction: it leaves the caller's context on purpose (inside one,
|
|
130
|
+
* `@Cacheable` would be bypassed and the read-only transaction would hold a second connection).
|
|
131
|
+
*/
|
|
132
|
+
week(tz: string): Promise<AdminUsageWeek>;
|
|
133
|
+
/** The cache key holds the zone and the first day: a new day starts a new entry. */
|
|
134
|
+
protected cachedWeek(tz: string, firstDay: string): Promise<AdminUsageWeek>;
|
|
135
|
+
/** The window's queries, in their own read-only transaction (the timeout must not leak into a caller's). */
|
|
136
|
+
protected aggregate(tz: string, firstDay: string): Promise<AdminUsageWeek>;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* The three grouped queries over `[from, to)` (spec §5.4), each on its time index:
|
|
140
|
+
* `conversation_events_usage_idx`, `runs_created_idx`, `model_usage_time_idx`. Rows are bounded by
|
|
141
|
+
* days × orgs (× models), not by events. Days are calendar days in `tz` (`YYYY-MM-DD` text, so no
|
|
142
|
+
* driver turns them into local-time dates).
|
|
143
|
+
*/
|
|
144
|
+
export declare function usageQueries(tz: string, from: Date, to: Date): {
|
|
145
|
+
tokens: import("kysely").RawBuilder<TokenRow>;
|
|
146
|
+
runs: import("kysely").RawBuilder<RunRow>;
|
|
147
|
+
embeddings: import("kysely").RawBuilder<EmbeddingRow>;
|
|
148
|
+
};
|
|
149
|
+
export {};
|
|
@@ -0,0 +1,321 @@
|
|
|
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, Optional } from "@nestjs/common";
|
|
11
|
+
import { sql } from "kysely";
|
|
12
|
+
import { ApiError } from "../errors.js";
|
|
13
|
+
import { SettingsService } from "../identity/settings.js";
|
|
14
|
+
import { CacheService } from "../infra/cache/cache.service.js";
|
|
15
|
+
import { Cacheable } from "../infra/cache/cacheable.decorator.js";
|
|
16
|
+
import { KernelDb } from "../infra/database/kernel-db.js";
|
|
17
|
+
import { runOutsideTransaction, TransactionHost } from "../infra/database/transaction-host.js";
|
|
18
|
+
import { Transactional } from "../infra/database/transactional.decorator.js";
|
|
19
|
+
import { costOf, PricesService, priceKey } from "../models/prices.js";
|
|
20
|
+
/** Seam token of the kernel's own tests: a shorter statement timeout and a fixed clock. */
|
|
21
|
+
export const ADMIN_USAGE_TIMINGS = Symbol("ADMIN_USAGE_TIMINGS");
|
|
22
|
+
/** Days in the window: today and the 6 days before. */
|
|
23
|
+
export const USAGE_WINDOW_DAYS = 7;
|
|
24
|
+
/** Orgs listed by name; the rest are summed in `otherOrgs`. */
|
|
25
|
+
export const USAGE_TOP_ORGS = 10;
|
|
26
|
+
/** Seconds one computed week stays cached (shared by every replica, Redis). */
|
|
27
|
+
export const USAGE_CACHE_TTL = 300;
|
|
28
|
+
const DEFAULT_STATEMENT_TIMEOUT_MS = 10_000;
|
|
29
|
+
/** SQLSTATE `query_canceled`: what `statement_timeout` raises. */
|
|
30
|
+
const QUERY_CANCELED = "57014";
|
|
31
|
+
/** SQLSTATE `invalid_parameter_value`: a zone `Intl` knows but PG's tzdata does not. */
|
|
32
|
+
const INVALID_PARAMETER_VALUE = "22023";
|
|
33
|
+
const sqlState = (err) => err?.code;
|
|
34
|
+
/** `YYYY-MM-DD` of `at` in `tz`. */
|
|
35
|
+
export function dateIn(tz, at) {
|
|
36
|
+
const parts = new Intl.DateTimeFormat("en-US", {
|
|
37
|
+
timeZone: tz,
|
|
38
|
+
year: "numeric",
|
|
39
|
+
month: "2-digit",
|
|
40
|
+
day: "2-digit",
|
|
41
|
+
}).formatToParts(new Date(at));
|
|
42
|
+
const get = (type) => parts.find((p) => p.type === type)?.value ?? "";
|
|
43
|
+
return `${get("year")}-${get("month")}-${get("day")}`;
|
|
44
|
+
}
|
|
45
|
+
/** The calendar date `days` after `date` (`YYYY-MM-DD`; date arithmetic, no time zone involved). */
|
|
46
|
+
export function addDays(date, days) {
|
|
47
|
+
const [y, m, d] = date.split("-").map(Number);
|
|
48
|
+
return new Date(Date.UTC(y, m - 1, d + days)).toISOString().slice(0, 10);
|
|
49
|
+
}
|
|
50
|
+
const newCost = () => ({ priced: 0, anyPriced: false, unpriced: false });
|
|
51
|
+
const addCost = (acc, cost, tokens) => {
|
|
52
|
+
if (cost !== null) {
|
|
53
|
+
acc.priced += cost;
|
|
54
|
+
acc.anyPriced = true;
|
|
55
|
+
}
|
|
56
|
+
else if (tokens > 0) {
|
|
57
|
+
acc.unpriced = true;
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
/** Rounded to 1e-6 (float noise); null when tokens were used and none was priced. */
|
|
61
|
+
const costValue = (acc) => !acc.anyPriced && acc.unpriced ? null : Math.round(acc.priced * 1e6) / 1e6;
|
|
62
|
+
/**
|
|
63
|
+
* The admin overview's usage block (spec §4.3, §5.2, §5.4). Three grouped queries over a bounded
|
|
64
|
+
* window (`conversation_events_usage_idx`, `runs_created_idx`, `model_usage_time_idx`) in one
|
|
65
|
+
* read-only transaction with a statement timeout; priced here with the model price table. The
|
|
66
|
+
* answer is cached in Redis for 300 s per time zone and first day, so every replica serves the
|
|
67
|
+
* same answer and a zone is recomputed at most once per 5 minutes (prices or currency changed in
|
|
68
|
+
* between show after the TTL). Aggregates only: no account, agent or conversation, no content.
|
|
69
|
+
*/
|
|
70
|
+
let AdminUsageService = class AdminUsageService {
|
|
71
|
+
db;
|
|
72
|
+
txHost;
|
|
73
|
+
cacheService;
|
|
74
|
+
prices;
|
|
75
|
+
settings;
|
|
76
|
+
statementTimeoutMs;
|
|
77
|
+
now;
|
|
78
|
+
constructor(db, txHost, cacheService, prices, settings, timings = {}) {
|
|
79
|
+
this.db = db;
|
|
80
|
+
this.txHost = txHost;
|
|
81
|
+
this.cacheService = cacheService;
|
|
82
|
+
this.prices = prices;
|
|
83
|
+
this.settings = settings;
|
|
84
|
+
this.statementTimeoutMs = timings.statementTimeoutMs ?? DEFAULT_STATEMENT_TIMEOUT_MS;
|
|
85
|
+
this.now = timings.now ?? Date.now;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* The week ending today in `tz` (an IANA zone the caller validated, `IanaTimeZone`; normalized to
|
|
89
|
+
* its canonical spelling, which the answer echoes and the cache key holds). Throws
|
|
90
|
+
* `admin.usage_unavailable` (503) when the aggregate ran past its statement timeout, and
|
|
91
|
+
* `validation_failed` (400) for a zone PG does not know.
|
|
92
|
+
*
|
|
93
|
+
* Never call it inside a transaction: it leaves the caller's context on purpose (inside one,
|
|
94
|
+
* `@Cacheable` would be bypassed and the read-only transaction would hold a second connection).
|
|
95
|
+
*/
|
|
96
|
+
async week(tz) {
|
|
97
|
+
const zone = new Intl.DateTimeFormat("en-US", { timeZone: tz }).resolvedOptions().timeZone;
|
|
98
|
+
const firstDay = addDays(dateIn(zone, this.now()), -(USAGE_WINDOW_DAYS - 1));
|
|
99
|
+
return runOutsideTransaction(() => this.cachedWeek(zone, firstDay));
|
|
100
|
+
}
|
|
101
|
+
/** The cache key holds the zone and the first day: a new day starts a new entry. */
|
|
102
|
+
async cachedWeek(tz, firstDay) {
|
|
103
|
+
try {
|
|
104
|
+
return await this.aggregate(tz, firstDay);
|
|
105
|
+
}
|
|
106
|
+
catch (err) {
|
|
107
|
+
if (sqlState(err) === QUERY_CANCELED) {
|
|
108
|
+
throw new ApiError("admin.usage_unavailable", "The usage aggregate took too long; try again later");
|
|
109
|
+
}
|
|
110
|
+
if (sqlState(err) === INVALID_PARAMETER_VALUE) {
|
|
111
|
+
throw new ApiError("validation_failed", `Unknown time zone ${tz}; pass an IANA time zone name, such as Asia/Shanghai`);
|
|
112
|
+
}
|
|
113
|
+
throw err;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
/** The window's queries, in their own read-only transaction (the timeout must not leak into a caller's). */
|
|
117
|
+
async aggregate(tz, firstDay) {
|
|
118
|
+
const db = this.db.db;
|
|
119
|
+
// a SET takes no bind parameters; the value is an integer from config or the test seam
|
|
120
|
+
await sql
|
|
121
|
+
.raw(`SET LOCAL statement_timeout = ${Math.max(1, Math.trunc(this.statementTimeoutMs))}`)
|
|
122
|
+
.execute(db);
|
|
123
|
+
const endDay = addDays(firstDay, USAGE_WINDOW_DAYS);
|
|
124
|
+
// the zone's midnights as instants: PG applies the zone's rules, DST days included
|
|
125
|
+
const bounds = await sql `
|
|
126
|
+
SELECT (${firstDay}::date)::timestamp AT TIME ZONE ${tz} AS "from",
|
|
127
|
+
(${endDay}::date)::timestamp AT TIME ZONE ${tz} AS "to"
|
|
128
|
+
`.execute(db);
|
|
129
|
+
const { from, to } = bounds.rows[0];
|
|
130
|
+
const q = usageQueries(tz, from, to);
|
|
131
|
+
const tokens = await q.tokens.execute(db);
|
|
132
|
+
const runs = await q.runs.execute(db);
|
|
133
|
+
const embeddings = await q.embeddings.execute(db);
|
|
134
|
+
const [prices, settings] = await Promise.all([this.prices.table(), this.settings.get()]);
|
|
135
|
+
const result = summarize({
|
|
136
|
+
firstDay,
|
|
137
|
+
tokens: tokens.rows,
|
|
138
|
+
runs: runs.rows,
|
|
139
|
+
embeddings: embeddings.rows,
|
|
140
|
+
prices,
|
|
141
|
+
});
|
|
142
|
+
const orgIds = result.top.map((o) => o.orgId);
|
|
143
|
+
const names = orgIds.length === 0
|
|
144
|
+
? []
|
|
145
|
+
: await this.db
|
|
146
|
+
.selectFrom("orgs")
|
|
147
|
+
.select(["id", "name"])
|
|
148
|
+
.where("id", "in", orgIds)
|
|
149
|
+
.execute();
|
|
150
|
+
const nameOf = new Map(names.map((n) => [n.id, n.name]));
|
|
151
|
+
return {
|
|
152
|
+
from: from.toISOString(),
|
|
153
|
+
to: to.toISOString(),
|
|
154
|
+
tz,
|
|
155
|
+
currency: settings.priceCurrency,
|
|
156
|
+
days: result.days,
|
|
157
|
+
costPartial: result.costPartial,
|
|
158
|
+
orgs: result.top.map((o) => ({ ...o, name: nameOf.get(o.orgId) ?? o.orgId })),
|
|
159
|
+
otherOrgs: result.otherOrgs,
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
};
|
|
163
|
+
__decorate([
|
|
164
|
+
Cacheable({ key: "admin-usage:#{0}:#{1}", ttl: USAGE_CACHE_TTL })
|
|
165
|
+
], AdminUsageService.prototype, "cachedWeek", null);
|
|
166
|
+
__decorate([
|
|
167
|
+
Transactional({ propagation: "requires_new", accessMode: "read only" })
|
|
168
|
+
], AdminUsageService.prototype, "aggregate", null);
|
|
169
|
+
AdminUsageService = __decorate([
|
|
170
|
+
Injectable(),
|
|
171
|
+
__param(0, Inject(KernelDb)),
|
|
172
|
+
__param(1, Inject(TransactionHost)),
|
|
173
|
+
__param(2, Inject(CacheService)),
|
|
174
|
+
__param(3, Inject(PricesService)),
|
|
175
|
+
__param(4, Inject(SettingsService)),
|
|
176
|
+
__param(5, Optional()),
|
|
177
|
+
__param(5, Inject(ADMIN_USAGE_TIMINGS))
|
|
178
|
+
], AdminUsageService);
|
|
179
|
+
export { AdminUsageService };
|
|
180
|
+
/**
|
|
181
|
+
* The three grouped queries over `[from, to)` (spec §5.4), each on its time index:
|
|
182
|
+
* `conversation_events_usage_idx`, `runs_created_idx`, `model_usage_time_idx`. Rows are bounded by
|
|
183
|
+
* days × orgs (× models), not by events. Days are calendar days in `tz` (`YYYY-MM-DD` text, so no
|
|
184
|
+
* driver turns them into local-time dates).
|
|
185
|
+
*/
|
|
186
|
+
export function usageQueries(tz, from, to) {
|
|
187
|
+
// a malformed payload value (a string, null) counts 0 and a fraction is rounded, so one bad
|
|
188
|
+
// event cannot fail the aggregate for its 7 days
|
|
189
|
+
const tokenSum = (field) => sql `coalesce(sum(CASE WHEN jsonb_typeof(e.payload->${sql.lit(field)}) = 'number'
|
|
190
|
+
THEN round((e.payload->>${sql.lit(field)})::numeric) END), 0)`;
|
|
191
|
+
const day = (col) => sql `to_char((${sql.ref(col)} AT TIME ZONE ${tz})::date, 'YYYY-MM-DD')`;
|
|
192
|
+
return {
|
|
193
|
+
// chat tokens: every `usage` event (steps, compaction, titles, web fetch), by day × org × model
|
|
194
|
+
tokens: sql `
|
|
195
|
+
SELECT ${day("e.created_at")} AS day, c.org_id,
|
|
196
|
+
coalesce(e.payload->>'provider', '') AS provider,
|
|
197
|
+
coalesce(e.payload->>'model', '') AS model,
|
|
198
|
+
${tokenSum("inputTokens")} AS input,
|
|
199
|
+
${tokenSum("outputTokens")} AS output,
|
|
200
|
+
${tokenSum("cacheReadTokens")} AS cache_read,
|
|
201
|
+
${tokenSum("cacheWriteTokens")} AS cache_write
|
|
202
|
+
FROM capybara.conversation_events e
|
|
203
|
+
JOIN capybara.conversations c ON c.id = e.conversation_id
|
|
204
|
+
WHERE e.type = 'usage' AND e.created_at >= ${from} AND e.created_at < ${to}
|
|
205
|
+
GROUP BY 1, 2, 3, 4
|
|
206
|
+
`,
|
|
207
|
+
// runs: every run (sub-agent and eval replay runs included, D6), by day × org
|
|
208
|
+
runs: sql `
|
|
209
|
+
SELECT ${day("r.created_at")} AS day, c.org_id, count(*) AS runs
|
|
210
|
+
FROM capybara.runs r
|
|
211
|
+
JOIN capybara.conversations c ON c.id = r.conversation_id
|
|
212
|
+
WHERE r.created_at >= ${from} AND r.created_at < ${to}
|
|
213
|
+
GROUP BY 1, 2
|
|
214
|
+
`,
|
|
215
|
+
// embeddings (`ctx.models.embed`), by day × org × model
|
|
216
|
+
embeddings: sql `
|
|
217
|
+
SELECT ${day("u.occurred_at")} AS day, u.org_id, u.provider, u.model,
|
|
218
|
+
coalesce(sum(u.input_tokens), 0) AS input
|
|
219
|
+
FROM capybara.model_usage u
|
|
220
|
+
WHERE u.occurred_at >= ${from} AND u.occurred_at < ${to}
|
|
221
|
+
GROUP BY 1, 2, 3, 4
|
|
222
|
+
`,
|
|
223
|
+
};
|
|
224
|
+
}
|
|
225
|
+
/** Folds the grouped rows into days and orgs, pricing each (provider, model) group. */
|
|
226
|
+
function summarize(input) {
|
|
227
|
+
const days = new Map();
|
|
228
|
+
for (let i = 0; i < USAGE_WINDOW_DAYS; i++) {
|
|
229
|
+
const date = addDays(input.firstDay, i);
|
|
230
|
+
days.set(date, {
|
|
231
|
+
day: {
|
|
232
|
+
date,
|
|
233
|
+
runs: 0,
|
|
234
|
+
tokens: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0, embedding: 0 },
|
|
235
|
+
},
|
|
236
|
+
cost: newCost(),
|
|
237
|
+
});
|
|
238
|
+
}
|
|
239
|
+
const orgs = new Map();
|
|
240
|
+
const org = (orgId) => {
|
|
241
|
+
let o = orgs.get(orgId);
|
|
242
|
+
if (!o) {
|
|
243
|
+
o = { orgId, runs: 0, tokens: 0, cost: newCost() };
|
|
244
|
+
orgs.set(orgId, o);
|
|
245
|
+
}
|
|
246
|
+
return o;
|
|
247
|
+
};
|
|
248
|
+
let costPartial = false;
|
|
249
|
+
const price = (provider, model) => input.prices.get(priceKey(provider, model));
|
|
250
|
+
for (const r of input.tokens) {
|
|
251
|
+
const d = days.get(r.day);
|
|
252
|
+
if (!d)
|
|
253
|
+
continue; // outside the window (cannot happen: bounded by the same midnights)
|
|
254
|
+
const usage = {
|
|
255
|
+
inputTokens: Number(r.input),
|
|
256
|
+
outputTokens: Number(r.output),
|
|
257
|
+
cacheReadTokens: Number(r.cache_read),
|
|
258
|
+
cacheWriteTokens: Number(r.cache_write),
|
|
259
|
+
};
|
|
260
|
+
const total = usage.inputTokens + usage.outputTokens + usage.cacheReadTokens + usage.cacheWriteTokens;
|
|
261
|
+
const cost = costOf(usage, price(r.provider, r.model));
|
|
262
|
+
if (cost === null && total > 0)
|
|
263
|
+
costPartial = true;
|
|
264
|
+
d.day.tokens.input += usage.inputTokens;
|
|
265
|
+
d.day.tokens.output += usage.outputTokens;
|
|
266
|
+
d.day.tokens.cacheRead += usage.cacheReadTokens;
|
|
267
|
+
d.day.tokens.cacheWrite += usage.cacheWriteTokens;
|
|
268
|
+
addCost(d.cost, cost, total);
|
|
269
|
+
const o = org(r.org_id);
|
|
270
|
+
o.tokens += total;
|
|
271
|
+
addCost(o.cost, cost, total);
|
|
272
|
+
}
|
|
273
|
+
for (const r of input.embeddings) {
|
|
274
|
+
const d = days.get(r.day);
|
|
275
|
+
if (!d)
|
|
276
|
+
continue;
|
|
277
|
+
const n = Number(r.input);
|
|
278
|
+
const cost = costOf({ inputTokens: n, outputTokens: 0, cacheReadTokens: 0, cacheWriteTokens: 0 }, price(r.provider, r.model));
|
|
279
|
+
if (cost === null && n > 0)
|
|
280
|
+
costPartial = true;
|
|
281
|
+
d.day.tokens.embedding += n;
|
|
282
|
+
addCost(d.cost, cost, n);
|
|
283
|
+
const o = org(r.org_id);
|
|
284
|
+
o.tokens += n;
|
|
285
|
+
addCost(o.cost, cost, n);
|
|
286
|
+
}
|
|
287
|
+
for (const r of input.runs) {
|
|
288
|
+
const d = days.get(r.day);
|
|
289
|
+
if (!d)
|
|
290
|
+
continue;
|
|
291
|
+
const n = Number(r.runs);
|
|
292
|
+
d.day.runs += n;
|
|
293
|
+
org(r.org_id).runs += n;
|
|
294
|
+
}
|
|
295
|
+
const ranked = [...orgs.values()].sort((a, b) => b.tokens - a.tokens ||
|
|
296
|
+
b.runs - a.runs ||
|
|
297
|
+
(a.orgId < b.orgId ? -1 : a.orgId > b.orgId ? 1 : 0));
|
|
298
|
+
const rest = ranked.slice(USAGE_TOP_ORGS);
|
|
299
|
+
const restCost = newCost();
|
|
300
|
+
for (const o of rest) {
|
|
301
|
+
restCost.priced += o.cost.priced;
|
|
302
|
+
restCost.anyPriced ||= o.cost.anyPriced;
|
|
303
|
+
restCost.unpriced ||= o.cost.unpriced;
|
|
304
|
+
}
|
|
305
|
+
return {
|
|
306
|
+
days: [...days.values()].map((d) => ({ ...d.day, cost: costValue(d.cost) })),
|
|
307
|
+
costPartial,
|
|
308
|
+
top: ranked.slice(0, USAGE_TOP_ORGS).map((o) => ({
|
|
309
|
+
orgId: o.orgId,
|
|
310
|
+
runs: o.runs,
|
|
311
|
+
tokens: o.tokens,
|
|
312
|
+
cost: costValue(o.cost),
|
|
313
|
+
})),
|
|
314
|
+
otherOrgs: {
|
|
315
|
+
count: rest.length,
|
|
316
|
+
runs: rest.reduce((s, o) => s + o.runs, 0),
|
|
317
|
+
tokens: rest.reduce((s, o) => s + o.tokens, 0),
|
|
318
|
+
cost: costValue(restCost),
|
|
319
|
+
},
|
|
320
|
+
};
|
|
321
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { KernelDb } from "../infra/database/kernel-db.js";
|
|
2
|
+
import { AgentLookup, type AgentVisibility } from "./agent-lookup.js";
|
|
3
|
+
import type { AgentDefinition } from "./definition.js";
|
|
4
|
+
import type { AgentAvatar } from "./profile.js";
|
|
5
|
+
/** One row of the super admin's cross-org agent list (admin agents spec §3.2). */
|
|
6
|
+
export interface AdminAgentRow {
|
|
7
|
+
id: string;
|
|
8
|
+
orgId: string;
|
|
9
|
+
orgName: string;
|
|
10
|
+
/** The current version's name. */
|
|
11
|
+
name: string;
|
|
12
|
+
avatar: AgentAvatar;
|
|
13
|
+
ownerAccountId: string;
|
|
14
|
+
ownerName: string;
|
|
15
|
+
needsReassignment: boolean;
|
|
16
|
+
visibility: AgentVisibility;
|
|
17
|
+
createdFrom: {
|
|
18
|
+
templateId: string;
|
|
19
|
+
name: string | null;
|
|
20
|
+
} | null;
|
|
21
|
+
updatedAt: Date;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* The super admin's read-only agent detail (admin agents spec §3.3): the instructions in full,
|
|
25
|
+
* quick actions by label only; never conversations, runs or credentials.
|
|
26
|
+
*/
|
|
27
|
+
export interface AdminAgentDetail extends AdminAgentRow {
|
|
28
|
+
profile: {
|
|
29
|
+
description: string | null;
|
|
30
|
+
quickActions: {
|
|
31
|
+
label: string;
|
|
32
|
+
}[];
|
|
33
|
+
};
|
|
34
|
+
memberIds: string[] | null;
|
|
35
|
+
/** The current version's definition, instructions included. */
|
|
36
|
+
definition: AgentDefinition;
|
|
37
|
+
/** How many versions the agent has. */
|
|
38
|
+
versions: number;
|
|
39
|
+
createdAt: Date;
|
|
40
|
+
/**
|
|
41
|
+
* The skills it uses by name: the selected org skills that resolve in the org (a deleted one is
|
|
42
|
+
* left out) and its own skills (`scope: "agent"`). Never a skill body.
|
|
43
|
+
*/
|
|
44
|
+
skills: {
|
|
45
|
+
id: string;
|
|
46
|
+
name: string;
|
|
47
|
+
scope: "org" | "agent";
|
|
48
|
+
}[];
|
|
49
|
+
/**
|
|
50
|
+
* The org's live connectors it can use by name (tools default-on): every one but those whose
|
|
51
|
+
* every tool it turns off. Never auth, credentials or a member's state.
|
|
52
|
+
*/
|
|
53
|
+
connectors: AdminAgentConnector[];
|
|
54
|
+
}
|
|
55
|
+
export interface AdminAgentConnector {
|
|
56
|
+
id: string;
|
|
57
|
+
name: string;
|
|
58
|
+
slug: string;
|
|
59
|
+
status: "active" | "disabled";
|
|
60
|
+
}
|
|
61
|
+
export interface AdminAgentListQuery {
|
|
62
|
+
orgId?: string | undefined;
|
|
63
|
+
/** Case-insensitive substring of the name; LIKE wildcards match literally. */
|
|
64
|
+
q?: string | undefined;
|
|
65
|
+
/** The last id of the previous page. */
|
|
66
|
+
after?: string | undefined;
|
|
67
|
+
limit: number;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Cross-org agent reads for the super admin (admin agents spec §3.2, §3.3): every org's live
|
|
71
|
+
* agents, private ones included. Agents of a deleted org and soft-deleted agents are never listed
|
|
72
|
+
* and read as `agent.not_found`. The caller checks the super admin (`@SuperAdmin()`).
|
|
73
|
+
*/
|
|
74
|
+
export declare class AdminAgents {
|
|
75
|
+
private readonly db;
|
|
76
|
+
private readonly lookup;
|
|
77
|
+
constructor(db: KernelDb, lookup: AgentLookup);
|
|
78
|
+
/** Live agents of live orgs by id, `limit` per page; `next` is the last id when more follow. */
|
|
79
|
+
list(q: AdminAgentListQuery): Promise<{
|
|
80
|
+
agents: AdminAgentRow[];
|
|
81
|
+
next: string | null;
|
|
82
|
+
}>;
|
|
83
|
+
/** One live agent of a live org; otherwise `agent.not_found`. */
|
|
84
|
+
get(agentId: string): Promise<AdminAgentDetail>;
|
|
85
|
+
/**
|
|
86
|
+
* The org's live connectors by name, minus those the agent turns off as a whole: `tools: "all"`,
|
|
87
|
+
* or a list naming every tool the connector has (a connector without tools stays listed).
|
|
88
|
+
*/
|
|
89
|
+
private connectorsOf;
|
|
90
|
+
/** The list columns of live agents in live orgs. */
|
|
91
|
+
private rows;
|
|
92
|
+
}
|