CtrlK
BlogDocsLog inGet started
Tessl Logo

golang-naming

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.

85

1.00x
Quality

86%

Does it follow best practices?

Impact

75%

1.00x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

72%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-organized, highly actionable conventions skill with strong progressive disclosure and concrete Go examples. Its main weaknesses are some introductory explanation of concepts Claude already knows and delegation of the risky-rename validation workflow to another skill rather than inlining checkpoints.

Suggestions

Trim the opening paragraph ('Go favors short, readable names. Capitalization controls visibility...') and other Go-basics explanation that Claude already knows; let the Quick Reference table carry that load.

Reduce overlap between the Quick Reference table and the Common Mistakes table — either merge or clearly differentiate their roles to save tokens.

Inline at least a brief validate-then-rename checkpoint (e.g., 'build/test after rename') instead of only delegating the safe-rename workflow to the gopls skill.

DimensionReasoningScore

Conciseness

Mostly efficient with a compact Quick Reference table and terse Common Mistakes rows, but it opens by explaining concepts Claude already knows ('Go favors short, readable names. Capitalization controls visibility — uppercase is exported') and the Quick Reference table overlaps substantially with the later Common Mistakes table.

2 / 3

Actionability

Concrete, executable Go examples appear throughout (✓ Good / ✗ Bad identifier blocks, receiver forms, error strings) and the Common Mistakes table pairs each mistake with a specific fix, matching the 'fully executable, copy-paste ready' anchor.

3 / 3

Workflow Clarity

Identifying and renaming identifiers is a risky operation, yet the body delegates the safe-rename validation workflow to another skill ('→ See golang-gopls skill to do it safely') rather than inlining validation checkpoints, so workflow clarity is capped at 2.

2 / 3

Progressive Disclosure

A concise overview in SKILL.md points one level deep to five clearly-signaled, verified reference files (packages-files.md, identifiers.md, functions-methods.md, types-errors.md, testing.md) with well-described navigation links.

3 / 3

Total

10

/

12

Passed

Description

100%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong, third-person description that names concrete capabilities, supplies natural trigger terms, and explicitly bounds when to (and not to) use the skill. It satisfies the what/when/specificity/distinctiveness criteria cleanly.

DimensionReasoningScore

Specificity

Lists many concrete categories and actions — 'covers packages, constructors, structs, interfaces, constants, enums, errors, booleans, receivers, getters/setters, functional options, acronyms, test functions, and subtest names' — matching the 'multiple specific concrete actions' anchor.

3 / 3

Completeness

Explicitly answers both what (the naming conventions covered) and when via explicit 'Use this skill when...', 'Also trigger when...', and 'Do NOT use for...' triggers.

3 / 3

Trigger Term Quality

Natural terms users would say are well covered: 'writing new Go code, reviewing or refactoring', 'MixedCaps vs snake_case', 'ALL_CAPS constants', 'Get-prefix on getters', 'error string casing', 'Go naming best practices'.

3 / 3

Distinctiveness Conflict Risk

Clear niche (Go naming) with an explicit negative trigger ('Do NOT use for general Go implementation questions that don't involve naming decisions') that prevents conflicts with broader Go skills.

3 / 3

Total

12

/

12

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_field

'metadata' should map string keys to string values

Warning

Total

15

/

16

Passed

Repository
samber/cc-skills-golang
Reviewed

Table of Contents

Is this your skill?

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.