@capybara-hq/kernel 0.1.0-rc.3 → 0.1.0-rc.5
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 +61 -5
- package/dist/admin/admin.controller.d.ts +47 -16
- package/dist/admin/admin.controller.js +44 -19
- package/dist/admin/extensions.controller.d.ts +24 -3
- package/dist/admin/extensions.controller.js +48 -8
- 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/agents/agent-lookup.d.ts +19 -0
- package/dist/agents/agent-lookup.js +21 -0
- package/dist/agents/agent-profile.service.d.ts +29 -0
- package/dist/agents/agent-profile.service.js +117 -0
- package/dist/agents/agents.controller.d.ts +168 -3
- package/dist/agents/agents.controller.js +201 -12
- package/dist/agents/agents.module.d.ts +4 -1
- package/dist/agents/agents.module.js +36 -6
- package/dist/agents/agents.service.d.ts +64 -27
- package/dist/agents/agents.service.js +199 -74
- package/dist/agents/definition.d.ts +53 -0
- package/dist/agents/definition.js +55 -0
- package/dist/agents/from-template.d.ts +106 -0
- package/dist/agents/from-template.js +649 -0
- package/dist/agents/from-template.service.d.ts +60 -0
- package/dist/agents/from-template.service.js +161 -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 +9 -3
- package/dist/agents/models.controller.js +19 -4
- package/dist/agents/org-templates.d.ts +176 -0
- package/dist/agents/org-templates.js +827 -0
- package/dist/agents/pending-connector-requests.d.ts +77 -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 +96 -0
- package/dist/agents/profile.js +51 -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 +86 -5
- package/dist/agents/templates.controller.js +171 -7
- package/dist/agents/templates.d.ts +127 -23
- package/dist/agents/templates.js +476 -53
- package/dist/background/background.controller.d.ts +38 -0
- package/dist/background/background.controller.js +87 -0
- package/dist/background/background.module.d.ts +10 -0
- package/dist/background/background.module.js +39 -0
- package/dist/background/finish.d.ts +44 -0
- package/dist/background/finish.js +94 -0
- package/dist/background/launch-lock.d.ts +15 -0
- package/dist/background/launch-lock.js +40 -0
- package/dist/background/launch.d.ts +36 -0
- package/dist/background/launch.js +70 -0
- package/dist/background/poll.job.d.ts +56 -0
- package/dist/background/poll.job.js +190 -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 +79 -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 +243 -0
- package/dist/background/store.d.ts +162 -0
- package/dist/background/store.js +357 -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 +77 -0
- package/dist/background/tasks.service.js +211 -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 +129 -30
- package/dist/catalog/admin-catalog.controller.js +213 -42
- package/dist/catalog/catalog-content.d.ts +58 -32
- package/dist/catalog/catalog-content.js +34 -8
- package/dist/catalog/catalog-import.module.d.ts +7 -0
- package/dist/catalog/catalog-import.module.js +60 -0
- package/dist/catalog/catalog-items.d.ts +111 -7
- package/dist/catalog/catalog-items.js +279 -13
- package/dist/catalog/catalog-scope.service.d.ts +260 -0
- package/dist/catalog/catalog-scope.service.js +1116 -0
- package/dist/catalog/catalog.module.d.ts +7 -9
- package/dist/catalog/catalog.module.js +41 -31
- package/dist/catalog/catalog.service.d.ts +101 -29
- package/dist/catalog/catalog.service.js +104 -106
- package/dist/catalog/claude/agents.js +2 -0
- package/dist/catalog/cli.d.ts +11 -1
- package/dist/catalog/cli.js +26 -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 +152 -0
- package/dist/catalog/component-scope.controller.js +287 -0
- package/dist/catalog/component-scope.service.d.ts +303 -0
- package/dist/catalog/component-scope.service.js +936 -0
- package/dist/catalog/component-state.d.ts +174 -0
- package/dist/catalog/component-state.js +437 -0
- 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/marketplaces.controller.d.ts +22 -5
- package/dist/catalog/marketplaces.controller.js +56 -7
- package/dist/catalog/marketplaces.service.d.ts +54 -14
- package/dist/catalog/marketplaces.service.js +71 -22
- package/dist/catalog/org-catalog.controller.d.ts +125 -34
- package/dist/catalog/org-catalog.controller.js +181 -65
- package/dist/catalog/org-catalog.service.d.ts +65 -33
- package/dist/catalog/org-catalog.service.js +324 -157
- 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 +119 -0
- package/dist/catalog/org-extension.controller.js +266 -0
- package/dist/catalog/org-plugin-uploads.controller.d.ts +98 -0
- package/dist/catalog/org-plugin-uploads.controller.js +213 -0
- package/dist/catalog/org-plugin-uploads.d.ts +63 -0
- package/dist/catalog/org-plugin-uploads.js +116 -0
- package/dist/catalog/owned-items.d.ts +184 -0
- package/dist/catalog/owned-items.js +789 -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 +221 -0
- package/dist/catalog/platform-components.js +761 -0
- package/dist/catalog/platform-migration.d.ts +115 -0
- package/dist/catalog/platform-migration.js +582 -0
- package/dist/catalog/plugin-import.d.ts +178 -34
- package/dist/catalog/plugin-import.js +623 -83
- package/dist/catalog/plugin-install.d.ts +185 -41
- package/dist/catalog/plugin-install.js +758 -126
- package/dist/catalog/plugin-upgrade.d.ts +260 -225
- package/dist/catalog/plugin-upgrade.js +1148 -1137
- package/dist/catalog/request-rules.d.ts +65 -0
- package/dist/catalog/request-rules.js +217 -0
- package/dist/catalog/requests.service.d.ts +193 -118
- package/dist/catalog/requests.service.js +526 -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 +118 -0
- package/dist/channels/actions.js +1 -0
- package/dist/channels/cards.js +21 -3
- package/dist/channels/channels.module.js +2 -0
- package/dist/channels/connections.service.d.ts +16 -1
- package/dist/channels/connections.service.js +38 -4
- package/dist/channels/inbound.d.ts +9 -1
- package/dist/channels/inbound.js +67 -5
- package/dist/channels/phrases.d.ts +35 -0
- package/dist/channels/phrases.js +29 -0
- package/dist/channels/threads.d.ts +5 -0
- package/dist/channels/threads.js +8 -0
- package/dist/config/docs.js +3 -1
- package/dist/config/schema.d.ts +24 -2
- package/dist/config/schema.js +145 -19
- 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/attachments.service.d.ts +30 -0
- package/dist/conversations/attachments.service.js +130 -5
- package/dist/conversations/conversations.controller.d.ts +79 -23
- package/dist/conversations/conversations.controller.js +141 -50
- package/dist/conversations/conversations.module.d.ts +1 -1
- package/dist/conversations/conversations.module.js +10 -7
- package/dist/conversations/conversations.service.d.ts +108 -9
- package/dist/conversations/conversations.service.js +237 -30
- package/dist/conversations/environment-status.d.ts +24 -0
- package/dist/conversations/environment-status.js +71 -0
- package/dist/conversations/event-log.d.ts +21 -6
- package/dist/conversations/event-log.js +70 -1
- package/dist/conversations/events.d.ts +140 -0
- package/dist/conversations/events.js +142 -13
- package/dist/conversations/queue.d.ts +3 -1
- package/dist/conversations/queue.js +13 -2
- package/dist/conversations/queue.service.d.ts +1 -1
- package/dist/conversations/queue.service.js +8 -1
- package/dist/conversations/titles.d.ts +12 -3
- package/dist/conversations/titles.js +36 -8
- package/dist/conversations/tree.d.ts +17 -0
- package/dist/conversations/tree.js +42 -0
- package/dist/ctx/create-ctx.d.ts +5 -0
- package/dist/ctx/create-ctx.js +15 -5
- package/dist/db/kernel-schema.d.ts +420 -20
- package/dist/db/pool.d.ts +5 -0
- package/dist/db/pool.js +3 -0
- package/dist/environments/access.d.ts +41 -0
- package/dist/environments/access.js +77 -0
- package/dist/environments/conversation-environments.d.ts +61 -0
- package/dist/environments/conversation-environments.js +170 -0
- package/dist/environments/dto.d.ts +25 -0
- package/dist/environments/dto.js +12 -0
- package/dist/environments/environments.controller.d.ts +33 -0
- package/dist/environments/environments.controller.js +110 -0
- package/dist/environments/environments.module.d.ts +8 -0
- package/dist/environments/environments.module.js +27 -0
- package/dist/environments/environments.service.d.ts +153 -0
- package/dist/environments/environments.service.js +541 -0
- package/dist/environments/legacy-cleanup.job.d.ts +34 -0
- package/dist/environments/legacy-cleanup.job.js +141 -0
- package/dist/errors.d.ts +90 -2
- package/dist/errors.js +90 -2
- package/dist/evals/reconstruct.d.ts +18 -9
- package/dist/evals/reconstruct.js +26 -7
- package/dist/evals/run-replay.d.ts +7 -2
- package/dist/evals/run-replay.js +42 -7
- package/dist/evals/step-replay.d.ts +2 -5
- package/dist/evals/step-replay.js +13 -7
- package/dist/evals/trajectory.js +1 -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 +36 -10
- package/dist/extensions/admin-ops.js +67 -42
- package/dist/extensions/admin-view.d.ts +39 -10
- package/dist/extensions/admin-view.js +111 -20
- package/dist/extensions/blobs.js +1 -0
- package/dist/extensions/bootstrap.d.ts +17 -4
- package/dist/extensions/bootstrap.js +70 -9
- package/dist/extensions/cli.d.ts +12 -0
- package/dist/extensions/cli.js +11 -2
- 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 +78 -8
- package/dist/extensions/deployment-config.js +172 -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 +127 -0
- package/dist/extensions/effective-config.js +368 -0
- package/dist/extensions/extensions.module.js +14 -2
- package/dist/extensions/hooks.d.ts +37 -4
- package/dist/extensions/hooks.js +82 -16
- package/dist/extensions/host.d.ts +45 -2
- package/dist/extensions/host.js +112 -16
- package/dist/extensions/installs.d.ts +20 -8
- package/dist/extensions/installs.js +37 -15
- package/dist/extensions/org-config.d.ts +81 -6
- package/dist/extensions/org-config.js +195 -44
- 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 +14 -1
- package/dist/extensions/package.js +51 -2
- package/dist/extensions/permission-view.d.ts +19 -4
- package/dist/extensions/permission-view.js +4 -4
- 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 +34 -0
- package/dist/extensions/point-defaults.controller.js +71 -0
- package/dist/extensions/point-defaults.d.ts +71 -0
- package/dist/extensions/point-defaults.js +234 -0
- package/dist/extensions/registry.d.ts +1 -1
- package/dist/extensions/registry.js +2 -0
- package/dist/extensions/resolve.d.ts +5 -1
- package/dist/extensions/resolve.js +15 -2
- package/dist/files/previewers.d.ts +8 -1
- package/dist/files/previewers.js +35 -6
- package/dist/http/api.module.js +31 -3
- package/dist/http/app.d.ts +11 -2
- package/dist/http/app.js +31 -5
- package/dist/http/nest-logger.d.ts +6 -5
- package/dist/http/nest-logger.js +24 -10
- package/dist/identity/accounts.d.ts +29 -29
- package/dist/identity/accounts.js +47 -47
- 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 +26 -9
- package/dist/identity/cookies.d.ts +20 -5
- package/dist/identity/cookies.js +44 -6
- package/dist/identity/identity.module.d.ts +1 -1
- package/dist/identity/identity.module.js +4 -4
- package/dist/identity/me.controller.d.ts +5 -1
- package/dist/identity/me.controller.js +12 -3
- package/dist/identity/principal.d.ts +3 -3
- package/dist/identity/principal.js +3 -3
- package/dist/identity/sessions.d.ts +12 -0
- package/dist/identity/sessions.js +45 -0
- package/dist/identity/settings.d.ts +22 -11
- package/dist/identity/settings.js +53 -18
- 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/inbox/inbox.module.d.ts +4 -1
- package/dist/inbox/inbox.module.js +7 -3
- package/dist/inbox/inbox.service.d.ts +62 -3
- 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 +151 -0
- package/dist/inbox/platform-inbox.service.js +263 -0
- package/dist/inbox/platform-notices.d.ts +19 -0
- package/dist/inbox/platform-notices.js +9 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +1 -1
- package/dist/infra/cli/kernel-cli.module.js +9 -1
- package/dist/infra/config/kernel-config.service.js +27 -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 +19 -2
- package/dist/infra/lifecycle/process-guards.js +4 -0
- package/dist/infra/logging/logging.module.d.ts +4 -2
- package/dist/infra/logging/logging.module.js +24 -6
- 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/tokens.d.ts +6 -1
- package/dist/infra/tokens.js +6 -1
- package/dist/kernel.module.js +6 -0
- package/dist/lifecycle/kernel-lifecycle.d.ts +1 -1
- package/dist/lifecycle/kernel-lifecycle.js +4 -4
- package/dist/log.d.ts +13 -1
- package/dist/log.js +93 -17
- package/dist/models/prices.d.ts +5 -5
- package/dist/models/prices.js +4 -4
- package/dist/models/purposes.controller.d.ts +6 -4
- package/dist/models/purposes.controller.js +13 -7
- package/dist/models/purposes.d.ts +43 -9
- package/dist/models/purposes.js +48 -18
- 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.module.js +3 -0
- package/dist/orgs/orgs.service.d.ts +20 -7
- package/dist/orgs/orgs.service.js +32 -12
- 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 +20 -3
- package/dist/orgs/settings.service.js +19 -4
- package/dist/overrides.d.ts +3 -0
- package/dist/overrides.js +2 -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 +11 -0
- package/dist/platform/errors.js +26 -0
- package/dist/platform/exclusions.d.ts +12 -0
- package/dist/platform/exclusions.js +1387 -0
- package/dist/platform/method.d.ts +6 -0
- package/dist/platform/method.js +15 -0
- package/dist/platform/operation.d.ts +92 -0
- package/dist/platform/operation.js +35 -0
- package/dist/platform/ops/agent-templates.ops.d.ts +14 -0
- package/dist/platform/ops/agent-templates.ops.js +92 -0
- package/dist/platform/ops/agents.ops.d.ts +19 -0
- package/dist/platform/ops/agents.ops.js +294 -0
- package/dist/platform/ops/connectors.ops.d.ts +15 -0
- package/dist/platform/ops/connectors.ops.js +126 -0
- package/dist/platform/ops/errors.d.ts +11 -0
- package/dist/platform/ops/errors.js +22 -0
- package/dist/platform/ops/extensions.ops.d.ts +19 -0
- package/dist/platform/ops/extensions.ops.js +116 -0
- package/dist/platform/ops/marketplaces.ops.d.ts +16 -0
- package/dist/platform/ops/marketplaces.ops.js +157 -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 +23 -0
- package/dist/platform/ops/platform.ops.js +158 -0
- package/dist/platform/ops/plugins.ops.d.ts +33 -0
- package/dist/platform/ops/plugins.ops.js +377 -0
- package/dist/platform/ops/requests.ops.d.ts +14 -0
- package/dist/platform/ops/requests.ops.js +153 -0
- package/dist/platform/ops/role.d.ts +4 -0
- package/dist/platform/ops/role.js +10 -0
- package/dist/platform/ops/skills.ops.d.ts +13 -0
- package/dist/platform/ops/skills.ops.js +98 -0
- package/dist/platform/ops/summary.d.ts +10 -0
- package/dist/platform/ops/summary.js +18 -0
- package/dist/platform/platform-ops.module.d.ts +7 -0
- package/dist/platform/platform-ops.module.js +55 -0
- package/dist/platform/platform.module.d.ts +8 -0
- package/dist/platform/platform.module.js +25 -0
- package/dist/platform/redact-orgs.d.ts +7 -0
- package/dist/platform/redact-orgs.js +52 -0
- package/dist/platform/registry.d.ts +30 -0
- package/dist/platform/registry.js +111 -0
- 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 +15 -1
- package/dist/runtime/context/build.d.ts +11 -7
- package/dist/runtime/context/build.js +46 -19
- package/dist/runtime/context/claude-tools.d.ts +3 -1
- package/dist/runtime/context/claude-tools.js +8 -6
- package/dist/runtime/context/compaction.js +13 -0
- package/dist/runtime/context/reminders.d.ts +2 -0
- package/dist/runtime/context/reminders.js +2 -0
- package/dist/runtime/context/skills.js +9 -2
- package/dist/runtime/context/tool-changes.d.ts +27 -0
- package/dist/runtime/context/tool-changes.js +60 -0
- package/dist/runtime/hook-calls.js +2 -0
- package/dist/runtime/langgraph-loop.d.ts +3 -1
- package/dist/runtime/langgraph-loop.js +36 -17
- package/dist/runtime/loop.d.ts +34 -5
- package/dist/runtime/maintenance.d.ts +9 -4
- package/dist/runtime/maintenance.js +35 -8
- package/dist/runtime/model-call.d.ts +46 -8
- package/dist/runtime/model-call.js +72 -21
- package/dist/runtime/providers.d.ts +6 -0
- package/dist/runtime/providers.js +8 -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-jobs.d.ts +3 -5
- package/dist/runtime/run-jobs.js +3 -7
- package/dist/runtime/run-queue.d.ts +59 -2
- package/dist/runtime/run-queue.js +311 -38
- package/dist/runtime/run-worker.d.ts +11 -5
- package/dist/runtime/run-worker.js +69 -33
- package/dist/runtime/runtime.module.js +11 -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 +12 -3
- package/dist/runtime/subagents/definition.js +44 -28
- package/dist/runtime/subagents/deliveries.d.ts +71 -0
- package/dist/runtime/subagents/deliveries.js +228 -0
- package/dist/runtime/subagents/dispatch.d.ts +115 -26
- package/dist/runtime/subagents/dispatch.js +212 -141
- 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/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 +24 -7
- package/dist/runtime/subagents/roster.js +47 -11
- package/dist/runtime/subagents/skill-fork.d.ts +3 -2
- package/dist/runtime/subagents/skill-fork.js +8 -4
- 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 +7 -4
- package/dist/runtime/subagents/subagents.service.js +11 -6
- package/dist/runtime/usage-report.d.ts +2 -1
- package/dist/runtime/usage-report.js +19 -13
- package/dist/runtime/waits.d.ts +145 -36
- package/dist/runtime/waits.js +423 -109
- 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 +2 -2
- package/dist/sandbox/providers.js +1 -1
- package/dist/sandbox/sandbox.module.d.ts +3 -2
- package/dist/sandbox/sandbox.module.js +10 -4
- package/dist/sandbox/sandbox.service.d.ts +282 -129
- package/dist/sandbox/sandbox.service.js +736 -381
- package/dist/skills/catalog.d.ts +3 -2
- package/dist/skills/catalog.js +21 -43
- package/dist/skills/changes.controller.d.ts +7 -0
- package/dist/skills/changes.controller.js +19 -1
- package/dist/skills/invoke.js +8 -3
- package/dist/skills/package.d.ts +20 -1
- package/dist/skills/package.js +28 -1
- package/dist/skills/skills.controller.d.ts +39 -4
- package/dist/skills/skills.controller.js +88 -10
- package/dist/skills/skills.module.js +10 -1
- package/dist/skills/skills.service.d.ts +106 -26
- package/dist/skills/skills.service.js +421 -75
- package/dist/skills/usable.d.ts +81 -0
- package/dist/skills/usable.js +379 -0
- package/dist/tools/approvals.service.d.ts +20 -2
- package/dist/tools/approvals.service.js +25 -4
- package/dist/tools/builtin-names.d.ts +41 -7
- package/dist/tools/builtin-names.js +59 -7
- package/dist/tools/builtins/agent.d.ts +23 -21
- package/dist/tools/builtins/agent.js +62 -55
- package/dist/tools/builtins/builtin-tools.d.ts +19 -1
- package/dist/tools/builtins/builtin-tools.js +59 -2
- package/dist/tools/builtins/handback.d.ts +28 -0
- package/dist/tools/builtins/handback.js +53 -0
- package/dist/tools/builtins/platform.d.ts +34 -0
- package/dist/tools/builtins/platform.js +362 -0
- package/dist/tools/builtins/sandbox/bash.d.ts +1 -1
- package/dist/tools/builtins/sandbox/bash.js +241 -4
- package/dist/tools/builtins/sandbox/common.d.ts +69 -27
- package/dist/tools/builtins/sandbox/common.js +87 -48
- package/dist/tools/builtins/sandbox/deliver.js +1 -1
- package/dist/tools/builtins/sandbox/edit.js +2 -2
- package/dist/tools/builtins/sandbox/glob.js +2 -2
- package/dist/tools/builtins/sandbox/grep.js +2 -4
- package/dist/tools/builtins/sandbox/index.d.ts +3 -1
- package/dist/tools/builtins/sandbox/index.js +7 -1
- package/dist/tools/builtins/sandbox/read.js +1 -1
- package/dist/tools/builtins/sandbox/task-output.d.ts +74 -0
- package/dist/tools/builtins/sandbox/task-output.js +329 -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.js +2 -2
- 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 +22 -14
- package/dist/tools/builtins/skill-load.js +86 -57
- package/dist/tools/builtins/skill-write.js +1 -1
- 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/connectors.controller.d.ts +10 -0
- package/dist/tools/connectors.controller.js +12 -0
- package/dist/tools/connectors.service.d.ts +46 -5
- package/dist/tools/connectors.service.js +94 -15
- 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 +42 -1
- package/dist/tools/info.js +64 -1
- package/dist/tools/oauth/flow-paths.d.ts +1 -1
- package/dist/tools/oauth/flow-paths.js +1 -1
- package/dist/tools/org-tool-switches.d.ts +74 -0
- package/dist/tools/org-tool-switches.js +184 -0
- package/dist/tools/pipeline.d.ts +46 -40
- package/dist/tools/pipeline.js +202 -364
- package/dist/tools/policy.d.ts +1 -1
- package/dist/tools/policy.js +36 -16
- package/dist/tools/registry.d.ts +120 -8
- package/dist/tools/registry.js +112 -19
- package/dist/tools/tools.module.js +24 -2
- package/dist/tools/validate.js +1 -1
- package/dist/ui/views.d.ts +2 -1
- package/dist/ui/views.js +17 -3
- package/package.json +3 -3
- 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/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
|
@@ -7,31 +7,195 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
8
8
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
9
9
|
};
|
|
10
|
-
import {
|
|
10
|
+
import { AGENT_TEMPLATE_NAME_RE } from "@capybara-hq/plugin-sdk";
|
|
11
|
+
import { Controller, Delete, Get, Inject, Post, Put } from "@nestjs/common";
|
|
12
|
+
import { z } from "zod";
|
|
13
|
+
import { OwnedItems } from "../catalog/owned-items.js";
|
|
14
|
+
import { CurrentPrincipal, patTokenId, requireUser, } from "../identity/principal.js";
|
|
15
|
+
import { createZodDto } from "../infra/validation/create-zod-dto.js";
|
|
16
|
+
import { ZBody, ZParam } from "../infra/validation/zod-params.js";
|
|
11
17
|
import { CurrentOrg, OrgAction } from "../orgs/org.guard.js";
|
|
18
|
+
import { OrgAgentTemplates, } from "./org-templates.js";
|
|
12
19
|
import { AgentTemplatesService } from "./templates.js";
|
|
20
|
+
const IdParams = z.object({ id: z.string().min(1).max(100) });
|
|
21
|
+
const AgentIdParams = z.object({ agentId: z.string().min(1).max(100) });
|
|
22
|
+
const ShareableBody = z.object({ shareable: z.boolean() }).strict();
|
|
23
|
+
const SaveAsBody = z
|
|
24
|
+
.object({
|
|
25
|
+
/** The bare template name (the template name rule); unique in the org's usable set. */
|
|
26
|
+
name: z.string().regex(AGENT_TEMPLATE_NAME_RE),
|
|
27
|
+
/** When to use it (trimmed, as a template file's). */
|
|
28
|
+
description: z.string().trim().min(1).max(4096),
|
|
29
|
+
})
|
|
30
|
+
.strict();
|
|
31
|
+
const UpdateBody = z
|
|
32
|
+
.object({
|
|
33
|
+
/** The whole definition (the `AgentTemplate` shape), validated like a template file. */
|
|
34
|
+
definition: z.record(z.string(), z.unknown()),
|
|
35
|
+
/** The `version` the editor read; another one -> 409 `agent_template.version_conflict`. */
|
|
36
|
+
expectedVersion: z.number().int().min(1),
|
|
37
|
+
})
|
|
38
|
+
.strict();
|
|
39
|
+
class AgentTemplateIdParams extends createZodDto(IdParams, "AgentTemplateIdParams") {
|
|
40
|
+
}
|
|
41
|
+
class SaveAsAgentIdParams extends createZodDto(AgentIdParams, "SaveAsAgentIdParams") {
|
|
42
|
+
}
|
|
43
|
+
class AgentTemplateShareableBody extends createZodDto(ShareableBody, "AgentTemplateShareableBody") {
|
|
44
|
+
}
|
|
45
|
+
class SaveAsTemplateBody extends createZodDto(SaveAsBody, "SaveAsTemplateBody") {
|
|
46
|
+
}
|
|
47
|
+
class AgentTemplateUpdateBody extends createZodDto(UpdateBody, "AgentTemplateUpdateBody") {
|
|
48
|
+
}
|
|
49
|
+
const actorOpts = (p) => {
|
|
50
|
+
const tokenId = patTokenId(p);
|
|
51
|
+
return tokenId !== undefined ? { actorTokenId: tokenId } : {};
|
|
52
|
+
};
|
|
13
53
|
/**
|
|
14
|
-
* The org's agent templates
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
54
|
+
* The org's agent templates (`/api/v1/orgs/:orgId/agent-templates`, phase C spec §17; plugin scope
|
|
55
|
+
* phase 4, rulings P4-9 to P4-13). Reads with `agents.create` (members, people only): the list
|
|
56
|
+
* the agent editor and the 模板 tab show, and one template's detail with its definition. The org's
|
|
57
|
+
* own templates (saved from an agent, `POST orgs/:orgId/agents/:agentId/save-as-template`) are
|
|
58
|
+
* edited, deleted and made 可共享 by the owner org's admins (`agents.manage`, the action that
|
|
59
|
+
* manages agent templates).
|
|
18
60
|
*/
|
|
19
61
|
let AgentTemplatesController = class AgentTemplatesController {
|
|
20
62
|
templates;
|
|
21
|
-
|
|
63
|
+
orgTemplates;
|
|
64
|
+
owned;
|
|
65
|
+
constructor(templates, orgTemplates, owned) {
|
|
22
66
|
this.templates = templates;
|
|
67
|
+
this.orgTemplates = orgTemplates;
|
|
68
|
+
this.owned = owned;
|
|
23
69
|
}
|
|
24
70
|
async list(org) {
|
|
25
71
|
return { templates: await this.templates.listForOrg(org.orgId) };
|
|
26
72
|
}
|
|
73
|
+
/**
|
|
74
|
+
* One template usable in the org (an org template, a linked copy, a platform template on in
|
|
75
|
+
* the org) with its definition, owner and the org's flags (`owned`, `shareable`, `promoted`).
|
|
76
|
+
* Not usable here -> 404 `component.not_found`.
|
|
77
|
+
*/
|
|
78
|
+
async get(principal, org, params) {
|
|
79
|
+
requireUser(principal);
|
|
80
|
+
return { template: await this.orgTemplates.detail(org.orgId, params.id) };
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* A new version of the org's own template (ruling P4-12): `{ definition, expectedVersion }` ->
|
|
84
|
+
* 200 `{ template }`; a stale version -> 409 `agent_template.version_conflict`; a template the
|
|
85
|
+
* org does not own -> 409 `catalog.not_owned`.
|
|
86
|
+
*/
|
|
87
|
+
async update(principal, org, params, body) {
|
|
88
|
+
const p = requireUser(principal);
|
|
89
|
+
const template = await this.orgTemplates.update(org.orgId, p.account.id, params.id, body, patTokenId(p));
|
|
90
|
+
return { template };
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* What deleting the org's own template does (nothing written): `outcome` `transferred` when it
|
|
94
|
+
* was shared and another org uses it (`orgs`), else `removed`; `agents` the org's agents whose
|
|
95
|
+
* roster loses it.
|
|
96
|
+
*/
|
|
97
|
+
async deletePreview(principal, org, params) {
|
|
98
|
+
requireUser(principal);
|
|
99
|
+
return this.owned.previewAgentTemplateDelete(org.orgId, params.id);
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Deletes the org's own template (the P3 owner rules, ruling P4-12): one it shared that another
|
|
103
|
+
* org uses becomes the platform's (platform notice `ownership_transferred`). 200 `{ outcome }`.
|
|
104
|
+
*/
|
|
105
|
+
async remove(principal, org, params) {
|
|
106
|
+
const p = requireUser(principal);
|
|
107
|
+
const outcome = await this.owned.deleteAgentTemplate(org.orgId, p.account.id, params.id, actorOpts(p));
|
|
108
|
+
return { outcome };
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Sets 可共享 on the org's own agent template (`{ shareable }` -> 200 `{ id, shareable }`; an org
|
|
112
|
+
* template, ruling P4-13): a plugin's template or a copy of another owner's platform template
|
|
113
|
+
* -> 409 `catalog.not_owned`; one the org promoted writes its platform row too (ruling P3-2).
|
|
114
|
+
*/
|
|
115
|
+
async setShareable(principal, org, params, body) {
|
|
116
|
+
const p = requireUser(principal);
|
|
117
|
+
await this.owned.setShareable(org.orgId, p.account.id, { kind: "agent_template", id: params.id }, body.shareable, actorOpts(p));
|
|
118
|
+
return { id: params.id, shareable: body.shareable };
|
|
119
|
+
}
|
|
27
120
|
};
|
|
28
121
|
__decorate([
|
|
29
122
|
Get(),
|
|
30
123
|
OrgAction("agents.create"),
|
|
31
124
|
__param(0, CurrentOrg())
|
|
32
125
|
], AgentTemplatesController.prototype, "list", null);
|
|
126
|
+
__decorate([
|
|
127
|
+
Get(":id"),
|
|
128
|
+
OrgAction("agents.create"),
|
|
129
|
+
__param(0, CurrentPrincipal()),
|
|
130
|
+
__param(1, CurrentOrg()),
|
|
131
|
+
__param(2, ZParam(AgentTemplateIdParams))
|
|
132
|
+
], AgentTemplatesController.prototype, "get", null);
|
|
133
|
+
__decorate([
|
|
134
|
+
Put(":id"),
|
|
135
|
+
OrgAction("agents.manage"),
|
|
136
|
+
__param(0, CurrentPrincipal()),
|
|
137
|
+
__param(1, CurrentOrg()),
|
|
138
|
+
__param(2, ZParam(AgentTemplateIdParams)),
|
|
139
|
+
__param(3, ZBody(AgentTemplateUpdateBody))
|
|
140
|
+
], AgentTemplatesController.prototype, "update", null);
|
|
141
|
+
__decorate([
|
|
142
|
+
Get(":id/delete-preview"),
|
|
143
|
+
OrgAction("agents.manage"),
|
|
144
|
+
__param(0, CurrentPrincipal()),
|
|
145
|
+
__param(1, CurrentOrg()),
|
|
146
|
+
__param(2, ZParam(AgentTemplateIdParams))
|
|
147
|
+
], AgentTemplatesController.prototype, "deletePreview", null);
|
|
148
|
+
__decorate([
|
|
149
|
+
Delete(":id"),
|
|
150
|
+
OrgAction("agents.manage"),
|
|
151
|
+
__param(0, CurrentPrincipal()),
|
|
152
|
+
__param(1, CurrentOrg()),
|
|
153
|
+
__param(2, ZParam(AgentTemplateIdParams))
|
|
154
|
+
], AgentTemplatesController.prototype, "remove", null);
|
|
155
|
+
__decorate([
|
|
156
|
+
Put(":id/shareable"),
|
|
157
|
+
OrgAction("agents.manage"),
|
|
158
|
+
__param(0, CurrentPrincipal()),
|
|
159
|
+
__param(1, CurrentOrg()),
|
|
160
|
+
__param(2, ZParam(AgentTemplateIdParams)),
|
|
161
|
+
__param(3, ZBody(AgentTemplateShareableBody))
|
|
162
|
+
], AgentTemplatesController.prototype, "setShareable", null);
|
|
33
163
|
AgentTemplatesController = __decorate([
|
|
34
164
|
Controller("api/v1/orgs/:orgId/agent-templates"),
|
|
35
|
-
__param(0, Inject(AgentTemplatesService))
|
|
165
|
+
__param(0, Inject(AgentTemplatesService)),
|
|
166
|
+
__param(1, Inject(OrgAgentTemplates)),
|
|
167
|
+
__param(2, Inject(OwnedItems))
|
|
36
168
|
], AgentTemplatesController);
|
|
37
169
|
export { AgentTemplatesController };
|
|
170
|
+
/**
|
|
171
|
+
* 另存为模板 (ruling P4-9; `agents.manage`, org admins): `POST
|
|
172
|
+
* /api/v1/orgs/:orgId/agents/:agentId/save-as-template { name, description }` -> 201
|
|
173
|
+
* `{ template, omitted }`. `template` is the new org template's detail (version 1, the bare
|
|
174
|
+
* `name`); `omitted` lists what the template leaves out (`SaveAsOmission`: allowlisted org agents
|
|
175
|
+
* in the roster, the agent's own skills, connectors and sub-agents no longer usable, entries past
|
|
176
|
+
* a limit). A name the org can already use as a type -> 409 `agent_template.name_taken` (details
|
|
177
|
+
* `[{ owner, templateId }]`). Its own controller: the agents controller is the agent CRUD.
|
|
178
|
+
*/
|
|
179
|
+
let AgentSaveAsTemplateController = class AgentSaveAsTemplateController {
|
|
180
|
+
orgTemplates;
|
|
181
|
+
constructor(orgTemplates) {
|
|
182
|
+
this.orgTemplates = orgTemplates;
|
|
183
|
+
}
|
|
184
|
+
async saveAs(principal, org, params, body) {
|
|
185
|
+
const p = requireUser(principal);
|
|
186
|
+
return this.orgTemplates.saveAs(org.orgId, p.account.id, params.agentId, body, patTokenId(p));
|
|
187
|
+
}
|
|
188
|
+
};
|
|
189
|
+
__decorate([
|
|
190
|
+
Post(":agentId/save-as-template"),
|
|
191
|
+
OrgAction("agents.manage"),
|
|
192
|
+
__param(0, CurrentPrincipal()),
|
|
193
|
+
__param(1, CurrentOrg()),
|
|
194
|
+
__param(2, ZParam(SaveAsAgentIdParams)),
|
|
195
|
+
__param(3, ZBody(SaveAsTemplateBody))
|
|
196
|
+
], AgentSaveAsTemplateController.prototype, "saveAs", null);
|
|
197
|
+
AgentSaveAsTemplateController = __decorate([
|
|
198
|
+
Controller("api/v1/orgs/:orgId/agents"),
|
|
199
|
+
__param(0, Inject(OrgAgentTemplates))
|
|
200
|
+
], AgentSaveAsTemplateController);
|
|
201
|
+
export { AgentSaveAsTemplateController };
|
|
@@ -1,19 +1,24 @@
|
|
|
1
|
-
import type { AgentTemplate, AgentTemplateTier } from "@capybara-hq/plugin-sdk";
|
|
1
|
+
import type { AgentTemplate, AgentTemplateTier, Logger } from "@capybara-hq/plugin-sdk";
|
|
2
|
+
import { type Owner } from "../catalog/ownership.js";
|
|
2
3
|
import type { KernelSchemaDb, SourceFormat } from "../db/kernel-schema.js";
|
|
3
4
|
import { KernelDb } from "../infra/database/kernel-db.js";
|
|
4
5
|
/**
|
|
5
|
-
* Agent templates
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
6
|
+
* Agent templates of an org (sub-agents spec §16): its own `agent_templates` (one live row per org,
|
|
7
|
+
* plugin and name) with `agent_template_versions` (the parsed template), and the platform templates
|
|
8
|
+
* (plugin scope phase 2, rulings A2, C2: `platform_agent_templates`) that are on in the org. Plugin
|
|
9
|
+
* install, upgrade and uninstall write the org rows through the `…In` functions in the caller's
|
|
10
|
+
* transaction; the roster and the effective definition read both through {@link loadTemplates}.
|
|
11
|
+
* An org copy linked to a platform template (ruling B2) resolves to the platform template's current
|
|
12
|
+
* version under the copy's own id unless pinned. A copy linked to a platform template its own org
|
|
13
|
+
* owns (promote on share, ruling P3-3) serves its own stored version while that is the platform
|
|
14
|
+
* template's current one, and is listed instead of it. No in-process state.
|
|
10
15
|
*/
|
|
11
|
-
/** A
|
|
16
|
+
/** A usable template of an org (`GET` listings, the agent page). */
|
|
12
17
|
export interface AgentTemplateView {
|
|
13
18
|
id: string;
|
|
14
19
|
name: string;
|
|
15
|
-
plugin: string;
|
|
16
|
-
/** The roster type `<plugin>:<name
|
|
20
|
+
plugin: string | null;
|
|
21
|
+
/** The roster type: `<plugin>:<name>`, or the bare `<name>` without a plugin. */
|
|
17
22
|
type: string;
|
|
18
23
|
description: string;
|
|
19
24
|
model: AgentTemplateTier;
|
|
@@ -21,46 +26,145 @@ export interface AgentTemplateView {
|
|
|
21
26
|
sourceFormat: SourceFormat;
|
|
22
27
|
catalogItemId: string | null;
|
|
23
28
|
catalogVersion: string | null;
|
|
29
|
+
/** `org`: the org's own template; `platform`: a platform template on in the org. */
|
|
30
|
+
origin: "org" | "platform";
|
|
31
|
+
/**
|
|
32
|
+
* Platform templates: this org's unpinned copies linked to it (ruling B2). They resolve to this
|
|
33
|
+
* template under their own ids, so an agent that selects one of them selects this template.
|
|
34
|
+
*/
|
|
35
|
+
linkedIds?: string[];
|
|
24
36
|
}
|
|
25
|
-
/** A template
|
|
37
|
+
/** A template with its current definition (an org row, a linked copy or a platform template). */
|
|
26
38
|
export interface TemplateRow {
|
|
39
|
+
/** The org template's id (a linked copy keeps its own), or the platform template's. */
|
|
27
40
|
id: string;
|
|
28
41
|
name: string;
|
|
29
|
-
plugin: string;
|
|
42
|
+
plugin: string | null;
|
|
30
43
|
version: number;
|
|
31
44
|
template: AgentTemplate;
|
|
32
45
|
sourceFormat: SourceFormat;
|
|
33
46
|
catalogItemId: string | null;
|
|
34
47
|
catalogVersion: string | null;
|
|
48
|
+
/** `platform` for a platform template and for a linked copy that resolves to one. */
|
|
49
|
+
origin: "org" | "platform";
|
|
50
|
+
/**
|
|
51
|
+
* The platform template whose content this is (a platform template, or an unpinned linked
|
|
52
|
+
* copy); absent for the org's own content (a pinned copy included). `subagent_started` records
|
|
53
|
+
* it, so evals tell the two version namespaces apart.
|
|
54
|
+
*/
|
|
55
|
+
platformTemplateId?: string;
|
|
56
|
+
/**
|
|
57
|
+
* The org's own template it promoted (ruling P3-3), served from its platform template: listed
|
|
58
|
+
* as the org's own. Never recorded in an event.
|
|
59
|
+
*/
|
|
60
|
+
ownedCopy?: true;
|
|
35
61
|
}
|
|
36
|
-
/** The
|
|
37
|
-
export declare
|
|
62
|
+
/** The roster type of a template: `<plugin>:<name>`, the bare `<name>` without a plugin. */
|
|
63
|
+
export declare const templateTypeOf: (plugin: string | null, name: string) => string;
|
|
64
|
+
/**
|
|
65
|
+
* The ids among `ids` of the platform templates on in the org (see {@link platformOn}), whatever
|
|
66
|
+
* the org's own templates are.
|
|
67
|
+
*/
|
|
68
|
+
export declare function platformTemplatesOn(db: KernelSchemaDb, orgId: string, ids: readonly string[]): Promise<Set<string>>;
|
|
69
|
+
/**
|
|
70
|
+
* Rule 10 for platform agent template `component` (`plugin` / `name`: its roster type) newly
|
|
71
|
+
* offered to the org (ruling P4-13, as `skillNameClashes` for skills): the org's own live rows of
|
|
72
|
+
* that type (unlinked, or pinned) that are no copy of it (linked to it, or from its plugin), and
|
|
73
|
+
* the other platform templates of that type on in the org (two orgs' shared templates of one bare
|
|
74
|
+
* name, P3-5). `skills`: the clashing template ids; `owners`: each one's owner, in the same order
|
|
75
|
+
* (an org row without a plugin is the org's own; a plugin's row its catalog item's owner; a
|
|
76
|
+
* platform row its `owner_org_id`); `plugins`: the clashing platform templates' plugins.
|
|
77
|
+
*/
|
|
78
|
+
export declare function templateTypeClashes(db: KernelSchemaDb, orgId: string, component: {
|
|
79
|
+
id: string;
|
|
80
|
+
itemId: string | null;
|
|
81
|
+
plugin: string | null;
|
|
82
|
+
name: string;
|
|
83
|
+
}): Promise<{
|
|
84
|
+
skills: string[];
|
|
85
|
+
plugins: string[];
|
|
86
|
+
owners: Owner[];
|
|
87
|
+
}>;
|
|
88
|
+
/**
|
|
89
|
+
* The org's live templates by id (`ids`; ids that are no usable template are missing): an org
|
|
90
|
+
* template with its current version; an org copy linked to a platform template without a pin
|
|
91
|
+
* (ruling B2) as that platform template's current version under the copy's id, while the platform
|
|
92
|
+
* template is on in the org; a pinned copy as its own version while its platform template is on in
|
|
93
|
+
* the org (ruling P2-18); a platform template id while it is on in the org, or, when an org row
|
|
94
|
+
* of the same component (unlinked or pinned) wins its type, as that row (its `id` is the row's: the
|
|
95
|
+
* roster lists the platform id as an alias). Deleted and foreign ids are left out. `log` receives
|
|
96
|
+
* the type-clash warnings.
|
|
97
|
+
*/
|
|
98
|
+
export declare function loadTemplates(db: KernelSchemaDb, orgId: string, ids: readonly string[], log?: Pick<Logger, "warn">): Promise<Map<string, TemplateRow>>;
|
|
99
|
+
/**
|
|
100
|
+
* The org's usable templates, by plugin (none first), name and id: its own live templates
|
|
101
|
+
* (unlinked, or pinned while their platform template is on in the org, ruling P2-18) and the platform templates on in the org (see {@link platformOn}). An org
|
|
102
|
+
* copy linked without a pin is not listed: its platform template is; except the org's own template
|
|
103
|
+
* it promoted (ruling P3-3), listed once under its own id instead of the platform template. `log`
|
|
104
|
+
* receives the type-clash warnings.
|
|
105
|
+
*/
|
|
106
|
+
export declare function usableTemplates(db: KernelSchemaDb, orgId: string, log?: Pick<Logger, "warn">): Promise<TemplateRow[]>;
|
|
107
|
+
/** The org's own agent template row (rulings P3-6, P4-13), as its owner acts on it. */
|
|
108
|
+
export interface OwnTemplate {
|
|
109
|
+
id: string;
|
|
110
|
+
name: string;
|
|
111
|
+
current_version: number;
|
|
112
|
+
shareable: boolean;
|
|
113
|
+
/** The platform row it was promoted to (ruling P3-3), or null while it is an org row only. */
|
|
114
|
+
link: string | null;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* The one "org's own template" predicate (rulings P3-6, P3-46, P4-13), shared by the template
|
|
118
|
+
* routes and `OwnedItems`: the org's live row `id` is its own when it is an org template (no
|
|
119
|
+
* plugin, no catalog item) that is unlinked, or linked without a pin to a live platform row the
|
|
120
|
+
* org owns (promoted on share). Returns the row (`forUpdate`: locked), `{ own: false, name }` for
|
|
121
|
+
* a row of the org that is not its own (a plugin's template, a copy of another owner's platform
|
|
122
|
+
* template), or undefined when the org has no live row `id`.
|
|
123
|
+
*/
|
|
124
|
+
export declare function readOwnTemplate(db: KernelSchemaDb, orgId: string, id: string, forUpdate: boolean): Promise<OwnTemplate | {
|
|
125
|
+
own: false;
|
|
126
|
+
name: string;
|
|
127
|
+
} | undefined>;
|
|
128
|
+
/**
|
|
129
|
+
* The listing view of a usable template; `linkedIds`: the org's unpinned copies linked to it (a
|
|
130
|
+
* platform template only).
|
|
131
|
+
*/
|
|
132
|
+
export declare function templateViewOf(t: TemplateRow, linkedIds: string[]): AgentTemplateView;
|
|
38
133
|
/** Reads the org's agent templates (consumed by the roster, the agent page and Task 19's API). */
|
|
39
134
|
export declare class AgentTemplatesService {
|
|
40
135
|
private readonly db;
|
|
41
136
|
constructor(db: KernelDb);
|
|
42
|
-
/**
|
|
137
|
+
/**
|
|
138
|
+
* Every usable template of the org ({@link usableTemplates}), by plugin then name; a platform
|
|
139
|
+
* template carries the ids of the org's unpinned copies linked to it (`linkedIds`).
|
|
140
|
+
*/
|
|
43
141
|
listForOrg(orgId: string): Promise<AgentTemplateView[]>;
|
|
44
|
-
/** A
|
|
142
|
+
/** A usable template by id or by its roster type; null when there is none. */
|
|
45
143
|
resolve(orgId: string, ref: string): Promise<{
|
|
46
144
|
id: string;
|
|
47
145
|
version: number;
|
|
48
|
-
plugin: string;
|
|
146
|
+
plugin: string | null;
|
|
49
147
|
template: AgentTemplate;
|
|
50
148
|
} | null>;
|
|
51
149
|
}
|
|
52
|
-
/**
|
|
150
|
+
/**
|
|
151
|
+
* Where a template version comes from: a plugin version of the catalog, or (ruling P4-9) the org
|
|
152
|
+
* itself (另存为模板, an edit of an org template): `plugin`, `catalogItemId` and `catalogVersion`
|
|
153
|
+
* null.
|
|
154
|
+
*/
|
|
53
155
|
export interface TemplateSource {
|
|
54
156
|
orgId: string;
|
|
55
|
-
plugin: string;
|
|
56
|
-
|
|
57
|
-
|
|
157
|
+
plugin: string | null;
|
|
158
|
+
/** The catalog item of the plugin; absent or null for an org template (ruling P4-9). */
|
|
159
|
+
catalogItemId?: string | null;
|
|
160
|
+
catalogVersion: string | null;
|
|
58
161
|
sourceFormat: SourceFormat;
|
|
59
162
|
}
|
|
60
163
|
/**
|
|
61
|
-
* Writes `template` as the org's live template `<plugin>:<name>`
|
|
62
|
-
* caller holds the org row lock): a new template
|
|
63
|
-
* one when its definition differs (`changed`,
|
|
164
|
+
* Writes `template` as the org's live template `<plugin>:<name>` (the bare `<name>` when `plugin`
|
|
165
|
+
* is null) in the caller's transaction (the caller holds the org row lock): a new template
|
|
166
|
+
* (version 1, `created`), a new version of the live one when its definition differs (`changed`,
|
|
167
|
+
* the version added), or nothing when it is equal.
|
|
64
168
|
*/
|
|
65
169
|
export declare function putTemplateVersionIn(t: KernelSchemaDb, s: TemplateSource, template: AgentTemplate): Promise<{
|
|
66
170
|
id: string;
|