VibePod is a unified CLI (vp
) for running AI coding agents in isolated
Docker or Podman containers β no required configuration, no setup. Just
vp run <agent>
. Includes built-in local metrics collection, HTTP traffic tracking, and an analytics dashboard to monitor and compare agents side-by-side.
- β‘
Zero configβ no setup required;
vp run <agent>
just works. Optional YAML for custom configuration - π³
Isolated agentsβ each agent runs in its own Docker or Podman container - π
Unified interfaceβ one CLI for Claude, Gemini, Codex, Devstral/Vibe, Copilot, Auggie, Pi, Agy & more - π§©
Skillsβ install reusable prompt recipes per-project or per-user withvp skills add
- π
Local analytics dashboardβ track usage and HTTP traffic per agent, plus token metrics - βοΈ
Agent comparisonβ benchmark multiple agents against each other in the dashboard - π
Privacy-firstβ all metrics collected and stored locally, never sent to the cloud - π¦
Simple installβ
pip install vibepod
VibePod is available on PyPI:
pip install vibepod
vp run <agent>
vp run claude
vp run codex
vp run vibe # alias of devstral
Extra arguments after the agent are forwarded to the agent process. Use --
before agent flags so VibePod does not parse them as its own options:
vp run <agent> -- <agent-args>
Use --ikwid
to append each agent's auto-approval / permission-skip flag when supported.
| Agent | --ikwid appended args |
|---|---|
claude |
|
--dangerously-skip-permissions |
|
gemini |
|
--approval-mode=yolo |
|
devstral (vibe ) |
|
--auto-approve |
|
copilot |
|
--yolo |
|
codex |
|
--dangerously-bypass-approvals-and-sandbox |
|
pi |
|
--approve |
|
agy |
|
--dangerously-skip-permissions |
|
opencode |
|
| Not supported | |
auggie |
|
| Not supported |
This repository contains an initial v1 implementation with:
vp run <agent>
vp stop <agent|--all>
vp list
vp config init
vp config show
vp config path
vp version
VibePod collects metrics locally while your agents run and serves them through a built-in dashboard.
| Command | Description |
|---|---|
vp logs start |
|
| Start or resume dashboard for collected metrics | |
vp logs stop |
|
| Stop the dashboard container | |
vp logs status |
|
| Show dashboard container status |
The dashboard shows per-agent HTTP traffic, usage over time, and Claude token metrics. It also lets you compare agents side-by-side. All data stays on your machine.
All agent images are published under the vibepod namespace on Docker Hub. Source Dockerfiles are in
Current defaults:
claude
->vibepod/claude:latest
gemini
->vibepod/gemini:latest
opencode
->vibepod/opencode:latest
devstral
(alias:vibe
) ->vibepod/devstral:latest
auggie
->vibepod/auggie:latest
copilot
->vibepod/copilot:latest
codex
->vibepod/codex:latest
pi
->vibepod/pi:latest
agy
->vibepod/agy:latest
datasette
->vibepod/datasette:latest
proxy
->vibepod/proxy:latest
(repo)
You can override any single image directly:
VP_IMAGE_CLAUDE=vibepod/claude:latest vp run claude
VP_IMAGE_GEMINI=vibepod/gemini:latest vp run gemini
VP_IMAGE_OPENCODE=vibepod/opencode:latest vp run opencode
VP_IMAGE_DEVSTRAL=vibepod/devstral:latest vp run devstral
VP_IMAGE_DEVSTRAL=vibepod/devstral:latest vp run vibe # same agent/image as devstral
VP_IMAGE_AUGGIE=vibepod/auggie:latest vp run auggie
VP_IMAGE_COPILOT=vibepod/copilot:latest vp run copilot
VP_IMAGE_CODEX=vibepod/codex:latest vp run codex
VP_IMAGE_PI=vibepod/pi:latest vp run pi
VP_IMAGE_AGY=vibepod/agy:latest vp run agy
VP_DATASETTE_IMAGE=vibepod/datasette:latest vp logs start
VP_SKILLS_ENGINE_IMAGE=vibepod/skills-engine:latest vp skills list
MIT License - see LICENSE for details.