summaryrefslogtreecommitdiff
path: root/packages/vscode-ide-companion/src/extension.ts
diff options
context:
space:
mode:
authorShreya Keshive <[email protected]>2025-08-06 15:47:58 -0400
committerGitHub <[email protected]>2025-08-06 19:47:58 +0000
commit024b8207eb75bdc0c031f6380d6759b9e342e502 (patch)
treedf6789c5ef0a53b0099bc3217f0e23f3ea2bacca /packages/vscode-ide-companion/src/extension.ts
parent1fb680baccf93fee5c96167da96fd31e4d57cf6f (diff)
Add hint to enable IDE integration for users running in VS Code (#5610)
Diffstat (limited to 'packages/vscode-ide-companion/src/extension.ts')
-rw-r--r--packages/vscode-ide-companion/src/extension.ts20
1 files changed, 20 insertions, 0 deletions
diff --git a/packages/vscode-ide-companion/src/extension.ts b/packages/vscode-ide-companion/src/extension.ts
index b31e15b8..08389731 100644
--- a/packages/vscode-ide-companion/src/extension.ts
+++ b/packages/vscode-ide-companion/src/extension.ts
@@ -9,6 +9,7 @@ import { IDEServer } from './ide-server.js';
import { DiffContentProvider, DiffManager } from './diff-manager.js';
import { createLogger } from './utils/logger.js';
+const INFO_MESSAGE_SHOWN_KEY = 'geminiCliInfoMessageShown';
const IDE_WORKSPACE_PATH_ENV_VAR = 'GEMINI_CLI_IDE_WORKSPACE_PATH';
export const DIFF_SCHEME = 'gemini-diff';
@@ -81,6 +82,25 @@ export async function activate(context: vscode.ExtensionContext) {
log(`Failed to start IDE server: ${message}`);
}
+ if (!context.globalState.get(INFO_MESSAGE_SHOWN_KEY)) {
+ void vscode.window
+ .showInformationMessage(
+ 'Gemini CLI Companion extension successfully installed. Please restart your terminal to enable full IDE integration.',
+ 'Re-launch Gemini CLI',
+ )
+ .then(
+ (selection) => {
+ if (selection === 'Re-launch Gemini CLI') {
+ void vscode.commands.executeCommand('gemini-cli.runGeminiCLI');
+ }
+ },
+ (err) => {
+ log(`Failed to show information message: ${String(err)}`);
+ },
+ );
+ context.globalState.update(INFO_MESSAGE_SHOWN_KEY, true);
+ }
+
context.subscriptions.push(
vscode.workspace.onDidChangeWorkspaceFolders(() => {
updateWorkspacePath(context);