CtrlK
BlogDocsLog inGet started
Tessl Logo

golang-modernize

Continuously modernize Golang code to use the latest language features, standard library improvements, and idiomatic patterns. Use this skill whenever writing, reviewing, or refactoring Go code to ensure it leverages modern Go idioms. Also use when the user asks about Go upgrades, migration, modernization, deprecation, or when modernize linter reports issues. Also covers tooling modernization: linters, SAST, AI-powered code review in CI, and modern development practices. Trigger this skill proactively when you notice old-style Go patterns that have modern replacements.

79

Quality

76%

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Advisory

Suggest reviewing before use

Optimize this skill with Tessl

npx tessl skill review --optimize ./skills/golang-modernize/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Discovery

82%

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

This is a solid description that clearly communicates both what the skill does and when to use it, with good trigger term coverage. Its main weaknesses are that the specific capabilities could be more concrete (e.g., listing specific modernizations like 'replace ioutil with os/io', 'use generics', 'use structured logging') and the scope is broad enough that it could conflict with other Go-related skills.

Suggestions

Add concrete examples of specific modernizations performed (e.g., 'replace deprecated ioutil calls, adopt generics, use slog for structured logging, apply range-over-func patterns') to increase specificity.

Narrow the trigger scope to avoid conflict with general Go coding skills—consider removing 'whenever writing... Go code' and focusing on modernization-specific triggers to improve distinctiveness.

DimensionReasoningScore

Specificity

The description names the domain (Golang code modernization) and mentions some actions like 'writing, reviewing, or refactoring Go code' and 'tooling modernization: linters, SAST, AI-powered code review in CI,' but it doesn't list multiple concrete specific actions (e.g., what specific modernizations it performs, which language features it applies). It stays at a moderate level of specificity.

2 / 3

Completeness

Clearly answers both 'what' (modernize Golang code using latest language features, standard library improvements, idiomatic patterns, tooling modernization) and 'when' (when writing/reviewing/refactoring Go code, when user asks about upgrades/migration/modernization/deprecation, when modernize linter reports issues, when old-style patterns are noticed). Explicit trigger guidance is provided.

3 / 3

Trigger Term Quality

Good coverage of natural trigger terms users would say: 'Go code', 'Go upgrades', 'migration', 'modernization', 'deprecation', 'modernize linter', 'refactoring', 'linters', 'SAST', 'old-style Go patterns'. These are terms a user would naturally use when needing this skill.

3 / 3

Distinctiveness Conflict Risk

While 'Go modernization' is a fairly specific niche, the broad scope covering writing, reviewing, and refactoring any Go code could overlap with a general Go coding skill or Go linting skill. The inclusion of 'whenever writing... Go code' makes it very broad and could conflict with other Go-related skills.

2 / 3

Total

10

/

12

Passed

Implementation

70%

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

This is a well-structured modernization skill with excellent workflow clarity and progressive disclosure. The prioritized migration guide and deprecated packages table are highly valuable. The main weakness is that actionable code examples are deferred entirely to reference files, meaning the skill body itself lacks executable before/after snippets that would make it immediately useful without navigating to other files.

Suggestions

Add 2-3 inline before/after code examples for the highest-priority modernizations (e.g., loop variable shadow copies, math/rand/v2 migration) directly in the skill body so it's immediately actionable without referencing versions.md.

Tighten the 'Scope' paragraph — the explanation of why pre-1.21 improvements are omitted is unnecessary context that Claude doesn't need.

DimensionReasoningScore

Conciseness

The skill is mostly efficient and well-organized, but includes some unnecessary explanation (e.g., the 'Scope' paragraph explaining what versions are covered and why older ones are omitted, the persona description). The version table and deprecated packages table earn their place, but some prose could be tightened.

2 / 3

Actionability

The skill provides concrete workflow steps, a prioritized migration guide, and a deprecated packages table, but lacks executable before/after code examples directly in the skill body — those are deferred to references/versions.md. The workflow steps are specific but more procedural than copy-paste executable.

2 / 3

Workflow Clarity

The workflow is clearly sequenced with 9 numbered steps, includes validation via golangci-lint, has explicit behavioral modes (inline vs full-scan), includes a feedback mechanism (.modernize file for ignored suggestions), and has a clear prioritization guide. The sub-agent parallelization strategy is well-defined.

3 / 3

Progressive Disclosure

The skill provides a clear overview with well-signaled one-level-deep references to versions.md and tooling.md for detailed content. The main body contains the right level of summary (deprecated packages table, priority guide) while deferring detailed before/after examples to reference files. Related skills are clearly listed.

3 / 3

Total

10

/

12

Passed

Validation

81%

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

Validation9 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_field

'metadata' should map string keys to string values

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

9

/

11

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.