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.
44
44%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./plugins/developer-essentials/skills/error-handling-patterns/SKILL.mdQuality
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 is structurally sound with a clear 'Use when...' clause and covers the domain adequately. However, it reads more like a course title than a skill description—listing pattern categories rather than concrete actions Claude would perform. The trigger terms are decent but could be more comprehensive with common user vocabulary.
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, and designs error hierarchies'.
Add more natural trigger terms users would say, such as 'try-catch', 'error codes', 'retry logic', 'crash handling', 'fault tolerance', or 'exception safety'.
Narrow the 'when' clause to reduce overlap—remove generic phrases like 'designing APIs' and 'improving application reliability' in favor of more specific triggers like 'when refactoring error-prone code or choosing between exceptions and Result types'.
| Dimension | Reasoning | Score |
|---|---|---|
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' (master error handling patterns including exceptions, Result types, error propagation, graceful degradation) and 'when' (Use when implementing error handling, designing APIs, or improving application reliability) with an explicit 'Use when...' clause. | 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 somewhat specific, but terms like 'designing APIs' and 'improving application reliability' are broad enough to overlap with API design skills or general code quality/resilience skills. The cross-language scope also increases potential overlap. | 2 / 3 |
Total | 9 / 12 Passed |
Implementation
22%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill reads more like a general-purpose error handling tutorial than an actionable skill for Claude. It spends significant tokens explaining concepts Claude already understands (error categories, exception vs result types) while lacking concrete, multi-language executable examples and clear workflows. The single Python example is decent but insufficient for a skill claiming to cover error handling 'across languages.'
Suggestions
Remove the 'Core Concepts' and 'Error Categories' sections entirely — Claude already knows these. Replace with a concise decision table mapping scenarios to specific patterns.
Add executable code examples for at least 2-3 languages (e.g., Rust Result types, Go error handling, TypeScript) instead of just one Python example.
Define a clear workflow: e.g., '1. Identify error category → 2. Choose pattern → 3. Implement with template → 4. Verify error propagation works' with explicit validation steps.
Either provide the referenced `references/details.md` bundle file or inline the essential patterns — the current broken reference leaves the skill incomplete.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Heavily verbose with extensive explanations of concepts Claude already knows well (error categories, error handling philosophies, when to use exceptions vs result types). The 'When to Use This Skill' section lists 8 bullet points that are largely redundant. The 'Core Concepts' section reads like a textbook introduction rather than actionable guidance. | 1 / 3 |
Actionability | The Python code example is concrete and executable, which is good. However, much of the skill is abstract guidance ('Fail Fast', 'Preserve Context') without executable implementations. The skill covers multiple languages conceptually but only provides one Python example, and the detailed patterns are deferred to a reference file that doesn't exist in the bundle. | 2 / 3 |
Workflow Clarity | There is no clear multi-step workflow or sequenced process. The content is organized as a reference/encyclopedia of error handling concepts rather than a workflow Claude should follow. There are no validation checkpoints or decision trees for choosing and implementing error handling patterns. | 1 / 3 |
Progressive Disclosure | The skill references `references/details.md` for detailed patterns, which is a reasonable progressive disclosure approach. However, no bundle files are provided, meaning the reference is broken. The main file also contains substantial inline content (best practices, pitfalls, core concepts) that could be better organized, and the reference is somewhat vaguely signaled. | 2 / 3 |
Total | 6 / 12 Passed |
Validation
100%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 11 / 11 Passed
Validation for skill structure
No warnings or errors.
cf6059d
Table of Contents
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.