Use when reviewing Go code or checking code against community style standards. Also use proactively before submitting a Go PR or when reviewing any Go code changes, even if the user doesn't explicitly request a style review. Does not cover language-specific syntax — delegates to specialized skills.
npx skills add https://github.com/cxuu/golang-skills --skill go-code-review
> Compatibility: references/WEB-SERVER.md uses log/slog examples that require Go 1.21+.
assets/review-template.md - Use when formatting review output with Must Fix, Should Fix, and Nits sections.scripts/pre-review.sh - Run before manual review to collect gofmt, go vet, and golangci-lint results.references/WEB-SERVER.md - Read when reviewing an HTTP server that combines concurrency, context, logging, error handling, and shutdown behavior.> Use assets/review-template.md when formatting the output of a code review to ensure consistent structure with Must Fix / Should Fix / Nits severity grouping.
gofmt -d . and go vet ./... to catch mechanical issues first> Validation: After completing the review, re-read the diff once more to verify every flagged issue is real. Remove any finding you cannot justify with a specific line reference.
gofmt or goimports → [go-linting_; handle, return, or (exceptionally) panic → [go-error-handlingMixedCaps or mixedCaps, never underscores; unexported is maxLength not MAX_LENGTH → [go-namingURL/url, ID/id, HTTP/http (e.g., ServeHTTP, xmlHTTPRequest) → [go-namingi, r, c); longer names for wider scope → [go-namingc for Client); no this, self, me; consistent across methods → [go-namingchubby.File not chubby.ChubbyFile); avoid util, common, misc → [go-packageserror, string, len, cap, append, copy, new, make → [go-declarationsvar t []string (nil) over t := []string{} (non-nil zero-length) → [go-data-structures*T methods' receivers by value → [go-data-structurescrypto/rand for keys, not math/rand → [go-defensivevar/const/type in parenthesized blocks; separate unrelated → [go-declarationsvar for intentional zero values; := for explicit assignments → [go-declarationsvar for zero structs → [go-declarationsany: Prefer any over interface{} in new code → [go-declarations/* name */ comments for ambiguous bool/int args, or use custom types → [go-functionsf for go vet → [go-functionsstring not *string for small fixed-size types → [go-performance+ for simple; fmt.Sprintf for formatting; strings.Builder for loops → [go-performancelog/slog, not log or fmt.Println for operational logging → [go-loggingimport _ "pkg" only in main package or tests → [go-packagesExample functions or tests demonstrating usage → [go-documentationgot != want → [go-testinghttptest.NewServer + real client over mocking HTTP → [go-testingRun automated pre-review checks:
bash scripts/pre-review.sh ./... # text output
bash scripts/pre-review.sh --json ./... # structured JSON output
Or manually: gofmt -l <path> && go vet ./... && golangci-lint run ./...
Fix any issues before proceeding to the checklist above. For linter setup and configuration, see go-linting.
Use when receiving code review feedback, before implementing suggestions, especially if feedback seems unclear or technically questionable - requires technical rigor and verification, not performative agreement or blind implementation
Use when completing tasks, implementing major features, or before merging to verify work meets requirements
Execute git commit with conventional commit message analysis, intelligent staging, and message generation. Use when user asks to commit changes, create a git commit, or mentions "/commit". Supports: (1) Auto-detecting type and scope from changes, (2) Generating conventional commit messages from diff, (3) Interactive commit with optional type/scope/description overrides, (4) Intelligent file staging for logical grouping
Comprehensive GitHub code review with AI-powered swarm coordination
Behavioral guidelines to reduce common LLM coding mistakes. Use when writing, reviewing, or refactoring code to avoid overcomplication, make surgical changes, surface assumptions, and define verifiable success criteria.
Use this skill to review code. It supports both local changes (staged or working tree) and remote Pull Requests (by ID or URL). It focuses on correctness, maintainability, and adherence to project standards.
Refactor bloated AGENTS.md, CLAUDE.md, or similar agent instruction files to follow progressive disclosure principles. Splits monolithic files into organized, linked documentation.
Create high-quality git commits: review/stage intended changes, split into logical commits, and write clear commit messages (including Conventional Commits). Use when the user asks to commit, craft a commit message, stage changes, or split work into multiple commits.
Take cxuu/go-code-review from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.