Profile
Manage profiles — create, register, switch, and remove.
raid profile <subcommand>
raid p is a shorthand alias for raid profile.
Subcommands
| Subcommand | Description |
|---|---|
raid profile create | Interactive wizard to create a new profile |
raid profile add <path|url> | Register an existing profile file |
raid profile list | List all registered profiles |
raid profile <name> | Switch the active profile |
raid profile remove <name> | Remove a registered profile |
Examples
Create a new profile interactively:
raid profile create
Add a profile from a local file:
raid profile add ./my-profile.yaml
Add a repo config (raid.yaml) as a single-repo profile — useful for projects that ship only a raid.yaml without a wrapping profile file. The profile is named after the raid.yaml's name field:
raid profile add ./raid.yaml
raid profile <name> # activate using the raid.yaml's name
Add a profile from a git repository — raid shallow-clones it and imports *.raid.yaml, *.raid.yml, and profile.json files found at the root. If none of those match, raid falls back to any plain .yaml / .yml / .json at the root, so a single-file gist (or scratch repo) with profile.yaml or myprofile.yml works without renaming:
raid profile add https://github.com/my-org/raid-profiles
raid profile add [email protected]:my-org/raid-profiles.git
raid profile add https://gist.github.com/<user>/<id> # gist with profile.yaml
Add a profile from a raw file URL (HTTP/HTTPS URL ending in .yaml, .yml, or .json) — handy for the gist "Raw" link, where the filename inside the gist doesn't matter:
raid profile add https://example.com/team-profile.yaml
raid profile add https://raw.githubusercontent.com/my-org/repo/main/team.raid.yaml
raid profile add https://gist.githubusercontent.com/<user>/<id>/raw/<sha>/profile.yaml
URL type detection. Raid picks the right strategy automatically:
| URL form | Strategy |
|---|---|
git@… prefix or .git suffix | Git clone |
HTTP/HTTPS ending in .yaml / .yml / .json | Direct download |
| Any other HTTP/HTTPS URL | Probed with git ls-remote; cloned if it responds, otherwise downloaded |
Profiles fetched from a URL are saved to ~/<name>.raid.yaml and registered automatically. If no active profile is set, the first imported profile becomes active.
List all profiles and see which is active:
raid profile list
Switch to a different profile:
raid profile my-team
Remove a profile:
raid profile remove my-team
JSON output
raid profile list accepts --json for scriptable, machine-readable output. The result is an array of objects with name, path, and a boolean active flag for the currently selected profile.
raid profile list --json
[
{ "name": "team", "path": "/Users/me/team.raid.yaml", "active": true },
{ "name": "personal", "path": "/Users/me/personal.raid.yaml", "active": false }
]
Profile files
A profile is a YAML file describing repositories, environments, install tasks, and custom commands. See Profile Configuration for the full format.