Profile Configuration
A profile is a YAML file that describes your full development environment: which repositories to clone, what to run during install, how to handle environments, and what custom commands are available to the team.
Task Types
Tasks are the unit of work in raid. They appear in install steps, commands, environments, and task groups. Every task has a type field and type-specific fields. Task types are case-sensitive and must be written in Title Case as shown.
Environments
Environments let you define named configurations — sets of variables and tasks — that can be applied across all repositories at once. Switching from local to staging to production is a single command.
Task Groups
Task groups let you define reusable sequences of tasks at the profile level, then reference them by name from commands, install steps, or environments. This keeps your configuration DRY and makes complex workflows easier to maintain.
Variables
Variables let you pass dynamic values into tasks — paths, credentials, feature flags, or anything that changes between runs or environments. Raid resolves $VAR and $ references before executing a task, using a well-defined priority order.
Repository Configuration
Each repository managed by raid can define its own configuration by committing a raid.yaml file at its root. This lets teams colocate service-specific commands, environments, and install steps right next to the code they apply to.