Skip to main content

One CLI for containerized AI coding agents

Project description

VibePod

Docs PyPI CI Docs Build License

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 installpip install vibepod

Installation

VibePod is available on PyPI:

pip install vibepod

Quick Start

vp run <agent>
# examples:
vp run claude
vp run codex

VibePod CLI preview

Current Status

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

Analytics & Dashboard

VibePod collects metrics locally while your agents run and serves them through a built-in dashboard.

VibePod Analytics 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

By default, agent images use the vibepod namespace for Claude, Codex, and platform services, and nezhar for Gemini/OpenCode/Devstral/Auggie/Copilot.

Current defaults are aligned to existing container repos:

  • claude -> vibepod/claude:latest
  • gemini -> nezhar/gemini-container:latest (repo)
  • opencode -> nezhar/opencode-cli:latest (repo)
  • devstral -> nezhar/devstral-cli:latest (repo)
  • auggie -> nezhar/auggie-cli:latest (repo)
  • copilot -> nezhar/copilot-cli:latest (repo)
  • codex -> vibepod/codex:latest
  • datasette -> vibepod/datasette:latest
  • proxy -> 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=nezhar/gemini-container:latest vp run gemini
VP_IMAGE_OPENCODE=nezhar/opencode-cli:latest vp run opencode
VP_IMAGE_DEVSTRAL=nezhar/devstral-cli:latest vp run devstral
VP_IMAGE_AUGGIE=nezhar/auggie-cli:latest vp run auggie
VP_IMAGE_COPILOT=nezhar/copilot-cli: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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vibepod-0.7.0.tar.gz (223.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vibepod-0.7.0-py3-none-any.whl (27.4 kB view details)

Uploaded Python 3

File details

Details for the file vibepod-0.7.0.tar.gz.

File metadata

  • Download URL: vibepod-0.7.0.tar.gz
  • Upload date:
  • Size: 223.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for vibepod-0.7.0.tar.gz
Algorithm Hash digest
SHA256 14d904cc78ac4d353d684d91fba1cfe5b5013519fc8511f7fff32f2886e92d71
MD5 9f3fefd14f6213c275739e8b9ce6cda4
BLAKE2b-256 5b4972f21b8ad6618d57cc55246ee99e79aa0d6af603111d7b50805c81f5019e

See more details on using hashes here.

File details

Details for the file vibepod-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: vibepod-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 27.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for vibepod-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b0fb418188450f5b04a333bb4b9a4b0b12b49c3aa66b1cfa10cc8ba4056bb4cc
MD5 e1b2fe295555dd3dad47227fa335d09c
BLAKE2b-256 fe52e967490f791b7d137cb8106cf406670f0c8a17f8460dde0851cddd10bac2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page