Gemini CLI on VSCode ?
September 11, 2025 ยท View on GitHub
๐ฏ๐ต ๆฅๆฌ่ช็ | ๐บ๐ธ English
๐ฎ MAGUS Council - Unified AI CLI Management

Finally: The Same Claude Code Experience with Gemini CLI & Codex CLI (GPT-5)
๐ก Why This Extension is Revolutionary
- โ Traditional: Gemini CLI and Codex CLI only run in terminal
- โ Innovation: Unified AI management system with editor integration
๐ Traditional Limitations
- Gemini CLI / Codex CLI: Powerful but only runs in terminal panels
- Gemini Code Assist: Editor integrated but a different tool entirely
- Claude Code: Perfect editor integration but can't use Gemini or GPT-5
โจ This Extension's Innovation
Brings Claude Code's editor integration experience to multiple AI CLIs
- Gemini, Codex, and Qwen run directly in editor windows
- MAGUS Council enables broadcasting single prompts to multiple AI CLIs
โก Key Features
๐ฑ๏ธ One-Click Launch
- 4 AI types for batch and individual launch
- Editor title bar icon for instant access
- Command palette integration
- Choose between new pane or active pane
๐ง True Editor Integration
- Opens as an editor tab, not a terminal panel
- Side-by-side with your code files
- Maintains your editor layout
๐ป Seamless Workflow
- Keep your code visible while using AI assistance
- No context switching between terminal and editor
- Natural integration with your development flow
๐ฎ v0.1.0 Major Update - MAGUS Council
- MAGUS Council - Multiple Agent Guidance & Intelligence System ๐ฎ
- Unified prompt broadcasting: Operate Gemini, Claude, Codex, and Qwen in perfect synchronization
- All according to the scenario: Optimized execution timing for each AI type
๐จ Other Key Features
- Claude Code Integration: Complete integration of multiple AI CLIs
- Batch Launch: "Launch All CLIs" button starts multiple CLIs simultaneously
- Universal History: Unified history folder
.history-memo/for work logs - Individual CLI Commands: Dedicated commands for each CLI
- Advanced Settings: Enable/disable CLIs, menu visibility control, etc.
๐ Quick Start
Prerequisites
# Install Gemini CLI (for Gemini)
npm install -g @google/gemini-cli
gemini # Google account authentication
# Install Codex CLI (for GPT-5)
npm install -g codex
codex # OpenAI account authentication
# Install Claude CLI (for Claude)
npm install -g @anthropic-ai/claude-cli
claude # Anthropic account authentication
# Install Qwen CLI (for Qwen)
npm install -g @qwen-code/qwen-code@latest
qwen # Qwen account authentication
Usage
- Open any project in VS Code
- Click the icon in the editor title bar
- ๐ Launch All CLIs - Launch all configured CLIs at once
- โจ Launch Gemini CLI
- โ๏ธ Launch Codex CLI
- โด๏ธ Launch Claude Code
- ๐ Launch Qwen Code
- Launch MAGUS Council
- MAGUS Council panel appears in sidebar
- Command Palette: "MAGUS Council: Open"
- Select desired AIs and send prompts
- Multiple AI selection enables simultaneous execution
๐จ Customizing Editor Title Bar Buttons
To hide buttons:
- Right-click on any button in the editor title bar
- Uncheck the command from the menu
To show buttons again:
- Right-click on empty space in the editor title bar
- Check the hidden commands in the menu
๐ก Tip: Even with buttons hidden, all features remain accessible via Command Palette (Cmd/Ctrl+Shift+P).
Or use Command Palette:
- Press
Cmd+Shift+P(Mac) orCtrl+Shift+P(Windows/Linux) - Search for "Gemini CLI" or "Codex CLI"
- Choose your preferred launch mode
๐ Send Files/Folders to AI CLI
Send from Explorer
- Right-click file or folder
- Select "Gemini CLI: Send File Path" or "Codex CLI: Send File Path"
- Supports multiple selection (Ctrl/Cmd+click)
Send from Editor Tab
- Right-click on editor tab
- Choose your preferred CLI command
Send All Open Files
- Right-click in editor
- Select "Gemini CLI: Send Open File Path" or "Codex CLI: Send Open File Path"
All paths are sent with @ prefix to your selected CLI.
๐พ Universal History Save
Save all terminal output to .history-memo/YYYY-MM-DD.md:
From Any Terminal:
- Select text โ Click "Save to History" button in status bar
- Works with Gemini CLI, Codex CLI, bash, zsh, Claude Code, and more
Custom Keyboard Shortcut:
- Set your own in VSCode Keyboard Shortcuts settings
๐ค Send to AI CLI
Send Selected Text:
- Select text in editor โ Right-click
- "Gemini CLI: Send Selected Text", "Codex CLI: Send Selected Text", "Claude Code: Send Selected Text", or "MAGUS Council: Send Selected Text"
Send File/Folder Paths:
- Right-click in Explorer
- Choose your preferred CLI command ("MAGUS Council: Send File Path" also available)
- Supports multiple selection and folders
Send All Open Files:
- Right-click in editor
- Choose "Send Open File Path" for your preferred CLI
๐ Using Templates (0.4.0+)
- Enable in Settings
gemini-cli-vscode.templates.enabled: true
- Register template files (Settings UI)
- Setting key:
gemini-cli-vscode.templates.files - In the Settings UI, click โAdd Itemโ and enter one file path per item (relative paths resolve from workspace root)
- Example values (one per item):
.history-memo/prompts.mddocs/prompts.md
- Example in settings.json:
{
"gemini-cli-vscode.templates.files": [
".history-memo/prompts.md",
"docs/prompts.md"
]
}
- Formats and handling
- MAGUS format (front matter at file start
---): treated as a single template - Plain Markdown: split by top-level H1 (
# ...) and listed as multiple templates - History: only the latest
.history-memo/YYYY-MM-DD.mdis listed and split by H1- New history format writes H1 entries like
# [10:24:32] - MAGUS Council โ gemini, codex, claude - No per-file top header is written (date is obvious from the filename)
- New history format writes H1 entries like
- Grouping, order, and usage
- Templates are grouped per file; groups can be collapsed/expanded
- Group order follows the
templates.filesorder you set - Order inside a group follows H1 appearance (MAGUS format is a single item)
- In the Templates view: expand a group โ select an item โ preview โ insert via [Head]/[Cursor]/[Tail]/[Replace]
๐ฎ Using MAGUS Council
From Unified Control Panel:
- Open MAGUS Council panel in sidebar
- Check desired AIs (Gemini/Claude/Codex)
- Enter prompt
- Click "๐ฎ Ask n AIs" button for batch sending
Individual Control Also Available:
- Direct operation from each AI tab
- Traditional file sending features
- Context menu operations
๐ Command List
MAGUS Council Commands:
- "MAGUS Council: Open" - Open unified control panel
- "MAGUS Council: Send Selected Text" - Send selected text to MAGUS Council
- "MAGUS Council: Send File Path" - Send file/folder paths to MAGUS Council
- "Multi-AI: Ask All" - Batch send to selected AIs
Existing Commands:
- "Launch All CLIs" - Launch multiple CLIs at once (tabs in same group)
CLI Commands (v0.2.1+ Hierarchical Structure):
All commands now follow a consistent pattern: {extension}.{cli}.{action}.{target}
Gemini CLI:
gemini.start.newPane- Launch Gemini in new panegemini.start.activePane- Launch Gemini in active panegemini.send.selectedText- Send selected text to Geminigemini.send.filePath- Send files/folders to Geminigemini.send.openFiles- Send all open files to Gemini
Codex CLI:
codex.start.newPane- Launch Codex in new panecodex.start.activePane- Launch Codex in active panecodex.send.selectedText- Send selected text to Codexcodex.send.filePath- Send files/folders to Codexcodex.send.openFiles- Send all open files to Codex
Claude CLI:
claude.start.newPane- Launch Claude in new paneclaude.start.activePane- Launch Claude in active paneclaude.send.selectedText- Send selected text to Claudeclaude.send.filePath- Send files/folders to Claudeclaude.send.openFiles- Send all open files to Claude
Qwen CLI:
qwen.start.newPane- Launch Qwen in new paneqwen.start.activePane- Launch Qwen in active paneqwen.send.selectedText- Send selected text to Qwenqwen.send.filePath- Send files/folders to Qwenqwen.send.openFiles- Send all open files to Qwen
Common Commands:
saveClipboardToHistory- Save conversation (works with all terminals)launchAllCLIs- Launch all enabled CLIs simultaneouslymultiAI.openComposer- Open MAGUS Council composermultiAI.askAll- Send to all active CLIs
โจ๏ธ Custom Keyboard Shortcuts
Set your own keybindings:
- Open Keyboard Shortcuts:
Cmd+K Cmd+S(Mac) orCtrl+K Ctrl+S(Windows/Linux) - Search for the command (e.g., "gemini.start" or "claude.send")
- Click the pencil icon to assign your preferred keys
Note: If you had custom keybindings from v0.2.0 or earlier, please see MIGRATION.md for updating instructions.
๐ Why Choose This Over Alternatives?
๐ฏ Perfect For
- Developers who love Claude Code's UX but want to use Gemini or GPT-5
- Anyone tired of switching between terminal and editor
๐ Comparison
| Feature | This Extension | Gemini Code Assist | Gemini CLI | Codex CLI | Claude Code |
|---|---|---|---|---|---|
| Unified AI Management | โ MAGUS Council | โ | โ | โ | โ |
| Simultaneous Prompt Sending | โ | โ | โ | โ | โ |
| Code generation | โ | โ | โ | โ | โ |
| Runs in editor pane | โ | โ (sidebar) | โ (terminal) | โ (terminal) | โ |
| Gemini models | โ | โ | โ | โ | โ |
| OpenAI models | โ | โ | โ | โ | โ |
| Claude models | โ | โ | โ | โ | โ |
| Qwen models | โ | โ | โ | โ | โ |
โ๏ธ Configuration Options
Settings are organized in two tiers for better usability:
Standard Settings (Main Configuration)
These are the essential settings most users need:
{
// Enable/disable AI features
"gemini-cli-vscode.gemini.enabled": true,
"gemini-cli-vscode.codex.enabled": true,
"gemini-cli-vscode.claude.enabled": true,
"gemini-cli-vscode.qwen.enabled": false
// Core features
"gemini-cli-vscode.magusCouncil.enabled": true,
"gemini-cli-vscode.contextMenu.enabled": true,
"gemini-cli-vscode.saveToHistory.enabled": true
}
Advanced Settings (Fine-tuning)
For power users who want detailed control:
{
// MAGUS Council configuration
"gemini-cli-vscode.magusCouncil.defaultAgents": ["gemini", "codex", "claude"],
"gemini-cli-vscode.magusCouncil.launch.clis": ["claude", "gemini", "codex"],
"gemini-cli-vscode.magusCouncil.composer.delays.initial": 100,
// Context menu fine-tuning
"gemini-cli-vscode.contextMenu.showSendText": true,
"gemini-cli-vscode.contextMenu.showSendFilePath": true,
"gemini-cli-vscode.gemini.showInContextMenu": true,
// Custom CLI commands (examples)
"gemini-cli-vscode.gemini.command": "gemini",
"gemini-cli-vscode.gemini.args": ["--model", "gemini-pro"],
"gemini-cli-vscode.claude.command": "claude",
"gemini-cli-vscode.claude.args": [],
// Terminal behavior
"gemini-cli-vscode.terminal.groupingBehavior": "same",
"gemini-cli-vscode.terminal.cwdCommand": "cd \"{path}\"",
"gemini-cli-vscode.terminal.disableFlowControl": true,
// History file settings ๐
"gemini-cli-vscode.saveToHistory.useLocalTimezone": true,
"gemini-cli-vscode.saveToHistory.dayBoundary": "00:00",
"gemini-cli-vscode.saveToHistory.includeTerminalName": true
}
Settings Explained
Standard Settings:
*.enabled: Enable/disable each AI CLI integrationmagusCouncil.enabled: Enable the unified AI management interfacecontextMenu.enabled: Show AI commands in right-click menussaveToHistory.enabled: Enable conversation saving to.history-memo
Advanced Settings:
magusCouncil.defaultAgents: Pre-selected AIs when opening MAGUS CouncilmagusCouncil.launch.clis: Order and selection for "Launch All CLIs"contextMenu.show*: Fine-grained control over menu items*.command/*.args: Customize CLI launch commandsterminal.groupingBehavior: How terminals are grouped ("same" or "new")terminal.cwdCommand: Command used to change to workspace directory before launching (supports{path}placeholder)saveToHistory.useLocalTimezone: Use local timezone for history timestampssaveToHistory.dayBoundary: Custom day boundary time (e.g., "02:00" for night shift workers)saveToHistory.includeTerminalName: Include terminal name in saved history entries
Template Settings (0.4.0+)
gemini-cli-vscode.templates.enabled(default: true)- Master ON/OFF for the Templates feature
gemini-cli-vscode.templates.files(array, default: [])- Register additional Markdown files as template sources
- In the Settings UI, click โAdd Itemโ and enter one file path per item (relative paths resolve from workspace root)
- MAGUS format becomes a single template; plain Markdown is split by H1
๐ค Contributing
Bug reports, feature requests, and pull requests are welcome!
- Bug Reports: Issues
- Feature Requests: Issues
- Pull Requests: Pull Requests
๐ Acknowledgments
- Gemini CLI by Google
- Claude Code by Anthropic
- VS Code Extension developer community
๐จ Icon Credits
Icons used in this extension are property of their respective owners:
- AllCLIs-icon.png - Irasutoya
- claude-logo.png - Anthropic
- codex-icon.png - OpenAI
โป Company logos are used for identification purposes only. This extension has no official affiliation with these companies.
๐ If You Like This Extension
โญ Please star on GitHub! ๐ Report any bugs you find ๐ก Share your feature ideas ๐ข Share with your team
โญ Star on GitHub | ๐ Report Bug | ๐ก Request Feature
๐ License
MIT License - See LICENSE file for details
๐ค Author
Joji Jorge Senda (@d3j)
- For design details, see docs/templates-design.md