Error Resolver
Systematic error diagnosis and resolution using first-principle analysis. Use when encountering any error message, stack trace, or unexpected behavior. Supports replay functionality to record and reuse solutions.
$ npx claude-code-templates@latest --skill="development/error-resolver" --yesRequires Claude Code. The command adds this skill to your project's .claudedirectory — nothing runs on ToolZip's servers.
What's inside this skill
Component source
Error Resolver
A first-principle approach to diagnosing and resolving errors across all languages and frameworks.
Core Philosophy
The 5-step Error Resolution Process:1. CLASSIFY -> 2. PARSE -> 3. MATCH -> 4. ANALYZE -> 5. RESOLVE
| | | | |
What type? Extract key Known Root cause Fix +
information pattern? analysis Prevent
Quick Start
When you encounter an error:
- Paste the full error (including stack trace if available)
- Provide context (what were you trying to do?)
- Share relevant code (the file/function involved)
Error Classification Framework
Primary Categories
| Category | Indicators | Common Causes |
|---|---|---|
| Syntax | Parse error, Unexpected token | Typos, missing brackets, invalid syntax |
| Type | TypeError, type mismatch | Wrong data type, null/undefined access |
| Reference | ReferenceError, NameError | Undefined variable, scope issues |
| Runtime | RuntimeError, Exception | Logic errors, invalid operations |
| Network | ECONNREFUSED, timeout, 4xx/5xx | Connection issues, wrong URL, server down |
| Permission | EACCES, PermissionError | File/directory access, sudo needed |
| Dependency | ModuleNotFound, Cannot find module | Missing package, version mismatch |
| Configuration | Config error, env missing | Wrong settings, missing env vars |
| Database | Connection refused, query error | DB down, wrong credentials, bad query |
| Memory | OOM, heap out of memory | Memory leak, large data processing |
Secondary Attributes
- Severity: Fatal / Error / Warning / Info
- Scope: Build-time / Runtime / Test-time
- Origin: User code / Framework / Third-party / System
Analysis Workflow
Step 1: Classify
Identify the error category by examining:
- Error name/code (e.g.,
ENOENT,TypeError) - Error message keywords
- Where it occurred (compile, runtime, test)
Step 2: Parse
Extract key information:
- Error code: [specific code if any]
- File path: [where the error originated]
- Line number: [exact line if available]
- Function/method: [context of the error]
- Variable/value: [what was involved]
- Stack trace depth: [how deep is the call stack]
Step 3: Match Patterns
Check against known error patterns:
- See
patterns/directory for language-specific patterns - Match error signatures to known solutions
- Check replay history for previous solutions
Step 4: Root Cause Analysis
Apply the 5 Whys technique:
Error: Cannot read property 'name' of undefined
Why 1? -> user object is undefined
Why 2? -> API call returned null
Why 3? -> User ID doesn't exist in database
Why 4? -> ID was from stale cache
Why 5? -> Cache invalidation not implemented
Root Cause: Missing cache invalidation logic
Step 5: Resolve
Generate actionable solution:
- Immediate fix - Get it working now
- Proper fix - The right way to solve it
- Prevention - How to avoid in the future
Output Format
When resolving an error, provide:
## Error Diagnosis
**Classification**: [Category] / [Severity] / [Scope]
**Error Signature**:
- Code: [error code]
- Type: [error type]
- Location: [file:line]
## Root Cause
[Explanation of why this error occurred]
**Contributing Factors**:
1. [Factor 1]
2. [Factor 2]
## Solution
### Immediate Fix
[Quick steps to resolve]
### Code Change
[Specific code to add/modify]
### Verification
[How to verify the fix works]
## Prevention
[How to prevent this error in the future]
## Replay Tag
[Unique identifier for this solution - for future reference]
Replay System
The replay system records successful solutions for future reference.
Recording a Solution
After resolving an error, record it:
# Create solution record in project
mkdir -p .claude/error-solutions
# Solution file format: [error-type]-[hash].yaml
Solution Record Format
# .claude/error-solutions/[error-signature].yaml
id: "nodejs-module-not-found-express"
created: "2024-01-15T10:30:00Z"
updated: "2024-01-20T14:22:00Z"
error:
type: "dependency"
category: "ModuleNotFound"
language: "nodejs"
pattern: "Cannot find module 'express'"
context: "npm project, missing dependency"
diagnosis:
root_cause: "Package not installed or node_modules corrupted"
factors:
- "Missing npm install after git clone"
- "Corrupted node_modules directory"
- "Package not in package.json"
solution:
immediate:
- "Run: npm install express"
proper:
- "Check package.json has express listed"
- "Run: rm -rf node_modules && npm install"
code_change: null
verification:
- "Run the application again"
- "Check express is in node_modules"
prevention:
- "Add npm install to project setup docs"
- "Use npm ci in CI/CD pipelines"
metadata:
occurrences: 5
last_resolved: "2024-01-20T14:22:00Z"
success_rate: 1.0
tags: ["nodejs", "npm", "dependency"]
Replay Lookup
When encountering an error:
- Generate error signature from the error message
- Search
.claude/error-solutions/for matching patterns - If found, apply the recorded solution
- If new, proceed with full analysis and record the solution
Error Signature Generation
signature = hash(
error_type +
error_code +
normalized_message + # remove specific values
language +
framework
)
Example transformations:
Cannot find module 'express'->Cannot find module '{module}'TypeError: Cannot read property 'name' of undefined->TypeError: Cannot read property '{prop}' of undefined
Debug Commands
Useful commands during debugging:
Node.js
# Verbose error output
NODE_DEBUG=* node app.js
# Memory debugging
node --inspect app.js
# Check installed packages
npm ls [package-name]
# Verify package.json
npm ls --depth=0
Python
# Debug mode
python -m pdb script.py
# Check installed packages
pip show [package-name]
pip list
General
# Check file permissions
ls -la [file]
# Check port usage
lsof -i :[port]
netstat -an | grep [port]
# Check environment variables
env | grep [VAR_NAME]
printenv [VAR_NAME]
# Check disk space
df -h
# Check memory
free -m # Linux
vm_stat # macOS
Common Debugging Patterns
Pattern 1: Binary Search
When the error location is unclear:
- Comment out half the code
- If error persists, it's in the remaining half
- Repeat until you find the exact line
Pattern 2: Minimal Reproduction
Create the smallest code that reproduces the error:
- Start with empty file
- Add code piece by piece
- Stop when error appears
- That's your minimal repro case
Pattern 3: Rubber Duck Debugging
Explain the problem out loud (or to Claude):
- What should happen?
- What actually happens?
- What changed recently?
- What assumptions am I making?
Pattern 4: Git Bisect
Find which commit introduced the bug:
git bisect start
git bisect bad # current commit is bad
git bisect good [last-known-good-commit]
# Git will checkout commits for you to test
git bisect good/bad # mark each as good or bad
git bisect reset # when done
Reference Files
- patterns/ - Language-specific error patterns
nodejs.md - Node.js common errors
- python.md - Python common errors
- react.md - React/Next.js errors
- database.md - Database errors
- docker.md - Docker/container errors
- git.md - Git errors
- network.md - Network/API errors
- analysis/ - Analysis methodologies
stack-trace.md - Stack trace parsing guide
- root-cause.md - Root cause analysis techniques
- replay/ - Replay system
solution-template.yaml - Template for recording solutionsRelated Claude Code Skills
Code Reviewer
Comprehensive code review skill for TypeScript, JavaScript, Python, Swift, Kotlin, Go. Includes automated code analysis, best practice checking, security scanning, and review checklist generation. Use when reviewing pull requests, providing code feedback, identifying issues, or ensuring code quality standards.
Senior Frontend
Comprehensive frontend development skill for building modern, performant web applications using ReactJS, NextJS, TypeScript, Tailwind CSS. Includes component scaffolding, performance optimization, bundle analysis, and UI best practices. Use when developing frontend features, optimizing performance, implementing UI/UX designs, managing state, or reviewing frontend code.
Senior Backend
Comprehensive backend development skill for building scalable backend systems using NodeJS, Express, Go, Python, Postgres, GraphQL, REST APIs. Includes API scaffolding, database optimization, security implementation, and performance tuning. Use when designing APIs, optimizing database queries, implementing business logic, handling authentication/authorization, or reviewing backend code.
Senior Architect
Comprehensive software architecture skill for designing scalable, maintainable systems using ReactJS, NextJS, NodeJS, Express, React Native, Swift, Kotlin, Flutter, Postgres, GraphQL, Go, Python. Includes architecture diagram generation, system design patterns, tech stack decision frameworks, and dependency analysis. Use when designing system architecture, making technical decisions, creating architecture diagrams, evaluating trade-offs, or defining integration patterns.
Skill Creator
Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.
Senior Fullstack
Comprehensive fullstack development skill for building complete web applications with React, Next.js, Node.js, GraphQL, and PostgreSQL. Includes project scaffolding, code quality analysis, architecture patterns, and complete tech stack guidance. Use when building new projects, analyzing code quality, implementing design patterns, or setting up development workflows.
Catalog data and component content are sourced from the open-source davila7/claude-code-templates project (MIT license). ToolZip curates the listing and writes original descriptions; every component links back to its original source. Claude Code is a product of Anthropic. ToolZip is an independent catalog and is not affiliated with or endorsed by Anthropic.