Install

One curl, two Bash deps. Under a minute.

Prerequisites

Install the Bash deps

# Debian / Ubuntu
sudo apt install jq netcat-openbsd

# macOS
brew install jq nmap

Install claw-drive

curl -fsSL https://raw.githubusercontent.com/renatodarrigo/claw-drive/main/install.sh | bash

The bootstrap fetches the latest main tarball into ~/.local/share/claw-drive/, builds it, and copies claw-drive + claw-drive-approver into ~/.local/bin/. If ~/.local/bin isn't on your PATH, the installer prints the one-liner to add it.

To pass flags through the pipe, separate them from bash with -s --:

curl -fsSL https://raw.githubusercontent.com/renatodarrigo/claw-drive/main/install.sh | bash -s -- \
  --project ~/code/your-project \
  --policy  ~/code/your-project/.claw-drive/policy.json

From source

For contributors (see Contributing), or if you want symlink-mode (changes in your working tree apply to the installed bins immediately):

git clone https://github.com/renatodarrigo/claw-drive
cd claw-drive
./install.sh

Installer flags

FlagEffect
--copyCopy binaries instead of symlinking. Forced on remote installs (the source dir is managed, not yours).
--bin-dir PATHInstall to a custom location (may need sudo).
--project PATHAlso register claw-drive in that project's .mcp.json.
--policy PATHDrop the starter policy template into a project.
--uninstallRemove bins (and the .mcp.json entry with --project).

All flags work with both the curl-pipe form (after bash -s --) and the clone form. The installer is idempotent — re-run it any time.

Verify

claw-drive --help

Should print the subcommand list: sessions, show, tail, pending, approve, reject, and the rest — see Reference.

Manual install

If the script isn't your style:

npm install && npm run build
ln -s "$(pwd)/bin/claw-drive"          ~/.local/bin/
ln -s "$(pwd)/bin/claw-drive-approver" ~/.local/bin/

Uninstall

./install.sh --uninstall