npx claudepluginhub jamesprial/prial-plugins --plugin golang-workflowThis skill uses the workspace's default tool permissions.
Built-in static analyzer that catches common mistakes.
Reviews Go code for idiomatic patterns, error handling, concurrency safety, and common mistakes. Useful for .go files, goroutines, interfaces, generics (1.18+), and errors.Join/slog (1.20+/1.21+).
Reviews Go code against community style standards for formatting, documentation, error handling, and naming using checklists from Go Wiki and Uber guide. Use before PRs or code reviews.
Share bugs, ideas, or general feedback.
Built-in static analyzer that catches common mistakes.
go vet ./...
go vet ./pkg/...
// Bad
fmt.Printf("%d", "string")
// Good
fmt.Printf("%s", "string")
// Bad
return value
fmt.Println("never runs")
// Good
fmt.Println("runs")
return value
// Bad
Person{"Alice", 30}
// Good
Person{Name: "Alice", Age: 30}
// Bad
var p *int
fmt.Println(*p)
// Good
if p != nil {
fmt.Println(*p)
}
// Bad - mutex copied
func process(mu sync.Mutex) {
mu.Lock()
}
// Good - pass pointer
func process(mu *sync.Mutex) {
mu.Lock()
}
// Bad
ctx := context.TODO()
// Good
ctx := context.Background()
// or accept ctx as parameter
go vet ./... 2>&1 | tee vet.log