Golang language
Skill ComeOnOliver/skillshub/skills/HoangNguyen0403/agent-skills-standard/golang-language
Core idioms, style guides, and best practices for writing idiomatic Go code. Use when writing Go code following official style guides and idiomatic patterns. (triggers: go.mod, golang, go code, idiomatic, gofmt, goimports, iota, golang style)From its SKILL.md
npx -y skills add ComeOnOliver/skillshub --skill golang-languageAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
2.0 KB, 449 tokens by cl100k_base, as published. Nobody here has run it
Golang Language Standards
Priority: P0 (CRITICAL)
Guidelines
- Formatting: Run
gofmtorgoimportson save. Usegoplsfor LSP features. - Naming: Use
camelCasefor internal (unexported) andPascalCasefor public (exported) symbols. - Packages: Use short, lowercase, singular names (e.g.,
http,user). Avoid_orcamelCasein package names. - Interfaces: Small interfaces — 1-2 methods max. Define where used (consumer side), not where implemented.
- Errors: Return
erroras the last return value. Handle errors immediately at the call-site. - Slices: Use
make(slice, len, cap)to pre-allocate capacity and avoid redundant re-allocations. - Enums: Use a const block with iota for type-safe enumerations.
- Zero Values: Leverage
zero-valueinitialization over explicitnilchecks where possible.
Anti-Patterns
- No init: Use constructors (NewService()), not init(). (not init() — it runs implicitly and makes testing harder)
- No Globals: Use DI, not global mutable state.
- No
panic: Return errors, don't panic. - No
_ignored errors: Always check and handle errors. - No stutter:
log.Error, notlog.LogError.
Verification Workflow (Mandatory)
After writing or modifying Go code:
mcp__ide__getDiagnostics— catch compile errors and gopls type diagnostics immediatelygo vet ./...— catch common mistakes (printf mismatches, unreachable code, shadowed vars)goimports -w .— fix imports and formatting in one pass
References
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.