@structured-world/gitlab-mcp 6.62.1 → 7.0.1
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/README.md +22 -1
- package/README.md.in +21 -0
- package/dist/generated/prisma/client.js.map +1 -1
- package/dist/generated/prisma/internal/class.js +2 -2
- package/dist/generated/prisma/internal/class.js.map +1 -1
- package/dist/generated/prisma/internal/prismaNamespace.js +2 -2
- package/dist/generated/prisma/models/AuthCodeFlowState.d.ts +1 -2
- package/dist/generated/prisma/models/AuthorizationCode.d.ts +1 -2
- package/dist/generated/prisma/models/DeviceFlowState.d.ts +1 -2
- package/dist/generated/prisma/models/McpSessionMapping.d.ts +1 -2
- package/dist/generated/prisma/models/OAuthSession.d.ts +1 -2
- package/dist/src/cli/docker/container-runtime.d.ts +1 -1
- package/dist/src/cli/docker/container-runtime.js +14 -14
- package/dist/src/cli/docker/docker-command.d.ts +1 -1
- package/dist/src/cli/docker/docker-command.js +113 -113
- package/dist/src/cli/docker/docker-command.js.map +1 -1
- package/dist/src/cli/docker/docker-utils.d.ts +3 -3
- package/dist/src/cli/docker/docker-utils.js +74 -74
- package/dist/src/cli/docker/docker-utils.js.map +1 -1
- package/dist/src/cli/docker/index.d.ts +4 -4
- package/dist/src/cli/docker/types.d.ts +3 -3
- package/dist/src/cli/docker/types.js +5 -5
- package/dist/src/cli/init/browser.js +2 -2
- package/dist/src/cli/init/config-generator.d.ts +2 -2
- package/dist/src/cli/init/config-generator.js +22 -22
- package/dist/src/cli/init/connection.d.ts +1 -1
- package/dist/src/cli/init/connection.js +27 -27
- package/dist/src/cli/init/connection.js.map +1 -1
- package/dist/src/cli/init/index.d.ts +4 -4
- package/dist/src/cli/init/types.d.ts +3 -3
- package/dist/src/cli/init/types.js +36 -36
- package/dist/src/cli/init/wizard.js +80 -80
- package/dist/src/cli/init/wizard.js.map +1 -1
- package/dist/src/cli/inject-tool-refs.js +47 -47
- package/dist/src/cli/inject-tool-refs.js.map +1 -1
- package/dist/src/cli/install/backup.d.ts +1 -1
- package/dist/src/cli/install/backup.js +3 -3
- package/dist/src/cli/install/detector.d.ts +2 -2
- package/dist/src/cli/install/detector.js +18 -18
- package/dist/src/cli/install/detector.js.map +1 -1
- package/dist/src/cli/install/index.d.ts +5 -5
- package/dist/src/cli/install/install-command.d.ts +2 -2
- package/dist/src/cli/install/install-command.js +68 -68
- package/dist/src/cli/install/install-command.js.map +1 -1
- package/dist/src/cli/install/installers.d.ts +2 -2
- package/dist/src/cli/install/installers.js +55 -55
- package/dist/src/cli/install/installers.js.map +1 -1
- package/dist/src/cli/install/types.d.ts +4 -4
- package/dist/src/cli/install/types.js +48 -48
- package/dist/src/cli/instances/index.d.ts +2 -2
- package/dist/src/cli/instances/instances-command.d.ts +1 -1
- package/dist/src/cli/instances/instances-command.js +70 -66
- package/dist/src/cli/instances/instances-command.js.map +1 -1
- package/dist/src/cli/list-tools.js +396 -396
- package/dist/src/cli/list-tools.js.map +1 -1
- package/dist/src/cli/setup/discovery.d.ts +1 -1
- package/dist/src/cli/setup/discovery.js +10 -10
- package/dist/src/cli/setup/discovery.js.map +1 -1
- package/dist/src/cli/setup/flows/configure-existing.d.ts +1 -1
- package/dist/src/cli/setup/flows/configure-existing.js +57 -57
- package/dist/src/cli/setup/flows/configure-existing.js.map +1 -1
- package/dist/src/cli/setup/flows/local-setup.d.ts +1 -1
- package/dist/src/cli/setup/flows/local-setup.js +51 -51
- package/dist/src/cli/setup/flows/local-setup.js.map +1 -1
- package/dist/src/cli/setup/flows/server-setup.d.ts +1 -1
- package/dist/src/cli/setup/flows/server-setup.js +50 -50
- package/dist/src/cli/setup/flows/server-setup.js.map +1 -1
- package/dist/src/cli/setup/flows/tool-selection.d.ts +1 -1
- package/dist/src/cli/setup/flows/tool-selection.js +94 -94
- package/dist/src/cli/setup/flows/tool-selection.js.map +1 -1
- package/dist/src/cli/setup/index.d.ts +4 -4
- package/dist/src/cli/setup/presets.d.ts +1 -1
- package/dist/src/cli/setup/presets.js +157 -157
- package/dist/src/cli/setup/presets.js.map +1 -1
- package/dist/src/cli/setup/types.d.ts +7 -7
- package/dist/src/cli/setup/wizard.d.ts +1 -1
- package/dist/src/cli/setup/wizard.js +25 -25
- package/dist/src/cli/utils/index.d.ts +1 -1
- package/dist/src/cli/utils/path-utils.js +3 -3
- package/dist/src/cli-utils.d.ts +2 -2
- package/dist/src/cli-utils.js +46 -46
- package/dist/src/config/index.d.ts +4 -4
- package/dist/src/config/instances-loader.d.ts +3 -3
- package/dist/src/config/instances-loader.js +53 -53
- package/dist/src/config/instances-loader.js.map +1 -1
- package/dist/src/config/instances-schema.d.ts +1 -1
- package/dist/src/config/instances-schema.js +33 -33
- package/dist/src/config/instances-schema.js.map +1 -1
- package/dist/src/config.d.ts +11 -4
- package/dist/src/config.js +112 -111
- package/dist/src/config.js.map +1 -1
- package/dist/src/dashboard/handler.d.ts +2 -2
- package/dist/src/dashboard/handler.js +7 -7
- package/dist/src/dashboard/html-template.d.ts +1 -1
- package/dist/src/dashboard/html-template.js +44 -44
- package/dist/src/dashboard/html-template.js.map +1 -1
- package/dist/src/dashboard/index.d.ts +4 -4
- package/dist/src/dashboard/metrics.d.ts +3 -3
- package/dist/src/dashboard/metrics.js +42 -42
- package/dist/src/discovery/auto.d.ts +3 -3
- package/dist/src/discovery/auto.js +28 -28
- package/dist/src/discovery/git-remote.d.ts +2 -2
- package/dist/src/discovery/git-remote.js +18 -18
- package/dist/src/discovery/index.d.ts +3 -3
- package/dist/src/discovery/profile-matcher.d.ts +2 -2
- package/dist/src/discovery/profile-matcher.js +8 -8
- package/dist/src/discovery/profile-matcher.js.map +1 -1
- package/dist/src/entities/context/context-manager.d.ts +3 -3
- package/dist/src/entities/context/context-manager.js +34 -34
- package/dist/src/entities/context/context-manager.js.map +1 -1
- package/dist/src/entities/context/handlers.d.ts +2 -2
- package/dist/src/entities/context/handlers.js +8 -8
- package/dist/src/entities/context/index.d.ts +8 -8
- package/dist/src/entities/context/index.js +1 -1
- package/dist/src/entities/context/registry.d.ts +1 -1
- package/dist/src/entities/context/registry.js +4 -4
- package/dist/src/entities/context/schema.d.ts +1 -1
- package/dist/src/entities/context/schema.js +19 -19
- package/dist/src/entities/context/types.d.ts +9 -9
- package/dist/src/entities/context/whoami.d.ts +1 -1
- package/dist/src/entities/context/whoami.js +31 -31
- package/dist/src/entities/context/whoami.js.map +1 -1
- package/dist/src/entities/core/index.d.ts +5 -5
- package/dist/src/entities/core/index.js +1 -1
- package/dist/src/entities/core/registry.d.ts +1 -1
- package/dist/src/entities/core/registry.js +194 -194
- package/dist/src/entities/core/registry.js.map +1 -1
- package/dist/src/entities/core/schema-readonly.d.ts +1 -1
- package/dist/src/entities/core/schema-readonly.js +117 -117
- package/dist/src/entities/core/schema.d.ts +1 -1
- package/dist/src/entities/core/schema.js +67 -67
- package/dist/src/entities/files/index.d.ts +5 -5
- package/dist/src/entities/files/index.js +1 -1
- package/dist/src/entities/files/registry.d.ts +1 -1
- package/dist/src/entities/files/registry.js +45 -45
- package/dist/src/entities/files/registry.js.map +1 -1
- package/dist/src/entities/files/schema-readonly.d.ts +1 -1
- package/dist/src/entities/files/schema-readonly.js +13 -13
- package/dist/src/entities/files/schema.d.ts +1 -1
- package/dist/src/entities/files/schema.js +29 -29
- package/dist/src/entities/index.d.ts +17 -17
- package/dist/src/entities/integrations/index.d.ts +4 -4
- package/dist/src/entities/integrations/registry.d.ts +1 -1
- package/dist/src/entities/integrations/registry.js +17 -17
- package/dist/src/entities/integrations/registry.js.map +1 -1
- package/dist/src/entities/integrations/schema-readonly.d.ts +1 -1
- package/dist/src/entities/integrations/schema-readonly.js +5 -5
- package/dist/src/entities/integrations/schema.d.ts +1 -1
- package/dist/src/entities/integrations/schema.js +69 -69
- package/dist/src/entities/iterations/index.d.ts +2 -2
- package/dist/src/entities/iterations/registry.d.ts +1 -1
- package/dist/src/entities/iterations/registry.js +13 -13
- package/dist/src/entities/iterations/registry.js.map +1 -1
- package/dist/src/entities/iterations/schema-readonly.d.ts +1 -1
- package/dist/src/entities/iterations/schema-readonly.js +9 -9
- package/dist/src/entities/labels/index.d.ts +5 -5
- package/dist/src/entities/labels/index.js +1 -1
- package/dist/src/entities/labels/registry.d.ts +1 -1
- package/dist/src/entities/labels/registry.js +19 -19
- package/dist/src/entities/labels/registry.js.map +1 -1
- package/dist/src/entities/labels/schema-readonly.d.ts +1 -1
- package/dist/src/entities/labels/schema-readonly.js +8 -8
- package/dist/src/entities/labels/schema.d.ts +1 -1
- package/dist/src/entities/labels/schema.js +11 -11
- package/dist/src/entities/members/index.d.ts +3 -3
- package/dist/src/entities/members/registry.d.ts +1 -1
- package/dist/src/entities/members/registry.js +26 -26
- package/dist/src/entities/members/registry.js.map +1 -1
- package/dist/src/entities/members/schema-readonly.d.ts +1 -1
- package/dist/src/entities/members/schema-readonly.js +32 -32
- package/dist/src/entities/members/schema-readonly.js.map +1 -1
- package/dist/src/entities/members/schema.d.ts +1 -1
- package/dist/src/entities/members/schema.js +28 -28
- package/dist/src/entities/milestones/index.d.ts +5 -5
- package/dist/src/entities/milestones/index.js +1 -1
- package/dist/src/entities/milestones/registry.d.ts +1 -1
- package/dist/src/entities/milestones/registry.js +25 -25
- package/dist/src/entities/milestones/registry.js.map +1 -1
- package/dist/src/entities/milestones/schema-readonly.d.ts +2 -2
- package/dist/src/entities/milestones/schema-readonly.js +15 -15
- package/dist/src/entities/milestones/schema.d.ts +1 -1
- package/dist/src/entities/milestones/schema.js +16 -16
- package/dist/src/entities/milestones/schema.js.map +1 -1
- package/dist/src/entities/mrs/index.d.ts +5 -5
- package/dist/src/entities/mrs/index.js +1 -1
- package/dist/src/entities/mrs/registry.d.ts +1 -1
- package/dist/src/entities/mrs/registry.js +102 -102
- package/dist/src/entities/mrs/registry.js.map +1 -1
- package/dist/src/entities/mrs/schema-readonly.d.ts +1 -1
- package/dist/src/entities/mrs/schema-readonly.js +126 -126
- package/dist/src/entities/mrs/schema-readonly.js.map +1 -1
- package/dist/src/entities/mrs/schema.d.ts +1 -1
- package/dist/src/entities/mrs/schema.js +111 -111
- package/dist/src/entities/mrs/schema.js.map +1 -1
- package/dist/src/entities/pipelines/index.d.ts +5 -5
- package/dist/src/entities/pipelines/index.js +1 -1
- package/dist/src/entities/pipelines/registry.d.ts +1 -1
- package/dist/src/entities/pipelines/registry.js +45 -45
- package/dist/src/entities/pipelines/registry.js.map +1 -1
- package/dist/src/entities/pipelines/schema-readonly.d.ts +2 -2
- package/dist/src/entities/pipelines/schema-readonly.js +73 -73
- package/dist/src/entities/pipelines/schema.d.ts +1 -1
- package/dist/src/entities/pipelines/schema.js +21 -21
- package/dist/src/entities/refs/index.d.ts +3 -3
- package/dist/src/entities/refs/registry.d.ts +1 -1
- package/dist/src/entities/refs/registry.js +31 -31
- package/dist/src/entities/refs/registry.js.map +1 -1
- package/dist/src/entities/refs/schema-readonly.d.ts +1 -1
- package/dist/src/entities/refs/schema-readonly.js +21 -21
- package/dist/src/entities/refs/schema.d.ts +1 -1
- package/dist/src/entities/refs/schema.js +56 -56
- package/dist/src/entities/releases/index.d.ts +3 -3
- package/dist/src/entities/releases/registry.d.ts +1 -1
- package/dist/src/entities/releases/registry.js +21 -21
- package/dist/src/entities/releases/registry.js.map +1 -1
- package/dist/src/entities/releases/schema-readonly.d.ts +1 -1
- package/dist/src/entities/releases/schema-readonly.js +13 -13
- package/dist/src/entities/releases/schema.d.ts +1 -1
- package/dist/src/entities/releases/schema.js +21 -21
- package/dist/src/entities/search/index.d.ts +2 -2
- package/dist/src/entities/search/registry.d.ts +1 -1
- package/dist/src/entities/search/registry.js +13 -13
- package/dist/src/entities/search/schema-readonly.d.ts +1 -1
- package/dist/src/entities/search/schema-readonly.js +23 -23
- package/dist/src/entities/shared.d.ts +1 -1
- package/dist/src/entities/shared.js +5 -5
- package/dist/src/entities/snippets/index.d.ts +5 -5
- package/dist/src/entities/snippets/index.js +1 -1
- package/dist/src/entities/snippets/registry.d.ts +1 -1
- package/dist/src/entities/snippets/registry.js +24 -24
- package/dist/src/entities/snippets/registry.js.map +1 -1
- package/dist/src/entities/snippets/schema-readonly.d.ts +1 -1
- package/dist/src/entities/snippets/schema-readonly.js +11 -11
- package/dist/src/entities/snippets/schema.d.ts +1 -1
- package/dist/src/entities/snippets/schema.js +27 -27
- package/dist/src/entities/snippets/schema.js.map +1 -1
- package/dist/src/entities/utils.d.ts +2 -2
- package/dist/src/entities/utils.js +8 -8
- package/dist/src/entities/utils.js.map +1 -1
- package/dist/src/entities/variables/index.d.ts +5 -5
- package/dist/src/entities/variables/index.js +1 -1
- package/dist/src/entities/variables/registry.d.ts +1 -1
- package/dist/src/entities/variables/registry.js +22 -22
- package/dist/src/entities/variables/registry.js.map +1 -1
- package/dist/src/entities/variables/schema-readonly.d.ts +1 -1
- package/dist/src/entities/variables/schema-readonly.js +6 -6
- package/dist/src/entities/variables/schema.d.ts +1 -1
- package/dist/src/entities/variables/schema.js +21 -21
- package/dist/src/entities/variables/schema.js.map +1 -1
- package/dist/src/entities/webhooks/index.d.ts +4 -4
- package/dist/src/entities/webhooks/registry.d.ts +1 -1
- package/dist/src/entities/webhooks/registry.js +29 -29
- package/dist/src/entities/webhooks/registry.js.map +1 -1
- package/dist/src/entities/webhooks/schema-readonly.d.ts +1 -1
- package/dist/src/entities/webhooks/schema-readonly.js +9 -9
- package/dist/src/entities/webhooks/schema.d.ts +1 -1
- package/dist/src/entities/webhooks/schema.js +59 -59
- package/dist/src/entities/wiki/index.d.ts +5 -5
- package/dist/src/entities/wiki/index.js +1 -1
- package/dist/src/entities/wiki/registry.d.ts +1 -1
- package/dist/src/entities/wiki/registry.js +19 -19
- package/dist/src/entities/wiki/registry.js.map +1 -1
- package/dist/src/entities/wiki/schema-readonly.d.ts +1 -1
- package/dist/src/entities/wiki/schema-readonly.js +6 -6
- package/dist/src/entities/wiki/schema.d.ts +1 -1
- package/dist/src/entities/wiki/schema.js +12 -12
- package/dist/src/entities/workitems/index.d.ts +5 -5
- package/dist/src/entities/workitems/index.js +1 -1
- package/dist/src/entities/workitems/registry.d.ts +1 -1
- package/dist/src/entities/workitems/registry.js +101 -101
- package/dist/src/entities/workitems/registry.js.map +1 -1
- package/dist/src/entities/workitems/schema-readonly.d.ts +1 -1
- package/dist/src/entities/workitems/schema-readonly.js +27 -27
- package/dist/src/entities/workitems/schema-readonly.js.map +1 -1
- package/dist/src/entities/workitems/schema.d.ts +1 -1
- package/dist/src/entities/workitems/schema.js +58 -58
- package/dist/src/graphql/DynamicWorkItemsQuery.d.ts +2 -2
- package/dist/src/graphql/DynamicWorkItemsQuery.js +47 -47
- package/dist/src/graphql/DynamicWorkItemsQuery.js.map +1 -1
- package/dist/src/graphql/client.d.ts +1 -1
- package/dist/src/graphql/client.js +4 -4
- package/dist/src/graphql/client.js.map +1 -1
- package/dist/src/graphql/index.d.ts +2 -2
- package/dist/src/graphql/workItems.d.ts +38 -38
- package/dist/src/graphql/workItems.js +30 -30
- package/dist/src/handlers.d.ts +2 -1
- package/dist/src/handlers.js +258 -86
- package/dist/src/handlers.js.map +1 -1
- package/dist/src/http-client.js +3 -3
- package/dist/src/logger.js +25 -25
- package/dist/src/logging/access-log.d.ts +2 -2
- package/dist/src/logging/access-log.js +25 -25
- package/dist/src/logging/connection-tracker.d.ts +1 -1
- package/dist/src/logging/connection-tracker.js +3 -3
- package/dist/src/logging/index.d.ts +5 -5
- package/dist/src/logging/request-tracker.d.ts +3 -3
- package/dist/src/logging/request-tracker.js +4 -4
- package/dist/src/logging/types.d.ts +3 -3
- package/dist/src/logging/types.js +1 -1
- package/dist/src/logging/types.js.map +1 -1
- package/dist/src/main.js +28 -28
- package/dist/src/middleware/index.d.ts +3 -2
- package/dist/src/middleware/index.js +3 -1
- package/dist/src/middleware/index.js.map +1 -1
- package/dist/src/middleware/oauth-auth.d.ts +1 -1
- package/dist/src/middleware/oauth-auth.js +17 -17
- package/dist/src/middleware/rate-limiter.d.ts +1 -1
- package/dist/src/middleware/rate-limiter.js +32 -32
- package/dist/src/middleware/response-write-timeout.d.ts +2 -0
- package/dist/src/middleware/response-write-timeout.js +62 -0
- package/dist/src/middleware/response-write-timeout.js.map +1 -0
- package/dist/src/oauth/config.d.ts +1 -1
- package/dist/src/oauth/config.js +18 -18
- package/dist/src/oauth/config.js.map +1 -1
- package/dist/src/oauth/endpoints/authorize.d.ts +1 -1
- package/dist/src/oauth/endpoints/authorize.js +32 -32
- package/dist/src/oauth/endpoints/callback.d.ts +1 -1
- package/dist/src/oauth/endpoints/callback.js +26 -26
- package/dist/src/oauth/endpoints/index.d.ts +5 -5
- package/dist/src/oauth/endpoints/metadata.d.ts +1 -1
- package/dist/src/oauth/endpoints/metadata.js +12 -12
- package/dist/src/oauth/endpoints/register.d.ts +1 -1
- package/dist/src/oauth/endpoints/register.js +9 -9
- package/dist/src/oauth/endpoints/token.d.ts +1 -1
- package/dist/src/oauth/endpoints/token.js +28 -28
- package/dist/src/oauth/gitlab-device-flow.d.ts +2 -2
- package/dist/src/oauth/gitlab-device-flow.js +73 -68
- package/dist/src/oauth/gitlab-device-flow.js.map +1 -1
- package/dist/src/oauth/index.d.ts +10 -10
- package/dist/src/oauth/session-store.d.ts +2 -2
- package/dist/src/oauth/session-store.js +40 -40
- package/dist/src/oauth/session-store.js.map +1 -1
- package/dist/src/oauth/storage/factory.d.ts +2 -2
- package/dist/src/oauth/storage/factory.js +16 -16
- package/dist/src/oauth/storage/file.d.ts +2 -2
- package/dist/src/oauth/storage/file.js +22 -22
- package/dist/src/oauth/storage/file.js.map +1 -1
- package/dist/src/oauth/storage/index.d.ts +5 -5
- package/dist/src/oauth/storage/memory.d.ts +2 -2
- package/dist/src/oauth/storage/memory.js +18 -18
- package/dist/src/oauth/storage/memory.js.map +1 -1
- package/dist/src/oauth/storage/postgresql.d.ts +2 -2
- package/dist/src/oauth/storage/postgresql.js +11 -11
- package/dist/src/oauth/storage/postgresql.js.map +1 -1
- package/dist/src/oauth/storage/types.d.ts +3 -3
- package/dist/src/oauth/token-context.d.ts +1 -1
- package/dist/src/oauth/token-context.js +1 -1
- package/dist/src/oauth/token-utils.d.ts +1 -1
- package/dist/src/oauth/token-utils.js +20 -20
- package/dist/src/oauth/types.d.ts +3 -3
- package/dist/src/profiles/applicator.d.ts +1 -1
- package/dist/src/profiles/applicator.js +48 -48
- package/dist/src/profiles/index.d.ts +5 -5
- package/dist/src/profiles/loader.d.ts +3 -3
- package/dist/src/profiles/loader.js +25 -25
- package/dist/src/profiles/loader.js.map +1 -1
- package/dist/src/profiles/project-loader.d.ts +1 -1
- package/dist/src/profiles/project-loader.js +23 -23
- package/dist/src/profiles/project-loader.js.map +1 -1
- package/dist/src/profiles/scope-enforcer.d.ts +2 -2
- package/dist/src/profiles/scope-enforcer.js +25 -25
- package/dist/src/profiles/scope-enforcer.js.map +1 -1
- package/dist/src/profiles/types.d.ts +2 -2
- package/dist/src/profiles/types.js +50 -48
- package/dist/src/profiles/types.js.map +1 -1
- package/dist/src/registry-manager.d.ts +19 -11
- package/dist/src/registry-manager.js +257 -172
- package/dist/src/registry-manager.js.map +1 -1
- package/dist/src/server.js +165 -149
- package/dist/src/server.js.map +1 -1
- package/dist/src/services/ConnectionManager.d.ts +33 -24
- package/dist/src/services/ConnectionManager.js +304 -179
- package/dist/src/services/ConnectionManager.js.map +1 -1
- package/dist/src/services/GitLabVersionDetector.d.ts +2 -2
- package/dist/src/services/GitLabVersionDetector.js +45 -45
- package/dist/src/services/GitLabVersionDetector.js.map +1 -1
- package/dist/src/services/HealthMonitor.d.ts +42 -0
- package/dist/src/services/HealthMonitor.js +544 -0
- package/dist/src/services/HealthMonitor.js.map +1 -0
- package/dist/src/services/InstanceConnectionPool.d.ts +2 -2
- package/dist/src/services/InstanceConnectionPool.js +13 -13
- package/dist/src/services/InstanceConnectionPool.js.map +1 -1
- package/dist/src/services/InstanceRateLimiter.js +6 -6
- package/dist/src/services/InstanceRateLimiter.js.map +1 -1
- package/dist/src/services/InstanceRegistry.d.ts +4 -5
- package/dist/src/services/InstanceRegistry.js +29 -41
- package/dist/src/services/InstanceRegistry.js.map +1 -1
- package/dist/src/services/NamespaceTierDetector.d.ts +2 -2
- package/dist/src/services/NamespaceTierDetector.js +30 -30
- package/dist/src/services/NamespaceTierDetector.js.map +1 -1
- package/dist/src/services/SchemaIntrospector.d.ts +2 -1
- package/dist/src/services/SchemaIntrospector.js +45 -42
- package/dist/src/services/SchemaIntrospector.js.map +1 -1
- package/dist/src/services/TokenScopeDetector.d.ts +4 -4
- package/dist/src/services/TokenScopeDetector.js +133 -110
- package/dist/src/services/TokenScopeDetector.js.map +1 -1
- package/dist/src/services/ToolAvailability.d.ts +15 -11
- package/dist/src/services/ToolAvailability.js +150 -130
- package/dist/src/services/ToolAvailability.js.map +1 -1
- package/dist/src/services/WidgetAvailability.d.ts +5 -5
- package/dist/src/services/WidgetAvailability.js +40 -39
- package/dist/src/services/WidgetAvailability.js.map +1 -1
- package/dist/src/session-manager.d.ts +3 -2
- package/dist/src/session-manager.js +17 -14
- package/dist/src/session-manager.js.map +1 -1
- package/dist/src/types.js +4 -4
- package/dist/src/utils/description-utils.js +4 -4
- package/dist/src/utils/description-utils.js.map +1 -1
- package/dist/src/utils/error-handler.d.ts +19 -10
- package/dist/src/utils/error-handler.js +272 -187
- package/dist/src/utils/error-handler.js.map +1 -1
- package/dist/src/utils/fetch.d.ts +7 -0
- package/dist/src/utils/fetch.js +136 -122
- package/dist/src/utils/fetch.js.map +1 -1
- package/dist/src/utils/gitlab-api.d.ts +1 -1
- package/dist/src/utils/gitlab-api.js +29 -26
- package/dist/src/utils/gitlab-api.js.map +1 -1
- package/dist/src/utils/idConversion.js +47 -47
- package/dist/src/utils/idConversion.js.map +1 -1
- package/dist/src/utils/namespace.d.ts +2 -2
- package/dist/src/utils/namespace.js +15 -15
- package/dist/src/utils/projectIdentifier.js +4 -4
- package/dist/src/utils/request-logger.d.ts +4 -4
- package/dist/src/utils/request-logger.js +5 -5
- package/dist/src/utils/schema-utils.js +24 -24
- package/dist/src/utils/schema-utils.js.map +1 -1
- package/dist/src/utils/smart-user-search.d.ts +1 -1
- package/dist/src/utils/smart-user-search.js +10 -10
- package/dist/src/utils/url.d.ts +1 -0
- package/dist/src/utils/url.js +38 -0
- package/dist/src/utils/url.js.map +1 -0
- package/dist/src/utils/version.js +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +22 -31
- package/dist/structured-world-gitlab-mcp-6.62.1.tgz +0 -0
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Advanced GitLab MCP server — 44 tools across 18 entity types with CQRS architecture, OAuth 2.1, and multiple transport modes.
|
|
6
6
|
|
|
7
|
-
[](https://gitlab-mcp.sw.foundation/downloads/gitlab-mcp-
|
|
7
|
+
[](https://gitlab-mcp.sw.foundation/downloads/gitlab-mcp-7.0.1.mcpb)
|
|
8
8
|
[](vscode:mcp/install?%7B%22name%22%3A%22gitlab-mcp%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40structured-world%2Fgitlab-mcp%22%5D%7D)
|
|
9
9
|
[](vscode-insiders:mcp/install?%7B%22name%22%3A%22gitlab-mcp%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40structured-world%2Fgitlab-mcp%22%5D%7D)
|
|
10
10
|
|
|
@@ -31,6 +31,7 @@ Advanced GitLab MCP server — 44 tools across 18 entity types with CQRS archite
|
|
|
31
31
|
|
|
32
32
|
- **44 tools** across 18 entity types — projects, merge requests, pipelines, work items, wiki, and more
|
|
33
33
|
- **CQRS architecture** — `browse_*` for queries, `manage_*` for commands
|
|
34
|
+
- **Connection resilience** — Bounded startup, auto-reconnect with exponential backoff, disconnected mode when GitLab is unreachable
|
|
34
35
|
- **Multi-instance support** — Connect to multiple GitLab instances with per-instance OAuth and rate limiting
|
|
35
36
|
- **Multiple transports** — stdio, SSE, StreamableHTTP
|
|
36
37
|
- **OAuth 2.1** — Per-user authentication via Claude Custom Connector
|
|
@@ -80,6 +81,26 @@ docker run -i --rm -e GITLAB_TOKEN=your_token \
|
|
|
80
81
|
ghcr.io/structured-world/gitlab-mcp:latest
|
|
81
82
|
```
|
|
82
83
|
|
|
84
|
+
## Connection Resilience
|
|
85
|
+
|
|
86
|
+
The server handles GitLab connectivity issues gracefully:
|
|
87
|
+
|
|
88
|
+
- **Bounded startup** — Server starts within `GITLAB_INIT_TIMEOUT_MS` (default 5s) regardless of GitLab availability
|
|
89
|
+
- **Disconnected mode** — When GitLab is unreachable (`disconnected`/`failed` state), only the `manage_context` tool is exposed, with local actions such as `whoami`, `switch_profile`, and `set_scope` for diagnostics. During active reconnect (`connecting` state), the full tool list remains available so MCP clients don't lose their tool catalog during brief outages. MCP clients are notified of tool availability changes via `tools/list_changed`
|
|
90
|
+
- **Auto-reconnect** — Exponential backoff reconnection (5s → 60s) with ±10% jitter
|
|
91
|
+
- **Error classification** — Transient errors (network, 5xx, timeouts) trigger auto-reconnect. Auth/config errors at startup transition to `failed` state (no auto-reconnect). Runtime auth errors from tool calls are forwarded to `HealthMonitor.reportError()` via `classifyError()`; the remaining gap is token-revocation/403 detection (#370)
|
|
92
|
+
- **Instance health monitor** — Each monitored instance URL has its own XState state machine. Untracked OAuth URLs currently pass through as reachable.
|
|
93
|
+
|
|
94
|
+
| Variable | Default | Description |
|
|
95
|
+
|----------|---------|-------------|
|
|
96
|
+
| `GITLAB_INIT_TIMEOUT_MS` | `5000` | Max time to wait for GitLab during startup |
|
|
97
|
+
| `GITLAB_RECONNECT_BASE_DELAY_MS` | `5000` | Initial reconnect delay (doubles each attempt) |
|
|
98
|
+
| `GITLAB_RECONNECT_MAX_DELAY_MS` | `60000` | Maximum reconnect delay |
|
|
99
|
+
| `GITLAB_HEALTH_CHECK_INTERVAL_MS` | `60000` | Health check interval when connected |
|
|
100
|
+
| `GITLAB_FAILURE_THRESHOLD` | `3` | Consecutive transient failures before disconnecting |
|
|
101
|
+
| `GITLAB_TOOL_TIMEOUT_MS` | `120000` | Max time for tool/bootstrap execution before timeout |
|
|
102
|
+
| `GITLAB_RESPONSE_WRITE_TIMEOUT_MS` | `10000` | Max time to flush a non-SSE response before destroying zombie connection (`0` to disable; SSE uses heartbeat) |
|
|
103
|
+
|
|
83
104
|
## Feature Flags
|
|
84
105
|
|
|
85
106
|
| Flag | Default | Tools Enabled |
|
package/README.md.in
CHANGED
|
@@ -31,6 +31,7 @@ Advanced GitLab MCP server — __TOOL_COUNT__ tools across __ENTITY_COUNT__ enti
|
|
|
31
31
|
|
|
32
32
|
- **__TOOL_COUNT__ tools** across __ENTITY_COUNT__ entity types — projects, merge requests, pipelines, work items, wiki, and more
|
|
33
33
|
- **CQRS architecture** — `browse_*` for queries, `manage_*` for commands
|
|
34
|
+
- **Connection resilience** — Bounded startup, auto-reconnect with exponential backoff, disconnected mode when GitLab is unreachable
|
|
34
35
|
- **Multi-instance support** — Connect to multiple GitLab instances with per-instance OAuth and rate limiting
|
|
35
36
|
- **Multiple transports** — stdio, SSE, StreamableHTTP
|
|
36
37
|
- **OAuth 2.1** — Per-user authentication via Claude Custom Connector
|
|
@@ -80,6 +81,26 @@ docker run -i --rm -e GITLAB_TOKEN=your_token \
|
|
|
80
81
|
ghcr.io/structured-world/gitlab-mcp:latest
|
|
81
82
|
```
|
|
82
83
|
|
|
84
|
+
## Connection Resilience
|
|
85
|
+
|
|
86
|
+
The server handles GitLab connectivity issues gracefully:
|
|
87
|
+
|
|
88
|
+
- **Bounded startup** — Server starts within `GITLAB_INIT_TIMEOUT_MS` (default 5s) regardless of GitLab availability
|
|
89
|
+
- **Disconnected mode** — When GitLab is unreachable (`disconnected`/`failed` state), only the `manage_context` tool is exposed, with local actions such as `whoami`, `switch_profile`, and `set_scope` for diagnostics. During active reconnect (`connecting` state), the full tool list remains available so MCP clients don't lose their tool catalog during brief outages. MCP clients are notified of tool availability changes via `tools/list_changed`
|
|
90
|
+
- **Auto-reconnect** — Exponential backoff reconnection (5s → 60s) with ±10% jitter
|
|
91
|
+
- **Error classification** — Transient errors (network, 5xx, timeouts) trigger auto-reconnect. Auth/config errors at startup transition to `failed` state (no auto-reconnect). Runtime auth errors from tool calls are forwarded to `HealthMonitor.reportError()` via `classifyError()`; the remaining gap is token-revocation/403 detection (#370)
|
|
92
|
+
- **Instance health monitor** — Each monitored instance URL has its own XState state machine. Untracked OAuth URLs currently pass through as reachable.
|
|
93
|
+
|
|
94
|
+
| Variable | Default | Description |
|
|
95
|
+
|----------|---------|-------------|
|
|
96
|
+
| `GITLAB_INIT_TIMEOUT_MS` | `5000` | Max time to wait for GitLab during startup |
|
|
97
|
+
| `GITLAB_RECONNECT_BASE_DELAY_MS` | `5000` | Initial reconnect delay (doubles each attempt) |
|
|
98
|
+
| `GITLAB_RECONNECT_MAX_DELAY_MS` | `60000` | Maximum reconnect delay |
|
|
99
|
+
| `GITLAB_HEALTH_CHECK_INTERVAL_MS` | `60000` | Health check interval when connected |
|
|
100
|
+
| `GITLAB_FAILURE_THRESHOLD` | `3` | Consecutive transient failures before disconnecting |
|
|
101
|
+
| `GITLAB_TOOL_TIMEOUT_MS` | `120000` | Max time for tool/bootstrap execution before timeout |
|
|
102
|
+
| `GITLAB_RESPONSE_WRITE_TIMEOUT_MS` | `10000` | Max time to flush a non-SSE response before destroying zombie connection (`0` to disable; SSE uses heartbeat) |
|
|
103
|
+
|
|
83
104
|
## Feature Flags
|
|
84
105
|
|
|
85
106
|
| Flag | Default | Tools Enabled |
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../generated/prisma/client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiBA,yDAA0C;AAC1C,mEAAoD;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../generated/prisma/client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiBA,yDAA0C;AAC1C,mEAAoD;AAqB3C,wBAAM;AAnBf,kDAAiC;AACjC,0CAAuB;AAgBV,QAAA,YAAY,GAAG,MAAM,CAAC,oBAAoB,EAAE,CAAA"}
|
|
@@ -37,8 +37,8 @@ exports.getPrismaClientClass = getPrismaClientClass;
|
|
|
37
37
|
const runtime = __importStar(require("@prisma/client/runtime/client"));
|
|
38
38
|
const config = {
|
|
39
39
|
"previewFeatures": [],
|
|
40
|
-
"clientVersion": "7.
|
|
41
|
-
"engineVersion": "
|
|
40
|
+
"clientVersion": "7.6.0",
|
|
41
|
+
"engineVersion": "75cbdc1eb7150937890ad5465d861175c6624711",
|
|
42
42
|
"activeProvider": "postgresql",
|
|
43
43
|
"inlineSchema": "// Prisma schema for gitlab-mcp OAuth session storage\n// Supports PostgreSQL for multi-instance deployments\n\ngenerator client {\n provider = \"prisma-client\"\n output = \"../generated/prisma\"\n}\n\ndatasource db {\n provider = \"postgresql\"\n}\n\n// OAuth session representing an authenticated user\nmodel OAuthSession {\n id String @id @default(uuid())\n\n // MCP tokens (issued by gitlab-mcp to Claude)\n mcpAccessToken String @map(\"mcp_access_token\")\n mcpRefreshToken String @map(\"mcp_refresh_token\")\n mcpTokenExpiry BigInt @map(\"mcp_token_expiry\")\n\n // GitLab tokens (obtained from GitLab OAuth)\n gitlabAccessToken String @map(\"gitlab_access_token\")\n gitlabRefreshToken String @map(\"gitlab_refresh_token\")\n gitlabTokenExpiry BigInt @map(\"gitlab_token_expiry\")\n\n // User info from GitLab\n gitlabUserId Int @map(\"gitlab_user_id\")\n gitlabUsername String @map(\"gitlab_username\")\n\n // Multi-instance support\n gitlabApiUrl String? @map(\"gitlab_api_url\")\n instanceLabel String? @map(\"instance_label\")\n\n // Session metadata\n clientId String @map(\"client_id\")\n scopes String[] @default([])\n createdAt BigInt @map(\"created_at\")\n updatedAt BigInt @map(\"updated_at\")\n\n // Relations\n authorizationCodes AuthorizationCode[]\n mcpSessionMappings McpSessionMapping[]\n\n @@index([mcpAccessToken], map: \"idx_oauth_sessions_mcp_access_token\")\n @@index([mcpRefreshToken], map: \"idx_oauth_sessions_mcp_refresh_token\")\n @@index([gitlabUserId], map: \"idx_oauth_sessions_gitlab_user_id\")\n @@map(\"oauth_sessions\")\n}\n\n// State for tracking in-progress Device Flow authorization\nmodel DeviceFlowState {\n state String @id\n deviceCode String @map(\"device_code\")\n userCode String @map(\"user_code\")\n verificationUri String @map(\"verification_uri\")\n verificationUriComplete String? @map(\"verification_uri_complete\")\n expiresAt BigInt @map(\"expires_at\")\n interval Int\n clientId String @map(\"client_id\")\n codeChallenge String @map(\"code_challenge\")\n codeChallengeMethod String @map(\"code_challenge_method\")\n redirectUri String? @map(\"redirect_uri\")\n\n @@index([deviceCode], map: \"idx_oauth_device_flows_device_code\")\n @@index([expiresAt], map: \"idx_oauth_device_flows_expires_at\")\n @@map(\"oauth_device_flows\")\n}\n\n// State for tracking in-progress Authorization Code Flow\nmodel AuthCodeFlowState {\n internalState String @id @map(\"internal_state\")\n clientId String @map(\"client_id\")\n codeChallenge String @map(\"code_challenge\")\n codeChallengeMethod String @map(\"code_challenge_method\")\n clientState String @map(\"client_state\")\n clientRedirectUri String @map(\"client_redirect_uri\")\n callbackUri String @map(\"callback_uri\")\n expiresAt BigInt @map(\"expires_at\")\n\n @@index([expiresAt], map: \"idx_oauth_auth_code_flows_expires_at\")\n @@map(\"oauth_auth_code_flows\")\n}\n\n// Authorization code for OAuth code exchange\nmodel AuthorizationCode {\n code String @id\n sessionId String @map(\"session_id\")\n clientId String @map(\"client_id\")\n codeChallenge String @map(\"code_challenge\")\n codeChallengeMethod String @map(\"code_challenge_method\")\n redirectUri String? @map(\"redirect_uri\")\n expiresAt BigInt @map(\"expires_at\")\n\n // Relations\n session OAuthSession @relation(fields: [sessionId], references: [id], onDelete: Cascade)\n\n @@index([sessionId], map: \"idx_oauth_authorization_codes_session_id\")\n @@index([expiresAt], map: \"idx_oauth_authorization_codes_expires_at\")\n @@map(\"oauth_authorization_codes\")\n}\n\n// MCP session to OAuth session mapping\nmodel McpSessionMapping {\n mcpSessionId String @id @map(\"mcp_session_id\")\n oauthSessionId String @map(\"oauth_session_id\")\n\n // Relations\n oauthSession OAuthSession @relation(fields: [oauthSessionId], references: [id], onDelete: Cascade)\n\n @@index([oauthSessionId], map: \"idx_oauth_mcp_session_mappings_oauth_session_id\")\n @@map(\"oauth_mcp_session_mappings\")\n}\n",
|
|
44
44
|
"runtimeDataModel": {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"class.js","sourceRoot":"","sources":["../../../../generated/prisma/internal/class.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"class.js","sourceRoot":"","sources":["../../../../generated/prisma/internal/class.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiPA,oDAEC;AAtOD,uEAAwD;AAIxD,MAAM,MAAM,GAAkC;IAC5C,iBAAiB,EAAE,EAAE;IACrB,eAAe,EAAE,OAAO;IACxB,eAAe,EAAE,0CAA0C;IAC3D,gBAAgB,EAAE,YAAY;IAC9B,cAAc,EAAE,stIAAstI;IACtuI,kBAAkB,EAAE;QAClB,QAAQ,EAAE,EAAE;QACZ,OAAO,EAAE,EAAE;QACX,OAAO,EAAE,EAAE;KACZ;IACD,wBAAwB,EAAE;QACxB,SAAS,EAAE,EAAE;QACb,OAAO,EAAE,EAAE;KACZ;CACF,CAAA;AAED,MAAM,CAAC,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,y3JAAy3J,CAAC,CAAA;AAC/5J,MAAM,CAAC,sBAAsB,GAAG;IAC9B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,gsHAAgsH,CAAC;IACrtH,KAAK,EAAE,8+WAA8+W;CACt/W,CAAA;AAED,KAAK,UAAU,kBAAkB,CAAC,UAAkB;IAClD,MAAM,EAAE,MAAM,EAAE,GAAG,wDAAa,aAAa,GAAC,CAAA;IAC9C,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;IACnD,OAAO,IAAI,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;AAC1C,CAAC;AAED,MAAM,CAAC,YAAY,GAAG;IACpB,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,wDAAa,6DAA6D,GAAC;IAEnG,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACrC,MAAM,EAAE,IAAI,EAAE,GAAG,wDAAa,yEAAyE,GAAC,CAAA;QACxG,OAAO,MAAM,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACvC,CAAC;IAED,UAAU,EAAE,6BAA6B;CAC1C,CAAA;AA0LD,SAAgB,oBAAoB;IAClC,OAAO,OAAO,CAAC,eAAe,CAAC,MAAM,CAAuC,CAAA;AAC9E,CAAC"}
|
|
@@ -48,8 +48,8 @@ exports.Sql = runtime.Sql;
|
|
|
48
48
|
exports.Decimal = runtime.Decimal;
|
|
49
49
|
exports.getExtensionContext = runtime.Extensions.getExtensionContext;
|
|
50
50
|
exports.prismaVersion = {
|
|
51
|
-
client: "7.
|
|
52
|
-
engine: "
|
|
51
|
+
client: "7.6.0",
|
|
52
|
+
engine: "75cbdc1eb7150937890ad5465d861175c6624711"
|
|
53
53
|
};
|
|
54
54
|
exports.NullTypes = {
|
|
55
55
|
DbNull: runtime.NullTypes.DbNull,
|
|
@@ -125,7 +125,7 @@ export type AuthCodeFlowStateGroupByOutputType = {
|
|
|
125
125
|
_min: AuthCodeFlowStateMinAggregateOutputType | null;
|
|
126
126
|
_max: AuthCodeFlowStateMaxAggregateOutputType | null;
|
|
127
127
|
};
|
|
128
|
-
type GetAuthCodeFlowStateGroupByPayload<T extends AuthCodeFlowStateGroupByArgs> = Prisma.PrismaPromise<Array<Prisma.PickEnumerable<AuthCodeFlowStateGroupByOutputType, T['by']> & {
|
|
128
|
+
export type GetAuthCodeFlowStateGroupByPayload<T extends AuthCodeFlowStateGroupByArgs> = Prisma.PrismaPromise<Array<Prisma.PickEnumerable<AuthCodeFlowStateGroupByOutputType, T['by']> & {
|
|
129
129
|
[P in ((keyof T) & (keyof AuthCodeFlowStateGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : Prisma.GetScalarType<T[P], AuthCodeFlowStateGroupByOutputType[P]> : Prisma.GetScalarType<T[P], AuthCodeFlowStateGroupByOutputType[P]>;
|
|
130
130
|
}>>;
|
|
131
131
|
export type AuthCodeFlowStateWhereInput = {
|
|
@@ -510,4 +510,3 @@ export type AuthCodeFlowStateDefaultArgs<ExtArgs extends runtime.Types.Extension
|
|
|
510
510
|
select?: Prisma.AuthCodeFlowStateSelect<ExtArgs> | null;
|
|
511
511
|
omit?: Prisma.AuthCodeFlowStateOmit<ExtArgs> | null;
|
|
512
512
|
};
|
|
513
|
-
export {};
|
|
@@ -118,7 +118,7 @@ export type AuthorizationCodeGroupByOutputType = {
|
|
|
118
118
|
_min: AuthorizationCodeMinAggregateOutputType | null;
|
|
119
119
|
_max: AuthorizationCodeMaxAggregateOutputType | null;
|
|
120
120
|
};
|
|
121
|
-
type GetAuthorizationCodeGroupByPayload<T extends AuthorizationCodeGroupByArgs> = Prisma.PrismaPromise<Array<Prisma.PickEnumerable<AuthorizationCodeGroupByOutputType, T['by']> & {
|
|
121
|
+
export type GetAuthorizationCodeGroupByPayload<T extends AuthorizationCodeGroupByArgs> = Prisma.PrismaPromise<Array<Prisma.PickEnumerable<AuthorizationCodeGroupByOutputType, T['by']> & {
|
|
122
122
|
[P in ((keyof T) & (keyof AuthorizationCodeGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : Prisma.GetScalarType<T[P], AuthorizationCodeGroupByOutputType[P]> : Prisma.GetScalarType<T[P], AuthorizationCodeGroupByOutputType[P]>;
|
|
123
123
|
}>>;
|
|
124
124
|
export type AuthorizationCodeWhereInput = {
|
|
@@ -638,4 +638,3 @@ export type AuthorizationCodeDefaultArgs<ExtArgs extends runtime.Types.Extension
|
|
|
638
638
|
omit?: Prisma.AuthorizationCodeOmit<ExtArgs> | null;
|
|
639
639
|
include?: Prisma.AuthorizationCodeInclude<ExtArgs> | null;
|
|
640
640
|
};
|
|
641
|
-
export {};
|
|
@@ -150,7 +150,7 @@ export type DeviceFlowStateGroupByOutputType = {
|
|
|
150
150
|
_min: DeviceFlowStateMinAggregateOutputType | null;
|
|
151
151
|
_max: DeviceFlowStateMaxAggregateOutputType | null;
|
|
152
152
|
};
|
|
153
|
-
type GetDeviceFlowStateGroupByPayload<T extends DeviceFlowStateGroupByArgs> = Prisma.PrismaPromise<Array<Prisma.PickEnumerable<DeviceFlowStateGroupByOutputType, T['by']> & {
|
|
153
|
+
export type GetDeviceFlowStateGroupByPayload<T extends DeviceFlowStateGroupByArgs> = Prisma.PrismaPromise<Array<Prisma.PickEnumerable<DeviceFlowStateGroupByOutputType, T['by']> & {
|
|
154
154
|
[P in ((keyof T) & (keyof DeviceFlowStateGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : Prisma.GetScalarType<T[P], DeviceFlowStateGroupByOutputType[P]> : Prisma.GetScalarType<T[P], DeviceFlowStateGroupByOutputType[P]>;
|
|
155
155
|
}>>;
|
|
156
156
|
export type DeviceFlowStateWhereInput = {
|
|
@@ -600,4 +600,3 @@ export type DeviceFlowStateDefaultArgs<ExtArgs extends runtime.Types.Extensions.
|
|
|
600
600
|
select?: Prisma.DeviceFlowStateSelect<ExtArgs> | null;
|
|
601
601
|
omit?: Prisma.DeviceFlowStateOmit<ExtArgs> | null;
|
|
602
602
|
};
|
|
603
|
-
export {};
|
|
@@ -63,7 +63,7 @@ export type McpSessionMappingGroupByOutputType = {
|
|
|
63
63
|
_min: McpSessionMappingMinAggregateOutputType | null;
|
|
64
64
|
_max: McpSessionMappingMaxAggregateOutputType | null;
|
|
65
65
|
};
|
|
66
|
-
type GetMcpSessionMappingGroupByPayload<T extends McpSessionMappingGroupByArgs> = Prisma.PrismaPromise<Array<Prisma.PickEnumerable<McpSessionMappingGroupByOutputType, T['by']> & {
|
|
66
|
+
export type GetMcpSessionMappingGroupByPayload<T extends McpSessionMappingGroupByArgs> = Prisma.PrismaPromise<Array<Prisma.PickEnumerable<McpSessionMappingGroupByOutputType, T['by']> & {
|
|
67
67
|
[P in ((keyof T) & (keyof McpSessionMappingGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : Prisma.GetScalarType<T[P], McpSessionMappingGroupByOutputType[P]> : Prisma.GetScalarType<T[P], McpSessionMappingGroupByOutputType[P]>;
|
|
68
68
|
}>>;
|
|
69
69
|
export type McpSessionMappingWhereInput = {
|
|
@@ -435,4 +435,3 @@ export type McpSessionMappingDefaultArgs<ExtArgs extends runtime.Types.Extension
|
|
|
435
435
|
omit?: Prisma.McpSessionMappingOmit<ExtArgs> | null;
|
|
436
436
|
include?: Prisma.McpSessionMappingInclude<ExtArgs> | null;
|
|
437
437
|
};
|
|
438
|
-
export {};
|
|
@@ -186,7 +186,7 @@ export type OAuthSessionGroupByOutputType = {
|
|
|
186
186
|
_min: OAuthSessionMinAggregateOutputType | null;
|
|
187
187
|
_max: OAuthSessionMaxAggregateOutputType | null;
|
|
188
188
|
};
|
|
189
|
-
type GetOAuthSessionGroupByPayload<T extends OAuthSessionGroupByArgs> = Prisma.PrismaPromise<Array<Prisma.PickEnumerable<OAuthSessionGroupByOutputType, T['by']> & {
|
|
189
|
+
export type GetOAuthSessionGroupByPayload<T extends OAuthSessionGroupByArgs> = Prisma.PrismaPromise<Array<Prisma.PickEnumerable<OAuthSessionGroupByOutputType, T['by']> & {
|
|
190
190
|
[P in ((keyof T) & (keyof OAuthSessionGroupByOutputType))]: P extends '_count' ? T[P] extends boolean ? number : Prisma.GetScalarType<T[P], OAuthSessionGroupByOutputType[P]> : Prisma.GetScalarType<T[P], OAuthSessionGroupByOutputType[P]>;
|
|
191
191
|
}>>;
|
|
192
192
|
export type OAuthSessionWhereInput = {
|
|
@@ -1034,4 +1034,3 @@ export type OAuthSessionDefaultArgs<ExtArgs extends runtime.Types.Extensions.Int
|
|
|
1034
1034
|
omit?: Prisma.OAuthSessionOmit<ExtArgs> | null;
|
|
1035
1035
|
include?: Prisma.OAuthSessionInclude<ExtArgs> | null;
|
|
1036
1036
|
};
|
|
1037
|
-
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ContainerRuntimeInfo } from
|
|
1
|
+
import { ContainerRuntimeInfo } from './types';
|
|
2
2
|
export declare function detectContainerRuntime(): ContainerRuntimeInfo;
|
|
3
3
|
export declare function getContainerRuntime(): ContainerRuntimeInfo;
|
|
4
4
|
export declare function resetRuntimeCache(): void;
|
|
@@ -8,8 +8,8 @@ let cachedRuntime = null;
|
|
|
8
8
|
function commandSucceeds(cmd, args) {
|
|
9
9
|
try {
|
|
10
10
|
const result = (0, child_process_1.spawnSync)(cmd, args, {
|
|
11
|
-
stdio:
|
|
12
|
-
encoding:
|
|
11
|
+
stdio: 'pipe',
|
|
12
|
+
encoding: 'utf8',
|
|
13
13
|
});
|
|
14
14
|
return result.status === 0;
|
|
15
15
|
}
|
|
@@ -20,8 +20,8 @@ function commandSucceeds(cmd, args) {
|
|
|
20
20
|
function commandOutput(cmd, args) {
|
|
21
21
|
try {
|
|
22
22
|
const result = (0, child_process_1.spawnSync)(cmd, args, {
|
|
23
|
-
stdio:
|
|
24
|
-
encoding:
|
|
23
|
+
stdio: 'pipe',
|
|
24
|
+
encoding: 'utf8',
|
|
25
25
|
});
|
|
26
26
|
if (result.status === 0 && result.stdout) {
|
|
27
27
|
return result.stdout.trim();
|
|
@@ -38,24 +38,24 @@ function parseVersion(output) {
|
|
|
38
38
|
}
|
|
39
39
|
function detectComposeCmd(runtime) {
|
|
40
40
|
const runtimeCmd = runtime;
|
|
41
|
-
if (commandSucceeds(runtimeCmd, [
|
|
42
|
-
return [runtimeCmd,
|
|
41
|
+
if (commandSucceeds(runtimeCmd, ['compose', 'version'])) {
|
|
42
|
+
return [runtimeCmd, 'compose'];
|
|
43
43
|
}
|
|
44
44
|
const standaloneCompose = `${runtimeCmd}-compose`;
|
|
45
|
-
if (commandSucceeds(standaloneCompose, [
|
|
45
|
+
if (commandSucceeds(standaloneCompose, ['--version'])) {
|
|
46
46
|
return [standaloneCompose];
|
|
47
47
|
}
|
|
48
|
-
if (commandSucceeds(
|
|
49
|
-
return [
|
|
48
|
+
if (commandSucceeds('docker-compose', ['--version'])) {
|
|
49
|
+
return ['docker-compose'];
|
|
50
50
|
}
|
|
51
51
|
return null;
|
|
52
52
|
}
|
|
53
53
|
function detectContainerRuntime() {
|
|
54
|
-
const runtimes = [
|
|
54
|
+
const runtimes = ['docker', 'podman'];
|
|
55
55
|
for (const runtime of runtimes) {
|
|
56
|
-
const versionOutput = commandOutput(runtime, [
|
|
56
|
+
const versionOutput = commandOutput(runtime, ['--version']);
|
|
57
57
|
if (versionOutput) {
|
|
58
|
-
const runtimeAvailable = commandSucceeds(runtime, [
|
|
58
|
+
const runtimeAvailable = commandSucceeds(runtime, ['info']);
|
|
59
59
|
const composeCmd = detectComposeCmd(runtime);
|
|
60
60
|
const runtimeVersion = parseVersion(versionOutput);
|
|
61
61
|
return {
|
|
@@ -68,8 +68,8 @@ function detectContainerRuntime() {
|
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
70
|
return {
|
|
71
|
-
runtime:
|
|
72
|
-
runtimeCmd:
|
|
71
|
+
runtime: 'docker',
|
|
72
|
+
runtimeCmd: 'docker',
|
|
73
73
|
runtimeAvailable: false,
|
|
74
74
|
composeCmd: null,
|
|
75
75
|
runtimeVersion: undefined,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type DockerSubcommand =
|
|
1
|
+
export type DockerSubcommand = 'status' | 'init' | 'start' | 'stop' | 'restart' | 'upgrade' | 'logs' | 'add-instance' | 'remove-instance';
|
|
2
2
|
export declare function parseDockerSubcommand(args: string[]): {
|
|
3
3
|
subcommand: DockerSubcommand | undefined;
|
|
4
4
|
subArgs: string[];
|