Claude-skill-registry go-development
Production-grade Go development patterns for building resilient services. Use when developing Go applications, implementing job schedulers, Docker integrations, LDAP clients, or needing patterns for resilience, testing, and performance optimization. By Netresearch.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/go-development" ~/.claude/skills/majiayu000-claude-skill-registry-go-development && rm -rf "$T"
manifest:
skills/data/go-development/SKILL.mdsource content
Go Development Patterns
When to Use
- Building Go services or CLI applications
- Implementing job scheduling or task orchestration
- Integrating with Docker API
- Building LDAP/Active Directory clients
- Designing resilient systems with retry logic
- Setting up comprehensive test suites
Required Workflow
For comprehensive reviews, ALWAYS invoke these related skills:
- Security audit - Invoke
for OWASP analysis, vulnerability assessment, and security patterns/netresearch-skills-bundle:security-audit - Enterprise readiness - Invoke
for OpenSSF Scorecard, SLSA compliance, supply chain security/netresearch-skills-bundle:enterprise-readiness - GitHub project setup - Invoke
for branch protection, rulesets, CI workflow validation/netresearch-skills-bundle:github-project
A Go development review is NOT complete until all related skills have been executed.
Core Principles
Type Safety
- Avoid:
,interface{}
, scattered type assertions, reflectionsync.Map - Prefer: Generics
, concrete types, compile-time verification[T any]
Consistency
- One pattern per problem domain
- Match existing codebase patterns
- Refactor holistically or not at all
Conventions
- Errors: lowercase, no punctuation (
)errors.New("invalid input") - Naming: ID, URL, HTTP (not Id, Url, Http)
- Error wrapping:
fmt.Errorf("failed to process: %w", err)
References
Load these as needed for detailed patterns and examples:
| Reference | Purpose |
|---|---|
| Package structure, config management, middleware chains |
| Retry logic, graceful shutdown, context propagation |
| Docker client patterns, buffer pooling |
| LDAP/Active Directory integration |
| Test strategies, build tags, table-driven tests |
| golangci-lint v2, staticcheck, code quality |
| Bitmask options, functional options, builders |
| Go fuzzing patterns, security seeds |
| Gremlins configuration, test quality measurement |
| Standard Makefile interface for CI/CD |
Quality Gates
Run these checks before completing any review:
golangci-lint run --timeout 5m # Linting go vet ./... # Static analysis staticcheck ./... # Additional checks govulncheck ./... # Vulnerability scan go test -race ./... # Race detection
Contributing: Submit improvements to https://github.com/netresearch/go-development-skill