- Home
- Skills
- Physics91
- Claude Vibe
- Go Reviewer
go-reviewer_skill
- TypeScript
1
GitHub Stars
1
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill physics91/claude-vibe --skill go-reviewer- SKILL.md7.7 KB
Overview
This skill reviews Go code for idiomatic patterns, robust error handling, concurrency safety, interface design, and testing quality. It surfaces concrete issues and prioritized recommendations so teams can fix critical bugs, avoid data races, and improve maintainability. Use it to get a focused, actionable audit of Go projects.
How this skill works
The reviewer scans the repository for go.mod and .go files, detects common Go layouts (cmd/, internal/, pkg/) and test files. It runs targeted checks for ignored or unwrapped errors, goroutine leaks and data races, interface size and placement, package organization, and missing test patterns. Findings are grouped by severity with short remediation steps.
When to use it
- Before merging major changes in a Go service or library
- When you suspect data races, goroutine leaks, or deadlocks
- To validate error handling and proper error wrapping
- During refactoring to improve interface boundaries and testability
- When adding or improving unit tests and benchmarks
Best practices
- Always check and return errors; add context with fmt.Errorf("...: %w", err)
- Protect shared state with sync primitives or channels and prefer context cancellation
- Keep interfaces small and define them at the consumer boundary
- Depend on io.Reader/io.Writer and other abstractions for easier testing
- Use table-driven tests and extract common test helpers for clarity
- Run golangci-lint and add benchmarks for hot code paths
Example use cases
- Audit a microservice to find ignored database errors and add context wrapping
- Detect potential goroutine leaks and add errgroup with context timeouts
- Refactor a large service interface into focused, testable interfaces
- Convert brittle tests into table-driven tests and add benchmarks
- Validate package layout and remove accidental exported symbols
FAQ
It detects test files and recommends running go test and golangci-lint; it can suggest specific test additions and linter fixes but does not execute them by default.
How are concurrency issues prioritized?
Data race risks and goroutine leaks are flagged as critical or high; missing context cancellation and unbuffered channel deadlocks are prioritized for immediate attention.