Reference
Commands
Every voodoo command, on one page.
The same list voodoo --help prints.
Plain voodoo
In a terminal, voodoo with no command opens the terminal UI, starting the daemon if none is running. Piped, it prints the status instead, so a script gets something it can read.
Projects and what is running
| Command | What it does |
|---|---|
| voodoo add [folder] | Start keeping track of a project. This folder, if you don’t say. |
| voodoo status | The daemon, and what’s running. |
| voodoo worktrees | The git worktrees cut for agents, and what is in each. |
| voodoo worktrees remove <which> | Delete a worktree: its folder, and its branch. By its number in voodoo worktrees, or by its branch. |
Sharing work
Run from inside a worktree or a project. The daemon decides what may go up, so an agent running these gets the same answer you would.
| Command | What it does |
|---|---|
| voodoo push | Push the branch you are on. Never forced, and never main, master or origin’s default branch from an agent’s worktree. |
| voodoo pr | Push, then open a pull request through gh, or find the one already open. |
Phones
| Command | What it does |
|---|---|
| voodoo pair | Show a code for the Voodoo app to scan, and wait for the phone. |
| voodoo phones | The phones paired with this machine. |
| voodoo unpair <which> | Forget a phone, by its name or the start of its key. Its key can’t reach this machine after this. |
The daemon
| Command | What it does |
|---|---|
| voodoo setup | Have the daemon start at login, start it, and check what voodoo needs. Safe to run again. |
| voodoo update | Install the latest release over this voodoo, and restart the daemon as it. Sessions keep running. |
| voodoo stop | Stop the daemon, and every session with it. |
| voodoo restart | Stop the daemon and start it again. |
| voodoo logs | Follow the daemon’s log. |
Options
| Option | What it does |
|---|---|
| --discard | With worktrees remove, lose whatever in it hasn’t landed. |
| -V, --version | Print the version. |
| -h, --help | Show the help. |
How they speak
One mark to a line: ✓ went well, ! worth a look, ✗ failed, › a plain fact. An error is one sentence that says what is wrong and then what to do, and it goes to stderr, so a script reading stdout never mistakes it for output. Colour is left out when the output isn’t a terminal, and under NO_COLOR.