One CGO-free binary. No service to stand up.
macOS, Linux, and Windows. Install it, run the preflight check, point it at a repository, and mark an issue Todo.
Pick your platform.
Winget — use the package manager that already manages your developer tools
winget install --id DigitalDrywood.Detent --source wingetOr Scoop, for a user-local install
scoop bucket add digitaldrywood https://github.com/digitaldrywood/scoop-bucket
scoop install detentOr the PowerShell installer, for bootstrap and CI images
irm https://raw.githubusercontent.com/digitaldrywood/detent/main/install.ps1 | iexThe PowerShell installer verifies the SHA-256 checksum, installs to %LOCALAPPDATA%\detent\bin, and adds it to the user PATH.
- go install
- Homebrew (macOS and Linux)
- Winget and Scoop
- .deb and .rpm
- or copy a single file
Release self-updates verify SHA-256 checksums fetched from GitHub releases. Update integrity currently rests on GitHub TLS plus the published checksum file; release signing with a pinned minisign key is still open work, and the repository says so.
What has to be on the host.
Detent dispatches agents from the machine it runs on, so the agent CLI and its login live there too.
OpenAI Codex CLI, signed in
Detent drives every agent through codex app-server on the host that dispatches them.
codex --versionGitHub CLI (gh)
optionalUsed for authentication and GitHub lookups. Optional, but assumed throughout the docs.
gh auth statusA GitHub token scoped to your tracker mode
ProjectV2 mode usually needs repo, read:org, read:project, and write project. Boardless issue-field mode needs repository issue access plus organization issue-field read access.
detent doctor --port 0Go 1.26 or newer
optionalOnly for go install or building from source. Release binaries need nothing installed.
go versionClaude Code CLI, signed in
optionalOnly when routing selected roles to the claude_code backend. Detent stores no Claude credentials; it uses the ambient CLI login or ANTHROPIC_API_KEY.
claude --versionPreflight, then point it at a board.
$ detent doctor
checks gh, codex, token scope, config discovery,
workspace roots, and dashboard bind
$ detent doctor --port 0
read-only: never mutates, safe on an existing install$ detent version
$ detent --format json version
version, commit, and build date as JSON
$ detent update --checkThen let an agent onboard you
Detent is meant to be driven from the top down by AI agents, and setup is no exception. The repository ships an agent-executable onboarding runbook that inspects your target repository, works out which path applies — new install, existing install, or a new project on an existing host — and asks only the decisions it genuinely needs from you. It will not create, link, or mutate a GitHub Project, label, issue, or config file until you confirm.
The package manager that installed it, owns it.
Release installer
detent update Use --yes for non-interactive automation and --format json for machine-readable status. On Windows the replacement is staged and completes after the running detent.exe exits.
Homebrew
brew upgrade digitaldrywood/tap/detent Winget and Scoop
winget upgrade --id DigitalDrywood.Detent Or scoop update detent.
Go install
detent update --from-release Switches a go-installed binary to the checksum-verified release asset and pins future updates to release-binary management.
The state machine, the gate model, worktree isolation, and the merge train.
The interaction-model argument, the default choices, and the comparison matrix.
The operator surface: lanes, agent activity, budget and rate-limit state, and the TUI.
Reviewed recordings of Detent moving real work through checked-in workflows.
The curated operator reference, mirrored from a pinned Detent release.
MIT, the repository, releases, contributing, and the self-hosting proof.