A VS Code extension that runs Gemini CLI directly inside a sidebar terminal view with real TUI support.
- Activity Bar icon: Gemini
- Sidebar view with embedded terminal (
xterm.js) - Real PTY backend (
node-pty) for interactive CLI behavior - Command Palette commands:
Gemini: Open CLIGemini: Restart CLI
geminiSidebar.command(default:gemini)geminiSidebar.autoStartOnOpen(default:true)geminiSidebar.shellPath(default: empty)geminiSidebar.shellArgs(default:[])geminiSidebar.extraEnv(default:{})
- The extension now falls back through common Linux shells (
$SHELL,bash,zsh,sh) when VS Code does not expose a shell path. - If
geminiworks in your normal terminal but not inside the sidebar, setgeminiSidebar.shellPathto your login shell and usegeminiSidebar.extraEnvto pass missing variables such asPATH,GEMINI_API_KEY, or proxy settings. node-ptyis a native dependency. On Linux, if install/build fails, make sure your system has the usual native build toolchain for Node addons.
npm install
npm run compileThen press F5 in VS Code to start Extension Development Host.
This extension uses node-pty, so publish platform-specific builds instead of a single generic VSIX.
Local packaging:
npm install
npm run vsix:linux-x64
npm run vsix:win32-x64Manual publish from a machine authenticated to the Visual Studio Marketplace:
npx @vscode/vsce login zhigang
npm run publish:linux-x64
npm run publish:win32-x64GitHub Actions publish:
- Create a Visual Studio Marketplace publisher whose ID matches the
publisherfield inpackage.json. - Create a Personal Access Token in the Marketplace with the publish/manage scope.
- Add that token to the GitHub repository as the secret
VSCE_PAT. - Run the
Publish VS Code Extensionworkflow, or publish a GitHub Release.
The workflow publishes:
linux-x64fromubuntu-latestwin32-x64fromwindows-latest