.claude/skills/lint/SKILL.md
Run golangci-lint and static analysis on Go code. Use before pushing or to check code quality.
npx skillsauth add PeterBooker/veloria lintInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Run golangci-lint to check code quality and catch issues before CI.
/lint - Lint all packages/lint ./internal/repo/... - Lint a specific packageRun golangci-lint
golangci-lint run $ARGUMENTS 2>&1
If no arguments provided, run on all packages:
golangci-lint run ./... 2>&1
If golangci-lint is not installed, install it:
go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest
Then re-run step 2.
Parse and report findings
Group issues by severity and file:
## Lint Results
### Errors
- [list of errors with file:line references]
### Warnings
- [list of warnings with file:line references]
### Summary
- Total issues: N
- Files affected: N
Offer to fix auto-fixable issues If issues are auto-fixable, offer to run:
golangci-lint run --fix $ARGUMENTS 2>&1
The project uses .golangci.yml in the repo root. Read this file to understand which linters are enabled/disabled before interpreting results.
Current exclusions:
internal/codesearch/ - excluded from linting and formatting (forked upstream code)The CI pipeline runs golangci-lint, go vet ./..., and gosec (see /security-scan skill).
Running /lint locally before pushing catches most CI failures.
development
Run Go unit tests. Use after code changes to verify correctness.
development
Run gosec and govulncheck to find security vulnerabilities. Use before releases or after dependency changes.
tools
Trigger reindexing of a specific WordPress extension. Use to rebuild the search index for a plugin, theme, or core version.
development
Run Go race detector to find data races in concurrent code. Use after any change to mutexes, goroutines, or channels.