Install Dough

One command installs the dough CLI, its dependencies, the Dough plugin, and signs you in.

Install on macOS

Open Terminal and run the one command below. On macOS this is the whole setup, not just the CLI: it also installs the dependencies Claude Code needs, installs the Dough plugin, and signs you in.

  • Makes sure python3 and git are usable. The CLI binary itself needs no runtime, but the hooks it registers in Claude Code are Python, so a machine without it runs a broken hook in every session. On macOS both tools come from Apple's Command Line Tools, so if those are missing the installer opens Apple's installer and waits for it to finish.
  • Detects your chip (Apple Silicon or Intel), downloads the matching binary to /usr/local/bin/dough — or ~/.local/bin/dough if the former is not writable, which is the normal case on a stock Mac — and checks it runs.
  • Adds that folder to your PATH in your shell profile if it is not already there, choosing the file your login shell actually reads. DOUGH_SKIP_PROFILE=1 opts out.
  • Registers the Claude Code hooks and verifies they landed, then installs the Dough plugin and signs you in (skipped if you already have a session).
  • Safe to re-run: every step checks before it acts, so the same command installs, repairs, and updates. It stops at the first thing it cannot fix and prints what to do.
  • When it finishes, fully quit Claude Code and reopen it. Closing the window is not enough — use Cmd+Q, or right-click the Dock icon and Quit. Claude Code reads the plugin and hooks at startup.
  • Open a new terminal before using the dough command. curl | sh runs in its own shell and cannot change the PATH of the window you started it from.
shellcurl -fsSL https://raw.githubusercontent.com/Dough-AI/dough-installer/main/install.sh | sh

Install on Windows

Open PowerShell (or Windows Terminal) and run the one command below. On Windows this is the whole setup, not just the CLI: it also installs the dependencies Claude Code needs, installs the Dough plugin, and signs you in.

  • Installs Python 3 if python is not already a working interpreter. The CLI binary itself needs no runtime, but the hooks it registers in Claude Code are Python, so a machine without it runs a broken hook in every session.
  • Installs Git for Windows if bash.exe is missing. The Claude Code desktop app refuses local sessions without its Git Bash, and git being on PATH does not imply it — a minimal git passes git --version and leaves the app blocked.
  • Downloads dough.exe to %LOCALAPPDATA%\dough\bin, adds that folder to your user PATH, and checks it runs. Usable right away in the same window; new terminals pick it up automatically.
  • Registers the Claude Code hooks and verifies they landed, then installs the Dough plugin.
  • Points Claude Code at Git Bash by setting CLAUDE_CODE_GIT_BASH_PATH, so the app does not refuse local sessions on a machine that has Git installed. Then signs you in (skipped if you already have a session).
  • Safe to re-run: every step checks before it acts, so the same command installs, repairs, and updates. It stops at the first thing it cannot fix and prints what to do.
  • When it finishes, fully quit Claude Code and reopen it. Closing the window is not enough — use Alt+F4 or quit from the system tray. Claude Code reads the plugin and hooks at startup.
  • The binary is currently unsigned, so the first run may show a SmartScreen prompt — choose More info, then Run anyway.
shellirm https://raw.githubusercontent.com/Dough-AI/dough-installer/main/install.ps1 | iex

Related