vibe-pi
Ask, plan and review code with Pi, Claude Code, Codex and Gemini CLI — from one chat in VS Code, without letting any of them touch your files.
vibe-pi puts a chat in VS Code's Secondary Side Bar. Ask the Pi coding agent, then send the next question to Claude Code, Codex or Gemini CLI from the same picker. It runs the CLIs you already have, with the sign-ins you already have, and every route in the chat is read-only.
Preview. vibe-pi is new. Questions and feedback are welcome on the Q&A tab.
Highlights
- One chat, several agents. Pi, Claude Code, Codex and Gemini CLI in one route and model picker. The model list is what your installed runtimes report, so new models show up without an update.
- Read-only chat. Every route can read and search your workspace but cannot change files or run commands. Use it for questions, plans, second opinions and reviews without worrying about side effects.
- Your accounts, no new one. vibe-pi has no service or account of its own. Each route runs your installed CLI and signs in the way that CLI does, so existing subscriptions and API keys keep working.
- Context from the editor. Mention
@file, @folder, @symbol or a line range. From the editor menu, add a selection to the chat, ask about it, or review the active file; from Source Control, review your Git changes. The Pi session can look at open editors, the selection, diagnostics, symbols, terminal output and test results.
- Private by design. No telemetry. Your prompts go only to the CLI or provider you pick.
Get started
- Install Pi and sign in. Install it with
npm install -g @earendil-works/pi-coding-agent, run pi, then type /login (or set an API key for a provider Pi supports).
- Optional: install and sign in to Claude Code, Codex or Gemini CLI. vibe-pi finds them on your
PATH, or set their paths in Settings.
- Open vibe-pi in the Secondary Side Bar (or run vibe-pi: Focus Chat), pick a route and a model, and ask.
Until Pi is signed in, a banner offers Open Pi to run /login and lets you use a Claude Code, Codex or Gemini route in the meantime. vibe-pi: Doctor shows what is installed and ready.
Routes
| Route |
What runs |
Needs |
| Pi SDK Session (default) |
A persistent Pi session inside VS Code, with read-only file and editor tools |
Pi signed in |
| Pi Prompt |
The pi CLI, one run per message, read-only tools |
Pi signed in |
| Claude Code |
claude -p in plan mode with tools off |
Claude Code signed in |
| GPT / Codex |
codex exec in a read-only sandbox, with its own isolated settings |
Codex signed in |
| Gemini CLI |
gemini in plan mode with a policy that denies tools |
Gemini CLI signed in |
The Pi SDK Session uses the Pi you installed. If it cannot be loaded, vibe-pi can install a pinned copy of the Pi SDK into its own storage, and asks first.
When you want Pi to change code, Open Pi starts Pi in VS Code's terminal in the same folder, with Pi's own commands, tools and permission prompts.
Chat features
- Sessions are saved per workspace; reopen them from History.
- While a reply is running, new messages go to a Queue. Stop (or
Esc) ends the run and anything it started.
- Pick the thinking level for models that support it. Token use and cost appear when Pi reports them.
- Replies render Markdown and code. Keys and tokens in output are masked, and editor tools never read
.env, .git, node_modules or credential files.
Settings
| Setting |
What it does |
vibePi.piBin, vibePi.claudeBin, vibePi.codexBin, vibePi.geminiBin |
Paths to each CLI. Empty means find it on PATH. |
vibePi.defaultCwd |
Working folder. Empty means the first workspace folder. |
vibePi.timeoutMs |
Longest time one reply may take (default 3 minutes). |
vibePi.claudeArgs, vibePi.codexArgs, vibePi.geminiArgs |
Extra CLI arguments, for example a model. |
vibePi.defaultAgent |
Route used by the editor's Ask and Review commands. |
Requirements
- VS Code 1.100 or later on macOS, Linux or Windows.
- Pi for the Pi routes. Claude Code, Codex and Gemini CLI are optional.
- The interface is available in English, Korean, Japanese, Simplified and Traditional Chinese, German, French, Spanish, Italian, Brazilian Portuguese, Russian, Turkish, Polish and Czech. It follows VS Code's display language.
Privacy
vibe-pi does not collect or send usage data. Prompts, files and editor context go only to the CLI or Pi provider you choose, under that provider's terms. The editor tools for the Pi session listen on 127.0.0.1 only and require a random token. The Codex route copies your Codex sign-in file into vibe-pi's storage so Codex runs with isolated settings.
Known limitations
- After a window reload, a Pi reply that was still running cannot be reattached; its saved output stays readable.
- Pi's session tree, fork and steer are available in Open Pi, not in the side-bar chat.
- Codex reads the workspace with its own tools, so the protected-file rule is an instruction to Codex rather than a hard block.
Support
Ask questions and report problems on the Q&A tab of this page.
License
Free to use for personal and commercial work. See the license on this page for the full terms.
| |