Getting Started
Raid is designed to be easy to get up and running. This guide walks through installing the CLI, creating your first profile, and running your project for the first time.
Install
Homebrew for macOS/Linux
brew install 8bitalex/tap/raid
Script for macOS/Linux
curl -fsSL https://raidcli.dev/install.sh | bash
Download for Windows/Linux/macOS
Download the latest release from the GitHub releases page and add it to your PATH.
Create a profile
Run the interactive wizard to create your first profile:
raid profile create
The wizard asks for a profile name and walks you through adding repositories. Each repository needs a name, a Git URL, and a local path.
If your team already has a profile, download and register it directly:
raid profile add https://example.com/team-profile.yaml
Or register a local file you've downloaded manually:
raid profile add ./my-profile.yaml
See Profile Configuration for the full file format.
Install your project
Once a profile is active, clone all repositories and run their install tasks:
raid install
Raid clones all repositories concurrently, then runs profile-level install tasks followed by each repository's install tasks in profile order.
To install a single repository:
raid install <repo-name>
Run a command
If your profile or any of its repositories define custom commands, they are available immediately:
raid <command>
Commands accept positional arguments, which are available as RAID_ARG_1, RAID_ARG_2, etc.:
raid deploy staging us-east-1
Run raid --help to see all available commands, including any defined in the active profile.
Switch environments
Apply a named environment across all repositories:
raid env local
This sets the configured variables and runs any environment tasks for each repository. See Environments for details.
Custom config path
By default, raid looks for its config at $HOME/.config/raid/config.toml. Use the --config (or -c) flag to point to a different location:
raid --config ~/my-config.toml install
Next steps
- Profile Configuration — repositories, environments, and commands
- Task Types — everything a task can do
- Task Groups — reusable task sequences with retries
- Variables — variable resolution and expansion
- Environments — switch between dev, staging, and production
- Repository Configuration — per-repo commands and environments
- Custom Commands — arguments, output redirection, and more
- Command Reference — built-in commands