Installation
flawless is a single static binary. Installing it means putting that one
file on your PATH; there is no daemon to register, no service files, no
post-install steps.
macOS / Linux (installer script)
Section titled “macOS / Linux (installer script)”curl -fsSL https://raw.githubusercontent.com/3cpo-dev/flawless/main/install.sh | shThe script downloads the latest release for your OS/architecture into
~/.local/bin/flawless (or /usr/local/bin when ~/.local/bin is not
on your PATH and you run it with sudo). It does nothing else — you can
read it in one screen.
Windows
Section titled “Windows”Download flawless_windows_amd64.exe from the
latest release,
rename it to flawless.exe, and put it somewhere on your PATH.
Note:
--detachuses Unix process groups and is not supported on Windows; run flawless in a second terminal instead.
go install
Section titled “go install”If you have Go 1.22+:
go install github.com/3cpo-dev/flawless@latestBecause flawless has zero dependencies and zero telemetry in any build,
this produces exactly the same behavior as a release binary (only the
flawless version string differs).
From source
Section titled “From source”git clone https://github.com/3cpo-dev/flawlesscd flawlessmake build # or: go build -o flawless ../flawless versionPrerequisites
Section titled “Prerequisites”| Tool | Needed for | Required? |
|---|---|---|
git 2.20+ | everything | yes |
claude or codex (or any agent CLI) | review, docs, auto-fix | recommended — without one, flawless still runs tests/lint/push |
gh | PR creation, CI watching | optional — those steps skip themselves politely |
Verify with:
flawless doctorUpdating
Section titled “Updating”Re-run the installer script, or go install …@latest. There is no
daemon to restart and no state to migrate — the new binary just replaces
the old one, even mid-workday.
Uninstalling
Section titled “Uninstalling”rm "$(command -v flawless)"Per-repo run history lives in .git/flawless/ and is removed with the
repo (or with rm -rf .git/flawless). The optional global config is
~/.config/flawless/. That is the complete footprint.