Files
dotfiles/.config/opencode/skills/go/SKILL.md
T
colem a4fc747df2 feat(opencode): add language-specific coding skills
- add conventions for Bash, C#, Go, Python, and TypeScript
- add frontend guidance for HTMX, PrimeVue, and Vue
- document formatting, typing, testing, async, and framework-specific practices
- reference official documentation for framework API details
2026-08-11 15:28:09 -05:00

1.0 KiB

name, description
name description
go Idiomatic Go conventions. Use when editing .go files or go.mod/go.sum.

Go Conventions

Write strictly idiomatic Go following standard formatting and best practices.

Formatting and style

Design

  • Accept context.Context as the first parameter on functions doing I/O or long work; honor cancellation.
  • Compose via small interfaces; accept interfaces, return structs.
  • Wire dependencies explicitly via constructor injection; avoid package-level mutable globals and DI frameworks.
  • Return errors explicitly; wrap with %w (fmt.Errorf("do thing: %w", err)); classify with errors.Is / errors.As; never discard errors.

Testing

  • Write table-driven tests in _test.go using the standard testing package.
  • Use t.Run for subtests; report failures with t.Errorf / t.Fatalf.