go-naming

Apply Go naming conventions to code identifiers across packages and types.

1|Updated Apr 3, 2026
One-click install
npx skills add https://github.com/nq-rdl/agent-extensions --skill go-naming-nq-rdl
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: go-naming
Source: https://github.com/nq-rdl/agent-extensions/tree/main/skills/go-naming
Command: npx skills add https://github.com/nq-rdl/agent-extensions --skill go-naming-nq-rdl

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Go projects often suffer from inconsistent naming, making code harder to read and maintain. This Skill provides a structured approach to apply idiomatic Go identifiers across packages, types, functions, variables, interfaces, constants, and errors, aligning with established style guides.

Core Features & Use Cases

  • Enforces MixedCaps or mixedCaps naming and discourages snake_case, with exceptions for test names
  • Provides guidance for package, variable, function, receiver, interface, constant naming, and canonical initialisms (URL, ID, HTTP)
  • Use Case: when starting a new Go project, performing a code review, or refactoring, apply these rules to ensure consistent, idiomatic naming across the codebase.

Quick Start

Apply Go naming conventions to a sample Go file to receive idiomatic identifiers.

Frequently Asked Questions about go-naming

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

FAQPage Schema
What are the Go naming conventions for idiomatic code?

Idiomatic Go naming uses MixedCaps or mixedCaps for identifiers, avoiding snake_case except for test names. It covers packages, types, functions, variables, interfaces, constants, and errors to ensure clean code.

How do I apply canonical initialisms like ID and URL in Go code?

Canonical initialisms in Go code, such as ID, URL, and HTTP, must be consistently capitalized across all identifiers. Applying these prevents stuttering and aligns with Effective Go and Google style guidelines for clean code.

Can I use snake_case for variable names in Go?

Using snake_case for variable names in Go is discouraged in favor of MixedCaps or mixedCaps. Exceptions exist for test names, but consistent capitalization is enforced for new code, refactoring, and code reviews.

What's the best way to name Go interfaces without stuttering?

The best way to name Go interfaces is to prevent stuttering by avoiding redundant package name prefixes in method names. Adhering to Effective Go and Google style guidelines ensures identifiers remain clean and idiomatic.

How do I fix inconsistent naming during a Go code review?

To fix inconsistent naming during a Go code review, apply structured rules across packages, types, functions, variables, constants, and errors. Enforce canonical initialisms and MixedCaps to align with established style guides.