# guardrails

> A Claude Code plugin that formats and lints every edit, and won't let Claude finish a turn until the code builds, passes its tests and meets your coverage bar.

- URL: https://rossedman.io/projects/guardrails/

Guardrails is one Go binary shipped as a Claude Code plugin, for Go, Python, Shell, YAML, Terraform and Docker. It has a fast inner loop on every edit and a hard gate at the end of every turn.

- **Fix, don't nag.** Every edited file is formatted in place, then linted and type-checked, in about two seconds.
- **Gate every turn.** Touched code must build, pass its tests, meet the coverage bar and pass every linter for its language.
- **Presets** for new code and existing repos, where coverage may never drop.
- **Claude can't move the goalposts.** New `//nolint`, `# noqa`, skipped tests and edits to the guardrail config are denied.
- **Dangerous commands need you**, and packages that don't exist or look like typosquats are blocked before they're installed.
- **Nothing to install.** Linters and scanners are pinned, checksum-verified and downloaded on first use.
