writing-go
Installation
SKILL.md
Go Development (1.25+)
Core Philosophy
-
Stdlib and Mature Libraries First
- Always prefer Go stdlib solutions
- External deps only when stdlib is insufficient
- Choose mature, well-maintained libs when needed
- Don't reinvent the wheel—use existing solutions
-
Concrete Types Over
any- Never use
interface{}oranywhen concrete type works - Generics for reusable utilities, concrete types for business logic
- Accept interfaces, return structs
- Never use
-
Private Interfaces at Consumer
- Define interfaces private (lowercase) where used
- Decouples code, enables testing
- Implementation returns concrete types