git clone https://github.com/syntaxroot-cc/gomnibus
cd gomnibus
go build ./cmd/gomnibusA pre-commit hook enforces gofmt on staged Go files. Enable it once after cloning:
git config core.hooksPath .githooksThe hook checks only the files you're committing and tells you exactly what to fix if anything is misformatted. The same check runs in CI (golangci-lint), so enabling the hook avoids a wasted CI run.
go test ./...
go vet ./...The Kitchen integration tests (Docker-based, multi-platform) run in CI automatically on pushes that touch internal/, cmd/, or examples/. To run them locally, see examples/myapp/.kitchen.yml and the gomnibus kitchen subcommand.
Use the /add-software skill in Claude Code, or follow the YAML schema in internal/software/definition.go.
Use the /add-packager skill in Claude Code. New packagers register themselves via init() and need a blank import in cmd/gomnibus/main.go.
- No comments explaining what — only non-obvious why.
- New fetcher/packager/cache backends register via
init(). - Error messages:
"<context>: <cause>"with%wwrapping. gofmtis enforced; run it before committing.