go-naming

Rename Go identifiers to follow idiomatic naming conventions.

8|Updated Jun 5, 2026
One-click install
npx skills add https://github.com/muratmirgun/gophers --skill go-naming-muratmirgun
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: go-naming
Source: https://github.com/muratmirgun/gophers/tree/main/skills/go-naming
Command: npx skills add https://github.com/muratmirgun/gophers --skill go-naming-muratmirgun

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill helps you name Go packages, types, functions, variables, constants, errors, and options in ways that match idiomatic Go, reduce stuttering, and make code easier to read and review.

Core Features & Use Cases

  • Identifier Naming: Applies MixedCaps, proper initialism casing, scope-based length, and receiver naming conventions across Go code.
  • API Naming Patterns: Guides constructors, getters, setters, options, sentinels, typed errors, enums, and boolean fields toward standard Go conventions.
  • Review-Ready Output: Helps prevent common mistakes like Get prefixes, util package names, shadowing built-ins, and inconsistent error strings.
  • Use Case: When introducing a new service type, enum, or helper function, use this Skill to choose names that fit Go community expectations and pass code review more reliably.

Quick Start

Ask the AI to rename your Go identifiers so they follow idiomatic Go naming rules and avoid stuttering, bad initialisms, and non-standard API patterns.

Frequently Asked Questions about go-naming

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I name Go identifiers to follow idiomatic conventions?

Idiomatic Go identifiers use MixedCaps, apply proper initialism casing, and adjust length based on scope. This standardizes packages, types, functions, receivers, constants, and enums to match community expectations and pass code reviews reliably.

What is the best way to avoid stuttering and bad initialisms in Go API design?

To avoid stuttering and bad initialisms in Go API design, rename identifiers so they follow standard constructor, accessor, and option patterns. This prevents redundant package prefixes and ensures consistent initialism casing across your codebase.

How do I structure Go error strings and sentinel errors during refactoring?

Structuring Go sentinel and typed errors during refactoring involves standardizing their names and message strings to consistent conventions. This ensures errors are easily identifiable and match standard Go error handling patterns.

Why does my Go code review fail over Get prefixes and boolean field names?

Go code reviews often fail over Get prefixes because idiomatic Go omits them from getter names. Boolean fields and enum zero values must also follow specific naming conventions to avoid shadowing built-ins and failing review.

Can I use standard naming conventions for Go receiver and option patterns?

Yes, you can apply standard naming conventions to Go receivers and options. This ensures receiver names are short and consistent, while option patterns follow idiomatic functional options structures used in production Go code.