Containerized Development Environment with Full IDE Support
VibeCode is a containerized development platform providing a complete development environment with SSH access, PostgreSQL database, Valkey cache, and a full VS Code editor in your browser.
- Container Native: Runs on Docker, Podman, Kubernetes, or Apple Containers
- Full Development Stack:
- OpenVSCode Server - Full VS Code editor in your browser
- PostgreSQL 16 - Production-ready relational database
- Valkey - High-performance in-memory data store
- SSH Server - Secure remote access
- Volume Mounting: Persistent storage and file sharing with host
- Multi-Platform: macOS (Apple Silicon + Intel), Linux
- Orchestration Ready: Works with Gas Town multi-agent orchestration
- Docker, Podman, or compatible container runtime
- 2GB RAM available
- 500MB disk space
# Clone the repository
git clone https://github.com/ryanmaclean/vibecode-webgui.git
cd vibecode-webgui
# Start with Docker Compose
docker compose up -d
# Or use the launcher
./install.sh
vibecode start
# Check status
vibecode status
# Access services
vibecode ssh # SSH access
open http://localhost:8080 # OpenVSCode in browserSee QUICK-START.md for more details.
VibeCode supports multiple container runtimes:
| Runtime | Status | Notes |
|---|---|---|
| Docker | Supported | Primary runtime |
| Podman | Supported | Daemonless alternative |
| Kubernetes | Supported | Production orchestration |
| Apple Containers | Planned | Native macOS containers |
See Issue #877 for runtime roadmap.
- OpenVSCode: http://localhost:8080
- SSH:
ssh root@localhost -p 2222(password:vibecode) - PostgreSQL:
psql -h localhost -U postgres - Valkey:
redis-cli -h localhost -p 6379
| Service | Port | Description |
|---|---|---|
| OpenVSCode Server | 8080 | Full VS Code editor with terminal |
| SSH (Dropbear) | 22 | Secure shell access |
| PostgreSQL 16 | 5432 | Relational database |
| Valkey | 6379 | In-memory cache and data store |
- Startup Time: ~5 seconds from container start to IDE ready
- Memory Usage: ~400MB baseline
- Image Size: ~500MB compressed
- Services: Parallel startup for maximum efficiency
Share files between your host and the container:
# Docker
docker run -v /path/to/project:/workspace vibecode
# Docker Compose (recommended)
# Edit docker-compose.yml volumes section
volumes:
- ./workspace:/workspace
- vibecode-data:/dataFiles will be mounted at /workspace inside the container. See Volume Mounting Guide for details.
VibeCode now exposes POST /api/webhooks/github-actions, which ingests GitHub Actions
workflow_run failures and automatically slings beads to Gas Town polecats.
- Configure the following environment variables (see
env.*.example):GITHUB_WEBHOOK_SECRET– shared secret used to verify incoming notificationsGASTOWN_WEBHOOK_URL(+ optionalGASTOWN_API_TOKEN,GASTOWN_RIG,GASTOWN_DEFAULT_PRIORITY)
- Add the secrets
GASTOWN_WEBHOOKandGITHUB_WEBHOOK_SECRETto your GitHub repository. - The workflow in
.github/workflows/notify-gastown.ymlwill postworkflow_runfailures to the webhook, including the raw event payload and HMAC signature.
When Gas Town acknowledges the request it responds with the bead ID and assigned polecat, and the webhook logs trace IDs + payload metadata for observability.
- Development Environments: Full-stack development with code editor, database, and cache
- Testing: Isolated environments for integration testing
- Education: Learn Linux, databases, and web development
- Prototyping: Rapid application development with persistent storage
- CI/CD: Lightweight build and test environments
VibeCode includes a command-line tool for easy container management:
# Start/stop/restart
vibecode start # Start containers
vibecode stop # Stop containers
vibecode restart # Restart containers
# Status and access
vibecode status # Show container and service status
vibecode ssh # SSH into the container
vibecode logs # View container logs
vibecode logs -f # Follow logs in real-time
# Configuration
vibecode config show # Show current configuration
vibecode config edit # Edit configuration
# Help
vibecode help # Show help
vibecode version # Show version info- Single command to start/stop/restart containers
- Automatic service health checking
- Built-in SSH with password handling
- Log viewing and following
- Configuration management
- Volume mounting setup
- Datadog monitoring integration
See UNIFIED-TOOL-GUIDE.md for complete documentation.
- Quick Start Guide - Get up and running in 5 minutes
- Unified Tool Guide - Complete launcher documentation
- Volume Mounting - File sharing between host and VM
- Performance & Optimization - Boot time and size optimizations
- Architecture - Technical details and design decisions
- Troubleshooting - Common issues and solutions
Want to customize the VM or build it yourself? See CONTRIBUTING.md for build instructions.
Tested on Apple Silicon and Linux:
- Container Start: ~5 seconds to IDE ready
- Image Pull: ~30 seconds (first time only)
- Service Startup: Parallel (all services launch simultaneously)
- Memory Footprint: ~400MB baseline, ~800MB with active workload
- Image Size: ~500MB compressed
- Container Native: Runs on any OCI-compliant runtime
- Multi-Arch: Supports ARM64 and AMD64 architectures
- Parallel Startup: Services launch simultaneously for fast boot
- Optimized Images: Minimal base images with multi-stage builds
- Health Checks: Built-in container health monitoring
- macOS, Linux, or Windows with WSL2
- Docker, Podman, or compatible container runtime
- 4GB RAM (2GB for container, 2GB for host)
- 1GB free disk space
- 2 CPU cores (configurable)
- 2GB RAM (configurable, minimum 1GB)
- ~500MB disk space for images
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Contributing: See CONTRIBUTING.md
VibeCode VM is open source software licensed under the MIT License.
Built with:
- OpenVSCode Server - VS Code in the browser
- PostgreSQL - World's most advanced open source database
- Valkey - High-performance in-memory data store
- Docker - Container platform
- Gas Town - Multi-agent orchestration
VibeCode VM is currently in active development. The core functionality is stable and ready for use, with ongoing improvements to documentation, testing, and features.
Current Version: v1.5.0
Made with care for developers who value speed and simplicity.