CtrlK
BlogDocsLog inGet started
Tessl Logo

golang-error-handling

Idiomatic Golang error handling — creation, wrapping with %w, errors.Is/As, errors.Join, custom error types, sentinel errors, panic/recover, the single handling rule, structured logging with slog, HTTP request logging middleware, and samber/oops for production errors. Built to make logs usable at scale with log aggregation 3rd-party tools. Apply when creating, wrapping, inspecting, or logging errors in Go code. For samber/oops specifics → See `samber/cc-skills-golang@golang-samber-oops` skill; for slog handler ecosystem → See `samber/cc-skills-golang@golang-samber-slog` skill.

64

Quality

78%

Does it follow best practices?

Impact

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

Fix and improve this skill with Tessl

tessl review fix ./skills/golang-error-handling/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

57%

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-organized skill that serves effectively as a hub document with clear progressive disclosure to reference files and related skills. Its main weaknesses are the lack of any inline code examples (all actionability is deferred to reference files that weren't provided for evaluation) and the somewhat verbose best practices list that could be tightened. The mode definitions add structure but lack concrete validation steps.

Suggestions

Add at least 2-3 inline executable code examples for the most critical patterns (e.g., error wrapping with %w, errors.Is usage, single handling rule violation vs correct pattern) so the SKILL.md is actionable on its own without requiring reference files.

Trim the 15-item best practices list — several items overlap (e.g., items 1/7 both relate to handling, items 10/12/13 all relate to logging). Consolidate to ~8-10 items to improve conciseness.

Add explicit validation steps to the Coding and Review modes — e.g., 'After implementing error handling, verify: no swallowed errors (grep for `_ =`), no log-and-return pairs, all wraps use %w internally.'

DimensionReasoningScore

Conciseness

The skill is reasonably efficient but includes some unnecessary verbosity — the persona section, mode descriptions, and the 15-item best practices summary repeat information that's elaborated in the references. The community default note and some explanatory parentheticals could be trimmed. However, it avoids explaining basic Go concepts Claude already knows.

2 / 3

Actionability

The best practices summary provides specific guidance (use %w, use errors.Is/As, use slog) and names concrete functions and patterns, but the SKILL.md itself contains zero executable code examples. All concrete code is deferred to reference files that aren't provided. The rules are clear but not copy-paste ready.

2 / 3

Workflow Clarity

The three modes (Coding, Review, Audit) provide some workflow structure, and the parallel sub-agent audit pattern is well-defined with clear categories. However, there are no validation checkpoints or feedback loops for any of the modes — particularly the coding and review modes lack explicit step sequences with verification steps.

2 / 3

Progressive Disclosure

The skill is well-structured as an overview with clear one-level-deep references to three detailed reference files (error-creation.md, error-wrapping.md, error-handling.md), each with a descriptive summary. Cross-references to related skills are clearly signaled. The content is appropriately split between summary and detail.

3 / 3

Total

9

/

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.

This is an excellent skill description that thoroughly enumerates specific Go error handling capabilities, includes natural trigger terms that developers would use, explicitly states when to apply the skill, and even provides cross-references to related skills to reduce conflict risk. The description is comprehensive without being padded, and uses proper third-person voice throughout.

DimensionReasoningScore

Specificity

Lists multiple specific concrete actions and concepts: error creation, wrapping with %w, errors.Is/As, errors.Join, custom error types, sentinel errors, panic/recover, structured logging with slog, HTTP request logging middleware, and samber/oops. Very comprehensive enumeration of capabilities.

3 / 3

Completeness

Clearly answers both 'what' (idiomatic Go error handling with a detailed list of subtopics) and 'when' ('Apply when creating, wrapping, inspecting, or logging errors in Go code'). Also includes helpful cross-references to related skills for disambiguation.

3 / 3

Trigger Term Quality

Excellent coverage of natural terms a Go developer would use: 'error handling', 'wrapping', '%w', 'errors.Is', 'errors.As', 'errors.Join', 'sentinel errors', 'panic/recover', 'slog', 'samber/oops', 'Go code', 'Golang'. These are exactly the terms users would mention when seeking help with Go error handling.

3 / 3

Distinctiveness Conflict Risk

Highly distinctive — narrowly scoped to Go error handling specifically, with explicit cross-references to related but distinct skills (samber/oops and samber/slog). The domain is clearly delineated and unlikely to conflict with general Go skills or non-error-handling skills.

3 / 3

Total

12

/

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.