← ClaudeAtlas

go-lintinglisted

Recommended Go linters and golangci-lint configuration. Use when setting up linting for a Go project or configuring CI/CD.
dwana1/golang-skills · ★ 0 · DevOps & Infrastructure · score 72
Install: claude install-skill dwana1/golang-skills
# Go Linting > **Source**: Uber Go Style Guide ## Core Principle More important than any "blessed" set of linters: **lint consistently across a codebase**. Consistent linting helps catch common issues and establishes a high bar for code quality without being unnecessarily prescriptive. --- ## Minimum Recommended Linters > **Source**: Uber Go Style Guide These linters catch the most common issues while maintaining a high quality bar: | Linter | Purpose | |--------|---------| | [errcheck](https://github.com/kisielk/errcheck) | Ensure errors are handled | | [goimports](https://pkg.go.dev/golang.org/x/tools/cmd/goimports) | Format code and manage imports | | [revive](https://github.com/mgechev/revive) | Common style mistakes (modern replacement for golint) | | [govet](https://pkg.go.dev/cmd/vet) | Analyze code for common mistakes | | [staticcheck](https://staticcheck.dev) | Various static analysis checks | > **Note**: `revive` is the modern, faster successor to the now-deprecated `golint`. --- ## Lint Runner: golangci-lint > **Source**: Uber Go Style Guide Use [golangci-lint](https://github.com/golangci/golangci-lint) as your lint runner: - **Performance**: Optimized for large codebases - **Unified config**: Configure many linters at once - **Extensible**: Add linters as needed for your project See the [example .golangci.yml](https://github.com/uber-go/guide/blob/master/.golangci.yml) from uber-go/guide. --- ## Example Configuration Create `.golangci.yml` in yo