Gemini CLI on VSCode ?
🇯🇵 日本語版 | 🇺🇸 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
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) or Ctrl+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.md
docs/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.md
is 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)
- Grouping, order, and usage
- Templates are grouped per file; groups can be collapsed/expanded
- Group order follows the
templates.files
order 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 pane
gemini.start.activePane
- Launch Gemini in active pane
gemini.send.selectedText
- Send selected text to Gemini
gemini.send.filePath
- Send files/folders to Gemini
gemini.send.openFiles
- Send all open files to Gemini
Codex CLI:
codex.start.newPane
- Launch Codex in new pane
codex.start.activePane
- Launch Codex in active pane
codex.send.selectedText
- Send selected text to Codex
codex.send.filePath
- Send files/folders to Codex
codex.send.openFiles
- Send all open files to Codex
Claude CLI:
claude.start.newPane
- Launch Claude in new pane
claude.start.activePane
- Launch Claude in active pane
claude.send.selectedText
- Send selected text to Claude
claude.send.filePath
- Send files/folders to Claude
claude.send.openFiles
- Send all open files to Claude
Qwen CLI:
qwen.start.newPane
- Launch Qwen in new pane
qwen.start.activePane
- Launch Qwen in active pane
qwen.send.selectedText
- Send selected text to Qwen
qwen.send.filePath
- Send files/folders to Qwen
qwen.send.openFiles
- Send all open files to Qwen
Common Commands:
saveClipboardToHistory
- Save conversation (works with all terminals)
launchAllCLIs
- Launch all enabled CLIs simultaneously
multiAI.openComposer
- Open MAGUS Council composer
multiAI.askAll
- Send to all active CLIs
⌨️ Custom Keyboard Shortcuts
Set your own keybindings:
- Open Keyboard Shortcuts:
Cmd+K Cmd+S
(Mac) or Ctrl+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.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 integration
magusCouncil.enabled
: Enable the unified AI management interface
contextMenu.enabled
: Show AI commands in right-click menus
saveToHistory.enabled
: Enable conversation saving to .history-memo
Advanced Settings:
magusCouncil.defaultAgents
: Pre-selected AIs when opening MAGUS Council
magusCouncil.launch.clis
: Order and selection for "Launch All CLIs"
contextMenu.show*
: Fine-grained control over menu items
*.command
/ *.args
: Customize CLI launch commands
terminal.groupingBehavior
: How terminals are grouped ("same" or "new")
saveToHistory.useLocalTimezone
: Use local timezone for history timestamps
saveToHistory.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!
🙏 Acknowledgments
🎨 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