Skip to content

Commit 602773c

Browse files
committed
Updates checks for cli and mcp auto installation
1 parent 29aae3d commit 602773c

File tree

3 files changed

+18
-6
lines changed

3 files changed

+18
-6
lines changed

src/env/node/gk/cli/integration.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,10 @@ import { urls } from '../../../../constants';
55
import type { Source, Sources } from '../../../../constants.telemetry';
66
import type { Container } from '../../../../container';
77
import type { SubscriptionChangeEvent } from '../../../../plus/gk/subscriptionService';
8-
import { supportsMcpExtensionRegistration } from '../../../../plus/gk/utils/-webview/mcp.utils';
8+
import {
9+
mcpExtensionRegistrationAllowed,
10+
supportsMcpExtensionRegistration,
11+
} from '../../../../plus/gk/utils/-webview/mcp.utils';
912
import { registerCommand } from '../../../../system/-webview/command';
1013
import { configuration } from '../../../../system/-webview/configuration';
1114
import { getHostAppName } from '../../../../system/-webview/vscode';
@@ -58,8 +61,7 @@ export class GkCliIntegrationProvider implements Disposable {
5861

5962
this.onConfigurationChanged();
6063

61-
// TODO: Remove this experimental setting for production release
62-
if (configuration.get('gitkraken.cli.autoInstall.enabled')) {
64+
if (mcpExtensionRegistrationAllowed()) {
6365
const cliInstall = this.container.storage.get('gk:cli:install');
6466
if (!cliInstall || (cliInstall.status === 'attempted' && cliInstall.attempts < 5)) {
6567
setTimeout(

src/plus/gk/utils/-webview/mcp.utils.ts

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
import { lm, version } from 'vscode';
22
import { getPlatform, isWeb } from '@env/platform';
33
import type { Container } from '../../../../container';
4+
import { configuration } from '../../../../system/-webview/configuration';
45
import { getHostAppName } from '../../../../system/-webview/vscode';
56
import { satisfies } from '../../../../system/version';
67

78
export async function isMcpBannerEnabled(container: Container, showAutoRegistration = false): Promise<boolean> {
89
// Check if running on web or automatically registrable
9-
if (isWeb || (!showAutoRegistration && supportsMcpExtensionRegistration())) {
10+
if (isWeb || (!showAutoRegistration && mcpExtensionRegistrationAllowed())) {
1011
return false;
1112
}
1213

@@ -32,3 +33,12 @@ export function supportsMcpExtensionRegistration(): boolean {
3233

3334
return satisfies(version, '>= 1.101.0') && lm.registerMcpServerDefinitionProvider != null;
3435
}
36+
37+
export function mcpExtensionRegistrationAllowed(): boolean {
38+
// TODO: Remove experimental setting for production release
39+
return (
40+
configuration.get('ai.enabled') &&
41+
configuration.get('gitkraken.cli.autoInstall.enabled') &&
42+
supportsMcpExtensionRegistration()
43+
);
44+
}

src/webviews/home/homeWebview.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ import type { AIModelChangeEvent } from '../../plus/ai/aiProviderService';
5151
import { showPatchesView } from '../../plus/drafts/actions';
5252
import type { Subscription } from '../../plus/gk/models/subscription';
5353
import type { SubscriptionChangeEvent } from '../../plus/gk/subscriptionService';
54-
import { isMcpBannerEnabled, supportsMcpExtensionRegistration } from '../../plus/gk/utils/-webview/mcp.utils';
54+
import { isMcpBannerEnabled, mcpExtensionRegistrationAllowed } from '../../plus/gk/utils/-webview/mcp.utils';
5555
import { isAiAllAccessPromotionActive } from '../../plus/gk/utils/-webview/promo.utils';
5656
import { isSubscriptionTrialOrPaidFromState } from '../../plus/gk/utils/subscription.utils';
5757
import type { ConfiguredIntegrationsChangeEvent } from '../../plus/integrations/authentication/configuredIntegrationService';
@@ -807,7 +807,7 @@ export class HomeWebviewProvider implements WebviewProvider<State, State, HomeWe
807807
}
808808

809809
private getMcpCanAutoRegister() {
810-
return supportsMcpExtensionRegistration();
810+
return mcpExtensionRegistrationAllowed();
811811
}
812812

813813
private getIntegrationBannerCollapsed() {

0 commit comments

Comments
 (0)