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.8.1.tar.gz (226.5 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.8.1-py3-none-any.whl (27.8 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for vibepod-0.8.1.tar.gz
Algorithm Hash digest
SHA256 2416a2915e43ea0a69c53d542b8ae22ad7ed588ab8bf3fd7f8bab8ae82541394
MD5 7cd011dae4b038d6c3d7ad128d045c26
BLAKE2b-256 072d9d54e7812070aa182fc1e9c00b8ab6ee46ddfc2f6054f86e5440da5f05d1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: vibepod-0.8.1-py3-none-any.whl
  • Upload date:
  • Size: 27.8 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.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9cf7a46de5b63f5f1bf9809b7f59bc8ac46c2975d583fda01b400c06331a6685
MD5 6de66847e525672b4001bd2d53166d60
BLAKE2b-256 7c772bea818f4f2ac92926b206355203835d463be2d96e9b09a48804c72cdd26

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