agor-live 0.23.1 → 0.23.2
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/dist/core/claude/index.cjs +51 -27
- package/dist/core/claude/index.js +51 -27
- package/dist/core/claude-cli/index.cjs +13 -0
- package/dist/core/claude-cli/index.js +13 -0
- package/dist/core/claude-cli/pricing.d.ts.map +1 -1
- package/dist/core/client/index.cjs +17 -0
- package/dist/core/client/index.js +16 -0
- package/dist/core/db/index.cjs +618 -421
- package/dist/core/db/index.js +550 -353
- package/dist/core/db/repositories/boards.d.ts +27 -0
- package/dist/core/db/repositories/boards.d.ts.map +1 -1
- package/dist/core/db/repositories/branches.d.ts +11 -1
- package/dist/core/db/repositories/branches.d.ts.map +1 -1
- package/dist/core/db/repositories/gateway-channels.d.ts +9 -0
- package/dist/core/db/repositories/gateway-channels.d.ts.map +1 -1
- package/dist/core/db/repositories/sessions.d.ts +7 -0
- package/dist/core/db/repositories/sessions.d.ts.map +1 -1
- package/dist/core/environment/render-snapshot.cjs +6 -2
- package/dist/core/environment/render-snapshot.d.ts +2 -0
- package/dist/core/environment/render-snapshot.d.ts.map +1 -1
- package/dist/core/environment/render-snapshot.js +6 -2
- package/dist/core/environment/variable-resolver.cjs +3 -1
- package/dist/core/environment/variable-resolver.js +3 -1
- package/dist/core/index.cjs +684 -486
- package/dist/core/index.js +684 -486
- package/dist/core/lib/feathers-validation.cjs +3 -0
- package/dist/core/lib/feathers-validation.d.ts +1 -0
- package/dist/core/lib/feathers-validation.d.ts.map +1 -1
- package/dist/core/lib/feathers-validation.js +3 -0
- package/dist/core/local-actions/index.cjs +123 -56
- package/dist/core/local-actions/index.js +121 -54
- package/dist/core/mcp/index.cjs +21 -3
- package/dist/core/mcp/index.d.ts +1 -1
- package/dist/core/mcp/index.d.ts.map +1 -1
- package/dist/core/mcp/index.js +18 -3
- package/dist/core/mcp/template-patterns.d.ts +15 -0
- package/dist/core/mcp/template-patterns.d.ts.map +1 -0
- package/dist/core/mcp/template-resolver.d.ts +13 -0
- package/dist/core/mcp/template-resolver.d.ts.map +1 -1
- package/dist/core/models/browser.cjs +6 -0
- package/dist/core/models/browser.js +6 -0
- package/dist/core/models/claude.d.ts.map +1 -1
- package/dist/core/models/index.cjs +6 -0
- package/dist/core/models/index.js +6 -0
- package/dist/core/seed/index.cjs +360 -216
- package/dist/core/seed/index.js +329 -185
- package/dist/core/templates/handlebars-helpers.cjs +3 -1
- package/dist/core/templates/handlebars-helpers.d.ts +5 -0
- package/dist/core/templates/handlebars-helpers.d.ts.map +1 -1
- package/dist/core/templates/handlebars-helpers.js +3 -1
- package/dist/core/tools/mcp/auth-secrets.cjs +3460 -3
- package/dist/core/tools/mcp/auth-secrets.d.ts.map +1 -1
- package/dist/core/tools/mcp/auth-secrets.js +3477 -3
- package/dist/core/tools/mcp/http-headers.cjs +17 -1
- package/dist/core/tools/mcp/http-headers.d.ts.map +1 -1
- package/dist/core/tools/mcp/http-headers.js +15 -1
- package/dist/core/tools/mcp/oauth-refresh.cjs +67 -43
- package/dist/core/tools/mcp/oauth-refresh.js +65 -41
- package/dist/core/types/board.d.ts +12 -0
- package/dist/core/types/board.d.ts.map +1 -1
- package/dist/core/types/gateway.d.ts +14 -0
- package/dist/core/types/gateway.d.ts.map +1 -1
- package/dist/core/types/index.cjs +17 -0
- package/dist/core/types/index.js +16 -0
- package/dist/core/unix/index.cjs +67 -0
- package/dist/core/unix/index.js +67 -0
- package/dist/daemon/auth/executor-runtime-scope.d.ts.map +1 -1
- package/dist/daemon/auth/executor-runtime-scope.js +19 -5
- package/dist/daemon/auth/executor-session-token.d.ts +15 -0
- package/dist/daemon/auth/executor-session-token.d.ts.map +1 -0
- package/dist/daemon/auth/executor-session-token.js +17 -0
- package/dist/daemon/auth/issue-browser-tokens-hook.d.ts +24 -0
- package/dist/daemon/auth/issue-browser-tokens-hook.d.ts.map +1 -0
- package/dist/daemon/auth/issue-browser-tokens-hook.js +95 -0
- package/dist/daemon/auth/service-jwt-strategy.d.ts.map +1 -1
- package/dist/daemon/auth/service-jwt-strategy.js +14 -2
- package/dist/daemon/declarations.d.ts +1 -0
- package/dist/daemon/declarations.d.ts.map +1 -1
- package/dist/daemon/index.js +1365 -418
- package/dist/daemon/main.js +1365 -418
- package/dist/daemon/mcp/server.js +294 -31
- package/dist/daemon/mcp/tools/analytics.js +73 -24
- package/dist/daemon/mcp/tools/artifacts.js +73 -24
- package/dist/daemon/mcp/tools/boards.js +73 -24
- package/dist/daemon/mcp/tools/branches.js +73 -24
- package/dist/daemon/mcp/tools/card-types.js +73 -24
- package/dist/daemon/mcp/tools/cards.js +73 -24
- package/dist/daemon/mcp/tools/environment.js +73 -24
- package/dist/daemon/mcp/tools/gateway-channels.d.ts.map +1 -1
- package/dist/daemon/mcp/tools/gateway-channels.js +190 -38
- package/dist/daemon/mcp/tools/knowledge.js +73 -24
- package/dist/daemon/mcp/tools/mcp-servers.js +73 -24
- package/dist/daemon/mcp/tools/messages.js +73 -24
- package/dist/daemon/mcp/tools/proxies.js +73 -24
- package/dist/daemon/mcp/tools/repos.js +73 -24
- package/dist/daemon/mcp/tools/schedules.js +73 -24
- package/dist/daemon/mcp/tools/search.js +73 -24
- package/dist/daemon/mcp/tools/sessions.js +73 -24
- package/dist/daemon/mcp/tools/tasks.js +73 -24
- package/dist/daemon/mcp/tools/users.js +76 -27
- package/dist/daemon/mcp/tools/widgets.d.ts.map +1 -1
- package/dist/daemon/mcp/tools/widgets.js +257 -99
- package/dist/daemon/oauth-auth-helpers.d.ts +35 -0
- package/dist/daemon/oauth-auth-helpers.d.ts.map +1 -0
- package/dist/daemon/oauth-auth-helpers.js +14 -0
- package/dist/daemon/register-hooks.d.ts +1 -0
- package/dist/daemon/register-hooks.d.ts.map +1 -1
- package/dist/daemon/register-hooks.js +304 -53
- package/dist/daemon/register-routes.d.ts.map +1 -1
- package/dist/daemon/register-routes.js +738 -288
- package/dist/daemon/register-services.d.ts.map +1 -1
- package/dist/daemon/register-services.js +386 -155
- package/dist/daemon/services/boards.d.ts +5 -0
- package/dist/daemon/services/boards.d.ts.map +1 -1
- package/dist/daemon/services/boards.js +7 -0
- package/dist/daemon/services/branches.d.ts.map +1 -1
- package/dist/daemon/services/branches.js +31 -2
- package/dist/daemon/services/claude-models.d.ts.map +1 -1
- package/dist/daemon/services/claude-models.js +4 -1
- package/dist/daemon/services/gateway.d.ts +15 -0
- package/dist/daemon/services/gateway.d.ts.map +1 -1
- package/dist/daemon/services/gateway.js +34 -0
- package/dist/daemon/services/health-monitor.d.ts.map +1 -1
- package/dist/daemon/services/health-monitor.js +10 -7
- package/dist/daemon/services/session-streams.d.ts +29 -0
- package/dist/daemon/services/session-streams.d.ts.map +1 -0
- package/dist/daemon/services/session-streams.js +84 -0
- package/dist/daemon/services/session-token-service.d.ts.map +1 -1
- package/dist/daemon/services/session-token-service.js +8 -4
- package/dist/daemon/setup/index.js +43 -11
- package/dist/daemon/setup/socketio.d.ts.map +1 -1
- package/dist/daemon/setup/socketio.js +43 -11
- package/dist/daemon/startup.d.ts.map +1 -1
- package/dist/daemon/startup.js +37 -16
- package/dist/daemon/utils/authorization.js +19 -5
- package/dist/daemon/utils/emit-service-event.d.ts +56 -0
- package/dist/daemon/utils/emit-service-event.d.ts.map +1 -0
- package/dist/daemon/utils/emit-service-event.js +23 -0
- package/dist/daemon/utils/mcp-header-secrets.d.ts +3 -5
- package/dist/daemon/utils/mcp-header-secrets.d.ts.map +1 -1
- package/dist/daemon/utils/mcp-header-secrets.js +31 -2
- package/dist/daemon/utils/realtime-access-cache.d.ts +9 -0
- package/dist/daemon/utils/realtime-access-cache.d.ts.map +1 -1
- package/dist/daemon/utils/realtime-access-cache.js +24 -0
- package/dist/daemon/utils/realtime-publish.d.ts +24 -0
- package/dist/daemon/utils/realtime-publish.d.ts.map +1 -1
- package/dist/daemon/utils/realtime-publish.js +120 -2
- package/dist/daemon/utils/session-queue-tenant-scope.d.ts +24 -0
- package/dist/daemon/utils/session-queue-tenant-scope.d.ts.map +1 -0
- package/dist/daemon/utils/session-queue-tenant-scope.js +133 -0
- package/dist/daemon/widgets/gateway-token/index.d.ts +114 -0
- package/dist/daemon/widgets/gateway-token/index.d.ts.map +1 -0
- package/dist/daemon/widgets/gateway-token/index.js +14711 -0
- package/dist/daemon/widgets/index.d.ts.map +1 -1
- package/dist/daemon/widgets/index.js +190 -16
- package/dist/daemon/widgets/registry.d.ts +7 -0
- package/dist/daemon/widgets/registry.d.ts.map +1 -1
- package/dist/daemon/widgets/submissions.js +12 -9
- package/dist/executor/commands/git.d.ts.map +1 -1
- package/dist/executor/commands/git.js +2 -0
- package/dist/executor/db/feathers-repositories.d.ts +19 -1
- package/dist/executor/db/feathers-repositories.d.ts.map +1 -1
- package/dist/executor/db/feathers-repositories.js +31 -1
- package/dist/executor/handlers/sdk/claude.d.ts.map +1 -1
- package/dist/executor/handlers/sdk/claude.js +1 -1
- package/dist/executor/handlers/sdk/codex.d.ts.map +1 -1
- package/dist/executor/handlers/sdk/codex.js +1 -1
- package/dist/executor/handlers/sdk/copilot.d.ts.map +1 -1
- package/dist/executor/handlers/sdk/copilot.js +1 -1
- package/dist/executor/handlers/sdk/cursor.d.ts.map +1 -1
- package/dist/executor/handlers/sdk/cursor.js +1 -0
- package/dist/executor/handlers/sdk/gemini.d.ts.map +1 -1
- package/dist/executor/handlers/sdk/gemini.js +1 -1
- package/dist/executor/handlers/sdk/opencode.d.ts.map +1 -1
- package/dist/executor/handlers/sdk/opencode.js +1 -1
- package/dist/executor/payload-types.d.ts +5 -5
- package/dist/executor/sdk-handlers/base/mcp-scoping.d.ts +8 -1
- package/dist/executor/sdk-handlers/base/mcp-scoping.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/base/mcp-scoping.js +58 -6
- package/dist/executor/sdk-handlers/claude/claude-tool.d.ts +2 -2
- package/dist/executor/sdk-handlers/claude/claude-tool.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/claude/claude-tool.js +2 -2
- package/dist/executor/sdk-handlers/claude/prompt-service.d.ts +13 -3
- package/dist/executor/sdk-handlers/claude/prompt-service.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/claude/prompt-service.js +16 -3
- package/dist/executor/sdk-handlers/claude/query-builder.d.ts +2 -1
- package/dist/executor/sdk-handlers/claude/query-builder.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/claude/query-builder.js +2 -1
- package/dist/executor/sdk-handlers/codex/codex-tool.d.ts +2 -2
- package/dist/executor/sdk-handlers/codex/codex-tool.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/codex/codex-tool.js +2 -2
- package/dist/executor/sdk-handlers/codex/prompt-service.d.ts +3 -2
- package/dist/executor/sdk-handlers/codex/prompt-service.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/codex/prompt-service.js +70 -6
- package/dist/executor/sdk-handlers/copilot/copilot-tool.d.ts +2 -2
- package/dist/executor/sdk-handlers/copilot/copilot-tool.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/copilot/copilot-tool.js +2 -2
- package/dist/executor/sdk-handlers/copilot/prompt-service.d.ts +3 -2
- package/dist/executor/sdk-handlers/copilot/prompt-service.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/copilot/prompt-service.js +4 -1
- package/dist/executor/sdk-handlers/gemini/gemini-tool.d.ts +2 -2
- package/dist/executor/sdk-handlers/gemini/gemini-tool.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/gemini/gemini-tool.js +2 -2
- package/dist/executor/sdk-handlers/gemini/prompt-service.d.ts +3 -2
- package/dist/executor/sdk-handlers/gemini/prompt-service.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/gemini/prompt-service.js +4 -1
- package/dist/executor/sdk-handlers/opencode/opencode-tool.d.ts +3 -2
- package/dist/executor/sdk-handlers/opencode/opencode-tool.d.ts.map +1 -1
- package/dist/executor/sdk-handlers/opencode/opencode-tool.js +4 -1
- package/dist/executor/services/feathers-client.d.ts.map +1 -1
- package/dist/executor/services/feathers-client.js +119 -20
- package/dist/ui/assets/AgorEmojiPickerInner-leeNywMc.js +1 -0
- package/dist/ui/assets/App-Dpl4Cc0U.js +4 -0
- package/dist/ui/assets/App-Dpl4Cc0U.js.gz +0 -0
- package/dist/ui/assets/AppNode-wN3UZlFK.js +1 -0
- package/dist/ui/assets/AppNode-wN3UZlFK.js.gz +0 -0
- package/dist/ui/assets/{ArtifactConsentModal-oMMzRn8L.js → ArtifactConsentModal-DjzXcP_L.js} +1 -1
- package/dist/ui/assets/ArtifactConsentModal-DjzXcP_L.js.gz +0 -0
- package/dist/ui/assets/ArtifactFullscreenPage-B3b_EZ0F.js +9 -0
- package/dist/ui/assets/ArtifactFullscreenPage-B3b_EZ0F.js.gz +0 -0
- package/dist/ui/assets/ArtifactNode-DISy2T-6.js +9 -0
- package/dist/ui/assets/ArtifactNode-DISy2T-6.js.gz +0 -0
- package/dist/ui/assets/AutocompleteTextarea-DUpsoEGr.js +19 -0
- package/dist/ui/assets/AutocompleteTextarea-DUpsoEGr.js.gz +0 -0
- package/dist/ui/assets/BoardObjectNodes-BakeGpIX.js +34 -0
- package/dist/ui/assets/BoardObjectNodes-BakeGpIX.js.gz +0 -0
- package/dist/ui/assets/{CodeEditor.inner-Cuj6RuLL.js → CodeEditor.inner-HmSdTLW5.js} +1 -1
- package/dist/ui/assets/CodeEditor.inner-HmSdTLW5.js.gz +0 -0
- package/dist/ui/assets/ConversationView-mWaA-B1f.js +1 -0
- package/dist/ui/assets/ConversationView-mWaA-B1f.js.gz +0 -0
- package/dist/ui/assets/{EmbeddedTerminal-Lx5I9EOJ.js → EmbeddedTerminal-NNoyPA81.js} +1 -1
- package/dist/ui/assets/EmbeddedTerminal-NNoyPA81.js.gz +0 -0
- package/dist/ui/assets/KnowledgePage-CkxVnRvz.js +24 -0
- package/dist/ui/assets/KnowledgePage-CkxVnRvz.js.gz +0 -0
- package/dist/ui/assets/{MarketingScreenshotPage-CmDPBHOl.js → MarketingScreenshotPage-B86Gs8jx.js} +2 -2
- package/dist/ui/assets/MarketingScreenshotPage-B86Gs8jx.js.gz +0 -0
- package/dist/ui/assets/MobileApp-BPs-SXvz.js +1 -0
- package/dist/ui/assets/MobileApp-BPs-SXvz.js.gz +0 -0
- package/dist/ui/assets/SessionCanvas-xVfDoEtz.js +13 -0
- package/dist/ui/assets/SessionCanvas-xVfDoEtz.js.gz +0 -0
- package/dist/ui/assets/{StreamdownDemoPage-okKKR2QH.js → StreamdownDemoPage-CvWLzVsv.js} +2 -2
- package/dist/ui/assets/StreamdownDemoPage-CvWLzVsv.js.gz +0 -0
- package/dist/ui/assets/{TerminalModal-D9jMGZXv.js → TerminalModal-ExOgsuOP.js} +2 -2
- package/dist/ui/assets/TerminalModal-ExOgsuOP.js.gz +0 -0
- package/dist/ui/assets/ThemeSwitcher-Cgyp5ruu.js +1 -0
- package/dist/ui/assets/ThemeSwitcher-Cgyp5ruu.js.gz +0 -0
- package/dist/ui/assets/{ThemedSyntaxHighlighter.inner-C1FdIHn0.js → ThemedSyntaxHighlighter.inner-rpCN9S6K.js} +1 -1
- package/dist/ui/assets/{antd-DT5ackd0.js → antd-BCqimh1J.js} +5 -5
- package/dist/ui/assets/{antd-DT5ackd0.js.gz → antd-BCqimh1J.js.gz} +0 -0
- package/dist/ui/assets/architecture-U656AL7Q-BxSQIjrE.js +1 -0
- package/dist/ui/assets/{architectureDiagram-VXUJARFQ-DwTJGGoj.js → architectureDiagram-VXUJARFQ-pDpGHSqT.js} +1 -1
- package/dist/ui/assets/architectureDiagram-VXUJARFQ-pDpGHSqT.js.gz +0 -0
- package/dist/ui/assets/{blockDiagram-VD42YOAC-Dh1_TVW2.js → blockDiagram-VD42YOAC-uP8JTJpK.js} +1 -1
- package/dist/ui/assets/blockDiagram-VD42YOAC-uP8JTJpK.js.gz +0 -0
- package/dist/ui/assets/{c4Diagram-YG6GDRKO-B1e96AcB.js → c4Diagram-YG6GDRKO-qQe72Mm7.js} +1 -1
- package/dist/ui/assets/c4Diagram-YG6GDRKO-qQe72Mm7.js.gz +0 -0
- package/dist/ui/assets/channel-CoUBs6Zn.js +1 -0
- package/dist/ui/assets/{chunk-4BX2VUAB-BODpCjJx.js → chunk-4BX2VUAB-sz-YE8Nt.js} +1 -1
- package/dist/ui/assets/chunk-4ZMWKKQ3-3oKtfWXp.js +3 -0
- package/dist/ui/assets/chunk-4ZMWKKQ3-3oKtfWXp.js.gz +0 -0
- package/dist/ui/assets/chunk-55IACEB6-BS04dgKF.js +1 -0
- package/dist/ui/assets/{chunk-ABZYJK2D-DCTXWSzV.js → chunk-ABZYJK2D-t3Gkphds.js} +3 -3
- package/dist/ui/assets/chunk-ABZYJK2D-t3Gkphds.js.gz +0 -0
- package/dist/ui/assets/{chunk-AGHRB4JF-CbNphBjE.js → chunk-AGHRB4JF-D_QmWxbY.js} +1 -1
- package/dist/ui/assets/chunk-AGHRB4JF-D_QmWxbY.js.gz +0 -0
- package/dist/ui/assets/{chunk-ATLVNIR6-rWg3qxof.js → chunk-ATLVNIR6-Bmg7-Ufz.js} +1 -1
- package/dist/ui/assets/chunk-ATLVNIR6-Bmg7-Ufz.js.gz +0 -0
- package/dist/ui/assets/{chunk-B4BG7PRW-CgtLCbpE.js → chunk-B4BG7PRW-dnSEE1u-.js} +1 -1
- package/dist/ui/assets/chunk-B4BG7PRW-dnSEE1u-.js.gz +0 -0
- package/dist/ui/assets/{chunk-CVBHYZKI-DTL6Zgr0.js → chunk-CVBHYZKI-BStaYnF0.js} +1 -1
- package/dist/ui/assets/{chunk-DI55MBZ5-Dwvx2Kva.js → chunk-DI55MBZ5-28dvx6o3.js} +1 -1
- package/dist/ui/assets/chunk-DI55MBZ5-28dvx6o3.js.gz +0 -0
- package/dist/ui/assets/chunk-EXTU4WIE-X-FURkEh.js +1 -0
- package/dist/ui/assets/{chunk-FMBD7UC4-BogA_9CV.js → chunk-FMBD7UC4-C_63gC9S.js} +1 -1
- package/dist/ui/assets/{chunk-HN2XXSSU-2blQO3Gb.js → chunk-HN2XXSSU-UFD374KI.js} +1 -1
- package/dist/ui/assets/chunk-HN2XXSSU-UFD374KI.js.gz +0 -0
- package/dist/ui/assets/{chunk-JA3XYJ7Z-Cr1rmOui.js → chunk-JA3XYJ7Z-B60hLNeR.js} +1 -1
- package/dist/ui/assets/chunk-JA3XYJ7Z-B60hLNeR.js.gz +0 -0
- package/dist/ui/assets/{chunk-JZLCHNYA-BsgZ79Fa.js → chunk-JZLCHNYA-ButC6pwN.js} +1 -1
- package/dist/ui/assets/chunk-JZLCHNYA-ButC6pwN.js.gz +0 -0
- package/dist/ui/assets/{chunk-MI3HLSF2-dwYeUy5S.js → chunk-MI3HLSF2-BivYzoSV.js} +1 -1
- package/dist/ui/assets/chunk-MI3HLSF2-BivYzoSV.js.gz +0 -0
- package/dist/ui/assets/chunk-N4CR4FBY-mVWzo5wJ.js +2 -0
- package/dist/ui/assets/chunk-N4CR4FBY-mVWzo5wJ.js.gz +0 -0
- package/dist/ui/assets/{chunk-QN33PNHL-DxdIDCAa.js → chunk-QN33PNHL-tXtHZpaG.js} +1 -1
- package/dist/ui/assets/{chunk-QXUST7PY-BCK2V0i-.js → chunk-QXUST7PY-DATib_Vv.js} +1 -1
- package/dist/ui/assets/chunk-QXUST7PY-DATib_Vv.js.gz +0 -0
- package/dist/ui/assets/chunk-QZHKN3VN-y6l249e5.js +1 -0
- package/dist/ui/assets/{chunk-S3R3BYOJ-GP3zIxrB.js → chunk-S3R3BYOJ-BEtfmflI.js} +1 -1
- package/dist/ui/assets/chunk-S3R3BYOJ-BEtfmflI.js.gz +0 -0
- package/dist/ui/assets/{chunk-TZMSLE5B-dX5RaM6g.js → chunk-TZMSLE5B-BY1ZtogK.js} +1 -1
- package/dist/ui/assets/chunk-TZMSLE5B-BY1ZtogK.js.gz +0 -0
- package/dist/ui/assets/classDiagram-2ON5EDUG-BYvq-uPY.js +1 -0
- package/dist/ui/assets/classDiagram-v2-WZHVMYZB-BYvq-uPY.js +1 -0
- package/dist/ui/assets/constants-CYzQKfD1.js +1 -0
- package/dist/ui/assets/{cose-bilkent-S5V4N54A-Dx0BJVDl.js → cose-bilkent-S5V4N54A-DPvYrqGG.js} +1 -1
- package/dist/ui/assets/cose-bilkent-S5V4N54A-DPvYrqGG.js.gz +0 -0
- package/dist/ui/assets/{dagre-6UL2VRFP-DiQSUxqN.js → dagre-6UL2VRFP-D800J6qb.js} +1 -1
- package/dist/ui/assets/dagre-6UL2VRFP-D800J6qb.js.gz +0 -0
- package/dist/ui/assets/{dagre-Bekd9Vdj.js → dagre-TNc4wezg.js} +1 -1
- package/dist/ui/assets/dagre-TNc4wezg.js.gz +0 -0
- package/dist/ui/assets/{diagram-PSM6KHXK-DtJnDQjc.js → diagram-PSM6KHXK-CGdP9F-X.js} +1 -1
- package/dist/ui/assets/diagram-PSM6KHXK-CGdP9F-X.js.gz +0 -0
- package/dist/ui/assets/{diagram-QEK2KX5R-CobkCRdj.js → diagram-QEK2KX5R-BD5lOCe5.js} +1 -1
- package/dist/ui/assets/diagram-QEK2KX5R-BD5lOCe5.js.gz +0 -0
- package/dist/ui/assets/{diagram-S2PKOQOG-DHEZYivc.js → diagram-S2PKOQOG-cp3l22vN.js} +1 -1
- package/dist/ui/assets/diagram-S2PKOQOG-cp3l22vN.js.gz +0 -0
- package/dist/ui/assets/editor-Cr0W5BQI.js +39 -0
- package/dist/ui/assets/editor-Cr0W5BQI.js.gz +0 -0
- package/dist/ui/assets/{emoji-B0hLmSLZ.js → emoji-Bv3m24sO.js} +1 -1
- package/dist/ui/assets/emoji-Bv3m24sO.js.gz +0 -0
- package/dist/ui/assets/{erDiagram-Q2GNP2WA-BVNeTZPQ.js → erDiagram-Q2GNP2WA-CQSXRgqr.js} +1 -1
- package/dist/ui/assets/erDiagram-Q2GNP2WA-CQSXRgqr.js.gz +0 -0
- package/dist/ui/assets/{flowDiagram-NV44I4VS-C73VFdyk.js → flowDiagram-NV44I4VS-CKcKpkph.js} +1 -1
- package/dist/ui/assets/flowDiagram-NV44I4VS-CKcKpkph.js.gz +0 -0
- package/dist/ui/assets/{ganttDiagram-LVOFAZNH-B_RosuD1.js → ganttDiagram-LVOFAZNH-DlAHzXO5.js} +1 -1
- package/dist/ui/assets/ganttDiagram-LVOFAZNH-DlAHzXO5.js.gz +0 -0
- package/dist/ui/assets/{gitGraph-F6HP7TQM-DMFIqn4h.js → gitGraph-F6HP7TQM-DeuXy4B1.js} +1 -1
- package/dist/ui/assets/{gitGraphDiagram-NY62KEGX-hxbgwNA1.js → gitGraphDiagram-NY62KEGX-aB-AI4Vq.js} +1 -1
- package/dist/ui/assets/gitGraphDiagram-NY62KEGX-aB-AI4Vq.js.gz +0 -0
- package/dist/ui/assets/index-B-qHc0o5.js +63 -0
- package/dist/ui/assets/index-B-qHc0o5.js.gz +0 -0
- package/dist/ui/assets/{info-NVLQJR56-DZ3K-w48.js → info-NVLQJR56-B9PG7xsc.js} +1 -1
- package/dist/ui/assets/{infoDiagram-ER5ION4S-CxnBJQu6.js → infoDiagram-ER5ION4S-C5Wpoqim.js} +1 -1
- package/dist/ui/assets/{journeyDiagram-XKPGCS4Q-CHYNj-f8.js → journeyDiagram-XKPGCS4Q-CHLziqfS.js} +1 -1
- package/dist/ui/assets/journeyDiagram-XKPGCS4Q-CHLziqfS.js.gz +0 -0
- package/dist/ui/assets/{kanban-definition-3W4ZIXB7-DQPCCsj2.js → kanban-definition-3W4ZIXB7-Dq7GzQE_.js} +1 -1
- package/dist/ui/assets/kanban-definition-3W4ZIXB7-Dq7GzQE_.js.gz +0 -0
- package/dist/ui/assets/{line-DBRjKmfa.js → line-DHKNg83I.js} +1 -1
- package/dist/ui/assets/{linear-DFao5Wyp.js → linear-BvUfn0I8.js} +1 -1
- package/dist/ui/assets/linear-BvUfn0I8.js.gz +0 -0
- package/dist/ui/assets/{mermaid-parser.core-DYCfacHj.js → mermaid-parser.core-C6d9tKoo.js} +2 -2
- package/dist/ui/assets/mermaid-parser.core-C6d9tKoo.js.gz +0 -0
- package/dist/ui/assets/{mermaid.core-C6xGFSdE.js → mermaid.core-CxE5KezR.js} +3 -3
- package/dist/ui/assets/mermaid.core-CxE5KezR.js.gz +0 -0
- package/dist/ui/assets/{mindmap-definition-VGOIOE7T-L3Pw-YM7.js → mindmap-definition-VGOIOE7T-DmPoQ48w.js} +1 -1
- package/dist/ui/assets/mindmap-definition-VGOIOE7T-DmPoQ48w.js.gz +0 -0
- package/dist/ui/assets/{packet-BFZMPI3H-CpL6iNoa.js → packet-BFZMPI3H-JZEkVZxU.js} +1 -1
- package/dist/ui/assets/{particles-CT8hcJOA.js → particles-CxMmUw86.js} +1 -1
- package/dist/ui/assets/particles-CxMmUw86.js.gz +0 -0
- package/dist/ui/assets/{pie-7BOR55EZ-hTqChbTo.js → pie-7BOR55EZ-_1II5pYQ.js} +1 -1
- package/dist/ui/assets/{pieDiagram-ADFJNKIX-Bf4Nou75.js → pieDiagram-ADFJNKIX-DrNkH33i.js} +1 -1
- package/dist/ui/assets/pieDiagram-ADFJNKIX-DrNkH33i.js.gz +0 -0
- package/dist/ui/assets/{quadrantDiagram-AYHSOK5B-DpjUTLB1.js → quadrantDiagram-AYHSOK5B-DOpC-HEF.js} +1 -1
- package/dist/ui/assets/quadrantDiagram-AYHSOK5B-DOpC-HEF.js.gz +0 -0
- package/dist/ui/assets/{radar-NHE76QYJ-myy7OENC.js → radar-NHE76QYJ-DDmqhzEZ.js} +1 -1
- package/dist/ui/assets/{reactflow-Cubtnk8i.js → reactflow-D98uPOMq.js} +1 -1
- package/dist/ui/assets/reactflow-D98uPOMq.js.gz +0 -0
- package/dist/ui/assets/{requirementDiagram-UZGBJVZJ-Bfrfh-0-.js → requirementDiagram-UZGBJVZJ-Bzx0iEPP.js} +1 -1
- package/dist/ui/assets/requirementDiagram-UZGBJVZJ-Bzx0iEPP.js.gz +0 -0
- package/dist/ui/assets/{sandpack-C58bwfIS.js → sandpack-059Z4UWP.js} +1 -1
- package/dist/ui/assets/sandpack-059Z4UWP.js.gz +0 -0
- package/dist/ui/assets/sandpackDefaults-CPMNDsw7.js +1 -0
- package/dist/ui/assets/sandpackDefaults-CPMNDsw7.js.gz +0 -0
- package/dist/ui/assets/{sankeyDiagram-TZEHDZUN-ClZAZ6va.js → sankeyDiagram-TZEHDZUN-Do9pvfDv.js} +1 -1
- package/dist/ui/assets/sankeyDiagram-TZEHDZUN-Do9pvfDv.js.gz +0 -0
- package/dist/ui/assets/{sequenceDiagram-WL72ISMW-CNgly63p.js → sequenceDiagram-WL72ISMW-CN8neUTA.js} +1 -1
- package/dist/ui/assets/sequenceDiagram-WL72ISMW-CN8neUTA.js.gz +0 -0
- package/dist/ui/assets/{src-DAeyG22O.js → src-DEbsv3pp.js} +2 -2
- package/dist/ui/assets/src-DEbsv3pp.js.gz +0 -0
- package/dist/ui/assets/{stateDiagram-FKZM4ZOC-BrEAoDpE.js → stateDiagram-FKZM4ZOC-BluWJi8n.js} +1 -1
- package/dist/ui/assets/stateDiagram-FKZM4ZOC-BluWJi8n.js.gz +0 -0
- package/dist/ui/assets/stateDiagram-v2-4FDKWEC3-DeyqBMDR.js +1 -0
- package/dist/ui/assets/{streamdown-BdAVfkeF.js → streamdown-BT1twtFc.js} +5 -5
- package/dist/ui/assets/streamdown-BT1twtFc.js.gz +0 -0
- package/dist/ui/assets/{syntax-BOfTnQiy.js → syntax-CBu6nLfm.js} +1 -1
- package/dist/ui/assets/syntax-CBu6nLfm.js.gz +0 -0
- package/dist/ui/assets/{timeline-definition-IT6M3QCI-CaRH3k4l.js → timeline-definition-IT6M3QCI-WdUNkiRj.js} +1 -1
- package/dist/ui/assets/timeline-definition-IT6M3QCI-WdUNkiRj.js.gz +0 -0
- package/dist/ui/assets/{treemap-KMMF4GRG-CUaLOV_B.js → treemap-KMMF4GRG-CoriU4Jl.js} +1 -1
- package/dist/ui/assets/{useUserLocalStorage-C8sgXgXR.js → useUserLocalStorage-GidNiOPC.js} +1 -1
- package/dist/ui/assets/useUserLocalStorage-GidNiOPC.js.gz +0 -0
- package/dist/ui/assets/{xychartDiagram-PRI3JC2R-BlhkI9T_.js → xychartDiagram-PRI3JC2R-CgBAKNt2.js} +1 -1
- package/dist/ui/assets/xychartDiagram-PRI3JC2R-CgBAKNt2.js.gz +0 -0
- package/dist/ui/index.html +9 -8
- package/dist/ui/index.html.gz +0 -0
- package/package.json +2 -2
- package/dist/ui/assets/AgorEmojiPickerInner-DQjr8M3_.js +0 -1
- package/dist/ui/assets/App-hJtcOxHv.js +0 -5
- package/dist/ui/assets/App-hJtcOxHv.js.gz +0 -0
- package/dist/ui/assets/AppNode-BhuMpn8O.js +0 -1
- package/dist/ui/assets/AppNode-BhuMpn8O.js.gz +0 -0
- package/dist/ui/assets/ArtifactConsentModal-oMMzRn8L.js.gz +0 -0
- package/dist/ui/assets/ArtifactFullscreenPage-B3wT8t8f.js +0 -9
- package/dist/ui/assets/ArtifactFullscreenPage-B3wT8t8f.js.gz +0 -0
- package/dist/ui/assets/ArtifactNode-BzQcrwFS.js +0 -9
- package/dist/ui/assets/ArtifactNode-BzQcrwFS.js.gz +0 -0
- package/dist/ui/assets/AutocompleteTextarea-Dau-V_30.js +0 -19
- package/dist/ui/assets/AutocompleteTextarea-Dau-V_30.js.gz +0 -0
- package/dist/ui/assets/BoardObjectNodes-DdKWv_ZT.js +0 -34
- package/dist/ui/assets/BoardObjectNodes-DdKWv_ZT.js.gz +0 -0
- package/dist/ui/assets/CodeEditor.inner-Cuj6RuLL.js.gz +0 -0
- package/dist/ui/assets/ConversationView-9-3ma1u-.js +0 -1
- package/dist/ui/assets/ConversationView-9-3ma1u-.js.gz +0 -0
- package/dist/ui/assets/EmbeddedTerminal-Lx5I9EOJ.js.gz +0 -0
- package/dist/ui/assets/KnowledgePage-Dz8YAMYC.js +0 -24
- package/dist/ui/assets/KnowledgePage-Dz8YAMYC.js.gz +0 -0
- package/dist/ui/assets/MarketingScreenshotPage-CmDPBHOl.js.gz +0 -0
- package/dist/ui/assets/MobileApp-BpgSG_gz.js +0 -1
- package/dist/ui/assets/MobileApp-BpgSG_gz.js.gz +0 -0
- package/dist/ui/assets/SessionCanvas-B6_mtlxK.js +0 -13
- package/dist/ui/assets/SessionCanvas-B6_mtlxK.js.gz +0 -0
- package/dist/ui/assets/StreamdownDemoPage-okKKR2QH.js.gz +0 -0
- package/dist/ui/assets/TerminalModal-D9jMGZXv.js.gz +0 -0
- package/dist/ui/assets/ThemeSwitcher-D9HgT37l.js +0 -1
- package/dist/ui/assets/ThemeSwitcher-D9HgT37l.js.gz +0 -0
- package/dist/ui/assets/architecture-U656AL7Q-DMnxkQRZ.js +0 -1
- package/dist/ui/assets/architectureDiagram-VXUJARFQ-DwTJGGoj.js.gz +0 -0
- package/dist/ui/assets/blockDiagram-VD42YOAC-Dh1_TVW2.js.gz +0 -0
- package/dist/ui/assets/c4Diagram-YG6GDRKO-B1e96AcB.js.gz +0 -0
- package/dist/ui/assets/channel-Jv4dT4S5.js +0 -1
- package/dist/ui/assets/chunk-55IACEB6-lJXvUquf.js +0 -1
- package/dist/ui/assets/chunk-ABZYJK2D-DCTXWSzV.js.gz +0 -0
- package/dist/ui/assets/chunk-AGHRB4JF-CbNphBjE.js.gz +0 -0
- package/dist/ui/assets/chunk-ATLVNIR6-rWg3qxof.js.gz +0 -0
- package/dist/ui/assets/chunk-B4BG7PRW-CgtLCbpE.js.gz +0 -0
- package/dist/ui/assets/chunk-DI55MBZ5-Dwvx2Kva.js.gz +0 -0
- package/dist/ui/assets/chunk-EXTU4WIE-DHyaqTsP.js +0 -1
- package/dist/ui/assets/chunk-HN2XXSSU-2blQO3Gb.js.gz +0 -0
- package/dist/ui/assets/chunk-JA3XYJ7Z-Cr1rmOui.js.gz +0 -0
- package/dist/ui/assets/chunk-JZLCHNYA-BsgZ79Fa.js.gz +0 -0
- package/dist/ui/assets/chunk-MI3HLSF2-dwYeUy5S.js.gz +0 -0
- package/dist/ui/assets/chunk-N4CR4FBY-DEMgSRVe.js +0 -2
- package/dist/ui/assets/chunk-N4CR4FBY-DEMgSRVe.js.gz +0 -0
- package/dist/ui/assets/chunk-QXUST7PY-BCK2V0i-.js.gz +0 -0
- package/dist/ui/assets/chunk-QZHKN3VN-CALjGrEE.js +0 -1
- package/dist/ui/assets/chunk-S3R3BYOJ-GP3zIxrB.js.gz +0 -0
- package/dist/ui/assets/chunk-TZMSLE5B-dX5RaM6g.js.gz +0 -0
- package/dist/ui/assets/classDiagram-2ON5EDUG-C3_RVP70.js +0 -1
- package/dist/ui/assets/classDiagram-v2-WZHVMYZB-C3_RVP70.js +0 -1
- package/dist/ui/assets/constants-GjIDNVyt.js +0 -1
- package/dist/ui/assets/cose-bilkent-S5V4N54A-Dx0BJVDl.js.gz +0 -0
- package/dist/ui/assets/dagre-6UL2VRFP-DiQSUxqN.js.gz +0 -0
- package/dist/ui/assets/dagre-Bekd9Vdj.js.gz +0 -0
- package/dist/ui/assets/diagram-PSM6KHXK-DtJnDQjc.js.gz +0 -0
- package/dist/ui/assets/diagram-QEK2KX5R-CobkCRdj.js.gz +0 -0
- package/dist/ui/assets/diagram-S2PKOQOG-DHEZYivc.js.gz +0 -0
- package/dist/ui/assets/editor-DQIG-JYZ.js +0 -43
- package/dist/ui/assets/editor-DQIG-JYZ.js.gz +0 -0
- package/dist/ui/assets/emoji-B0hLmSLZ.js.gz +0 -0
- package/dist/ui/assets/erDiagram-Q2GNP2WA-BVNeTZPQ.js.gz +0 -0
- package/dist/ui/assets/flowDiagram-NV44I4VS-C73VFdyk.js.gz +0 -0
- package/dist/ui/assets/ganttDiagram-LVOFAZNH-B_RosuD1.js.gz +0 -0
- package/dist/ui/assets/gitGraphDiagram-NY62KEGX-hxbgwNA1.js.gz +0 -0
- package/dist/ui/assets/index-DTz1Dif6.js +0 -64
- package/dist/ui/assets/index-DTz1Dif6.js.gz +0 -0
- package/dist/ui/assets/journeyDiagram-XKPGCS4Q-CHYNj-f8.js.gz +0 -0
- package/dist/ui/assets/kanban-definition-3W4ZIXB7-DQPCCsj2.js.gz +0 -0
- package/dist/ui/assets/linear-DFao5Wyp.js.gz +0 -0
- package/dist/ui/assets/mermaid-parser.core-DYCfacHj.js.gz +0 -0
- package/dist/ui/assets/mermaid.core-C6xGFSdE.js.gz +0 -0
- package/dist/ui/assets/mindmap-definition-VGOIOE7T-L3Pw-YM7.js.gz +0 -0
- package/dist/ui/assets/particles-CT8hcJOA.js.gz +0 -0
- package/dist/ui/assets/pieDiagram-ADFJNKIX-Bf4Nou75.js.gz +0 -0
- package/dist/ui/assets/quadrantDiagram-AYHSOK5B-DpjUTLB1.js.gz +0 -0
- package/dist/ui/assets/reactflow-Cubtnk8i.js.gz +0 -0
- package/dist/ui/assets/requirementDiagram-UZGBJVZJ-Bfrfh-0-.js.gz +0 -0
- package/dist/ui/assets/sandpack-C58bwfIS.js.gz +0 -0
- package/dist/ui/assets/sandpackDefaults-Bkga8XAE.js +0 -1
- package/dist/ui/assets/sankeyDiagram-TZEHDZUN-ClZAZ6va.js.gz +0 -0
- package/dist/ui/assets/sequenceDiagram-WL72ISMW-CNgly63p.js.gz +0 -0
- package/dist/ui/assets/src-DAeyG22O.js.gz +0 -0
- package/dist/ui/assets/stateDiagram-FKZM4ZOC-BrEAoDpE.js.gz +0 -0
- package/dist/ui/assets/stateDiagram-v2-4FDKWEC3-BNL52_oN.js +0 -1
- package/dist/ui/assets/streamdown-BdAVfkeF.js.gz +0 -0
- package/dist/ui/assets/syntax-BOfTnQiy.js.gz +0 -0
- package/dist/ui/assets/timeline-definition-IT6M3QCI-CaRH3k4l.js.gz +0 -0
- package/dist/ui/assets/useUserLocalStorage-C8sgXgXR.js.gz +0 -0
- package/dist/ui/assets/xychartDiagram-PRI3JC2R-BlhkI9T_.js.gz +0 -0
|
@@ -4302,7 +4302,7 @@ import {
|
|
|
4302
4302
|
asc as asc3,
|
|
4303
4303
|
count,
|
|
4304
4304
|
desc as desc6,
|
|
4305
|
-
eq as
|
|
4305
|
+
eq as eq33,
|
|
4306
4306
|
gt,
|
|
4307
4307
|
gte,
|
|
4308
4308
|
inArray as inArray11,
|
|
@@ -5772,6 +5772,63 @@ var BranchRepository = class {
|
|
|
5772
5772
|
}
|
|
5773
5773
|
return Array.from(userIds);
|
|
5774
5774
|
}
|
|
5775
|
+
/**
|
|
5776
|
+
* Find non-archived branches whose explicit filesystem access set can change
|
|
5777
|
+
* when membership in the given group changes.
|
|
5778
|
+
*
|
|
5779
|
+
* Keep this inverse lookup in lockstep with findExplicitFsAccessUserIds():
|
|
5780
|
+
* both encode which group grants materialize into branch-folder access.
|
|
5781
|
+
* App-only grants (`fs_access = 'none'`) are intentionally excluded because
|
|
5782
|
+
* membership changes for those grants do not require branch-folder mutation.
|
|
5783
|
+
*/
|
|
5784
|
+
async findExplicitFsAccessBranchIdsForGroup(groupId) {
|
|
5785
|
+
const directRows = await select(this.db, { branch_id: branchGroupGrants3.branch_id }).from(branchGroupGrants3).innerJoin(branches3, eq11(branches3.branch_id, branchGroupGrants3.branch_id)).innerJoin(
|
|
5786
|
+
groups3,
|
|
5787
|
+
and11(eq11(groups3.group_id, branchGroupGrants3.group_id), eq11(groups3.archived, false))
|
|
5788
|
+
).where(
|
|
5789
|
+
and11(
|
|
5790
|
+
eq11(branchGroupGrants3.group_id, groupId),
|
|
5791
|
+
eq11(branches3.archived, false),
|
|
5792
|
+
inArray4(
|
|
5793
|
+
sql9`coalesce(${branchGroupGrants3.fs_access}, 'read')`,
|
|
5794
|
+
FS_ACCESS_BRANCH_PERMISSIONS
|
|
5795
|
+
)
|
|
5796
|
+
)
|
|
5797
|
+
).all();
|
|
5798
|
+
const boardRows = await select(this.db, { branch_id: branches3.branch_id }).from(boardGroupGrants3).innerJoin(
|
|
5799
|
+
groups3,
|
|
5800
|
+
and11(eq11(groups3.group_id, boardGroupGrants3.group_id), eq11(groups3.archived, false))
|
|
5801
|
+
).innerJoin(
|
|
5802
|
+
boards3,
|
|
5803
|
+
and11(
|
|
5804
|
+
eq11(boards3.board_id, boardGroupGrants3.board_id),
|
|
5805
|
+
eq11(sql9`coalesce(${jsonExtract(this.db, boards3.data, "access_mode")}, 'shared')`, "shared")
|
|
5806
|
+
)
|
|
5807
|
+
).innerJoin(
|
|
5808
|
+
branches3,
|
|
5809
|
+
and11(
|
|
5810
|
+
eq11(branches3.board_id, boardGroupGrants3.board_id),
|
|
5811
|
+
eq11(branches3.permission_source, "board"),
|
|
5812
|
+
eq11(branches3.archived, false)
|
|
5813
|
+
)
|
|
5814
|
+
).where(
|
|
5815
|
+
and11(
|
|
5816
|
+
eq11(boardGroupGrants3.group_id, groupId),
|
|
5817
|
+
inArray4(
|
|
5818
|
+
sql9`coalesce(${boardGroupGrants3.fs_access}, 'read')`,
|
|
5819
|
+
FS_ACCESS_BRANCH_PERMISSIONS
|
|
5820
|
+
)
|
|
5821
|
+
)
|
|
5822
|
+
).all();
|
|
5823
|
+
const branchIds = /* @__PURE__ */ new Set();
|
|
5824
|
+
for (const row of directRows) {
|
|
5825
|
+
branchIds.add(row.branch_id);
|
|
5826
|
+
}
|
|
5827
|
+
for (const row of boardRows) {
|
|
5828
|
+
branchIds.add(row.branch_id);
|
|
5829
|
+
}
|
|
5830
|
+
return Array.from(branchIds);
|
|
5831
|
+
}
|
|
5775
5832
|
async findBoardAlignedBranches(boardId) {
|
|
5776
5833
|
const rows = await select(this.db).from(branches3).where(
|
|
5777
5834
|
and11(
|
|
@@ -6160,11 +6217,48 @@ init_schema();
|
|
|
6160
6217
|
// src/db/repositories/mcp-servers.ts
|
|
6161
6218
|
init_esm_shims();
|
|
6162
6219
|
init_ids();
|
|
6163
|
-
import { and as
|
|
6220
|
+
import { and as and17, eq as eq20, like as like10 } from "drizzle-orm";
|
|
6164
6221
|
|
|
6165
6222
|
// src/tools/mcp/auth-secrets.ts
|
|
6166
6223
|
init_esm_shims();
|
|
6167
6224
|
|
|
6225
|
+
// src/mcp/template-resolver.ts
|
|
6226
|
+
init_esm_shims();
|
|
6227
|
+
|
|
6228
|
+
// src/config/env-resolver.ts
|
|
6229
|
+
init_esm_shims();
|
|
6230
|
+
init_database_wrapper();
|
|
6231
|
+
import { eq as eq19 } from "drizzle-orm";
|
|
6232
|
+
|
|
6233
|
+
// src/db/repositories/session-env-selections.ts
|
|
6234
|
+
init_esm_shims();
|
|
6235
|
+
init_database_wrapper();
|
|
6236
|
+
init_schema();
|
|
6237
|
+
import { and as and16, eq as eq18 } from "drizzle-orm";
|
|
6238
|
+
|
|
6239
|
+
// src/config/env-resolver.ts
|
|
6240
|
+
init_schema();
|
|
6241
|
+
|
|
6242
|
+
// src/config/env-blocklist.ts
|
|
6243
|
+
init_esm_shims();
|
|
6244
|
+
var BLOCKED_ENV_PATTERNS = Object.freeze([
|
|
6245
|
+
/^LD_/i,
|
|
6246
|
+
/^DYLD_/i,
|
|
6247
|
+
/^PYTHON(?!_AGOR_)/i
|
|
6248
|
+
]);
|
|
6249
|
+
|
|
6250
|
+
// src/config/env-vars.ts
|
|
6251
|
+
init_esm_shims();
|
|
6252
|
+
var V05_SCOPES = ["global", "session"];
|
|
6253
|
+
var V05_SCOPE_SET = new Set(V05_SCOPES);
|
|
6254
|
+
|
|
6255
|
+
// src/templates/handlebars-helpers.ts
|
|
6256
|
+
init_esm_shims();
|
|
6257
|
+
import Handlebars from "handlebars";
|
|
6258
|
+
|
|
6259
|
+
// src/mcp/template-patterns.ts
|
|
6260
|
+
init_esm_shims();
|
|
6261
|
+
|
|
6168
6262
|
// src/tools/mcp/http-headers.ts
|
|
6169
6263
|
init_esm_shims();
|
|
6170
6264
|
|
|
@@ -6176,11 +6270,11 @@ init_schema();
|
|
|
6176
6270
|
init_esm_shims();
|
|
6177
6271
|
init_database_wrapper();
|
|
6178
6272
|
init_schema();
|
|
6179
|
-
import { and as
|
|
6273
|
+
import { and as and18, eq as eq21, inArray as inArray7 } from "drizzle-orm";
|
|
6180
6274
|
|
|
6181
6275
|
// src/db/repositories/repos.ts
|
|
6182
6276
|
init_esm_shims();
|
|
6183
|
-
import { eq as
|
|
6277
|
+
import { eq as eq22, like as like11, sql as sql11 } from "drizzle-orm";
|
|
6184
6278
|
|
|
6185
6279
|
// src/config/variant-resolver.ts
|
|
6186
6280
|
init_esm_shims();
|
|
@@ -6341,7 +6435,7 @@ var RepoRepository = class {
|
|
|
6341
6435
|
try {
|
|
6342
6436
|
const insertData = this.repoToInsert(data);
|
|
6343
6437
|
await insert(this.db, repos3).values(insertData).run();
|
|
6344
|
-
const row = await select(this.db).from(repos3).where(
|
|
6438
|
+
const row = await select(this.db).from(repos3).where(eq22(repos3.repo_id, insertData.repo_id)).one();
|
|
6345
6439
|
if (!row) {
|
|
6346
6440
|
throw new RepositoryError("Failed to retrieve created repo");
|
|
6347
6441
|
}
|
|
@@ -6360,7 +6454,7 @@ var RepoRepository = class {
|
|
|
6360
6454
|
async findById(id) {
|
|
6361
6455
|
try {
|
|
6362
6456
|
const fullId = await this.resolveId(id);
|
|
6363
|
-
const row = await select(this.db).from(repos3).where(
|
|
6457
|
+
const row = await select(this.db).from(repos3).where(eq22(repos3.repo_id, fullId)).one();
|
|
6364
6458
|
return row ? this.rowToRepo(row) : null;
|
|
6365
6459
|
} catch (error) {
|
|
6366
6460
|
if (error instanceof EntityNotFoundError) return null;
|
|
@@ -6376,7 +6470,7 @@ var RepoRepository = class {
|
|
|
6376
6470
|
*/
|
|
6377
6471
|
async findBySlug(slug) {
|
|
6378
6472
|
try {
|
|
6379
|
-
const row = await select(this.db).from(repos3).where(
|
|
6473
|
+
const row = await select(this.db).from(repos3).where(eq22(repos3.slug, slug)).one();
|
|
6380
6474
|
return row ? this.rowToRepo(row) : null;
|
|
6381
6475
|
} catch (error) {
|
|
6382
6476
|
throw new RepositoryError(
|
|
@@ -6444,8 +6538,8 @@ var RepoRepository = class {
|
|
|
6444
6538
|
let changed = 0;
|
|
6445
6539
|
for (const finding of scan.findings) {
|
|
6446
6540
|
await this.db.transaction(async (tx) => {
|
|
6447
|
-
await lockRowForUpdate(txAsDb(tx), this.db, repos3,
|
|
6448
|
-
const currentRow = await select(txAsDb(tx)).from(repos3).where(
|
|
6541
|
+
await lockRowForUpdate(txAsDb(tx), this.db, repos3, eq22(repos3.repo_id, finding.repo_id));
|
|
6542
|
+
const currentRow = await select(txAsDb(tx)).from(repos3).where(eq22(repos3.repo_id, finding.repo_id)).one();
|
|
6449
6543
|
if (!currentRow) return;
|
|
6450
6544
|
const data = currentRow.data;
|
|
6451
6545
|
if (typeof data.remote_url !== "string" || !httpUrlHasUserinfo(data.remote_url)) {
|
|
@@ -6457,7 +6551,7 @@ var RepoRepository = class {
|
|
|
6457
6551
|
...data,
|
|
6458
6552
|
remote_url: stripHttpUrlUserinfo(data.remote_url)
|
|
6459
6553
|
}
|
|
6460
|
-
}).where(
|
|
6554
|
+
}).where(eq22(repos3.repo_id, finding.repo_id)).run();
|
|
6461
6555
|
changed += 1;
|
|
6462
6556
|
});
|
|
6463
6557
|
}
|
|
@@ -6479,8 +6573,8 @@ var RepoRepository = class {
|
|
|
6479
6573
|
try {
|
|
6480
6574
|
const fullId = await this.resolveId(id);
|
|
6481
6575
|
return await this.db.transaction(async (tx) => {
|
|
6482
|
-
await lockRowForUpdate(txAsDb(tx), this.db, repos3,
|
|
6483
|
-
const currentRow = await select(txAsDb(tx)).from(repos3).where(
|
|
6576
|
+
await lockRowForUpdate(txAsDb(tx), this.db, repos3, eq22(repos3.repo_id, fullId));
|
|
6577
|
+
const currentRow = await select(txAsDb(tx)).from(repos3).where(eq22(repos3.repo_id, fullId)).one();
|
|
6484
6578
|
if (!currentRow) {
|
|
6485
6579
|
throw new EntityNotFoundError("Repo", id);
|
|
6486
6580
|
}
|
|
@@ -6494,7 +6588,7 @@ var RepoRepository = class {
|
|
|
6494
6588
|
repo_type: insertData.repo_type,
|
|
6495
6589
|
unix_group: merged.unix_group ?? null,
|
|
6496
6590
|
data: insertData.data
|
|
6497
|
-
}).where(
|
|
6591
|
+
}).where(eq22(repos3.repo_id, fullId)).run();
|
|
6498
6592
|
merged.clone_error = insertData.data.clone_error;
|
|
6499
6593
|
merged.remote_url = insertData.data.remote_url;
|
|
6500
6594
|
merged.last_updated = newUpdatedAt.toISOString();
|
|
@@ -6528,8 +6622,8 @@ var RepoRepository = class {
|
|
|
6528
6622
|
try {
|
|
6529
6623
|
const fullId = await this.resolveId(id);
|
|
6530
6624
|
return await this.db.transaction(async (tx) => {
|
|
6531
|
-
await lockRowForUpdate(txAsDb(tx), this.db, repos3,
|
|
6532
|
-
const currentRow = await select(txAsDb(tx)).from(repos3).where(
|
|
6625
|
+
await lockRowForUpdate(txAsDb(tx), this.db, repos3, eq22(repos3.repo_id, fullId));
|
|
6626
|
+
const currentRow = await select(txAsDb(tx)).from(repos3).where(eq22(repos3.repo_id, fullId)).one();
|
|
6533
6627
|
if (!currentRow) {
|
|
6534
6628
|
throw new EntityNotFoundError("Repo", id);
|
|
6535
6629
|
}
|
|
@@ -6543,7 +6637,7 @@ var RepoRepository = class {
|
|
|
6543
6637
|
repo_type: insertData.repo_type,
|
|
6544
6638
|
unix_group: next.unix_group ?? null,
|
|
6545
6639
|
data: insertData.data
|
|
6546
|
-
}).where(
|
|
6640
|
+
}).where(eq22(repos3.repo_id, fullId)).run();
|
|
6547
6641
|
next.environment = insertData.data.environment;
|
|
6548
6642
|
next.environment_config = insertData.data.environment_config;
|
|
6549
6643
|
next.remote_url = insertData.data.remote_url;
|
|
@@ -6583,7 +6677,7 @@ var RepoRepository = class {
|
|
|
6583
6677
|
async delete(id) {
|
|
6584
6678
|
try {
|
|
6585
6679
|
const fullId = await this.resolveId(id);
|
|
6586
|
-
const result = await deleteFrom(this.db, repos3).where(
|
|
6680
|
+
const result = await deleteFrom(this.db, repos3).where(eq22(repos3.repo_id, fullId)).run();
|
|
6587
6681
|
if (result.rowsAffected === 0) {
|
|
6588
6682
|
throw new EntityNotFoundError("Repo", id);
|
|
6589
6683
|
}
|
|
@@ -6630,33 +6724,27 @@ init_esm_shims();
|
|
|
6630
6724
|
init_ids();
|
|
6631
6725
|
init_database_wrapper();
|
|
6632
6726
|
init_schema();
|
|
6633
|
-
import { and as
|
|
6727
|
+
import { and as and19, asc as asc2, desc as desc3, eq as eq23, isNull as isNull6, like as like12, lte, or as or7, sql as sql12 } from "drizzle-orm";
|
|
6634
6728
|
|
|
6635
6729
|
// src/db/repositories/serialized-sessions.ts
|
|
6636
6730
|
init_esm_shims();
|
|
6637
6731
|
init_ids();
|
|
6638
6732
|
init_database_wrapper();
|
|
6639
6733
|
init_schema();
|
|
6640
|
-
import { and as
|
|
6641
|
-
|
|
6642
|
-
// src/db/repositories/session-env-selections.ts
|
|
6643
|
-
init_esm_shims();
|
|
6644
|
-
init_database_wrapper();
|
|
6645
|
-
init_schema();
|
|
6646
|
-
import { and as and20, eq as eq23 } from "drizzle-orm";
|
|
6734
|
+
import { and as and20, desc as desc4, eq as eq24, lt } from "drizzle-orm";
|
|
6647
6735
|
|
|
6648
6736
|
// src/db/repositories/session-mcp-servers.ts
|
|
6649
6737
|
init_esm_shims();
|
|
6650
6738
|
init_database_wrapper();
|
|
6651
6739
|
init_schema();
|
|
6652
|
-
import { and as and22, eq as
|
|
6740
|
+
import { and as and22, eq as eq26 } from "drizzle-orm";
|
|
6653
6741
|
|
|
6654
6742
|
// src/db/repositories/sessions.ts
|
|
6655
6743
|
init_esm_shims();
|
|
6656
6744
|
init_types2();
|
|
6657
6745
|
init_config_manager();
|
|
6658
6746
|
init_ids();
|
|
6659
|
-
import { and as and21, desc as desc5, eq as
|
|
6747
|
+
import { and as and21, desc as desc5, eq as eq25, inArray as inArray8, like as like13, or as or8, sql as sql13 } from "drizzle-orm";
|
|
6660
6748
|
init_database_wrapper();
|
|
6661
6749
|
init_schema();
|
|
6662
6750
|
|
|
@@ -6665,7 +6753,7 @@ init_esm_shims();
|
|
|
6665
6753
|
init_ids();
|
|
6666
6754
|
init_database_wrapper();
|
|
6667
6755
|
init_schema();
|
|
6668
|
-
import { and as and23, eq as
|
|
6756
|
+
import { and as and23, eq as eq27, inArray as inArray9, or as or9 } from "drizzle-orm";
|
|
6669
6757
|
|
|
6670
6758
|
// src/db/repositories/tasks.ts
|
|
6671
6759
|
init_esm_shims();
|
|
@@ -6673,7 +6761,7 @@ init_types2();
|
|
|
6673
6761
|
init_ids();
|
|
6674
6762
|
init_database_wrapper();
|
|
6675
6763
|
init_schema();
|
|
6676
|
-
import { and as and24, eq as
|
|
6764
|
+
import { and as and24, eq as eq28, inArray as inArray10, like as like14, sql as sql14 } from "drizzle-orm";
|
|
6677
6765
|
|
|
6678
6766
|
// src/db/repositories/thread-session-map.ts
|
|
6679
6767
|
init_esm_shims();
|
|
@@ -6681,7 +6769,7 @@ init_types2();
|
|
|
6681
6769
|
init_ids();
|
|
6682
6770
|
init_database_wrapper();
|
|
6683
6771
|
init_schema();
|
|
6684
|
-
import { and as and25, eq as
|
|
6772
|
+
import { and as and25, eq as eq29, like as like15, lt as lt2 } from "drizzle-orm";
|
|
6685
6773
|
|
|
6686
6774
|
// src/db/repositories/user-api-keys.ts
|
|
6687
6775
|
init_esm_shims();
|
|
@@ -6691,25 +6779,18 @@ init_schema();
|
|
|
6691
6779
|
init_tenant_context();
|
|
6692
6780
|
import { randomBytes as randomBytes3 } from "crypto";
|
|
6693
6781
|
import bcrypt2 from "bcryptjs";
|
|
6694
|
-
import { and as and26, eq as
|
|
6782
|
+
import { and as and26, eq as eq30 } from "drizzle-orm";
|
|
6695
6783
|
|
|
6696
6784
|
// src/db/repositories/user-mcp-oauth-tokens.ts
|
|
6697
6785
|
init_esm_shims();
|
|
6698
6786
|
init_database_wrapper();
|
|
6699
6787
|
init_schema();
|
|
6700
|
-
import { and as and27, eq as
|
|
6788
|
+
import { and as and27, eq as eq31, isNull as isNull7 } from "drizzle-orm";
|
|
6701
6789
|
|
|
6702
6790
|
// src/db/repositories/users.ts
|
|
6703
6791
|
init_esm_shims();
|
|
6704
6792
|
init_types2();
|
|
6705
|
-
import { eq as
|
|
6706
|
-
|
|
6707
|
-
// src/config/env-vars.ts
|
|
6708
|
-
init_esm_shims();
|
|
6709
|
-
var V05_SCOPES = ["global", "session"];
|
|
6710
|
-
var V05_SCOPE_SET = new Set(V05_SCOPES);
|
|
6711
|
-
|
|
6712
|
-
// src/db/repositories/users.ts
|
|
6793
|
+
import { eq as eq32, like as like16, sql as sql15 } from "drizzle-orm";
|
|
6713
6794
|
init_ids();
|
|
6714
6795
|
init_database_wrapper();
|
|
6715
6796
|
init_schema();
|
|
@@ -7103,23 +7184,9 @@ import fs2 from "fs";
|
|
|
7103
7184
|
init_config_manager();
|
|
7104
7185
|
init_constants();
|
|
7105
7186
|
|
|
7106
|
-
// src/config/env-blocklist.ts
|
|
7107
|
-
init_esm_shims();
|
|
7108
|
-
var BLOCKED_ENV_PATTERNS = Object.freeze([
|
|
7109
|
-
/^LD_/i,
|
|
7110
|
-
/^DYLD_/i,
|
|
7111
|
-
/^PYTHON(?!_AGOR_)/i
|
|
7112
|
-
]);
|
|
7113
|
-
|
|
7114
7187
|
// src/config/env-locking.ts
|
|
7115
7188
|
init_esm_shims();
|
|
7116
7189
|
|
|
7117
|
-
// src/config/env-resolver.ts
|
|
7118
|
-
init_esm_shims();
|
|
7119
|
-
init_database_wrapper();
|
|
7120
|
-
import { eq as eq33 } from "drizzle-orm";
|
|
7121
|
-
init_schema();
|
|
7122
|
-
|
|
7123
7190
|
// src/config/env-validation.ts
|
|
7124
7191
|
init_esm_shims();
|
|
7125
7192
|
var ENV_VAR_CONSTRAINTS = {
|
package/dist/core/mcp/index.cjs
CHANGED
|
@@ -30,7 +30,10 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
30
30
|
// src/mcp/index.ts
|
|
31
31
|
var mcp_exports = {};
|
|
32
32
|
__export(mcp_exports, {
|
|
33
|
+
TEMPLATE_RESOLVABLE_MCP_AUTH_SECRET_FIELDS: () => TEMPLATE_RESOLVABLE_MCP_AUTH_SECRET_FIELDS,
|
|
33
34
|
buildMCPTemplateContextFromEnv: () => buildMCPTemplateContextFromEnv,
|
|
35
|
+
containsTemplate: () => containsTemplate,
|
|
36
|
+
isUserEnvPlaceholder: () => isUserEnvPlaceholder,
|
|
34
37
|
resolveMcpServerEnv: () => resolveMcpServerEnv,
|
|
35
38
|
resolveMcpServerTemplates: () => resolveMcpServerTemplates,
|
|
36
39
|
resolveMcpServersTemplates: () => resolveMcpServersTemplates
|
|
@@ -3580,6 +3583,15 @@ function renderTemplate(templateString, context, options = {}) {
|
|
|
3580
3583
|
}
|
|
3581
3584
|
}
|
|
3582
3585
|
|
|
3586
|
+
// src/mcp/template-patterns.ts
|
|
3587
|
+
function containsTemplate(value) {
|
|
3588
|
+
return value.includes("{{") && value.includes("}}");
|
|
3589
|
+
}
|
|
3590
|
+
var USER_ENV_PLACEHOLDER_RE = /^\{\{\s*user\.env\.[A-Za-z_][A-Za-z0-9_]*\s*\}\}$/;
|
|
3591
|
+
function isUserEnvPlaceholder(value) {
|
|
3592
|
+
return USER_ENV_PLACEHOLDER_RE.test(value.trim());
|
|
3593
|
+
}
|
|
3594
|
+
|
|
3583
3595
|
// src/mcp/template-resolver.ts
|
|
3584
3596
|
function buildMCPTemplateContextFromEnv(env) {
|
|
3585
3597
|
const userEnvKeysStr = env[AGOR_USER_ENV_KEYS_VAR];
|
|
@@ -3597,9 +3609,6 @@ function buildMCPTemplateContextFromEnv(env) {
|
|
|
3597
3609
|
}
|
|
3598
3610
|
};
|
|
3599
3611
|
}
|
|
3600
|
-
function containsTemplate(value) {
|
|
3601
|
-
return value.includes("{{") && value.includes("}}");
|
|
3602
|
-
}
|
|
3603
3612
|
function resolveStringValue(fieldName, templateValue, context) {
|
|
3604
3613
|
if (!containsTemplate(templateValue)) {
|
|
3605
3614
|
return templateValue;
|
|
@@ -3632,6 +3641,12 @@ function resolveMcpServerEnv(envTemplate, context) {
|
|
|
3632
3641
|
}
|
|
3633
3642
|
return Object.keys(result).length > 0 ? result : void 0;
|
|
3634
3643
|
}
|
|
3644
|
+
var TEMPLATE_RESOLVABLE_MCP_AUTH_SECRET_FIELDS = [
|
|
3645
|
+
"token",
|
|
3646
|
+
"api_token",
|
|
3647
|
+
"api_secret",
|
|
3648
|
+
"oauth_client_secret"
|
|
3649
|
+
];
|
|
3635
3650
|
function resolveMcpServerTemplates(server, context) {
|
|
3636
3651
|
const resolved = { ...server };
|
|
3637
3652
|
const unresolvedFields = [];
|
|
@@ -3774,7 +3789,10 @@ function resolveMcpServersTemplates(servers, context) {
|
|
|
3774
3789
|
}
|
|
3775
3790
|
// Annotate the CommonJS export names for ESM import in node:
|
|
3776
3791
|
0 && (module.exports = {
|
|
3792
|
+
TEMPLATE_RESOLVABLE_MCP_AUTH_SECRET_FIELDS,
|
|
3777
3793
|
buildMCPTemplateContextFromEnv,
|
|
3794
|
+
containsTemplate,
|
|
3795
|
+
isUserEnvPlaceholder,
|
|
3778
3796
|
resolveMcpServerEnv,
|
|
3779
3797
|
resolveMcpServerTemplates,
|
|
3780
3798
|
resolveMcpServersTemplates
|
package/dist/core/mcp/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* MCP (Model Context Protocol) utilities
|
|
3
3
|
*/
|
|
4
|
-
export { buildMCPTemplateContextFromEnv, type MCPTemplateContext, type MCPTemplateResolutionResult, resolveMcpServerEnv, resolveMcpServersTemplates, resolveMcpServerTemplates, } from './template-resolver';
|
|
4
|
+
export { buildMCPTemplateContextFromEnv, containsTemplate, isUserEnvPlaceholder, type MCPTemplateContext, type MCPTemplateResolutionResult, resolveMcpServerEnv, resolveMcpServersTemplates, resolveMcpServerTemplates, TEMPLATE_RESOLVABLE_MCP_AUTH_SECRET_FIELDS, } from './template-resolver';
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,8BAA8B,EAC9B,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,EAChC,mBAAmB,EACnB,0BAA0B,EAC1B,yBAAyB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,8BAA8B,EAC9B,gBAAgB,EAChB,oBAAoB,EACpB,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,EAChC,mBAAmB,EACnB,0BAA0B,EAC1B,yBAAyB,EACzB,0CAA0C,GAC3C,MAAM,qBAAqB,CAAC"}
|
package/dist/core/mcp/index.js
CHANGED
|
@@ -3568,6 +3568,15 @@ function renderTemplate(templateString, context, options = {}) {
|
|
|
3568
3568
|
}
|
|
3569
3569
|
}
|
|
3570
3570
|
|
|
3571
|
+
// src/mcp/template-patterns.ts
|
|
3572
|
+
function containsTemplate(value) {
|
|
3573
|
+
return value.includes("{{") && value.includes("}}");
|
|
3574
|
+
}
|
|
3575
|
+
var USER_ENV_PLACEHOLDER_RE = /^\{\{\s*user\.env\.[A-Za-z_][A-Za-z0-9_]*\s*\}\}$/;
|
|
3576
|
+
function isUserEnvPlaceholder(value) {
|
|
3577
|
+
return USER_ENV_PLACEHOLDER_RE.test(value.trim());
|
|
3578
|
+
}
|
|
3579
|
+
|
|
3571
3580
|
// src/mcp/template-resolver.ts
|
|
3572
3581
|
function buildMCPTemplateContextFromEnv(env) {
|
|
3573
3582
|
const userEnvKeysStr = env[AGOR_USER_ENV_KEYS_VAR];
|
|
@@ -3585,9 +3594,6 @@ function buildMCPTemplateContextFromEnv(env) {
|
|
|
3585
3594
|
}
|
|
3586
3595
|
};
|
|
3587
3596
|
}
|
|
3588
|
-
function containsTemplate(value) {
|
|
3589
|
-
return value.includes("{{") && value.includes("}}");
|
|
3590
|
-
}
|
|
3591
3597
|
function resolveStringValue(fieldName, templateValue, context) {
|
|
3592
3598
|
if (!containsTemplate(templateValue)) {
|
|
3593
3599
|
return templateValue;
|
|
@@ -3620,6 +3626,12 @@ function resolveMcpServerEnv(envTemplate, context) {
|
|
|
3620
3626
|
}
|
|
3621
3627
|
return Object.keys(result).length > 0 ? result : void 0;
|
|
3622
3628
|
}
|
|
3629
|
+
var TEMPLATE_RESOLVABLE_MCP_AUTH_SECRET_FIELDS = [
|
|
3630
|
+
"token",
|
|
3631
|
+
"api_token",
|
|
3632
|
+
"api_secret",
|
|
3633
|
+
"oauth_client_secret"
|
|
3634
|
+
];
|
|
3623
3635
|
function resolveMcpServerTemplates(server, context) {
|
|
3624
3636
|
const resolved = { ...server };
|
|
3625
3637
|
const unresolvedFields = [];
|
|
@@ -3761,7 +3773,10 @@ function resolveMcpServersTemplates(servers, context) {
|
|
|
3761
3773
|
return servers.map((server) => resolveMcpServerTemplates(server, context));
|
|
3762
3774
|
}
|
|
3763
3775
|
export {
|
|
3776
|
+
TEMPLATE_RESOLVABLE_MCP_AUTH_SECRET_FIELDS,
|
|
3764
3777
|
buildMCPTemplateContextFromEnv,
|
|
3778
|
+
containsTemplate,
|
|
3779
|
+
isUserEnvPlaceholder,
|
|
3765
3780
|
resolveMcpServerEnv,
|
|
3766
3781
|
resolveMcpServerTemplates,
|
|
3767
3782
|
resolveMcpServersTemplates
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser-safe MCP template pattern helpers.
|
|
3
|
+
*
|
|
4
|
+
* Keep this module free of Handlebars, env resolution, and DB imports; UI
|
|
5
|
+
* validation/redaction helpers import it through browser bundles.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Check if a string contains Handlebars template syntax.
|
|
9
|
+
*/
|
|
10
|
+
export declare function containsTemplate(value: string): boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Check if a string is a single bare `{{ user.env.NAME }}` placeholder.
|
|
13
|
+
*/
|
|
14
|
+
export declare function isUserEnvPlaceholder(value: string): boolean;
|
|
15
|
+
//# sourceMappingURL=template-patterns.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template-patterns.d.ts","sourceRoot":"","sources":["../../src/mcp/template-patterns.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEvD;AAWD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE3D"}
|
|
@@ -49,6 +49,8 @@
|
|
|
49
49
|
* It will automatically filter to only user-defined variables.
|
|
50
50
|
*/
|
|
51
51
|
import type { MCPServer } from '../types';
|
|
52
|
+
import { containsTemplate, isUserEnvPlaceholder } from './template-patterns';
|
|
53
|
+
export { containsTemplate, isUserEnvPlaceholder };
|
|
52
54
|
/**
|
|
53
55
|
* Template context available for MCP configuration resolution.
|
|
54
56
|
* Intentionally minimal - only user environment variables are exposed.
|
|
@@ -119,6 +121,17 @@ export declare function resolveMcpServerEnv(envTemplate: Record<string, string>
|
|
|
119
121
|
* @param context - Template context
|
|
120
122
|
* @returns Resolution result with server, validation status, and any errors
|
|
121
123
|
*/
|
|
124
|
+
/**
|
|
125
|
+
* Auth-secret fields that `resolveMcpServerTemplates` substitutes from the
|
|
126
|
+
* template context. Redaction consults this set to leave `{{ }}` templates in
|
|
127
|
+
* these fields intact so resolution can run.
|
|
128
|
+
*
|
|
129
|
+
* MUST stay in sync with the auth-secret fields `resolveMcpServerTemplates`
|
|
130
|
+
* actually resolves below. Notably `oauth_access_token` / `oauth_refresh_token`
|
|
131
|
+
* are OAuth-flow runtime secrets the resolver never touches, so they are
|
|
132
|
+
* excluded here and always redacted.
|
|
133
|
+
*/
|
|
134
|
+
export declare const TEMPLATE_RESOLVABLE_MCP_AUTH_SECRET_FIELDS: readonly ["token", "api_token", "api_secret", "oauth_client_secret"];
|
|
122
135
|
export declare function resolveMcpServerTemplates(server: MCPServer, context: MCPTemplateContext): MCPTemplateResolutionResult;
|
|
123
136
|
/**
|
|
124
137
|
* Resolve templates in multiple MCP server configurations.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template-resolver.d.ts","sourceRoot":"","sources":["../../src/mcp/template-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AAIH,OAAO,KAAK,EAAW,SAAS,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"template-resolver.d.ts","sourceRoot":"","sources":["../../src/mcp/template-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AAIH,OAAO,KAAK,EAAW,SAAS,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAE7E,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,CAAC;AAElD;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE;QACJ,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAC7B,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,oFAAoF;IACpF,MAAM,EAAE,SAAS,CAAC;IAClB,wEAAwE;IACxE,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,2EAA2E;IAC3E,OAAO,EAAE,OAAO,CAAC;IACjB,gDAAgD;IAChD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAC1D,kBAAkB,CAmBpB;AA0CD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAC/C,OAAO,EAAE,kBAAkB,GAC1B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAepC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH;;;;;;;;;GASG;AACH,eAAO,MAAM,0CAA0C,sEAK7C,CAAC;AAEX,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,kBAAkB,GAC1B,2BAA2B,CA2K7B;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,SAAS,EAAE,EACpB,OAAO,EAAE,kBAAkB,GAC1B,2BAA2B,EAAE,CAE/B"}
|
|
@@ -52,6 +52,12 @@ module.exports = __toCommonJS(browser_exports);
|
|
|
52
52
|
|
|
53
53
|
// src/models/claude.ts
|
|
54
54
|
var AVAILABLE_CLAUDE_MODEL_ALIASES = [
|
|
55
|
+
{
|
|
56
|
+
id: "claude-fable-5",
|
|
57
|
+
displayName: "Claude Fable 5",
|
|
58
|
+
family: "claude-5",
|
|
59
|
+
description: "Frontier model for complex reasoning, creative work, and agentic coding"
|
|
60
|
+
},
|
|
55
61
|
{
|
|
56
62
|
id: "claude-opus-4-8",
|
|
57
63
|
displayName: "Claude Opus 4.8",
|
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
// src/models/claude.ts
|
|
2
2
|
var AVAILABLE_CLAUDE_MODEL_ALIASES = [
|
|
3
|
+
{
|
|
4
|
+
id: "claude-fable-5",
|
|
5
|
+
displayName: "Claude Fable 5",
|
|
6
|
+
family: "claude-5",
|
|
7
|
+
description: "Frontier model for complex reasoning, creative work, and agentic coding"
|
|
8
|
+
},
|
|
3
9
|
{
|
|
4
10
|
id: "claude-opus-4-8",
|
|
5
11
|
displayName: "Claude Opus 4.8",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../src/models/claude.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,2FAA2F;IAC3F,EAAE,EAAE,MAAM,CAAC;IACX,sDAAsD;IACtD,WAAW,EAAE,MAAM,CAAC;IACpB,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,8BAA8B,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../src/models/claude.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,2FAA2F;IAC3F,EAAE,EAAE,MAAM,CAAC;IACX,sDAAsD;IACtD,WAAW,EAAE,MAAM,CAAC;IACpB,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,8BAA8B,EAAE,WAAW,EA4FvD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,oBAAoB,CAAC"}
|
|
@@ -57,6 +57,12 @@ module.exports = __toCommonJS(models_exports);
|
|
|
57
57
|
|
|
58
58
|
// src/models/claude.ts
|
|
59
59
|
var AVAILABLE_CLAUDE_MODEL_ALIASES = [
|
|
60
|
+
{
|
|
61
|
+
id: "claude-fable-5",
|
|
62
|
+
displayName: "Claude Fable 5",
|
|
63
|
+
family: "claude-5",
|
|
64
|
+
description: "Frontier model for complex reasoning, creative work, and agentic coding"
|
|
65
|
+
},
|
|
60
66
|
{
|
|
61
67
|
id: "claude-opus-4-8",
|
|
62
68
|
displayName: "Claude Opus 4.8",
|
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
// src/models/claude.ts
|
|
2
2
|
var AVAILABLE_CLAUDE_MODEL_ALIASES = [
|
|
3
|
+
{
|
|
4
|
+
id: "claude-fable-5",
|
|
5
|
+
displayName: "Claude Fable 5",
|
|
6
|
+
family: "claude-5",
|
|
7
|
+
description: "Frontier model for complex reasoning, creative work, and agentic coding"
|
|
8
|
+
},
|
|
3
9
|
{
|
|
4
10
|
id: "claude-opus-4-8",
|
|
5
11
|
displayName: "Claude Opus 4.8",
|