Overview
care runs every quality, security, dependency, and test check for a repo in one command and rolls them into one grade.
care is a repository health and code-quality gate. It runs every quality, security, dependency, and test check for a repo in one command, then rolls the results into a single grade out of 100 with a letter and a verdict. Run it before you push, in CI, or on a timer behind a dashboard.
It is built to work across many repos and languages. Go is the first ecosystem, and each check runs only where it applies, so a repo with no benchmarks skips the benchmark check and a non-Go repo skips the Go checks.
Install
# go
go install github.com/toaweme/care/cmd/care@latest
# homebrew (macos)
brew install toaweme/tap/care
# scoop (windows)
scoop bucket add toaweme https://github.com/toaweme/scoop-bucket
scoop install toaweme/carecare shells out to a few tools (golangci-lint, govulncheck, betterleaks, plus go and gofmt). With auto_install: true, the default, it installs any missing binary on demand through brew or go install. You can pin or disable individual tools in config.
Run care on a repo
Bare care runs care status with every check on. Point it at a repo and run it.
cd my-repo
caregithub.com/toaweme/care │ C 78/100 needs-attention │ 7 passed, 2 failed, 1 skipped │ 3.2s │ 6 tools
main · a4d4a5a · 18 commits · dirty +235 -0 · touched 3m ago
✓ build compiles
✓ dependencies tidy, no replace directives
✓ docs 84% documented (309/366, 57 undocumented)
✓ tests 161 tests, 38.5% coverage, 7 untested
✓ secrets 0 secrets
✓ vulnerabilities 0 vulnerabilities (+12 in go toolchain)
✗ lint 1 issue
✗ version control 1 uncommitted (+235 -0)One command, every check, one grade. Add --json to emit the full report for a dashboard or badge, or --output report.care.json to write it to a file.
Note
care needs no config to run. Its defaults are sensible on their own. Layer a care.yml only when you want to pin a tool, turn a check off, or retune the grade.
Where to go next
Start with the guides to learn how each part behaves, then reach for the configuration reference when you need an exact key or flag.
care get.ConfigurationEvery care.yml key and every command's flags.