Agent skill

go-patterns

Go development patterns: testing, concurrency, errors, review, and conventions.

Stars 324
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/notque/claude-code-toolkit/tree/main/skills/go-patterns

SKILL.md

Go Patterns Skill

Umbrella skill for Go development: testing, concurrency, error handling, anti-patterns, code review, SAP CC conventions, and quality gates. Routes to the correct reference based on the Go task at hand.

Instructions

Step 1: Identify the Go Domain

Classify the task into one or more domains, then load the corresponding reference files. Only load what is needed -- do not load all references for every task.

Domain Load Reference When
Testing references/testing.md Writing, fixing, or reviewing Go tests
Concurrency references/concurrency.md Goroutines, channels, sync primitives, race conditions
Error handling references/error-handling.md Error wrapping, sentinels, custom types, errors.Is/As
Anti-patterns references/anti-patterns.md Detecting code smells, over-engineering, bad Go patterns
Code review references/code-review.md Reviewing Go code or PRs for quality
SAP CC conventions references/sapcc-conventions.md Working in sapcc/* repos with go-bits
Quality gate references/quality-gate.md Running make check, linting, pre-commit validation

Multiple domains may apply. For example, reviewing a PR that includes concurrency code should load both code-review.md and concurrency.md.

Step 2: Load and Follow the Reference

Read the selected reference file(s) using ${CLAUDE_SKILL_DIR}/references/<name>.md. Each reference contains the full methodology, phases, code examples, and error handling for that domain. Follow the instructions in the reference as if they were this skill's instructions.

Step 3: Use Domain-Specific Sub-References

Some references point to their own sub-reference files for extended patterns:

Testing sub-references:

  • ${CLAUDE_SKILL_DIR}/references/testing/go-test-patterns.md -- Full table-driven test, helper, mock examples
  • ${CLAUDE_SKILL_DIR}/references/testing/go-benchmark-and-concurrency.md -- b.Loop() benchmarks, synctest

Concurrency sub-references:

  • ${CLAUDE_SKILL_DIR}/references/concurrency/concurrency-patterns.md -- Worker pool, fan-out/fan-in, pipeline, rate limiter, graceful shutdown

Error handling sub-references:

  • ${CLAUDE_SKILL_DIR}/references/error-handling/patterns.md -- gopls tracing, HTTP handler patterns, error wrapping in middleware

Anti-patterns sub-references:

  • ${CLAUDE_SKILL_DIR}/references/anti-patterns/code-examples.md -- Extended before/after for all 7 anti-patterns

Code review sub-references:

  • ${CLAUDE_SKILL_DIR}/references/code-review/common-review-comments.md -- Go code patterns with good/bad examples

SAP CC conventions sub-references (extensive):

  • ${CLAUDE_SKILL_DIR}/references/sapcc-conventions/sapcc-code-patterns.md -- Primary reference: actual code patterns
  • ${CLAUDE_SKILL_DIR}/references/sapcc-conventions/library-reference.md -- Complete approved/restricted library table
  • ${CLAUDE_SKILL_DIR}/references/sapcc-conventions/architecture-patterns.md -- Full 102-rule architecture spec
  • ${CLAUDE_SKILL_DIR}/references/sapcc-conventions/review-standards-lead.md -- 21 lead review comments
  • ${CLAUDE_SKILL_DIR}/references/sapcc-conventions/review-standards-secondary.md -- 15 secondary review comments
  • ${CLAUDE_SKILL_DIR}/references/sapcc-conventions/anti-patterns.md -- 20+ quality issues with BAD/GOOD examples
  • ${CLAUDE_SKILL_DIR}/references/sapcc-conventions/extended-patterns.md -- Security, K8s, PR hygiene patterns
  • Plus: api-design-detailed.md, build-ci-detailed.md, error-handling-detailed.md, go-bits-philosophy-detailed.md, pr-mining-insights.md, testing-patterns-detailed.md

Quality gate sub-references:

  • ${CLAUDE_SKILL_DIR}/references/quality-gate/common-lint-errors.json -- Linter descriptions and fix suggestions
  • ${CLAUDE_SKILL_DIR}/references/quality-gate/makefile-targets.json -- Available make targets
  • ${CLAUDE_SKILL_DIR}/references/quality-gate/expert-review-patterns.md -- Manual review patterns
  • ${CLAUDE_SKILL_DIR}/references/quality-gate/examples.md -- Detailed usage examples

Step 4: Execute

Follow the loaded reference methodology. Each reference has its own phases, gates, and completion criteria. Apply them as written.

Available Scripts

Scripts are organized by domain in sub-directories:

  • Testing: scripts/gen-table-test.sh, scripts/bench-compare.sh
  • Error handling: scripts/check-errors.sh
  • Code review: scripts/check-interface-compliance.sh
  • SAP CC conventions: scripts/check-sapcc-identify-endpoint.sh, scripts/check-sapcc-auth-ordering.sh, scripts/check-sapcc-json-strict.sh, scripts/check-sapcc-time-now.sh, scripts/check-sapcc-httptest.sh, scripts/check-sapcc-todo-format.sh
  • Quality gate: scripts/quality_checker.py, scripts/validate.py

Error Handling

Errors are domain-specific. Load the relevant reference file and check its Error Handling section for troubleshooting guidance.

Expand your agent's capabilities with these related and highly-rated skills.

Didn't find tool you were looking for?

Be as detailed as possible for better results