Go conventions for hexagonal architecture, project structure, error handling, testing, and observability. Use when writing Go services.
Installation
$skills install @eser/go-practices
Claude Code
Cursor
Copilot
Codex
Antigravity
Details
Usage
After installing, this skill will be available to your AI coding assistant.
Verify installation:
skills listSkill Instructions
name: go-practices description: Go conventions for hexagonal architecture, project structure, error handling, testing, and observability. Use when writing Go services.
go-practices
Quick Start
- Follow hexagonal architecture: business logic in
pkg/api/business/, adapters inpkg/api/adapters/ - Use snake_case for all Go files
- Wrap errors:
fmt.Errorf("%w: %w", ErrSentinelError, err) - Run tests with race detection:
go test -race ./...
Key Principles
- Business logic has NO external dependencies
- All external interactions through interfaces
- Composition via AppContext (composition root)
- Table-driven tests with
t.Parallel() - OpenTelemetry for observability
References
See rules.md for complete conventions.
More by eser
View alldesign-principles
83Code design patterns: pure functions, immutability, composition, and async. Use when designing code or functions.
workflow-practices
83Workflow rules for task execution, respecting user code, and git commits. Use when planning or executing development tasks.
javascript-practices
83JS/TS conventions for syntax, modules, and types. Use when writing or reviewing JavaScript/TypeScript code.
architecture-guidelines
83System architecture: modules, project structure, ADRs, and testing. Use when designing or reviewing systems.