CtrlK
BlogDocsLog inGet started
Tessl Logo

error-handling-patterns

Master error handling patterns across languages including exceptions, Result types, error propagation, and graceful degradation to build resilient applications. Use when implementing error handling, designing APIs, or improving application reliability.

75

1.29x
Quality

54%

Does it follow best practices?

Impact

88%

1.29x

Average score across 6 eval scenarios

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

npx tessl skill review --optimize ./plugins/developer-essentials/skills/error-handling-patterns/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Discovery

67%

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

The description adequately covers both what the skill does and when to use it, with an explicit 'Use when' clause. However, the capabilities listed are more like category names than concrete actions, and the trigger terms, while relevant, miss common user vocabulary. The cross-language, broad scope ('designing APIs', 'application reliability') introduces some overlap risk with other skills.

Suggestions

Replace abstract pattern names with concrete actions, e.g., 'Converts try-catch blocks to Result/Either types, adds retry logic with exponential backoff, implements circuit breakers, designs error hierarchies'.

Add more natural trigger terms users would say, such as 'try-catch', 'error codes', 'retry logic', 'crash handling', 'fault tolerance', 'exception hierarchy'.

DimensionReasoningScore

Specificity

Names the domain (error handling) and lists some patterns (exceptions, Result types, error propagation, graceful degradation), but these are more category labels than concrete actions. It doesn't specify what it actually does with these patterns (e.g., 'converts try-catch blocks to Result types', 'adds retry logic').

2 / 3

Completeness

Clearly answers both 'what' (error handling patterns including exceptions, Result types, error propagation, graceful degradation) and 'when' (explicit 'Use when implementing error handling, designing APIs, or improving application reliability').

3 / 3

Trigger Term Quality

Includes relevant terms like 'error handling', 'exceptions', 'Result types', 'error propagation', and 'graceful degradation', which are reasonably natural. However, it misses common user phrases like 'try-catch', 'error codes', 'retry', 'fallback', 'crash', 'bug', 'failure handling', or specific language patterns.

2 / 3

Distinctiveness Conflict Risk

The error handling focus is a reasonably distinct niche, but 'designing APIs' and 'improving application reliability' are broad enough to overlap with API design skills or general code quality skills. The cross-language scope also makes it less distinct.

2 / 3

Total

9

/

12

Passed

Implementation

42%

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

This skill is a comprehensive but bloated reference document that explains many concepts Claude already knows well. While the code examples are high-quality and executable, the sheer volume (~400+ lines covering 4 languages, 3 patterns, best practices, and pitfalls all inline) makes it extremely token-inefficient. It would benefit greatly from being restructured as a concise overview with references to language-specific and pattern-specific sub-files.

Suggestions

Reduce to a concise overview (~50-80 lines) with the most critical patterns, and move language-specific examples into separate referenced files (e.g., PYTHON_ERRORS.md, TYPESCRIPT_ERRORS.md, RUST_ERRORS.md, GO_ERRORS.md).

Remove sections explaining concepts Claude already knows: error categories (recoverable vs unrecoverable), basic philosophies (exceptions vs result types), and obvious best practices like 'Don't Swallow Errors'.

Add a decision workflow or flowchart for choosing which error handling pattern to apply based on the situation (e.g., 'Is this a distributed system? → Consider circuit breaker. Is this user input? → Use validation with error aggregation').

Move advanced patterns (circuit breaker, error aggregation, graceful degradation) into a separate ADVANCED_PATTERNS.md file referenced from the main skill.

DimensionReasoningScore

Conciseness

Extremely verbose at ~400+ lines. Explains basic concepts Claude already knows (error categories, what exceptions vs result types are, 'when to use each'), lists obvious recoverable/unrecoverable error examples, and provides extensive boilerplate code across 4 languages that Claude can already produce. The 'When to Use This Skill' section is padded with 8 bullet points. Best practices like 'Don't Swallow Errors' and 'Fail Fast' are well-known to Claude.

1 / 3

Actionability

The code examples are fully executable and copy-paste ready across Python, TypeScript, Rust, and Go. Custom exception hierarchies, retry decorators, circuit breakers, and Result type implementations are all concrete and complete with usage examples.

3 / 3

Workflow Clarity

While individual patterns are well-demonstrated, there's no clear workflow for when/how to apply these patterns in sequence. The skill reads more like a reference catalog than a guided process. There are no validation checkpoints or decision trees for choosing between approaches.

2 / 3

Progressive Disclosure

This is a monolithic wall of text with no references to external files. All four language-specific patterns, three universal patterns, best practices, and pitfalls are inlined in a single massive document. Language-specific sections and advanced patterns (circuit breaker, error aggregation) should be split into separate referenced files.

1 / 3

Total

7

/

12

Passed

Validation

90%

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

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (633 lines); consider splitting into references/ and linking

Warning

Total

10

/

11

Passed

Repository
wshobson/agents
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.