Go (Golang) naming conventions — covers packages, constructors, structs, interfaces, constants, enums, errors, booleans, receivers, getters/setters, functional options, acronyms, test functions, and subtest names. Use this skill when writing new Go code, reviewing or refactoring, choosing between naming alternatives (New vs NewTypeName, isConnected vs connected, ErrNotFound vs NotFoundError, StatusReady vs StatusUnknown at iota 0), debating Go package names (utils/helpers anti-patterns), or asking about Go naming best practices. Also trigger when the user mentions MixedCaps vs snake_case, ALL_CAPS constants, Get-prefix on getters, or error string casing. Do NOT use for general Go implementation questions that don't involve naming decisions.
89
88%
Does it follow best practices?
Impact
89%
1.18xAverage score across 3 eval scenarios
Passed
No known issues
Functional options pattern naming conventions
With* option functions
100%
100%
Options struct name
0%
0%
Singular Option type
100%
100%
Default*Options factory
0%
0%
MixedCaps constants
100%
100%
Constants name role not value
100%
100%
Consistent With* convention
100%
100%
No stutter with package
100%
100%
Enum zero value sentinel
0%
100%
No Struct/Object/Data suffix
100%
100%
Constants and struct naming audit
ALL_CAPS constants fixed
100%
100%
Value-named constants fixed
0%
100%
Struct Data suffix removed
100%
100%
Struct Object suffix removed
100%
100%
Struct Struct suffix removed
100%
100%
Type-in-name fields fixed
100%
100%
Get prefix removed
100%
100%
Bare return removed
0%
0%
Boolean field is-prefix
100%
100%
Named return explanation
100%
80%
Table-driven test field and subtest naming
input field name
46%
100%
expected prefix on outputs
0%
100%
Lowercase t.Run names
100%
100%
Lowercase acronyms in test names
100%
100%
Test function naming
100%
100%
must-prefix test helpers
100%
100%
Table-driven structure
100%
100%
No Get prefix on helpers
100%
100%
8c7e016
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.