Refactor high-complexity React components in Dify frontend. Use when `pnpm analyze-component...
npx skills add netresearch/go-development-skill --skill "go-development"
Install specific skill from multi-skill repository
# Description
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.
# SKILL.md
name: go-development
description: "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."
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
/netresearch-skills-bundle:security-auditfor OWASP analysis, vulnerability assessment, and security patterns - Enterprise readiness - Invoke
/netresearch-skills-bundle:enterprise-readinessfor OpenSSF Scorecard, SLSA compliance, supply chain security - GitHub project setup - Invoke
/netresearch-skills-bundle:github-projectfor branch protection, rulesets, CI workflow validation
A Go development review is NOT complete until all related skills have been executed.
Core Principles
Type Safety
- Avoid:
interface{},sync.Map, scattered type assertions, reflection - Prefer: Generics
[T any], concrete types, compile-time verification
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 |
|---|---|
references/architecture.md |
Package structure, config management, middleware chains |
references/resilience.md |
Retry logic, graceful shutdown, context propagation |
references/docker.md |
Docker client patterns, buffer pooling |
references/ldap.md |
LDAP/Active Directory integration |
references/testing.md |
Test strategies, build tags, table-driven tests |
references/linting.md |
golangci-lint v2, staticcheck, code quality |
references/api-design.md |
Bitmask options, functional options, builders |
references/fuzz-testing.md |
Go fuzzing patterns, security seeds |
references/mutation-testing.md |
Gremlins configuration, test quality measurement |
references/makefile.md |
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
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.