@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
|
@@ -12,37 +12,52 @@ import { z } from "zod";
|
|
|
12
12
|
import { ModelRef } from "../agents/definition.js";
|
|
13
13
|
import { CurrentPrincipal, requireUser } from "../identity/principal.js";
|
|
14
14
|
import { createZodDto } from "../infra/validation/create-zod-dto.js";
|
|
15
|
-
import { ZBody, ZQuery } from "../infra/validation/zod-params.js";
|
|
15
|
+
import { ZBody, ZParam, ZQuery } from "../infra/validation/zod-params.js";
|
|
16
16
|
import { CurrentOrg, OrgAction } from "../orgs/org.guard.js";
|
|
17
17
|
import { CONTROL_OR_HIDDEN_RE } from "../text.js";
|
|
18
18
|
import { MAX_ATTACHMENTS } from "../tools/connector-content.js";
|
|
19
19
|
import { ConversationToolInfo, TOOL_INFO_KEY_MAX, TOOL_INFO_MAX_KEYS, } from "../tools/info.js";
|
|
20
20
|
import { ARTIFACT_DOWNLOAD_CACHE_SECONDS, ConversationArtifacts, } from "./artifacts.js";
|
|
21
21
|
import { CONVERSATION_TITLE_MAX_CHARS, ConversationsService, } from "./conversations.service.js";
|
|
22
|
+
import { ConversationEnvironmentStatus } from "./environment-status.js";
|
|
22
23
|
import { ConversationFiles, FILE_CONTENT_MAX_BYTES, FILES_PAGE_MAX, } from "./files.js";
|
|
23
24
|
import { ConversationOutputs, OUTPUT_PAGE_MAX_CHARS } from "./outputs-read.js";
|
|
24
25
|
import { ConversationQueue } from "./queue.service.js";
|
|
25
|
-
|
|
26
|
+
/** Shared by the list and groups queries: title search, run activity and the archived list. */
|
|
27
|
+
const searchFields = {
|
|
28
|
+
q: z.string().min(1).max(100).optional(),
|
|
29
|
+
state: z.enum(["running", "waiting"]).optional(),
|
|
30
|
+
archived: z.enum(["1"]).optional(),
|
|
31
|
+
};
|
|
26
32
|
const ListQuery = z.object({
|
|
27
33
|
after: z.string().min(1).max(100).optional(),
|
|
28
34
|
limit: z.coerce.number().int().min(1).max(200).default(50),
|
|
29
35
|
/** Only this agent's conversations (the sidebar's per-group "More"). */
|
|
30
36
|
agentId: z.string().min(1).max(100).optional(),
|
|
37
|
+
...searchFields,
|
|
31
38
|
});
|
|
32
39
|
const GroupsQuery = z.object({
|
|
33
40
|
perGroup: z.coerce.number().int().min(1).max(20).default(5),
|
|
34
41
|
limit: z.coerce.number().int().min(1).max(50).default(20),
|
|
35
42
|
/** The last group's agent id from the previous page (`next`). */
|
|
36
43
|
after: z.string().min(1).max(100).optional(),
|
|
44
|
+
...searchFields,
|
|
37
45
|
});
|
|
38
46
|
const SubagentsQuery = z.object({
|
|
39
47
|
/** The previous page's last sub-agent id (`next`). */
|
|
40
48
|
after: z.string().min(1).max(100).optional(),
|
|
41
49
|
limit: z.coerce.number().int().min(1).max(100).default(50),
|
|
42
50
|
});
|
|
43
|
-
const EventsQuery = z
|
|
44
|
-
|
|
51
|
+
const EventsQuery = z
|
|
52
|
+
.object({
|
|
53
|
+
after: z.coerce.number().int().min(0).optional(),
|
|
54
|
+
/** The page before this seq, or the log's last page (`end`); exclusive with `after`. */
|
|
55
|
+
before: z.union([z.literal("end"), z.coerce.number().int().min(1)]).optional(),
|
|
45
56
|
limit: z.coerce.number().int().min(1).max(500).default(500),
|
|
57
|
+
})
|
|
58
|
+
.refine((q) => q.after === undefined || q.before === undefined, {
|
|
59
|
+
message: "after and before are exclusive",
|
|
60
|
+
path: ["before"],
|
|
46
61
|
});
|
|
47
62
|
/** `?keys=a,b`: 1–100 comma-separated tool keys of 1–200 characters each. */
|
|
48
63
|
const ToolsQuery = z.object({
|
|
@@ -117,10 +132,13 @@ const MessageBody = MessageFields.strict().refine(...textRule);
|
|
|
117
132
|
* `POST /conversations`: `message` creates the conversation with its first message (create on
|
|
118
133
|
* first send; `clientMessageId` is required and makes a retry return the same conversation).
|
|
119
134
|
* Without it the conversation is created empty (API clients; the web never does).
|
|
135
|
+
* `environmentId` binds it to one of the caller's environments; without it the caller's default
|
|
136
|
+
* environment (environments spec §4.1 item 1).
|
|
120
137
|
*/
|
|
121
138
|
const CreateBody = z
|
|
122
139
|
.object({
|
|
123
140
|
agentId: z.string().min(1).max(100),
|
|
141
|
+
environmentId: z.string().min(1).max(100).optional(),
|
|
124
142
|
message: MessageFields.omit({ retryOf: true })
|
|
125
143
|
.extend({ clientMessageId: z.string().min(1).max(200) })
|
|
126
144
|
.strict()
|
|
@@ -129,9 +147,7 @@ const CreateBody = z
|
|
|
129
147
|
})
|
|
130
148
|
.strict();
|
|
131
149
|
/**
|
|
132
|
-
* `POST …/queue
|
|
133
|
-
* now and applied when the message is sent (final review I1). A skill invocation is rendered now
|
|
134
|
-
* and checked again when sent (phase D Task 9).
|
|
150
|
+
* `POST …/queue` (deprecated, behaves as `POST …/messages`): the message fields (no retry).
|
|
135
151
|
*/
|
|
136
152
|
const QueueBody = MessageFields.omit({ retryOf: true })
|
|
137
153
|
.extend({ clientMessageId: z.string().min(1).max(200) })
|
|
@@ -143,7 +159,7 @@ const QueueEditBody = z.object({ text: z.string().max(100_000) }).strict();
|
|
|
143
159
|
* A rename: 1–120 characters counted in code points after trimming, with no control or format
|
|
144
160
|
* (bidi, zero-width) characters, the same rule generated and tool titles follow.
|
|
145
161
|
*/
|
|
146
|
-
const
|
|
162
|
+
const PatchBody = z
|
|
147
163
|
.object({
|
|
148
164
|
title: z
|
|
149
165
|
.string()
|
|
@@ -151,12 +167,19 @@ const RenameBody = z
|
|
|
151
167
|
.trim()
|
|
152
168
|
.refine((t) => t.length > 0, "title must not be empty")
|
|
153
169
|
.refine((t) => Array.from(t).length <= CONVERSATION_TITLE_MAX_CHARS, `title must be at most ${CONVERSATION_TITLE_MAX_CHARS} characters`)
|
|
154
|
-
.refine((t) => !CONTROL_OR_HIDDEN_RE.test(t), "title must not contain control or format characters")
|
|
170
|
+
.refine((t) => !CONTROL_OR_HIDDEN_RE.test(t), "title must not contain control or format characters")
|
|
171
|
+
.optional(),
|
|
172
|
+
/** true archives (hidden from the default lists), false unarchives. */
|
|
173
|
+
archived: z.boolean().optional(),
|
|
155
174
|
})
|
|
156
|
-
.strict()
|
|
175
|
+
.strict()
|
|
176
|
+
.refine((b) => b.title !== undefined || b.archived !== undefined, "title or archived is required");
|
|
177
|
+
const IdParams = z.object({ id: z.string().min(1).max(100) });
|
|
157
178
|
class ConversationCreateBodyDto extends createZodDto(CreateBody, "ConversationCreateBody") {
|
|
158
179
|
}
|
|
159
|
-
class
|
|
180
|
+
class ConversationPatchBodyDto extends createZodDto(PatchBody, "ConversationPatchBody") {
|
|
181
|
+
}
|
|
182
|
+
class ConversationIdParamsDto extends createZodDto(IdParams, "ConversationIdParams") {
|
|
160
183
|
}
|
|
161
184
|
class ConversationListQueryDto extends createZodDto(ListQuery, "ConversationListQuery") {
|
|
162
185
|
}
|
|
@@ -190,25 +213,30 @@ let ConversationsController = class ConversationsController {
|
|
|
190
213
|
conversations;
|
|
191
214
|
outputs;
|
|
192
215
|
artifacts;
|
|
193
|
-
|
|
216
|
+
environmentStatus;
|
|
194
217
|
toolInfo;
|
|
195
218
|
queue;
|
|
196
219
|
files;
|
|
197
|
-
constructor(conversations, outputs, artifacts,
|
|
220
|
+
constructor(conversations, outputs, artifacts, environmentStatus, toolInfo, queue, files) {
|
|
198
221
|
this.conversations = conversations;
|
|
199
222
|
this.outputs = outputs;
|
|
200
223
|
this.artifacts = artifacts;
|
|
201
|
-
this.
|
|
224
|
+
this.environmentStatus = environmentStatus;
|
|
202
225
|
this.toolInfo = toolInfo;
|
|
203
226
|
this.queue = queue;
|
|
204
227
|
this.files = files;
|
|
205
228
|
}
|
|
206
|
-
/**
|
|
229
|
+
/**
|
|
230
|
+
* 201 when created; 200 when `message.clientMessageId` repeats an earlier first send. With a
|
|
231
|
+
* message the answer has `event` (the `user_message`) and `events`: every event the first send
|
|
232
|
+
* wrote, in seq order from seq 1 (a `model_switched` first when it switched).
|
|
233
|
+
*/
|
|
207
234
|
async create(principal, org, body, reply) {
|
|
208
235
|
const p = requireUser(principal);
|
|
236
|
+
const pick = body.environmentId === undefined ? {} : { environmentId: body.environmentId };
|
|
209
237
|
if (body.message === undefined) {
|
|
210
238
|
return {
|
|
211
|
-
conversation: await this.conversations.create(org.orgId, p.account.id, body.agentId),
|
|
239
|
+
conversation: await this.conversations.create(org.orgId, p.account.id, body.agentId, pick),
|
|
212
240
|
};
|
|
213
241
|
}
|
|
214
242
|
const m = body.message;
|
|
@@ -220,17 +248,34 @@ let ConversationsController = class ConversationsController {
|
|
|
220
248
|
...(m.model !== undefined && { model: m.model }),
|
|
221
249
|
...(m.effort !== undefined && { effort: m.effort }),
|
|
222
250
|
...(m.skill !== undefined && { skill: m.skill }),
|
|
223
|
-
});
|
|
251
|
+
}, pick);
|
|
224
252
|
reply.status(out.created ? 201 : 200);
|
|
225
|
-
return { conversation: out.conversation, event: out.event };
|
|
253
|
+
return { conversation: out.conversation, event: out.event, events: out.events };
|
|
226
254
|
}
|
|
227
|
-
/**
|
|
228
|
-
|
|
255
|
+
/**
|
|
256
|
+
* Rename and / or archive (owner only). A rename makes `titleSource` `manual`, so the title is
|
|
257
|
+
* never regenerated; `archived` archives or unarchives. Returns the final view.
|
|
258
|
+
*/
|
|
259
|
+
async patch(principal, org, id, body) {
|
|
229
260
|
const p = requireUser(principal);
|
|
261
|
+
const renamed = body.title === undefined
|
|
262
|
+
? undefined
|
|
263
|
+
: await this.conversations.rename(org.orgId, id, p.account.id, body.title);
|
|
264
|
+
if (body.archived === undefined) {
|
|
265
|
+
// The refine guarantees a title when there is no `archived`
|
|
266
|
+
return {
|
|
267
|
+
conversation: renamed ?? (await this.conversations.get(org.orgId, id, p.account.id)),
|
|
268
|
+
};
|
|
269
|
+
}
|
|
230
270
|
return {
|
|
231
|
-
conversation: await this.conversations.
|
|
271
|
+
conversation: await this.conversations.setArchived(org.orgId, id, p.account.id, body.archived),
|
|
232
272
|
};
|
|
233
273
|
}
|
|
274
|
+
/** Soft delete (owner only): stops an active run and hides the conversation everywhere. */
|
|
275
|
+
async remove(principal, org, { id }) {
|
|
276
|
+
const p = requireUser(principal);
|
|
277
|
+
await this.conversations.remove(org.orgId, id, p.account.id);
|
|
278
|
+
}
|
|
234
279
|
/** 我的会话,最近更新的在前:`next` 为下一页游标(作为 `after` 传回),没有更多时为 null。 */
|
|
235
280
|
async list(principal, org, q) {
|
|
236
281
|
const p = requireUser(principal);
|
|
@@ -238,6 +283,9 @@ let ConversationsController = class ConversationsController {
|
|
|
238
283
|
limit: q.limit + 1,
|
|
239
284
|
...(q.after !== undefined && { after: q.after }),
|
|
240
285
|
...(q.agentId !== undefined && { agentId: q.agentId }),
|
|
286
|
+
...(q.q !== undefined && { q: q.q }),
|
|
287
|
+
...(q.state !== undefined && { state: q.state }),
|
|
288
|
+
...(q.archived !== undefined && { archived: true }),
|
|
241
289
|
});
|
|
242
290
|
const conversations = rows.slice(0, q.limit);
|
|
243
291
|
const next = rows.length > q.limit ? (conversations.at(-1)?.id ?? null) : null;
|
|
@@ -254,17 +302,28 @@ let ConversationsController = class ConversationsController {
|
|
|
254
302
|
perGroup: q.perGroup,
|
|
255
303
|
limit: q.limit,
|
|
256
304
|
...(q.after !== undefined && { after: q.after }),
|
|
305
|
+
...(q.q !== undefined && { q: q.q }),
|
|
306
|
+
...(q.state !== undefined && { state: q.state }),
|
|
307
|
+
...(q.archived !== undefined && { archived: true }),
|
|
257
308
|
});
|
|
258
309
|
}
|
|
259
310
|
async get(principal, org, id) {
|
|
260
311
|
const p = requireUser(principal);
|
|
261
312
|
return { conversation: await this.conversations.get(org.orgId, id, p.account.id) };
|
|
262
313
|
}
|
|
263
|
-
/**
|
|
314
|
+
/**
|
|
315
|
+
* Events in ascending seq. `after`: those after it (at most `limit`; the client passes the last
|
|
316
|
+
* seq back as the next `after`). `before` (a seq, or `end` for the log's last page): the
|
|
317
|
+
* turn-aligned page before it, `{ events, turnsBefore }` (history paging spec §2).
|
|
318
|
+
*/
|
|
264
319
|
async events(principal, org, id, q) {
|
|
265
320
|
const p = requireUser(principal);
|
|
321
|
+
if (q.before !== undefined) {
|
|
322
|
+
const before = q.before === "end" ? null : q.before;
|
|
323
|
+
return this.conversations.listEventsBefore(org.orgId, id, p.account.id, before, q.limit);
|
|
324
|
+
}
|
|
266
325
|
return {
|
|
267
|
-
events: await this.conversations.listEvents(org.orgId, id, p.account.id, q.after, q.limit),
|
|
326
|
+
events: await this.conversations.listEvents(org.orgId, id, p.account.id, q.after ?? 0, q.limit),
|
|
268
327
|
};
|
|
269
328
|
}
|
|
270
329
|
/**
|
|
@@ -279,6 +338,15 @@ let ConversationsController = class ConversationsController {
|
|
|
279
338
|
...(q.after !== undefined && { after: q.after }),
|
|
280
339
|
});
|
|
281
340
|
}
|
|
341
|
+
/**
|
|
342
|
+
* The agent tree of a root conversation (agent map spec §8, §9.2): `{ root }`, each node with its
|
|
343
|
+
* status, model, time, tokens, tool calls and children. Owner only; a sub-agent's id is
|
|
344
|
+
* `conversation.not_found`.
|
|
345
|
+
*/
|
|
346
|
+
async agentTree(principal, org, { id }) {
|
|
347
|
+
const p = requireUser(principal);
|
|
348
|
+
return this.conversations.agentTree(org.orgId, id, p.account.id);
|
|
349
|
+
}
|
|
282
350
|
/**
|
|
283
351
|
* The conversation's token usage, its sub-agents' included (sub-agents spec §8.3):
|
|
284
352
|
* `{ usage: { inputTokens, outputTokens, cacheReadTokens, cacheWriteTokens } }`. Owner only.
|
|
@@ -347,13 +415,13 @@ let ConversationsController = class ConversationsController {
|
|
|
347
415
|
await reply.send(c.body);
|
|
348
416
|
}
|
|
349
417
|
/**
|
|
350
|
-
*
|
|
351
|
-
*
|
|
352
|
-
*
|
|
418
|
+
* The environment the conversation works in (a sub-agent: its root's), as its owner sees it,
|
|
419
|
+
* with its instance state; `null` while unbound, or when the environment was deleted. Same
|
|
420
|
+
* visibility as the event stream.
|
|
353
421
|
*/
|
|
354
|
-
async
|
|
422
|
+
async environment(principal, org, id) {
|
|
355
423
|
const p = requireUser(principal);
|
|
356
|
-
return this.
|
|
424
|
+
return { environment: await this.environmentStatus.get(org.orgId, id, p.account.id) };
|
|
357
425
|
}
|
|
358
426
|
/**
|
|
359
427
|
* Display metadata (title, kind, key arguments, source) of the tools a conversation's calls name,
|
|
@@ -387,22 +455,23 @@ let ConversationsController = class ConversationsController {
|
|
|
387
455
|
return this.queue.list(org.orgId, id, p.account.id);
|
|
388
456
|
}
|
|
389
457
|
/**
|
|
390
|
-
*
|
|
391
|
-
*
|
|
458
|
+
* Deprecated: behaves as `POST …/messages` (202 `{ event }`): an interjection while a run is
|
|
459
|
+
* active, a new run otherwise; nothing is queued any more. Kept for older clients for one release;
|
|
460
|
+
* the leftover-item routes below keep working until the queue table is dropped (contract step).
|
|
392
461
|
*/
|
|
393
|
-
async enqueue(principal, org, id, body
|
|
462
|
+
async enqueue(principal, org, id, body) {
|
|
394
463
|
const p = requireUser(principal);
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
464
|
+
return {
|
|
465
|
+
event: await this.conversations.postUserMessage(org.orgId, id, p.account.id, {
|
|
466
|
+
text: body.text,
|
|
467
|
+
clientMessageId: body.clientMessageId,
|
|
468
|
+
...(body.attachments !== undefined && { attachments: body.attachments }),
|
|
469
|
+
...(body.files !== undefined && { files: body.files }),
|
|
470
|
+
...(body.model !== undefined && { model: body.model }),
|
|
471
|
+
...(body.effort !== undefined && { effort: body.effort }),
|
|
472
|
+
...(body.skill !== undefined && { skill: body.skill }),
|
|
473
|
+
}),
|
|
474
|
+
};
|
|
406
475
|
}
|
|
407
476
|
/** "Continue sending" after a pause (202). Declared before `:itemId` routes. */
|
|
408
477
|
async resumeQueue(principal, org, id) {
|
|
@@ -423,7 +492,13 @@ let ConversationsController = class ConversationsController {
|
|
|
423
492
|
const p = requireUser(principal);
|
|
424
493
|
return { event: await this.queue.sendNow(org.orgId, id, p.account.id, itemId) };
|
|
425
494
|
}
|
|
426
|
-
/**
|
|
495
|
+
/**
|
|
496
|
+
* Stops the current run (the conversation's owner): 202 `{ runId }`; nothing active → 409
|
|
497
|
+
* `run.not_active`. On a root conversation `runId` is the stopped run, and its background
|
|
498
|
+
* sub-agents keep working. On a sub-agent's conversation (the root's owner, at any depth) the
|
|
499
|
+
* sub-agent stops with every sub-agent below it, and `runId` is the sub-agent's latest run,
|
|
500
|
+
* which may already be finished when only its descendants were working (agent map spec §6).
|
|
501
|
+
*/
|
|
427
502
|
async abort(principal, org, id) {
|
|
428
503
|
const p = requireUser(principal);
|
|
429
504
|
return { runId: await this.conversations.abort(org.orgId, id, p.account.id) };
|
|
@@ -443,8 +518,16 @@ __decorate([
|
|
|
443
518
|
__param(0, CurrentPrincipal()),
|
|
444
519
|
__param(1, CurrentOrg()),
|
|
445
520
|
__param(2, Param("id")),
|
|
446
|
-
__param(3, ZBody(
|
|
447
|
-
], ConversationsController.prototype, "
|
|
521
|
+
__param(3, ZBody(ConversationPatchBodyDto))
|
|
522
|
+
], ConversationsController.prototype, "patch", null);
|
|
523
|
+
__decorate([
|
|
524
|
+
Delete(":id"),
|
|
525
|
+
HttpCode(204),
|
|
526
|
+
OrgAction("agents.use"),
|
|
527
|
+
__param(0, CurrentPrincipal()),
|
|
528
|
+
__param(1, CurrentOrg()),
|
|
529
|
+
__param(2, ZParam(ConversationIdParamsDto))
|
|
530
|
+
], ConversationsController.prototype, "remove", null);
|
|
448
531
|
__decorate([
|
|
449
532
|
Get(),
|
|
450
533
|
OrgAction("agents.use"),
|
|
@@ -483,6 +566,14 @@ __decorate([
|
|
|
483
566
|
__param(2, Param("id")),
|
|
484
567
|
__param(3, ZQuery(ConversationSubagentsQueryDto))
|
|
485
568
|
], ConversationsController.prototype, "subagents", null);
|
|
569
|
+
__decorate([
|
|
570
|
+
Get(":id/agent-tree"),
|
|
571
|
+
Header("cache-control", "private, no-store"),
|
|
572
|
+
OrgAction("agents.use"),
|
|
573
|
+
__param(0, CurrentPrincipal()),
|
|
574
|
+
__param(1, CurrentOrg()),
|
|
575
|
+
__param(2, ZParam(ConversationIdParamsDto))
|
|
576
|
+
], ConversationsController.prototype, "agentTree", null);
|
|
486
577
|
__decorate([
|
|
487
578
|
Get(":id/usage"),
|
|
488
579
|
Header("cache-control", "private, no-store"),
|
|
@@ -539,13 +630,13 @@ __decorate([
|
|
|
539
630
|
__param(5, Res())
|
|
540
631
|
], ConversationsController.prototype, "fileContent", null);
|
|
541
632
|
__decorate([
|
|
542
|
-
Get(":id/
|
|
633
|
+
Get(":id/environment"),
|
|
543
634
|
Header("cache-control", "private, no-store"),
|
|
544
635
|
OrgAction("agents.use"),
|
|
545
636
|
__param(0, CurrentPrincipal()),
|
|
546
637
|
__param(1, CurrentOrg()),
|
|
547
638
|
__param(2, Param("id"))
|
|
548
|
-
], ConversationsController.prototype, "
|
|
639
|
+
], ConversationsController.prototype, "environment", null);
|
|
549
640
|
__decorate([
|
|
550
641
|
Get(":id/tools"),
|
|
551
642
|
Header("cache-control", "private, no-store"),
|
|
@@ -574,12 +665,12 @@ __decorate([
|
|
|
574
665
|
], ConversationsController.prototype, "listQueue", null);
|
|
575
666
|
__decorate([
|
|
576
667
|
Post(":id/queue"),
|
|
668
|
+
HttpCode(202),
|
|
577
669
|
OrgAction("agents.use"),
|
|
578
670
|
__param(0, CurrentPrincipal()),
|
|
579
671
|
__param(1, CurrentOrg()),
|
|
580
672
|
__param(2, Param("id")),
|
|
581
|
-
__param(3, ZBody(ConversationQueueBodyDto))
|
|
582
|
-
__param(4, Res({ passthrough: true }))
|
|
673
|
+
__param(3, ZBody(ConversationQueueBodyDto))
|
|
583
674
|
], ConversationsController.prototype, "enqueue", null);
|
|
584
675
|
__decorate([
|
|
585
676
|
Post(":id/queue/resume"),
|
|
@@ -629,7 +720,7 @@ ConversationsController = __decorate([
|
|
|
629
720
|
__param(0, Inject(ConversationsService)),
|
|
630
721
|
__param(1, Inject(ConversationOutputs)),
|
|
631
722
|
__param(2, Inject(ConversationArtifacts)),
|
|
632
|
-
__param(3, Inject(
|
|
723
|
+
__param(3, Inject(ConversationEnvironmentStatus)),
|
|
633
724
|
__param(4, Inject(ConversationToolInfo)),
|
|
634
725
|
__param(5, Inject(ConversationQueue)),
|
|
635
726
|
__param(6, Inject(ConversationFiles))
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Conversations: the one {@link ConversationsService} (messages, model switches, skill
|
|
3
3
|
* invocations, sub-agent views, abort), the queue, the file / artifact / output reads and the
|
|
4
|
-
*
|
|
4
|
+
* conversation's environment. The event log, the access check and the attachments are their own modules (the
|
|
5
5
|
* skills and tools use them too) and are re-exported here.
|
|
6
6
|
*/
|
|
7
7
|
export declare class ConversationsModule {
|
|
@@ -6,9 +6,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import { Module } from "@nestjs/common";
|
|
8
8
|
import { AgentLookupModule } from "../agents/agent-lookup.js";
|
|
9
|
+
import { BackgroundModule } from "../background/background.module.js";
|
|
10
|
+
import { EnvironmentsModule } from "../environments/environments.module.js";
|
|
9
11
|
import { ProvidersModule } from "../runtime/providers.js";
|
|
10
12
|
import { RuntimeModule } from "../runtime/runtime.module.js";
|
|
11
|
-
import { SandboxModule } from "../sandbox/sandbox.module.js";
|
|
12
13
|
import { SkillsModule } from "../skills/skills.module.js";
|
|
13
14
|
import { StorageModule } from "../storage/storage.module.js";
|
|
14
15
|
import { ToolsModule } from "../tools/tools.module.js";
|
|
@@ -16,15 +17,15 @@ import { ConversationAccessModule } from "./access.js";
|
|
|
16
17
|
import { ConversationArtifacts } from "./artifacts.js";
|
|
17
18
|
import { AttachmentsModule } from "./attachments.module.js";
|
|
18
19
|
import { ConversationsService } from "./conversations.service.js";
|
|
20
|
+
import { ConversationEnvironmentStatus } from "./environment-status.js";
|
|
19
21
|
import { EventLogModule } from "./event-log.js";
|
|
20
22
|
import { ConversationFiles } from "./files.js";
|
|
21
23
|
import { ConversationOutputs } from "./outputs-read.js";
|
|
22
24
|
import { ConversationQueue } from "./queue.service.js";
|
|
23
|
-
import { ConversationSandboxStatus } from "./sandbox-status.js";
|
|
24
25
|
/**
|
|
25
26
|
* Conversations: the one {@link ConversationsService} (messages, model switches, skill
|
|
26
27
|
* invocations, sub-agent views, abort), the queue, the file / artifact / output reads and the
|
|
27
|
-
*
|
|
28
|
+
* conversation's environment. The event log, the access check and the attachments are their own modules (the
|
|
28
29
|
* skills and tools use them too) and are re-exported here.
|
|
29
30
|
*/
|
|
30
31
|
let ConversationsModule = class ConversationsModule {
|
|
@@ -42,8 +43,10 @@ ConversationsModule = __decorate([
|
|
|
42
43
|
// the run control (start a run after a message, stop runs) and the model provider registry
|
|
43
44
|
RuntimeModule,
|
|
44
45
|
ProvidersModule,
|
|
45
|
-
// the
|
|
46
|
-
|
|
46
|
+
// the environment a conversation is bound to, and its view
|
|
47
|
+
EnvironmentsModule,
|
|
48
|
+
// the stop of a deleted conversation's background tasks
|
|
49
|
+
BackgroundModule,
|
|
47
50
|
],
|
|
48
51
|
providers: [
|
|
49
52
|
ConversationsService,
|
|
@@ -51,7 +54,7 @@ ConversationsModule = __decorate([
|
|
|
51
54
|
ConversationOutputs,
|
|
52
55
|
ConversationArtifacts,
|
|
53
56
|
ConversationFiles,
|
|
54
|
-
|
|
57
|
+
ConversationEnvironmentStatus,
|
|
55
58
|
],
|
|
56
59
|
exports: [
|
|
57
60
|
EventLogModule,
|
|
@@ -62,7 +65,7 @@ ConversationsModule = __decorate([
|
|
|
62
65
|
ConversationOutputs,
|
|
63
66
|
ConversationArtifacts,
|
|
64
67
|
ConversationFiles,
|
|
65
|
-
|
|
68
|
+
ConversationEnvironmentStatus,
|
|
66
69
|
],
|
|
67
70
|
})
|
|
68
71
|
], ConversationsModule);
|