@bevel-software/platform-core-backend 0.26.0 → 0.27.0
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/agent-guide/access-control.md +17 -0
- package/agent-guide/conventions.md +8 -0
- package/agent-guide/html-views.md +83 -0
- package/agent-guide/new-knowledge-base.md +24 -0
- package/agent-guide/tool-manuals.md +10 -0
- package/dist/assets.d.ts +19 -0
- package/dist/assets.d.ts.map +1 -1
- package/dist/assets.js +26 -2
- package/dist/assets.js.map +1 -1
- package/dist/core/catalog-revision.d.ts +19 -1
- package/dist/core/catalog-revision.d.ts.map +1 -1
- package/dist/core/catalog-revision.js +14 -3
- package/dist/core/catalog-revision.js.map +1 -1
- package/dist/core/create-core-server.d.ts +5 -0
- package/dist/core/create-core-server.d.ts.map +1 -1
- package/dist/core/create-core-server.js +54 -3
- package/dist/core/create-core-server.js.map +1 -1
- package/dist/core/create-core-services.d.ts +26 -0
- package/dist/core/create-core-services.d.ts.map +1 -1
- package/dist/core/create-core-services.js +100 -8
- package/dist/core/create-core-services.js.map +1 -1
- package/dist/core/lifecycle.d.ts +16 -1
- package/dist/core/lifecycle.d.ts.map +1 -1
- package/dist/core/lifecycle.js +18 -1
- package/dist/core/lifecycle.js.map +1 -1
- package/dist/core-config.d.ts +21 -0
- package/dist/core-config.d.ts.map +1 -1
- package/dist/core-config.js +22 -1
- package/dist/core-config.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/modules/access/access-control.interface.d.ts +8 -0
- package/dist/modules/access/access-control.interface.d.ts.map +1 -1
- package/dist/modules/access/access-control.service.d.ts +1 -0
- package/dist/modules/access/access-control.service.d.ts.map +1 -1
- package/dist/modules/access/access-control.service.js +11 -0
- package/dist/modules/access/access-control.service.js.map +1 -1
- package/dist/modules/access/directory-sync-bot.js +1 -1
- package/dist/modules/access/directory-sync-bot.js.map +1 -1
- package/dist/modules/agent-guide/agent-guide.d.ts +6 -0
- package/dist/modules/agent-guide/agent-guide.d.ts.map +1 -1
- package/dist/modules/agent-guide/agent-guide.js +8 -0
- package/dist/modules/agent-guide/agent-guide.js.map +1 -1
- package/dist/modules/agent-guide/index.d.ts +1 -1
- package/dist/modules/agent-guide/index.d.ts.map +1 -1
- package/dist/modules/agent-guide/index.js +1 -1
- package/dist/modules/agent-guide/index.js.map +1 -1
- package/dist/modules/agent-instructions/compose.d.ts +5 -0
- package/dist/modules/agent-instructions/compose.d.ts.map +1 -1
- package/dist/modules/agent-instructions/compose.js +19 -2
- package/dist/modules/agent-instructions/compose.js.map +1 -1
- package/dist/modules/agent-instructions/shared-file-rules.js +19 -19
- package/dist/modules/agent-instructions/shared-file-rules.js.map +1 -1
- package/dist/modules/audit/agent-audit.service.d.ts +21 -2
- package/dist/modules/audit/agent-audit.service.d.ts.map +1 -1
- package/dist/modules/audit/agent-audit.service.js +43 -2
- package/dist/modules/audit/agent-audit.service.js.map +1 -1
- package/dist/modules/audit/agent-connection.routes.d.ts +34 -0
- package/dist/modules/audit/agent-connection.routes.d.ts.map +1 -0
- package/dist/modules/audit/agent-connection.routes.js +38 -0
- package/dist/modules/audit/agent-connection.routes.js.map +1 -0
- package/dist/modules/audit/audit.contract.d.ts +24 -0
- package/dist/modules/audit/audit.contract.d.ts.map +1 -1
- package/dist/modules/audit/audit.contract.js.map +1 -1
- package/dist/modules/audit/index.d.ts +1 -0
- package/dist/modules/audit/index.d.ts.map +1 -1
- package/dist/modules/audit/index.js +1 -0
- package/dist/modules/audit/index.js.map +1 -1
- package/dist/modules/auth/account.routes.d.ts.map +1 -1
- package/dist/modules/auth/account.routes.js +10 -3
- package/dist/modules/auth/account.routes.js.map +1 -1
- package/dist/modules/auth/auth.middleware.d.ts +7 -0
- package/dist/modules/auth/auth.middleware.d.ts.map +1 -1
- package/dist/modules/auth/auth.middleware.js +1 -1
- package/dist/modules/auth/auth.middleware.js.map +1 -1
- package/dist/modules/code-mode/code-mode.tool.d.ts.map +1 -1
- package/dist/modules/code-mode/code-mode.tool.js +11 -3
- package/dist/modules/code-mode/code-mode.tool.js.map +1 -1
- package/dist/modules/database/core-schema.d.ts +96 -0
- package/dist/modules/database/core-schema.d.ts.map +1 -1
- package/dist/modules/database/core-schema.js +32 -3
- package/dist/modules/database/core-schema.js.map +1 -1
- package/dist/modules/embed/account-link.service.d.ts +42 -0
- package/dist/modules/embed/account-link.service.d.ts.map +1 -0
- package/dist/modules/embed/account-link.service.js +50 -0
- package/dist/modules/embed/account-link.service.js.map +1 -0
- package/dist/modules/embed/embed-link.d.ts +58 -0
- package/dist/modules/embed/embed-link.d.ts.map +1 -0
- package/dist/modules/embed/embed-link.js +160 -0
- package/dist/modules/embed/embed-link.js.map +1 -0
- package/dist/modules/embed/embed.errors.d.ts +30 -0
- package/dist/modules/embed/embed.errors.d.ts.map +1 -0
- package/dist/modules/embed/embed.errors.js +42 -0
- package/dist/modules/embed/embed.errors.js.map +1 -0
- package/dist/modules/embed/embed.interface.d.ts +204 -0
- package/dist/modules/embed/embed.interface.d.ts.map +1 -0
- package/dist/modules/embed/embed.interface.js +2 -0
- package/dist/modules/embed/embed.interface.js.map +1 -0
- package/dist/modules/embed/embed.routes.d.ts +59 -0
- package/dist/modules/embed/embed.routes.d.ts.map +1 -0
- package/dist/modules/embed/embed.routes.js +343 -0
- package/dist/modules/embed/embed.routes.js.map +1 -0
- package/dist/modules/embed/embed.service.d.ts +169 -0
- package/dist/modules/embed/embed.service.d.ts.map +1 -0
- package/dist/modules/embed/embed.service.js +627 -0
- package/dist/modules/embed/embed.service.js.map +1 -0
- package/dist/modules/embed/embed.tools.d.ts +51 -0
- package/dist/modules/embed/embed.tools.d.ts.map +1 -0
- package/dist/modules/embed/embed.tools.js +170 -0
- package/dist/modules/embed/embed.tools.js.map +1 -0
- package/dist/modules/embed/mcp-app.d.ts +64 -0
- package/dist/modules/embed/mcp-app.d.ts.map +1 -0
- package/dist/modules/embed/mcp-app.js +147 -0
- package/dist/modules/embed/mcp-app.js.map +1 -0
- package/dist/modules/embed/mcp-app.routes.d.ts +21 -0
- package/dist/modules/embed/mcp-app.routes.d.ts.map +1 -0
- package/dist/modules/embed/mcp-app.routes.js +36 -0
- package/dist/modules/embed/mcp-app.routes.js.map +1 -0
- package/dist/modules/github-app/github-app.connection.d.ts +15 -0
- package/dist/modules/github-app/github-app.connection.d.ts.map +1 -1
- package/dist/modules/github-app/github-app.connection.js +34 -3
- package/dist/modules/github-app/github-app.connection.js.map +1 -1
- package/dist/modules/kb-fs/locking-filesystem.d.ts +65 -0
- package/dist/modules/kb-fs/locking-filesystem.d.ts.map +1 -1
- package/dist/modules/kb-fs/locking-filesystem.js +300 -0
- package/dist/modules/kb-fs/locking-filesystem.js.map +1 -1
- package/dist/modules/kb-sync/kb-sync.interface.d.ts +5 -0
- package/dist/modules/kb-sync/kb-sync.interface.d.ts.map +1 -1
- package/dist/modules/kb-sync/kb-sync.service.d.ts.map +1 -1
- package/dist/modules/kb-sync/kb-sync.service.js +6 -0
- package/dist/modules/kb-sync/kb-sync.service.js.map +1 -1
- package/dist/modules/mcp/mcp-auth.middleware.d.ts.map +1 -1
- package/dist/modules/mcp/mcp-auth.middleware.js +2 -1
- package/dist/modules/mcp/mcp-auth.middleware.js.map +1 -1
- package/dist/modules/mcp/mcp.service.d.ts +28 -1
- package/dist/modules/mcp/mcp.service.d.ts.map +1 -1
- package/dist/modules/mcp/mcp.service.js +64 -8
- package/dist/modules/mcp/mcp.service.js.map +1 -1
- package/dist/modules/mcp/oauth/bevel-oauth-provider.d.ts +24 -0
- package/dist/modules/mcp/oauth/bevel-oauth-provider.d.ts.map +1 -1
- package/dist/modules/mcp/oauth/bevel-oauth-provider.js +32 -4
- package/dist/modules/mcp/oauth/bevel-oauth-provider.js.map +1 -1
- package/dist/modules/onboarding/onboarding.contract.d.ts +80 -0
- package/dist/modules/onboarding/onboarding.contract.d.ts.map +1 -0
- package/dist/modules/onboarding/onboarding.contract.js +7 -0
- package/dist/modules/onboarding/onboarding.contract.js.map +1 -0
- package/dist/modules/onboarding/onboarding.routes.d.ts +18 -0
- package/dist/modules/onboarding/onboarding.routes.d.ts.map +1 -0
- package/dist/modules/onboarding/onboarding.routes.js +81 -0
- package/dist/modules/onboarding/onboarding.routes.js.map +1 -0
- package/dist/modules/onboarding/starter-pack.service.d.ts +213 -0
- package/dist/modules/onboarding/starter-pack.service.d.ts.map +1 -0
- package/dist/modules/onboarding/starter-pack.service.js +492 -0
- package/dist/modules/onboarding/starter-pack.service.js.map +1 -0
- package/dist/modules/onboarding/starter-packs.d.ts +78 -0
- package/dist/modules/onboarding/starter-packs.d.ts.map +1 -0
- package/dist/modules/onboarding/starter-packs.js +156 -0
- package/dist/modules/onboarding/starter-packs.js.map +1 -0
- package/dist/modules/plugins/index.d.ts +1 -1
- package/dist/modules/plugins/index.d.ts.map +1 -1
- package/dist/modules/plugins/index.js +1 -1
- package/dist/modules/plugins/index.js.map +1 -1
- package/dist/modules/plugins/plugin-provision.service.d.ts +19 -0
- package/dist/modules/plugins/plugin-provision.service.d.ts.map +1 -1
- package/dist/modules/plugins/plugin-provision.service.js +18 -1
- package/dist/modules/plugins/plugin-provision.service.js.map +1 -1
- package/dist/modules/plugins/plugins.routes.d.ts +0 -36
- package/dist/modules/plugins/plugins.routes.d.ts.map +1 -1
- package/dist/modules/plugins/plugins.routes.js +31 -0
- package/dist/modules/plugins/plugins.routes.js.map +1 -1
- package/dist/modules/settings/deployment-settings.service.d.ts +34 -0
- package/dist/modules/settings/deployment-settings.service.d.ts.map +1 -1
- package/dist/modules/settings/deployment-settings.service.js +134 -1
- package/dist/modules/settings/deployment-settings.service.js.map +1 -1
- package/dist/modules/settings/repository-source.d.ts +1 -0
- package/dist/modules/settings/repository-source.d.ts.map +1 -1
- package/dist/modules/settings/repository-source.js +3 -3
- package/dist/modules/settings/repository-source.js.map +1 -1
- package/dist/modules/skills/skills.tools.d.ts.map +1 -1
- package/dist/modules/skills/skills.tools.js +50 -32
- package/dist/modules/skills/skills.tools.js.map +1 -1
- package/dist/modules/tool-auth/connection-key-rejection.d.ts +10 -1
- package/dist/modules/tool-auth/connection-key-rejection.d.ts.map +1 -1
- package/dist/modules/tool-auth/connection-key-rejection.js +11 -3
- package/dist/modules/tool-auth/connection-key-rejection.js.map +1 -1
- package/dist/modules/tool-auth/external-api-key.interface.d.ts +8 -0
- package/dist/modules/tool-auth/external-api-key.interface.d.ts.map +1 -1
- package/dist/modules/tool-auth/external-api-key.service.d.ts +24 -2
- package/dist/modules/tool-auth/external-api-key.service.d.ts.map +1 -1
- package/dist/modules/tool-auth/external-api-key.service.js +59 -2
- package/dist/modules/tool-auth/external-api-key.service.js.map +1 -1
- package/dist/modules/tool-auth/tool-auth.middleware.d.ts.map +1 -1
- package/dist/modules/tool-auth/tool-auth.middleware.js +9 -4
- package/dist/modules/tool-auth/tool-auth.middleware.js.map +1 -1
- package/dist/modules/tool-helpers/index.d.ts +28 -1
- package/dist/modules/tool-helpers/index.d.ts.map +1 -1
- package/dist/modules/tool-helpers/index.js +28 -1
- package/dist/modules/tool-helpers/index.js.map +1 -1
- package/dist/modules/tool-helpers/route-argument-check.d.ts +10 -0
- package/dist/modules/tool-helpers/route-argument-check.d.ts.map +1 -0
- package/dist/modules/tool-helpers/route-argument-check.js +132 -0
- package/dist/modules/tool-helpers/route-argument-check.js.map +1 -0
- package/dist/modules/tool-helpers/route-tool-schemas.d.ts +89 -0
- package/dist/modules/tool-helpers/route-tool-schemas.d.ts.map +1 -0
- package/dist/modules/tool-helpers/route-tool-schemas.js +113 -0
- package/dist/modules/tool-helpers/route-tool-schemas.js.map +1 -0
- package/dist/modules/tool-helpers/tool-def.d.ts +71 -0
- package/dist/modules/tool-helpers/tool-def.d.ts.map +1 -1
- package/dist/modules/tool-helpers/tool-def.js +70 -6
- package/dist/modules/tool-helpers/tool-def.js.map +1 -1
- package/dist/modules/tool-helpers/tool-handler.d.ts +46 -6
- package/dist/modules/tool-helpers/tool-handler.d.ts.map +1 -1
- package/dist/modules/tool-helpers/tool-handler.js +157 -8
- package/dist/modules/tool-helpers/tool-handler.js.map +1 -1
- package/dist/modules/tool-helpers/tool.contract.d.ts +9 -0
- package/dist/modules/tool-helpers/tool.contract.d.ts.map +1 -1
- package/dist/modules/tool-helpers/tool.contract.js.map +1 -1
- package/dist/modules/tool-manuals/tool-manuals.tools.d.ts.map +1 -1
- package/dist/modules/tool-manuals/tool-manuals.tools.js +14 -5
- package/dist/modules/tool-manuals/tool-manuals.tools.js.map +1 -1
- package/dist/modules/tool-registry/description-length.d.ts +6 -2
- package/dist/modules/tool-registry/description-length.d.ts.map +1 -1
- package/dist/modules/tool-registry/description-length.js +27 -5
- package/dist/modules/tool-registry/description-length.js.map +1 -1
- package/dist/modules/tool-registry/guide-first.d.ts +4 -0
- package/dist/modules/tool-registry/guide-first.d.ts.map +1 -1
- package/dist/modules/tool-registry/guide-first.js +9 -1
- package/dist/modules/tool-registry/guide-first.js.map +1 -1
- package/dist/modules/workflow/agent-tools/change-request-read.tools.d.ts +53 -0
- package/dist/modules/workflow/agent-tools/change-request-read.tools.d.ts.map +1 -1
- package/dist/modules/workflow/agent-tools/change-request-read.tools.js +97 -68
- package/dist/modules/workflow/agent-tools/change-request-read.tools.js.map +1 -1
- package/dist/modules/workflow/agent-tools/workflow.tools.d.ts +8 -1
- package/dist/modules/workflow/agent-tools/workflow.tools.d.ts.map +1 -1
- package/dist/modules/workflow/agent-tools/workflow.tools.js +124 -37
- package/dist/modules/workflow/agent-tools/workflow.tools.js.map +1 -1
- package/dist/modules/workflow/file-lock.service.d.ts +29 -5
- package/dist/modules/workflow/file-lock.service.d.ts.map +1 -1
- package/dist/modules/workflow/file-lock.service.js +62 -5
- package/dist/modules/workflow/file-lock.service.js.map +1 -1
- package/dist/modules/workflow/git/git.service.d.ts +72 -1
- package/dist/modules/workflow/git/git.service.d.ts.map +1 -1
- package/dist/modules/workflow/git/git.service.js +172 -36
- package/dist/modules/workflow/git/git.service.js.map +1 -1
- package/dist/modules/workflow/git/node-git-runner.d.ts +15 -0
- package/dist/modules/workflow/git/node-git-runner.d.ts.map +1 -1
- package/dist/modules/workflow/git/node-git-runner.js +78 -6
- package/dist/modules/workflow/git/node-git-runner.js.map +1 -1
- package/dist/modules/workflow/pending-commits.service.d.ts +15 -0
- package/dist/modules/workflow/pending-commits.service.d.ts.map +1 -1
- package/dist/modules/workflow/pending-commits.service.js +25 -1
- package/dist/modules/workflow/pending-commits.service.js.map +1 -1
- package/dist/modules/workflow/pending-commits.worker.d.ts +6 -1
- package/dist/modules/workflow/pending-commits.worker.d.ts.map +1 -1
- package/dist/modules/workflow/pending-commits.worker.js +23 -6
- package/dist/modules/workflow/pending-commits.worker.js.map +1 -1
- package/dist/modules/workflow/recovery-bot.js +1 -1
- package/dist/modules/workflow/recovery-bot.js.map +1 -1
- package/dist/modules/workflow/review-workflow/review-workflow.service.d.ts.map +1 -1
- package/dist/modules/workflow/review-workflow/review-workflow.service.js +2 -1
- package/dist/modules/workflow/review-workflow/review-workflow.service.js.map +1 -1
- package/dist/modules/workflow/sanitize-error.d.ts +16 -0
- package/dist/modules/workflow/sanitize-error.d.ts.map +1 -1
- package/dist/modules/workflow/sanitize-error.js +45 -0
- package/dist/modules/workflow/sanitize-error.js.map +1 -1
- package/dist/modules/workflow/workflow.service.d.ts +183 -15
- package/dist/modules/workflow/workflow.service.d.ts.map +1 -1
- package/dist/modules/workflow/workflow.service.js +805 -106
- package/dist/modules/workflow/workflow.service.js.map +1 -1
- package/dist/modules/workspace/agent-download.builder.d.ts +105 -0
- package/dist/modules/workspace/agent-download.builder.d.ts.map +1 -0
- package/dist/modules/workspace/agent-download.builder.js +238 -0
- package/dist/modules/workspace/agent-download.builder.js.map +1 -0
- package/dist/modules/workspace/agent-download.routes.d.ts +77 -0
- package/dist/modules/workspace/agent-download.routes.d.ts.map +1 -0
- package/dist/modules/workspace/agent-download.routes.js +156 -0
- package/dist/modules/workspace/agent-download.routes.js.map +1 -0
- package/dist/modules/workspace/agent-download.store.d.ts +225 -0
- package/dist/modules/workspace/agent-download.store.d.ts.map +1 -0
- package/dist/modules/workspace/agent-download.store.js +423 -0
- package/dist/modules/workspace/agent-download.store.js.map +1 -0
- package/dist/modules/workspace/agent-upload.store.d.ts +10 -1
- package/dist/modules/workspace/agent-upload.store.d.ts.map +1 -1
- package/dist/modules/workspace/agent-upload.store.js +16 -6
- package/dist/modules/workspace/agent-upload.store.js.map +1 -1
- package/dist/modules/workspace/file-readers/raw-mime.d.ts +6 -0
- package/dist/modules/workspace/file-readers/raw-mime.d.ts.map +1 -0
- package/dist/modules/workspace/file-readers/raw-mime.js +38 -0
- package/dist/modules/workspace/file-readers/raw-mime.js.map +1 -0
- package/dist/modules/workspace/file-readers/text-reader.d.ts +5 -5
- package/dist/modules/workspace/file-readers/text-reader.d.ts.map +1 -1
- package/dist/modules/workspace/file-readers/text-reader.js +5 -8
- package/dist/modules/workspace/file-readers/text-reader.js.map +1 -1
- package/dist/modules/workspace/first-run.d.ts +111 -0
- package/dist/modules/workspace/first-run.d.ts.map +1 -0
- package/dist/modules/workspace/first-run.js +181 -0
- package/dist/modules/workspace/first-run.js.map +1 -0
- package/dist/modules/workspace/move-links.d.ts +92 -0
- package/dist/modules/workspace/move-links.d.ts.map +1 -0
- package/dist/modules/workspace/move-links.js +173 -0
- package/dist/modules/workspace/move-links.js.map +1 -0
- package/dist/modules/workspace/startup/steps/seed-tree.d.ts.map +1 -1
- package/dist/modules/workspace/startup/steps/seed-tree.js +3 -13
- package/dist/modules/workspace/startup/steps/seed-tree.js.map +1 -1
- package/dist/modules/workspace/workspace.routes.d.ts.map +1 -1
- package/dist/modules/workspace/workspace.routes.js +63 -22
- package/dist/modules/workspace/workspace.routes.js.map +1 -1
- package/dist/modules/workspace/workspace.service.d.ts +75 -2
- package/dist/modules/workspace/workspace.service.d.ts.map +1 -1
- package/dist/modules/workspace/workspace.service.js +197 -24
- package/dist/modules/workspace/workspace.service.js.map +1 -1
- package/dist/modules/workspace/workspace.tools.d.ts +59 -1
- package/dist/modules/workspace/workspace.tools.d.ts.map +1 -1
- package/dist/modules/workspace/workspace.tools.js +443 -65
- package/dist/modules/workspace/workspace.tools.js.map +1 -1
- package/dist/modules/write-access/write-access.d.ts.map +1 -1
- package/dist/modules/write-access/write-access.js +9 -0
- package/dist/modules/write-access/write-access.js.map +1 -1
- package/dist/shared/domain-errors.d.ts +73 -1
- package/dist/shared/domain-errors.d.ts.map +1 -1
- package/dist/shared/domain-errors.js +86 -12
- package/dist/shared/domain-errors.js.map +1 -1
- package/dist/shared/git.contract.d.ts +10 -1
- package/dist/shared/git.contract.d.ts.map +1 -1
- package/dist/shared/git.contract.js.map +1 -1
- package/dist/shared/utf8-text.d.ts +15 -0
- package/dist/shared/utf8-text.d.ts.map +1 -0
- package/dist/shared/utf8-text.js +20 -0
- package/dist/shared/utf8-text.js.map +1 -0
- package/dist/tenancy/static-tenant-source.d.ts +2 -1
- package/dist/tenancy/static-tenant-source.d.ts.map +1 -1
- package/dist/tenancy/static-tenant-source.js +9 -2
- package/dist/tenancy/static-tenant-source.js.map +1 -1
- package/mcp-app/page.html +349 -0
- package/migrations/0017_atlassian_account_links.sql +37 -0
- package/migrations/meta/0017_snapshot.json +2396 -0
- package/migrations/meta/_journal.json +8 -1
- package/package.json +5 -3
- package/src/__tests__/packaged-assets-ship.test.ts +16 -4
- package/src/assets.ts +28 -2
- package/src/core/__tests__/catalog-revision.test.ts +40 -0
- package/src/core/__tests__/gated-boot.test.ts +1 -0
- package/src/core/__tests__/lifecycle.test.ts +14 -0
- package/src/core/catalog-revision.ts +15 -2
- package/src/core/create-core-server.ts +67 -3
- package/src/core/create-core-services.ts +140 -6
- package/src/core/lifecycle.ts +28 -2
- package/src/core-config.ts +24 -1
- package/src/index.ts +2 -2
- package/src/modules/access/__tests__/access-control.service.test.ts +19 -0
- package/src/modules/access/access-control.interface.ts +13 -0
- package/src/modules/access/access-control.service.ts +16 -0
- package/src/modules/access/directory-sync-bot.ts +1 -1
- package/src/modules/agent-guide/__tests__/agent-guide.test.ts +58 -0
- package/src/modules/agent-guide/__tests__/agent-guide.tools.test.ts +19 -1
- package/src/modules/agent-guide/agent-guide.ts +9 -0
- package/src/modules/agent-guide/index.ts +1 -0
- package/src/modules/agent-instructions/__tests__/shared-file-rules.test.ts +14 -0
- package/src/modules/agent-instructions/compose.ts +17 -2
- package/src/modules/agent-instructions/shared-file-rules.ts +19 -19
- package/src/modules/audit/__tests__/agent-audit.service.test.ts +64 -4
- package/src/modules/audit/__tests__/agent-connection.routes.test.ts +102 -0
- package/src/modules/audit/agent-audit.service.ts +58 -3
- package/src/modules/audit/agent-connection.routes.ts +56 -0
- package/src/modules/audit/audit.contract.ts +26 -0
- package/src/modules/audit/index.ts +1 -0
- package/src/modules/auth/__tests__/account.routes.test.ts +5 -3
- package/src/modules/auth/account.routes.ts +10 -3
- package/src/modules/auth/auth.middleware.ts +1 -1
- package/src/modules/code-mode/__tests__/code-mode.tool.test.ts +18 -2
- package/src/modules/code-mode/code-mode.tool.ts +13 -2
- package/src/modules/database/core-schema.ts +33 -3
- package/src/modules/embed/__tests__/account-links.migration.test.ts +98 -0
- package/src/modules/embed/__tests__/embed-link.test.ts +122 -0
- package/src/modules/embed/__tests__/embed.routes.test.ts +362 -0
- package/src/modules/embed/__tests__/embed.service.lock.test.ts +193 -0
- package/src/modules/embed/__tests__/embed.service.test.ts +805 -0
- package/src/modules/embed/__tests__/embed.tools.test.ts +304 -0
- package/src/modules/embed/__tests__/mcp-app.test.ts +207 -0
- package/src/modules/embed/account-link.service.ts +76 -0
- package/src/modules/embed/embed-link.ts +180 -0
- package/src/modules/embed/embed.errors.ts +43 -0
- package/src/modules/embed/embed.interface.ts +203 -0
- package/src/modules/embed/embed.routes.ts +363 -0
- package/src/modules/embed/embed.service.ts +705 -0
- package/src/modules/embed/embed.tools.ts +206 -0
- package/src/modules/embed/mcp-app.routes.ts +41 -0
- package/src/modules/embed/mcp-app.ts +173 -0
- package/src/modules/github-app/__tests__/github-app.test.ts +76 -0
- package/src/modules/github-app/github-app.connection.ts +38 -4
- package/src/modules/kb-fs/__tests__/move-with-edits.test.ts +304 -0
- package/src/modules/kb-fs/locking-filesystem.ts +287 -0
- package/src/modules/kb-sync/__tests__/kb-sync.service.test.ts +35 -0
- package/src/modules/kb-sync/kb-sync.interface.ts +2 -0
- package/src/modules/kb-sync/kb-sync.service.ts +6 -0
- package/src/modules/mcp/__tests__/bevel-oauth-provider.test.ts +68 -11
- package/src/modules/mcp/__tests__/mcp-proxy-helpers.test.ts +37 -2
- package/src/modules/mcp/__tests__/mcp.app.e2e.test.ts +200 -0
- package/src/modules/mcp/__tests__/mcp.e2e.test.ts +3 -1
- package/src/modules/mcp/__tests__/mcp.service.test.ts +23 -13
- package/src/modules/mcp/__tests__/tool-call-interface.e2e.test.ts +499 -0
- package/src/modules/mcp/mcp-auth.middleware.ts +2 -1
- package/src/modules/mcp/mcp.service.ts +81 -12
- package/src/modules/mcp/oauth/bevel-oauth-provider.ts +42 -4
- package/src/modules/onboarding/__tests__/onboarding.routes.test.ts +163 -0
- package/src/modules/onboarding/__tests__/starter-pack.service.test.ts +635 -0
- package/src/modules/onboarding/__tests__/starter-packs.test.ts +169 -0
- package/src/modules/onboarding/onboarding.contract.ts +85 -0
- package/src/modules/onboarding/onboarding.routes.ts +85 -0
- package/src/modules/onboarding/starter-pack.service.ts +580 -0
- package/src/modules/onboarding/starter-packs.ts +182 -0
- package/src/modules/plugins/__tests__/plugins.tools.test.ts +25 -2
- package/src/modules/plugins/index.ts +1 -0
- package/src/modules/plugins/plugin-provision.service.ts +22 -1
- package/src/modules/plugins/plugins.routes.ts +29 -0
- package/src/modules/settings/__tests__/deployment-settings.service.test.ts +150 -1
- package/src/modules/settings/__tests__/repository-source.test.ts +9 -0
- package/src/modules/settings/deployment-settings.service.ts +131 -1
- package/src/modules/settings/repository-source.ts +4 -4
- package/src/modules/skills/__tests__/skills.tools.description.test.ts +5 -1
- package/src/modules/skills/skills.tools.ts +55 -35
- package/src/modules/tool-auth/__tests__/connection-key-rejection.test.ts +32 -0
- package/src/modules/tool-auth/__tests__/external-api-key.service.test.ts +65 -0
- package/src/modules/tool-auth/connection-key-rejection.ts +13 -3
- package/src/modules/tool-auth/external-api-key.interface.ts +9 -0
- package/src/modules/tool-auth/external-api-key.service.ts +61 -4
- package/src/modules/tool-auth/tool-auth.middleware.ts +13 -4
- package/src/modules/tool-helpers/__tests__/branch-declaration.test.ts +502 -0
- package/src/modules/tool-helpers/__tests__/route-argument-check.test.ts +337 -0
- package/src/modules/tool-helpers/index.ts +34 -1
- package/src/modules/tool-helpers/route-argument-check.ts +149 -0
- package/src/modules/tool-helpers/route-tool-schemas.ts +171 -0
- package/src/modules/tool-helpers/tool-def.ts +132 -7
- package/src/modules/tool-helpers/tool-handler.ts +196 -8
- package/src/modules/tool-helpers/tool.contract.ts +9 -0
- package/src/modules/tool-manuals/tool-manuals.tools.ts +15 -5
- package/src/modules/tool-registry/__tests__/own-tool-schemas.test.ts +14 -1
- package/src/modules/tool-registry/__tests__/tool-description-length.test.ts +23 -10
- package/src/modules/tool-registry/description-length.ts +34 -7
- package/src/modules/tool-registry/guide-first.ts +8 -1
- package/src/modules/workflow/__tests__/file-lock.service.deletion-gate.test.ts +104 -0
- package/src/modules/workflow/__tests__/pending-commits.repository-replaced.test.ts +66 -0
- package/src/modules/workflow/__tests__/pending-commits.worker.test.ts +31 -2
- package/src/modules/workflow/__tests__/preserve-roles-yaml.test.ts +110 -6
- package/src/modules/workflow/__tests__/sanitize-error.test.ts +89 -1
- package/src/modules/workflow/__tests__/workflow.routes.push-refused.test.ts +202 -0
- package/src/modules/workflow/__tests__/workflow.service.branch-in-use.test.ts +6 -6
- package/src/modules/workflow/__tests__/workflow.service.delete-branch.test.ts +1026 -0
- package/src/modules/workflow/__tests__/workflow.service.facade.test.ts +468 -10
- package/src/modules/workflow/__tests__/workflow.service.folder-proposals.test.ts +4 -0
- package/src/modules/workflow/__tests__/workflow.service.releaseLock.test.ts +5 -4
- package/src/modules/workflow/__tests__/workflow.service.update-from-target.test.ts +54 -2
- package/src/modules/workflow/agent-tools/__tests__/change-request-read.tools.test.ts +41 -5
- package/src/modules/workflow/agent-tools/__tests__/workflow.tools.test.ts +127 -2
- package/src/modules/workflow/agent-tools/change-request-read.tools.ts +157 -122
- package/src/modules/workflow/agent-tools/workflow.tools.ts +129 -35
- package/src/modules/workflow/file-lock.service.ts +67 -5
- package/src/modules/workflow/git/__tests__/git.service.deleteBranch.test.ts +164 -0
- package/src/modules/workflow/git/__tests__/git.service.pull.test.ts +48 -1
- package/src/modules/workflow/git/__tests__/node-git-runner.test.ts +231 -2
- package/src/modules/workflow/git/git.service.ts +176 -38
- package/src/modules/workflow/git/node-git-runner.ts +82 -7
- package/src/modules/workflow/pending-commits.service.ts +29 -1
- package/src/modules/workflow/pending-commits.worker.ts +24 -6
- package/src/modules/workflow/recovery-bot.ts +1 -1
- package/src/modules/workflow/review-workflow/review-workflow.service.ts +2 -1
- package/src/modules/workflow/sanitize-error.ts +50 -0
- package/src/modules/workflow/workflow.service.ts +879 -112
- package/src/modules/workspace/__tests__/agent-downloads.test.ts +823 -0
- package/src/modules/workspace/__tests__/first-run.test.ts +234 -0
- package/src/modules/workspace/__tests__/git-internals.security.test.ts +5 -2
- package/src/modules/workspace/__tests__/md-links.test.ts +353 -0
- package/src/modules/workspace/__tests__/move-links.test.ts +261 -0
- package/src/modules/workspace/__tests__/rest-tool-arguments.test.ts +219 -0
- package/src/modules/workspace/__tests__/workspace-paths-inside-the-repo.test.ts +3 -0
- package/src/modules/workspace/__tests__/workspace.routes.delete.test.ts +102 -0
- package/src/modules/workspace/__tests__/workspace.routes.download.test.ts +52 -5
- package/src/modules/workspace/__tests__/workspace.routes.folder-zip-access.test.ts +190 -0
- package/src/modules/workspace/__tests__/workspace.service.forget-clone-races.test.ts +8 -4
- package/src/modules/workspace/__tests__/workspace.service.test.ts +50 -8
- package/src/modules/workspace/__tests__/workspace.tools.branch-errors.test.ts +44 -1
- package/src/modules/workspace/__tests__/workspace.tools.test.ts +409 -12
- package/src/modules/workspace/agent-download.builder.ts +308 -0
- package/src/modules/workspace/agent-download.routes.ts +183 -0
- package/src/modules/workspace/agent-download.store.ts +533 -0
- package/src/modules/workspace/agent-upload.store.ts +23 -7
- package/src/modules/workspace/file-readers/raw-mime.ts +40 -0
- package/src/modules/workspace/file-readers/text-reader.ts +5 -8
- package/src/modules/workspace/first-run.ts +222 -0
- package/src/modules/workspace/move-links.ts +237 -0
- package/src/modules/workspace/startup/steps/seed-tree.ts +3 -12
- package/src/modules/workspace/workspace.routes.ts +64 -22
- package/src/modules/workspace/workspace.service.ts +202 -25
- package/src/modules/workspace/workspace.tools.ts +492 -63
- package/src/modules/write-access/__tests__/write-access.test.ts +13 -0
- package/src/modules/write-access/write-access.ts +9 -0
- package/src/shared/domain-errors.ts +108 -11
- package/src/shared/git.contract.ts +8 -1
- package/src/shared/utf8-text.ts +21 -0
- package/src/tenancy/__tests__/static-tenant-source.test.ts +1 -0
- package/src/tenancy/static-tenant-source.ts +10 -2
- package/starter-packs/README.md +103 -0
- package/starter-packs/engineering/KnowledgeBase/About us.md +9 -0
- package/starter-packs/engineering/KnowledgeBase/Architecture.md +9 -0
- package/starter-packs/engineering/KnowledgeBase/Glossary.md +9 -0
- package/starter-packs/engineering/KnowledgeBase/How we ship.md +9 -0
- package/starter-packs/engineering/Plugins/engineering-starter/LICENSE +21 -0
- package/starter-packs/engineering/Plugins/engineering-starter/SOURCE.md +20 -0
- package/starter-packs/engineering/Plugins/engineering-starter/access.md +19 -0
- package/starter-packs/engineering/Plugins/engineering-starter/plugin.json +10 -0
- package/starter-packs/engineering/Plugins/engineering-starter/skills/office-hours/SKILL.md +171 -0
- package/starter-packs/engineering/Plugins/engineering-starter/skills/office-hours/sections/phase-2a-startup-diagnostic.md +157 -0
- package/starter-packs/engineering/Plugins/engineering-starter/skills/office-hours/sections/phase-2b-builder-brainstorm.md +39 -0
- package/starter-packs/engineering/Plugins/engineering-starter/skills/plan-ceo-review/SKILL.md +144 -0
- package/starter-packs/engineering/Plugins/engineering-starter/skills/plan-eng-review/SKILL.md +144 -0
- package/starter-packs/engineering/Plugins/engineering-starter/skills/review/SKILL.md +80 -0
- package/starter-packs/engineering/Plugins/engineering-starter/skills/review/checklist.md +184 -0
- package/starter-packs/engineering/pack.yaml +11 -0
- package/starter-packs/general/KnowledgeBase/About us.md +9 -0
- package/starter-packs/general/KnowledgeBase/Glossary.md +9 -0
- package/starter-packs/general/KnowledgeBase/How we work.md +9 -0
- package/starter-packs/general/Plugins/general-starter/LICENSE +202 -0
- package/starter-packs/general/Plugins/general-starter/SOURCE.md +10 -0
- package/starter-packs/general/Plugins/general-starter/access.md +19 -0
- package/starter-packs/general/Plugins/general-starter/plugin.json +10 -0
- package/starter-packs/general/Plugins/general-starter/skills/memory-management/SKILL.md +332 -0
- package/starter-packs/general/Plugins/general-starter/skills/productivity-start/SKILL.md +163 -0
- package/starter-packs/general/Plugins/general-starter/skills/productivity-update/SKILL.md +167 -0
- package/starter-packs/general/Plugins/general-starter/skills/task-management/SKILL.md +83 -0
- package/starter-packs/general/pack.yaml +10 -0
- package/starter-packs/operations/KnowledgeBase/Glossary.md +9 -0
- package/starter-packs/operations/KnowledgeBase/How we work.md +9 -0
- package/starter-packs/operations/KnowledgeBase/Processes.md +9 -0
- package/starter-packs/operations/KnowledgeBase/Tools we use.md +9 -0
- package/starter-packs/operations/KnowledgeBase/Vendors.md +9 -0
- package/starter-packs/operations/Plugins/operations-starter/LICENSE +202 -0
- package/starter-packs/operations/Plugins/operations-starter/SOURCE.md +10 -0
- package/starter-packs/operations/Plugins/operations-starter/access.md +19 -0
- package/starter-packs/operations/Plugins/operations-starter/plugin.json +10 -0
- package/starter-packs/operations/Plugins/operations-starter/skills/capacity-plan/SKILL.md +111 -0
- package/starter-packs/operations/Plugins/operations-starter/skills/change-request/SKILL.md +119 -0
- package/starter-packs/operations/Plugins/operations-starter/skills/compliance-tracking/SKILL.md +44 -0
- package/starter-packs/operations/Plugins/operations-starter/skills/process-doc/SKILL.md +80 -0
- package/starter-packs/operations/Plugins/operations-starter/skills/process-optimization/SKILL.md +39 -0
- package/starter-packs/operations/Plugins/operations-starter/skills/risk-assessment/SKILL.md +40 -0
- package/starter-packs/operations/Plugins/operations-starter/skills/runbook/SKILL.md +85 -0
- package/starter-packs/operations/Plugins/operations-starter/skills/status-report/SKILL.md +75 -0
- package/starter-packs/operations/Plugins/operations-starter/skills/vendor-review/SKILL.md +102 -0
- package/starter-packs/operations/pack.yaml +12 -0
- package/starter-packs/sales/KnowledgeBase/About us.md +9 -0
- package/starter-packs/sales/KnowledgeBase/Customers.md +9 -0
- package/starter-packs/sales/KnowledgeBase/Glossary.md +9 -0
- package/starter-packs/sales/KnowledgeBase/How we sell.md +9 -0
- package/starter-packs/sales/KnowledgeBase/Objections.md +9 -0
- package/starter-packs/sales/KnowledgeBase/Pricing.md +9 -0
- package/starter-packs/sales/Plugins/sales-starter/LICENSE +202 -0
- package/starter-packs/sales/Plugins/sales-starter/SOURCE.md +10 -0
- package/starter-packs/sales/Plugins/sales-starter/access.md +19 -0
- package/starter-packs/sales/Plugins/sales-starter/plugin.json +10 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/account-context/SKILL.md +94 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/account-plan/SKILL.md +95 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/account-research/SKILL.md +99 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/account-tiering/SKILL.md +101 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/call-prep/SKILL.md +111 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/call-summary/SKILL.md +111 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/close-plan/SKILL.md +106 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/competitive-intelligence/SKILL.md +102 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/create-an-asset/SKILL.md +105 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/crm-hygiene-check/SKILL.md +103 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/customer-health/SKILL.md +108 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/customer-voice/SKILL.md +94 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/daily-briefing/SKILL.md +61 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/deal-advance-gap/SKILL.md +102 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/deal-review/SKILL.md +105 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/deal-signals/SKILL.md +96 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/deal-slip-scenario/SKILL.md +104 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/draft-outreach/SKILL.md +116 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/end-of-day/SKILL.md +114 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/expansion-whitespace/SKILL.md +97 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/forecast/SKILL.md +100 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/handle-objection/SKILL.md +93 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/inbox-sweep/SKILL.md +114 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/lead-triage/SKILL.md +106 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/log-activity/SKILL.md +111 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/pipeline-review/SKILL.md +97 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/renewal-radar/SKILL.md +95 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/rep-context/SKILL.md +90 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/route-lead/SKILL.md +111 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/sales-setup/SKILL.md +200 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/schedule-meeting/SKILL.md +99 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/stakeholder-map/SKILL.md +107 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/team-pipeline/SKILL.md +105 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/update-opportunity/SKILL.md +112 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/weekly-wrap/SKILL.md +90 -0
- package/starter-packs/sales/Plugins/sales-starter/skills/win-loss-review/SKILL.md +88 -0
- package/starter-packs/sales/pack.yaml +13 -0
- package/starter-packs/support/KnowledgeBase/Escalations.md +9 -0
- package/starter-packs/support/KnowledgeBase/Glossary.md +9 -0
- package/starter-packs/support/KnowledgeBase/Known issues.md +9 -0
- package/starter-packs/support/KnowledgeBase/Products.md +9 -0
- package/starter-packs/support/KnowledgeBase/Tone of voice.md +9 -0
- package/starter-packs/support/Plugins/support-starter/LICENSE +202 -0
- package/starter-packs/support/Plugins/support-starter/SOURCE.md +10 -0
- package/starter-packs/support/Plugins/support-starter/access.md +19 -0
- package/starter-packs/support/Plugins/support-starter/plugin.json +10 -0
- package/starter-packs/support/Plugins/support-starter/skills/customer-escalation/SKILL.md +246 -0
- package/starter-packs/support/Plugins/support-starter/skills/customer-research/SKILL.md +250 -0
- package/starter-packs/support/Plugins/support-starter/skills/draft-response/SKILL.md +416 -0
- package/starter-packs/support/Plugins/support-starter/skills/kb-article/SKILL.md +350 -0
- package/starter-packs/support/Plugins/support-starter/skills/ticket-triage/SKILL.md +273 -0
- package/starter-packs/support/pack.yaml +12 -0
|
@@ -232,3 +232,20 @@ File-level write access decides how a change lands on the default branch:
|
|
|
232
232
|
app. Into a protected branch it merges only what you could commit there
|
|
233
233
|
directly, under the rule above — and never a change to `roles.yaml`, whoever
|
|
234
234
|
you are: roles are changed in the app, not merged in from a draft.
|
|
235
|
+
- **Delete** a draft with `delete_branch`, which removes it for everyone. Only
|
|
236
|
+
its author (`<email-localpart>/…`, or your own `suggestions/…` bundle) or an
|
|
237
|
+
Admin may. Preview with `dryRun: true` first: it changes nothing and says
|
|
238
|
+
whether the delete would go through, how many commits are not on the default
|
|
239
|
+
branch, and the last commit. A branch holding such commits is refused unless
|
|
240
|
+
you pass `discardUnmerged: true` — only when the user wants that work gone. An
|
|
241
|
+
open change request from or into the branch that proposes nothing is closed
|
|
242
|
+
by the delete. One that still proposes something refuses it, with a link:
|
|
243
|
+
its author can withdraw it, or an Admin can decline it, in the app — hand the
|
|
244
|
+
user that link. A request you cannot see is not named, and a preview leaves
|
|
245
|
+
it out, so a delete can still be refused after a clean preview. Hand the user the
|
|
246
|
+
`lastCommit` it answers, so the branch can be restored. The server removes a
|
|
247
|
+
draft on its own once its change request was merged, but only while nothing
|
|
248
|
+
has happened to it since: no commit that is not on the default branch, no
|
|
249
|
+
request open from or into it, no save still landing, no file held for
|
|
250
|
+
editing, and its last commit
|
|
251
|
+
the one that was merged. Any other draft stays until someone deletes it.
|
|
@@ -11,6 +11,14 @@ merely correct.
|
|
|
11
11
|
`[Page Name](relative/path/to/Page.md)`, relative to the LINKING file's
|
|
12
12
|
directory rather than the repo root, so links resolve both in the app and on
|
|
13
13
|
the git host.
|
|
14
|
+
`move_file` keeps most of them working: it rewrites the links inside the
|
|
15
|
+
moved files and those in the other markdown pages it searches, and names
|
|
16
|
+
what it left — HTML pages, raw HTML inside a markdown page, and pages you
|
|
17
|
+
may not change. It does not search
|
|
18
|
+
`transcripts/` or `probes/` folders, and pages you cannot read are neither
|
|
19
|
+
searched nor named (the answer only says such pages may exist); links there
|
|
20
|
+
can still point at the old path. Paths written in prose or code are not
|
|
21
|
+
links, and a move leaves them as they are.
|
|
14
22
|
|
|
15
23
|
3. **Absolute dates.** `YYYY-MM-DD`, never "last Tuesday" — a saved file
|
|
16
24
|
outlives the moment it was written.
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
## HTML views
|
|
2
|
+
|
|
3
|
+
An `.html` (or `.htm`) file in the knowledge base is a live page: the app shows
|
|
4
|
+
it in a sandboxed frame, scripts and all. Write one when a reader is better
|
|
5
|
+
served by something interactive — a dashboard, a filterable table, a chart —
|
|
6
|
+
than by a markdown document.
|
|
7
|
+
|
|
8
|
+
### The frame
|
|
9
|
+
|
|
10
|
+
- **No network.** The page cannot fetch, load or send anything: no `fetch`, no
|
|
11
|
+
XHR, no WebSocket, no external script, stylesheet, font or image. Put the
|
|
12
|
+
data the page shows into the page itself.
|
|
13
|
+
- **Inline scripts and styles only.** `<script src>`, `<link>`, `<iframe>`,
|
|
14
|
+
`<object>`, `<embed>`, `<base>` and `<meta>` are removed. Write CSS in a
|
|
15
|
+
`<style>` element and code in an inline `<script>`. An image is a `data:`
|
|
16
|
+
URL.
|
|
17
|
+
- **Scripts run as ES modules**, in source order, after the document is
|
|
18
|
+
parsed: `document.getElementById` works without waiting for
|
|
19
|
+
`DOMContentLoaded`, top-level `await` works, and a top-level declaration is
|
|
20
|
+
local to its script, not a global.
|
|
21
|
+
- **No browser storage.** `localStorage`, `sessionStorage`, IndexedDB and
|
|
22
|
+
cookies are unavailable; a page keeps no state between views.
|
|
23
|
+
- **No host navigation.** The page cannot navigate the app, open a window or
|
|
24
|
+
submit a form. Links reach the app through the bridge below.
|
|
25
|
+
- **`window.bevel` exists only in the app.** Opened anywhere else, the page has
|
|
26
|
+
no bridge; guard a call with `window.bevel?.openNode`.
|
|
27
|
+
|
|
28
|
+
### `window.bevel`
|
|
29
|
+
|
|
30
|
+
Core puts two members on it:
|
|
31
|
+
|
|
32
|
+
- `window.bevel.openNode(href)` — follow `href` as if the reader had clicked a
|
|
33
|
+
link to it.
|
|
34
|
+
- `window.bevel.navigate(href)` — the same function under a second name.
|
|
35
|
+
|
|
36
|
+
A distribution may add data members of its own to `window.bevel`; its own
|
|
37
|
+
section of this guide names them. Do not call a member this guide does not
|
|
38
|
+
name.
|
|
39
|
+
|
|
40
|
+
### Links written in the markup
|
|
41
|
+
|
|
42
|
+
An `<a href>` in the page keeps its address only when it is one of these:
|
|
43
|
+
|
|
44
|
+
- a document of the knowledge base, `.md`, `.html` or `.htm`, with or without a heading — `../Knowledge/Alice.md#goal`, `Q3-Report.html`, `Notes.htm`
|
|
45
|
+
- an absolute workspace URL — `/workspace/main/{{knowledgeBaseDir}}/Alice.md`
|
|
46
|
+
- an external address — `https://example.com/docs`, `http://example.com`, `mailto:team@example.com`
|
|
47
|
+
- a bare fragment, a place in this page — `#totals`, `#`
|
|
48
|
+
|
|
49
|
+
Every other address is removed from the link when the page is shown, and the
|
|
50
|
+
link goes nowhere:
|
|
51
|
+
|
|
52
|
+
- any other scheme — `javascript:alert(1)`, `data:text/html,hi`, `file:///etc/hosts`, `tel:+15550100`
|
|
53
|
+
- a protocol-relative address — `//cdn.example.com/lib.js`
|
|
54
|
+
- a relative path to anything else — `data.csv`, `../Images/chart.png`
|
|
55
|
+
|
|
56
|
+
### How a link resolves
|
|
57
|
+
|
|
58
|
+
The same rules apply to a click on a link and to `window.bevel.openNode(href)`
|
|
59
|
+
or `window.bevel.navigate(href)`:
|
|
60
|
+
|
|
61
|
+
- **A bare fragment scrolls the page.** `#totals` scrolls the element with
|
|
62
|
+
`id="totals"` into view inside the frame; the page stays loaded and the app
|
|
63
|
+
does not move. A fragment that names no element by `id`, and no `<a name>`,
|
|
64
|
+
does nothing. `#` and `#top` scroll to the top of the page only when no
|
|
65
|
+
target matches: an element with `id="top"`, or an `<a name="top">`, wins
|
|
66
|
+
over the top of the page. Use this for a table of contents or a "back to
|
|
67
|
+
top" link. The page's own address does not change, so `hashchange` never
|
|
68
|
+
fires: a page that routes by hash handles its own clicks.
|
|
69
|
+
- **A relative path** resolves against the folder of the page's own file and
|
|
70
|
+
opens that file in the app: from `{{knowledgeBaseDir}}/Reports/Q3.html`,
|
|
71
|
+
`../Knowledge/Alice.md#goal` opens `{{knowledgeBaseDir}}/Knowledge/Alice.md`
|
|
72
|
+
at its `goal` heading.
|
|
73
|
+
- **`/workspace/<branch>/<path>`** opens that file on that branch.
|
|
74
|
+
- **An external address** (`http:`, `https:`, `mailto:`) opens in a new tab.
|
|
75
|
+
A call from a script may also open `tel:`, `sms:`, `geo:` and a
|
|
76
|
+
protocol-relative `//host/path` address in a new tab, though a link
|
|
77
|
+
written in the markup cannot keep one.
|
|
78
|
+
- **Anything else** (`javascript:`, `data:`, `file:`, an empty string) does
|
|
79
|
+
nothing.
|
|
80
|
+
|
|
81
|
+
A click that a handler of the page has already cancelled with
|
|
82
|
+
`event.preventDefault()` is left to that handler: the bridge neither scrolls
|
|
83
|
+
nor opens anything for it.
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
## A new knowledge base
|
|
2
|
+
|
|
3
|
+
When `start_session` answers with a `firstRun` note, this knowledge base is
|
|
4
|
+
new: `{{kbDirName}}/{{knowledgeBaseDir}}/` has no pages yet, the starter guide
|
|
5
|
+
aside. The person has most likely just connected you, and you are the quickest way to
|
|
6
|
+
fill it. The note stops coming once real pages exist.
|
|
7
|
+
|
|
8
|
+
- **Offer once per conversation, in a sentence or two.** For example: "Your
|
|
9
|
+
Hexis knowledge base is connected and almost empty. Want me to draft a few
|
|
10
|
+
pages about your company — what you do, your customers, your products, your
|
|
11
|
+
glossary? Give me your website or tell me a bit, and I'll write them for you
|
|
12
|
+
to review."
|
|
13
|
+
- **Never in the way.** If they asked for something else, do that first and
|
|
14
|
+
make the offer in one line at the end. If they decline, drop it.
|
|
15
|
+
- **Draft from what they give you.** Read the website they name, or work from
|
|
16
|
+
what they tell you, and ask when something essential is missing rather than
|
|
17
|
+
inventing it. Good first pages: About the company, Customers, Products,
|
|
18
|
+
Glossary, How we work. Say where each fact came from (see Conventions).
|
|
19
|
+
- **Write them with the normal tools** (`write_file`, `write_files`) as
|
|
20
|
+
markdown under `{{kbDirName}}/{{knowledgeBaseDir}}/`, one page per subject.
|
|
21
|
+
Leave the starter guide as it is. A write you are refused says whether you
|
|
22
|
+
may propose it as a change instead; propose it only when it says you may.
|
|
23
|
+
- **Tell them where the pages are:** in the knowledge base in the app, where
|
|
24
|
+
they can read, edit or delete them, and every version stays in the history.
|
|
@@ -10,6 +10,16 @@ the second is refused, so give each copy its own `id` (`serper_everyone`,
|
|
|
10
10
|
`serper_finance`). Remember: `.tool` files are for `http` and `inline` manuals
|
|
11
11
|
only; MCP servers belong in `mcp.json`.
|
|
12
12
|
|
|
13
|
+
**Calling a tool: read its `Call:` line.** Tools do not share one calling
|
|
14
|
+
shape — the knowledge-base tools take their arguments under a `body` object, a
|
|
15
|
+
tool that calls another service takes them flat — so every tool description
|
|
16
|
+
opens with one generated line showing how that tool is called, e.g.
|
|
17
|
+
`Call: KNOWLEDGE_BASE.read_file({ body: { branch: "...", path: "..." } })` or
|
|
18
|
+
`Call: SERPER.search({ query: "..." })`. Copy that line and fill it in, inside
|
|
19
|
+
`call_tool_chain` or directly. Arguments that do not match a tool's input
|
|
20
|
+
schema are refused before anything is sent, and the refusal lists what is
|
|
21
|
+
wrong and gives the tool's whole interface.
|
|
22
|
+
|
|
13
23
|
A `.tool` file is JSON or YAML. Its `type` decides how tools are discovered:
|
|
14
24
|
|
|
15
25
|
- **`inline`** — the tools are embedded in the file (no network round-trip to list them).
|
package/dist/assets.d.ts
CHANGED
|
@@ -9,4 +9,23 @@ export declare function defaultKbTemplateDir(): string;
|
|
|
9
9
|
* so a build and the published source find it at the same place.
|
|
10
10
|
*/
|
|
11
11
|
export declare function agentGuideDir(): string;
|
|
12
|
+
/**
|
|
13
|
+
* The MCP App views this deployment serves over `resources/read` — one static
|
|
14
|
+
* HTML file each, no build step. Beside `agent-guide/` and `kb-template/` for
|
|
15
|
+
* the same reason: a build and the published source find it at the same
|
|
16
|
+
* place, and `tsc` copies nothing that is not TypeScript.
|
|
17
|
+
*
|
|
18
|
+
* The backend serves these as BYTES and never imports frontend code — the
|
|
19
|
+
* view's whole job is to load the deployment's embed bundle into its own
|
|
20
|
+
* document (hosts forbid framing the deployment, see `mcp-app.ts`), where the
|
|
21
|
+
* app's renderers then draw the page.
|
|
22
|
+
*/
|
|
23
|
+
export declare function mcpAppDir(): string;
|
|
24
|
+
/**
|
|
25
|
+
* The starter packs a new knowledge base may be filled from — one folder per
|
|
26
|
+
* team (`engineering/`, `sales/`, …), each a `pack.yaml` beside the pages and
|
|
27
|
+
* the plugin it adds (see `modules/onboarding/starter-packs.ts`). Beside
|
|
28
|
+
* `kb-template/` for the same reason: read at run time, shipped as files.
|
|
29
|
+
*/
|
|
30
|
+
export declare function defaultStarterPacksDir(): string;
|
|
12
31
|
//# sourceMappingURL=assets.d.ts.map
|
package/dist/assets.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assets.d.ts","sourceRoot":"","sources":["../src/assets.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"assets.d.ts","sourceRoot":"","sources":["../src/assets.ts"],"names":[],"mappings":"AAiBA,oEAAoE;AACpE,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED,uEAAuE;AACvE,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,IAAI,MAAM,CAElC;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C"}
|
package/dist/assets.js
CHANGED
|
@@ -2,8 +2,9 @@ import path from 'node:path';
|
|
|
2
2
|
import { fileURLToPath } from 'node:url';
|
|
3
3
|
/**
|
|
4
4
|
* Locations of the assets shipped INSIDE this package (`files` in
|
|
5
|
-
* package.json): the squashed core migration history (`migrations/`)
|
|
6
|
-
* KB seed template (`kb-template/`)
|
|
5
|
+
* package.json): the squashed core migration history (`migrations/`), the
|
|
6
|
+
* KB seed template (`kb-template/`) and the starter packs (`starter-packs/`).
|
|
7
|
+
* All live at the PACKAGE ROOT, and this
|
|
7
8
|
* module is a direct child of either `src/` (in-repo / tsx) or `dist/`
|
|
8
9
|
* (compiled) — so one `..` hop from the module URL reaches the package root
|
|
9
10
|
* in BOTH layouts. Resolved lazily so bundlers that rewrite `import.meta.url`
|
|
@@ -29,4 +30,27 @@ export function defaultKbTemplateDir() {
|
|
|
29
30
|
export function agentGuideDir() {
|
|
30
31
|
return path.join(packageRoot(), 'agent-guide');
|
|
31
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* The MCP App views this deployment serves over `resources/read` — one static
|
|
35
|
+
* HTML file each, no build step. Beside `agent-guide/` and `kb-template/` for
|
|
36
|
+
* the same reason: a build and the published source find it at the same
|
|
37
|
+
* place, and `tsc` copies nothing that is not TypeScript.
|
|
38
|
+
*
|
|
39
|
+
* The backend serves these as BYTES and never imports frontend code — the
|
|
40
|
+
* view's whole job is to load the deployment's embed bundle into its own
|
|
41
|
+
* document (hosts forbid framing the deployment, see `mcp-app.ts`), where the
|
|
42
|
+
* app's renderers then draw the page.
|
|
43
|
+
*/
|
|
44
|
+
export function mcpAppDir() {
|
|
45
|
+
return path.join(packageRoot(), 'mcp-app');
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* The starter packs a new knowledge base may be filled from — one folder per
|
|
49
|
+
* team (`engineering/`, `sales/`, …), each a `pack.yaml` beside the pages and
|
|
50
|
+
* the plugin it adds (see `modules/onboarding/starter-packs.ts`). Beside
|
|
51
|
+
* `kb-template/` for the same reason: read at run time, shipped as files.
|
|
52
|
+
*/
|
|
53
|
+
export function defaultStarterPacksDir() {
|
|
54
|
+
return path.join(packageRoot(), 'starter-packs');
|
|
55
|
+
}
|
|
32
56
|
//# sourceMappingURL=assets.js.map
|
package/dist/assets.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assets.js","sourceRoot":"","sources":["../src/assets.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC
|
|
1
|
+
{"version":3,"file":"assets.js","sourceRoot":"","sources":["../src/assets.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC;;;;;;;;;GASG;AACH,SAAS,WAAW;IAClB,OAAO,aAAa,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,oEAAoE;AACpE,MAAM,UAAU,iBAAiB;IAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,YAAY,CAAC,CAAC;AAChD,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,oBAAoB;IAClC,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,aAAa,CAAC,CAAC;AACjD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,aAAa,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,SAAS;IACvB,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,SAAS,CAAC,CAAC;AAC7C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB;IACpC,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,eAAe,CAAC,CAAC;AACnD,CAAC"}
|
|
@@ -18,7 +18,16 @@ import '../modules/tool-auth/tool-auth.middleware.js';
|
|
|
18
18
|
* already, but a dedupe or an access filter could reshuffle what survives, and
|
|
19
19
|
* "the same set in another order" is not something a client owes a refresh for.
|
|
20
20
|
*/
|
|
21
|
-
export declare function catalogRevision(manuals: readonly string[], skills: readonly SkillSummary[]
|
|
21
|
+
export declare function catalogRevision(manuals: readonly string[], skills: readonly SkillSummary[],
|
|
22
|
+
/**
|
|
23
|
+
* The MCP App views this deployment serves, by their bytes: a release that
|
|
24
|
+
* changes a view and nothing else must still move the revision, or a local
|
|
25
|
+
* server already running keeps serving the view it read at startup.
|
|
26
|
+
*/
|
|
27
|
+
views?: readonly {
|
|
28
|
+
uri: string;
|
|
29
|
+
text: string;
|
|
30
|
+
}[]): string;
|
|
22
31
|
/**
|
|
23
32
|
* `GET /agent/catalog-revision` — the caller's catalog fingerprint, plus the
|
|
24
33
|
* two counts behind it so an operator reading a log can tell a shrinking
|
|
@@ -35,5 +44,14 @@ export declare function createCatalogRevisionRoutes(deps: {
|
|
|
35
44
|
manualAuth: RequestHandler;
|
|
36
45
|
/** Connection-key/internal-token user id → email, for the per-caller ACL. */
|
|
37
46
|
resolveUserEmail: (userId: string) => Promise<string | undefined>;
|
|
47
|
+
/** The MCP App views served; absent on a deployment that serves none. */
|
|
48
|
+
mcpApps?: {
|
|
49
|
+
manifest(): Promise<{
|
|
50
|
+
resources: readonly {
|
|
51
|
+
uri: string;
|
|
52
|
+
text: string;
|
|
53
|
+
}[];
|
|
54
|
+
}>;
|
|
55
|
+
};
|
|
38
56
|
}): express.Router;
|
|
39
57
|
//# sourceMappingURL=catalog-revision.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog-revision.d.ts","sourceRoot":"","sources":["../../src/core/catalog-revision.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,EAAE,EAAgB,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAErE,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACxF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AAC3F,OAAO,8CAA8C,CAAC;AAmCtD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,MAAM,EAAE,SAAS,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"catalog-revision.d.ts","sourceRoot":"","sources":["../../src/core/catalog-revision.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,EAAE,EAAgB,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAErE,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACxF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AAC3F,OAAO,8CAA8C,CAAC;AAmCtD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,MAAM,EAAE,SAAS,YAAY,EAAE;AAC/B;;;;GAIG;AACH,KAAK,GAAE,SAAS;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAO,GACnD,MAAM,CASR;AAED;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE;IAChD,WAAW,EAAE,IAAI,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,CAAC;IAC7D,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IAC1C,UAAU,EAAE,cAAc,CAAC;IAC3B,6EAA6E;IAC7E,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAClE,yEAAyE;IACzE,OAAO,CAAC,EAAE;QAAE,QAAQ,IAAI,OAAO,CAAC;YAAE,SAAS,EAAE,SAAS;gBAAE,GAAG,EAAE,MAAM,CAAC;gBAAC,IAAI,EAAE,MAAM,CAAA;aAAE,EAAE,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;CAC5F,GAAG,OAAO,CAAC,MAAM,CA4BjB"}
|
|
@@ -48,11 +48,19 @@ function skillFingerprint(s) {
|
|
|
48
48
|
* already, but a dedupe or an access filter could reshuffle what survives, and
|
|
49
49
|
* "the same set in another order" is not something a client owes a refresh for.
|
|
50
50
|
*/
|
|
51
|
-
export function catalogRevision(manuals, skills
|
|
51
|
+
export function catalogRevision(manuals, skills,
|
|
52
|
+
/**
|
|
53
|
+
* The MCP App views this deployment serves, by their bytes: a release that
|
|
54
|
+
* changes a view and nothing else must still move the revision, or a local
|
|
55
|
+
* server already running keeps serving the view it read at startup.
|
|
56
|
+
*/
|
|
57
|
+
views = []) {
|
|
52
58
|
const lines = [
|
|
53
59
|
...[...manuals].sort(),
|
|
54
|
-
'\u0001', // separates the
|
|
60
|
+
'\u0001', // separates the lists, so a line can never migrate between them
|
|
55
61
|
...skills.map(skillFingerprint).sort(),
|
|
62
|
+
'\u0001',
|
|
63
|
+
...views.map((v) => `${v.uri}\u0000${createHash('sha256').update(v.text).digest('hex')}`).sort(),
|
|
56
64
|
];
|
|
57
65
|
return createHash('sha256').update(lines.join('\n')).digest('hex').slice(0, 32);
|
|
58
66
|
}
|
|
@@ -78,8 +86,11 @@ export function createCatalogRevisionRoutes(deps) {
|
|
|
78
86
|
const [manuals, skills] = email
|
|
79
87
|
? await Promise.all([deps.toolManuals.catalogFingerprints(email), deps.skills.listSkills(email)])
|
|
80
88
|
: [[], []];
|
|
89
|
+
// A manifest that cannot be read counts as no views, which is also what
|
|
90
|
+
// the MCP endpoint serves in that state.
|
|
91
|
+
const views = deps.mcpApps ? ((await deps.mcpApps.manifest().catch(() => null))?.resources ?? []) : [];
|
|
81
92
|
res.json({
|
|
82
|
-
revision: catalogRevision(manuals, skills),
|
|
93
|
+
revision: catalogRevision(manuals, skills, views),
|
|
83
94
|
tools: manuals.length,
|
|
84
95
|
skills: skills.length,
|
|
85
96
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog-revision.js","sourceRoot":"","sources":["../../src/core/catalog-revision.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,OAA8C,MAAM,SAAS,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,OAAO,8CAA8C,CAAC,CAAC,8CAA8C;AAErG,MAAM,GAAG,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAEvC;;;;;;;;;;;;;;;;;;;GAmBG;AAEH;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,CAAe;IACvC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACzE,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,eAAe,CAC7B,OAA0B,EAC1B,MAA+B;
|
|
1
|
+
{"version":3,"file":"catalog-revision.js","sourceRoot":"","sources":["../../src/core/catalog-revision.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,11 @@ type ExpressApp = ReturnType<typeof express>;
|
|
|
7
7
|
* The context handed to {@link ServerExtensions.tools}: everything an overlay
|
|
8
8
|
* needs to register its own tool defs + endpoint routes on the unified tool
|
|
9
9
|
* surface, exactly like the core modules do.
|
|
10
|
+
*
|
|
11
|
+
* A tool that works on a branch declares it on its `toolDef` (`branch:
|
|
12
|
+
* 'required'` or, read-only tools only, `'defaults-to-default-branch'`), and
|
|
13
|
+
* `toolHandler` resolves the branch before the tool runs — see "The branch"
|
|
14
|
+
* in `modules/tool-helpers/index.ts`.
|
|
10
15
|
*/
|
|
11
16
|
export interface ToolSurfaceCtx {
|
|
12
17
|
registry: CoreServices['toolRegistry'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-core-server.d.ts","sourceRoot":"","sources":["../../src/core/create-core-server.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAG9B,OAAO,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"create-core-server.d.ts","sourceRoot":"","sources":["../../src/core/create-core-server.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAG9B,OAAO,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AA4CtD,OAAO,EAAwB,KAAK,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAmCvG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAO9D,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC;AAE7C;;;;;;;;;GASG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,YAAY,CAAC,cAAc,CAAC,CAAC;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,cAAc,CAAC;IACzB,WAAW,EAAE,YAAY,CAAC,oBAAoB,CAAC,CAAC;IAChD,kEAAkE;IAClE,eAAe,EAAE,eAAe,CAAC;IACjC,IAAI,EAAE,YAAY,CAAC;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;;;;;;OAYG;IACH,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC;;;;OAIG;IACH,MAAM,CAAC,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAClD,mFAAmF;IACnF,OAAO,CAAC,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAAC;IACpD;;;;OAIG;IACH,KAAK,CAAC,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI,CAAC;IAClC;;;;OAIG;IACH,SAAS,CAAC,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAAC;IACtD,2EAA2E;IAC3E,MAAM,CAAC,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAAC;CACpD;AAED,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,YAAY,EAClB,GAAG,GAAE,gBAAqB,EAC1B,IAAI,GAAE;IACJ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iFAAiF;IACjF,IAAI,CAAC,EAAE,OAAO,CAAC;CACX,GACL,OAAO,CAAC,UAAU,CAAC,CA6uBrB"}
|
|
@@ -4,6 +4,7 @@ import path from 'node:path';
|
|
|
4
4
|
import { createAuthRoutes } from '../modules/auth/auth.routes.js';
|
|
5
5
|
import { createWorkspaceRoutes } from '../modules/workspace/workspace.routes.js';
|
|
6
6
|
import { createAgentUploadRoutes, isAgentUploadRawBodyPath, } from '../modules/workspace/agent-upload.routes.js';
|
|
7
|
+
import { createAgentDownloadRoutes } from '../modules/workspace/agent-download.routes.js';
|
|
7
8
|
import { createGitInternalsRouteGuard } from '../modules/workspace/git-internals.middleware.js';
|
|
8
9
|
import { startCore } from './lifecycle.js';
|
|
9
10
|
import { createDiffRoutes } from '../modules/diff/diff.routes.js';
|
|
@@ -18,7 +19,8 @@ import { createManualRoutes } from '../modules/tool-registry/manual.routes.js';
|
|
|
18
19
|
import { createCatalogRevisionRoutes } from './catalog-revision.js';
|
|
19
20
|
import { createToolManualsAgentRoutes, createToolManualsBrowserRoutes, registerToolManualsTools, } from '../modules/tool-manuals/index.js';
|
|
20
21
|
import { registerWorkflowTools } from '../modules/workflow/agent-tools/workflow.tools.js';
|
|
21
|
-
import { registerChangeRequestReadTools } from '../modules/workflow/agent-tools/change-request-read.tools.js';
|
|
22
|
+
import { changeRequestScope, registerChangeRequestReadTools } from '../modules/workflow/agent-tools/change-request-read.tools.js';
|
|
23
|
+
import { createOnboardingRoutes } from '../modules/onboarding/onboarding.routes.js';
|
|
22
24
|
import { registerWorkspaceTools } from '../modules/workspace/workspace.tools.js';
|
|
23
25
|
import { registerAgentGuideTool } from '../modules/agent-guide/index.js';
|
|
24
26
|
import { RECOVERY_BOT_EMAIL } from '../modules/workflow/recovery-bot.js';
|
|
@@ -34,6 +36,7 @@ import { createUpdateCheckRoutes } from '../modules/update-check/update-check.ro
|
|
|
34
36
|
import { createAccountRoutes } from '../modules/auth/account.routes.js';
|
|
35
37
|
import { createConnectionKeysAdminRoutes } from '../modules/tool-auth/connection-keys-admin.routes.js';
|
|
36
38
|
import { createAuditRoutes } from '../modules/audit/audit.routes.js';
|
|
39
|
+
import { createAgentConnectionRoutes } from '../modules/audit/agent-connection.routes.js';
|
|
37
40
|
import { createAgentRestAuditMiddleware } from '../modules/audit/agent-rest-audit.middleware.js';
|
|
38
41
|
import { EXTERNAL_KB_MANUAL_NAME } from '../modules/tool-manuals/tool-manuals.contract.js';
|
|
39
42
|
import { createSetupRoutes, isComplete } from '../modules/settings/setup.routes.js';
|
|
@@ -49,6 +52,10 @@ import { publicConfig } from './public-config.js';
|
|
|
49
52
|
import { createReadiness } from './readiness.js';
|
|
50
53
|
import { createAgentInstructionsRoutes } from '../modules/agent-instructions/index.js';
|
|
51
54
|
import { createWriteAccessRoutes, createWriteGateMiddleware } from '../modules/write-access/write-access.js';
|
|
55
|
+
import { createEmbedRoutes, createEmbedLinkRoutes } from '../modules/embed/embed.routes.js';
|
|
56
|
+
import { registerEmbedTools } from '../modules/embed/embed.tools.js';
|
|
57
|
+
import { createMcpAppRoutes } from '../modules/embed/mcp-app.routes.js';
|
|
58
|
+
import { isSandboxReachableOrigin } from '../modules/embed/mcp-app.js';
|
|
52
59
|
export async function createCoreServer(core, ext = {}, opts = {}) {
|
|
53
60
|
const app = express();
|
|
54
61
|
// Honor forwarded client addresses ONLY when the deployment declares its
|
|
@@ -312,12 +319,33 @@ export async function createCoreServer(core, ext = {}, opts = {}) {
|
|
|
312
319
|
// every save surface (agent write tools, the app's PUT /file) and on
|
|
313
320
|
// `get_skill`. Warnings only; it never refuses a save.
|
|
314
321
|
const allowedToolsChecker = new AllowedToolsChecker(core.toolRegistry, core.toolManualService, core.kb);
|
|
315
|
-
|
|
322
|
+
// `delete_branch` sees change requests as `get_change_request` does.
|
|
323
|
+
registerWorkflowTools(core.toolRegistry, toolsRouter, ta, th, core.kb, changeRequestScope(core.accessControl, core.kb).maySee);
|
|
316
324
|
// The five read tools over change requests. Separate from the workflow tools
|
|
317
325
|
// because they are the only ones that gate their whole payload on the
|
|
318
326
|
// caller's read access, so they take the access service and nothing else.
|
|
319
327
|
registerChangeRequestReadTools(core.toolRegistry, toolsRouter, ta, th, core.accessControl, core.kb);
|
|
320
|
-
registerWorkspaceTools(core.toolRegistry, toolsRouter, ta, th, core.spillStore, core.docExtractService, core.accessControl, core.kb, agentAccessGate, core.routineWritePolicy, core.sessionSink, allowedToolsChecker, core.changeGate, core.agentUploadStore, core.agentGuide);
|
|
328
|
+
const workspaceTools = registerWorkspaceTools(core.toolRegistry, toolsRouter, ta, th, core.spillStore, core.docExtractService, core.accessControl, core.kb, agentAccessGate, core.routineWritePolicy, core.sessionSink, allowedToolsChecker, core.changeGate, core.agentUploadStore, core.agentGuide, core.agentDownloadStore, core.starterPackService, core.disk);
|
|
329
|
+
// `open_page` — the knowledge-base page shown inside a chat. Registered
|
|
330
|
+
// here, on the same router as the file tools, because it answers with
|
|
331
|
+
// `read_file`'s own read: the read hook, the access gate and the
|
|
332
|
+
// not-found refusal come from that registration rather than from a copy.
|
|
333
|
+
registerEmbedTools(core.toolRegistry, toolsRouter, ta, th, {
|
|
334
|
+
embedService: core.embedService,
|
|
335
|
+
kb: core.kb,
|
|
336
|
+
readForTool: workspaceTools.readForTool,
|
|
337
|
+
// A host's https sandbox cannot load from a plain-http deployment, so
|
|
338
|
+
// the tool answers the text and the app address and says so.
|
|
339
|
+
canBeReached: () => isSandboxReachableOrigin(core.config.publicFrontendUrl),
|
|
340
|
+
appUrlFor: (repoRelative, slug) => core.embedService.appUrlFor(repoRelative, slug),
|
|
341
|
+
// The read is `read_file`'s, so the notes a deployment registers for the
|
|
342
|
+
// gated tools reach this one as well.
|
|
343
|
+
notes: agentAccessGate.notes,
|
|
344
|
+
});
|
|
345
|
+
// The app manifest and the view bytes, for the LOCAL MCP server: it bridges
|
|
346
|
+
// a host to this deployment over HTTP and has no other way to learn which
|
|
347
|
+
// tools carry a view. Same router, same `manualAuth` as `all-tools`.
|
|
348
|
+
toolsRouter.use(createMcpAppRoutes(core.mcpAppService, core.manualAuthMiddleware));
|
|
321
349
|
// The guide on its own, beside the file tools that serve it by name.
|
|
322
350
|
registerAgentGuideTool(core.toolRegistry, toolsRouter, ta, th, core.agentGuideSections);
|
|
323
351
|
// The agent upload route, on the same router as the tool endpoints so it
|
|
@@ -327,6 +355,10 @@ export async function createCoreServer(core, ext = {}, opts = {}) {
|
|
|
327
355
|
// no workspace and writes into none; every access, platform-file and branch
|
|
328
356
|
// rule is applied later by `apply_file_upload`.
|
|
329
357
|
toolsRouter.use(createAgentUploadRoutes({ uploads: core.agentUploadStore }));
|
|
358
|
+
// Its outgoing twin, mounted the same way and for the same reason: the
|
|
359
|
+
// one-time link is the whole credential an agent's `curl` carries. Every
|
|
360
|
+
// file behind it was judged when `request_file_download` issued it.
|
|
361
|
+
toolsRouter.use(createAgentDownloadRoutes({ downloads: core.agentDownloadStore, identify: core.agentDownloadFetcher }));
|
|
330
362
|
registerSkillsTools(core.toolRegistry, toolsRouter, ta, th, core.skillService, allowedToolsChecker);
|
|
331
363
|
// Definitions only: the endpoints they describe are the app's own plugin
|
|
332
364
|
// creation routes, mounted below behind the key-or-session gate.
|
|
@@ -374,6 +406,9 @@ export async function createCoreServer(core, ext = {}, opts = {}) {
|
|
|
374
406
|
skills: core.skillService,
|
|
375
407
|
manualAuth: core.manualAuthMiddleware,
|
|
376
408
|
resolveUserEmail: async (userId) => (await core.authService.getUserById(userId))?.email,
|
|
409
|
+
// The views move the revision too: a release that changes a view and no
|
|
410
|
+
// manual would otherwise leave a running local server on the old one.
|
|
411
|
+
mcpApps: core.mcpAppService,
|
|
377
412
|
}));
|
|
378
413
|
// The only core route that returns secret VALUES: a local `.tool`'s declared
|
|
379
414
|
// variables, for the local MCP server that will execute it. It re-reads the
|
|
@@ -393,6 +428,11 @@ export async function createCoreServer(core, ext = {}, opts = {}) {
|
|
|
393
428
|
// Non-JWT overlay surfaces that sit between the tools router and the
|
|
394
429
|
// JWT-protected `/api` routes (LLM proxy, embed, upload — see the phase
|
|
395
430
|
// doc on ServerExtensions.postTools).
|
|
431
|
+
// The embed surface, ahead of every JWT mount and of the static
|
|
432
|
+
// catch-all: its data routes authenticate by the embed token ALONE (a
|
|
433
|
+
// session reaching them must be refused, not honoured), and the two SPA
|
|
434
|
+
// routes need their framing headers stamped before `index.html` is served.
|
|
435
|
+
app.use(createEmbedRoutes(core.embedService));
|
|
396
436
|
ext.postTools?.(app, core);
|
|
397
437
|
// The plugin creation doors — `POST /api/plugins`, `POST /api/plugins/personal`
|
|
398
438
|
// — take an agent's connection key as well as a session, because the
|
|
@@ -483,6 +523,12 @@ export async function createCoreServer(core, ext = {}, opts = {}) {
|
|
|
483
523
|
// The Audit log: a person's agents and keys with what they called (admins:
|
|
484
524
|
// everyone's), and the revoke of either — owner- or admin-gated inside.
|
|
485
525
|
app.use('/api', core.authMiddleware, createAuditRoutes(core.agentAuditService, core.externalApiKeyService, core.adminAccess));
|
|
526
|
+
// The onboarding's "is your agent connected yet?" — the caller's own
|
|
527
|
+
// agents only, read off the same connections and keys the Audit log lists.
|
|
528
|
+
app.use('/api', core.authMiddleware, createAgentConnectionRoutes(core.agentAuditService));
|
|
529
|
+
// "What does your team do?" — the starter-pack question a new knowledge
|
|
530
|
+
// base's admin is asked, and the pack it adds (admin-gated inside).
|
|
531
|
+
app.use('/api', core.authMiddleware, createOnboardingRoutes(core.starterPackService, async (req) => req.userId ? ((await core.authService.getUserById(req.userId)) ?? null) : null));
|
|
486
532
|
// First-run setup. Mounted with the other authed routes but touching NO
|
|
487
533
|
// workspace — it has to work on a deployment that has no knowledge base yet,
|
|
488
534
|
// which is the whole reason it exists. The startup runner rides along for
|
|
@@ -550,6 +596,11 @@ export async function createCoreServer(core, ext = {}, opts = {}) {
|
|
|
550
596
|
marketplaceUrl: marketplaceGitUrl.toString(),
|
|
551
597
|
}));
|
|
552
598
|
// JWT-protected overlay routes.
|
|
599
|
+
// Linking an outside account to the signed-in user, and managing those
|
|
600
|
+
// links. Under the JWT middleware, deliberately: the link acts AS the
|
|
601
|
+
// session, which is exactly why the page it is called from refuses every
|
|
602
|
+
// framing ancestor.
|
|
603
|
+
app.use('/api', core.authMiddleware, createEmbedLinkRoutes(core.embedService));
|
|
553
604
|
ext.authed?.(app, core);
|
|
554
605
|
// In production, serve the frontend static build
|
|
555
606
|
if (opts.staticDir) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-core-server.js","sourceRoot":"","sources":["../../src/core/create-core-server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"create-core-server.js","sourceRoot":"","sources":["../../src/core/create-core-server.ts"],"names":[],"mappings":"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"}
|