Skip to content

Install Development Tools

The sandbox image ships with common utilities (git, curl, jq, ripgrep, python3, vim, and others) but does not include language runtimes like Node.js, Go, or Ruby. You can install additional tools with Homebrew, and they persist across sessions.

Install Homebrew

The sandbox includes a brew wrapper that installs Homebrew on first use. Run any brew command inside the sandbox to trigger the installation:

Inside the sandbox
brew --version

Homebrew is installed into a dedicated persistent volume at /home/linuxbrew/.linuxbrew, so it only needs to install once. Subsequent sessions reuse the existing installation.

Note

The homebrew and vcs-github presets are included in the default preset. If you have default enabled (pre-selected on first run), no additional network configuration is needed.

Install language runtimes

Use brew install inside the sandbox to add language runtimes and tools:

Inside the sandbox
# Node.js
brew install node

# Go
brew install go

# Ruby
brew install ruby

# Rust
brew install rust

Installed packages persist in the linuxbrew volume and are available in future sessions without reinstalling.

Network access for package managers

After installing a language runtime, its package manager (npm, pip, cargo, etc.) needs network access to download dependencies. Enable the matching preset for your ecosystem:

On the host
vibepit run --reconfigure

Select the relevant preset in the interactive selector (e.g., pkg-node for npm, pkg-go for Go modules). See the Network Presets reference for the full list of available presets.

What persists between sessions

Homebrew and all installed packages live in the persistent linuxbrew volume (vibepit-linuxbrew, mounted at /home/linuxbrew), while shell state and dotfiles live in the persistent home volume (vibepit-home, mounted at /home/code). Your project directory is bind-mounted from the host and is always up to date.

For the full list of mounts and what persists, see the Sandbox Environment reference.