One CLI for containerized AI coding agents
Project description
VibePod
VibePod is a unified CLI (vp) for running AI coding agents in isolated
Docker 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.
Features
- ⚡ Zero config — no setup required;
vp run <agent>just works. Optional YAML for custom configuration - 🐳 Isolated agents — each agent runs in its own Docker container
- 🔀 Unified interface — one CLI for Claude, Gemini, Codex, Devstral, Copilot, Auggie & more
- 📊 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
Installation
VibePod is available on PyPI:
pip install vibepod
Quick Start
vp run <agent>
# examples:
vp run claude
vp run codex
Current Status
This repository contains an initial v1 implementation with:
vp run <agent>vp stop <agent|--all>vp listvp config initvp config showvp config pathvp version
Analytics & Dashboard
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.
Image Namespace
All agent images are published under the vibepod namespace on Docker Hub. Source Dockerfiles are in VibePod/vibepod-agents.
Current defaults:
claude->vibepod/claude:latestgemini->vibepod/gemini:latestopencode->vibepod/opencode:latestdevstral->vibepod/devstral:latestauggie->vibepod/auggie:latestcopilot->vibepod/copilot:latestcodex->vibepod/codex:latestdatasette->vibepod/datasette:latestproxy->vibepod/proxy:latest(repo)
Overriding Images
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_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_DATASETTE_IMAGE=vibepod/datasette:latest vp logs start
License
MIT License - see LICENSE for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vibepod-0.9.0.tar.gz.
File metadata
- Download URL: vibepod-0.9.0.tar.gz
- Upload date:
- Size: 489.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
31c008133e1522705ebfc4f63bfe0989d897bbac8f5768a50fdca6811ea2fc4c
|
|
| MD5 |
4b0b8e968092c6cd494029c3c4ec6027
|
|
| BLAKE2b-256 |
6282dd6bbde40d72b6dad2effc5e1cc7917ff4666a2e65ebe09af9618b3a80a9
|
File details
Details for the file vibepod-0.9.0-py3-none-any.whl.
File metadata
- Download URL: vibepod-0.9.0-py3-none-any.whl
- Upload date:
- Size: 28.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f8c8be73a444a51f3e40491c15edbb8806a04f73c1d96d6c14c61976d332fe1b
|
|
| MD5 |
7713d330f3fe435a3cbd437aefae95f9
|
|
| BLAKE2b-256 |
624d4b4fdafd0bb34a0fdbda6478f5469e4f6c25569f2d4adae462c35d837411
|