Installation
Festival includes two CLI tools: fest (festival planning) and camp (campaign management). All installation methods install both.
Requirements
gitis required. Festival depends on it for campaign init, project management, template sync, and commit-aware workflows.sccis recommended but optional. Without it,camp leveragefeatures will not work.
Homebrew (Recommended)
brew install --cask Obedience-Corp/tap/festival
Direct Download
Download the latest .tar.gz for your Mac from
GitHub Releases,
extract, and move to your PATH:
tar xzf festival-*-macOS-*.tar.gz
sudo mv fest camp /usr/local/bin/
Debian / Ubuntu
Download the .deb package from
GitHub Releases:
sudo dpkg -i festival_*_amd64.deb
Fedora / RHEL
sudo rpm -i festival-*.x86_64.rpm
Arch Linux (AUR)
yay -S festival-bin
Alpine
sudo apk add --allow-untrusted festival_*.apk
Direct Download
tar xzf festival-*-linux-*.tar.gz
sudo mv fest camp /usr/local/bin/
Stable Windows packages are temporarily paused while Windows support is being hardened.
For now, use WSL2 and follow the Linux installation methods above.
Scoop and direct .zip downloads will return once Windows support is marked stable.
Other Methods
Shell Script
A convenience script is available for macOS and Linux:
curl -fsSL https://raw.githubusercontent.com/Obedience-Corp/festival/main/install.sh | bash
~/.local/bin.
The installer checks for git and stops early if it is missing. If scc is not installed, the installer continues and warns that camp leverage features will be unavailable until you add it.
Review the script source before running.From Source
fest and camp source repositories are private. Building from source requires access to the private repos. Most users should use the package manager or binary download methods above.Requires Go 1.25+:
go install github.com/Obedience-Corp/fest/cmd/fest@latest
go install github.com/Obedience-Corp/camp/cmd/camp@latest
Verify Installation
fest --version
camp --version
Shell Integration
Enable navigation features by adding to your ~/.zshrc or ~/.bashrc:
eval "$(fest shell-init zsh)"
eval "$(camp shell-init zsh)"
See Shell Setup for details.
Then continue with the Quick Start to follow the validated beginner path through first fest next.