Diagnose and resolve errors, exceptions, and stack traces with intelligent analysis
Scanned 9/20/2026
Install to Claude Code
npx -y skills add darellchua2/opencode-config-template --skill error-resolver-workflow-skill --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Error Resolver Workflow Skill?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/darellchua2-error-resolver-workflow-skill)More formats (shields.io, HTML) on the badges page.
---
name: error-resolver-workflow-skill
description: Diagnose and resolve errors, exceptions, and stack traces with intelligent analysis
license: Apache-2.0
compatibility: opencode
metadata:
protocol: autoresearch-opt-in
category: Framework
---
## What I do
I diagnose and help resolve errors, exceptions, and stack traces:
- Analyze error messages from various sources (runtime, compilation, tests)
- Parse stack traces to identify root causes
- Provide actionable solutions and fixes
- Handle error screenshots via MCP integration
## When to use me
**IMPORTANT**: This skill is ONLY triggered by EXPLICIT user invocation. I am NOT automatically triggered for general error handling.
Use when user explicitly requests:
- "use error resolver" / "error resolver" / "resolve this error"
- "fix this error" / "fix error" (when explicitly invoking the resolver)
- "diagnose this error" / "diagnose error"
- "analyze this exception" / "analyze error"
**Do NOT auto-trigger** for:
- General debugging without explicit request
- Automatic error detection during development
- Implicit error handling in other workflows
## Steps
### Step 1: Identify Error Source
**Error Types**:
| Type | Indicators | Common Sources |
|------|------------|----------------|
| Runtime | Exception, Error, crash | Application logs, terminal |
| Compilation | SyntaxError, TypeError | Build output, IDE |
| Test | AssertionError, pytest failures | Test runner output |
| Infrastructure | Connection refused, timeout | Server logs, cloud console |
| Screenshot | Visual error display | User-provided image |
### Step 2: Parse Error Information
**Extract Key Data**:
- Error type/class (e.g., `TypeError`, `NullPointerException`)
- Error message (the descriptive text)
- Stack trace (file paths, line numbers, function calls)
- Context (what operation triggered it)
- Environment (OS, runtime version, dependencies)
### Step 3: Analyze Root Cause
**Analysis Patterns**:
**Runtime Errors**:
- `TypeError: X is not a function` → Check if variable is correct type
- `ReferenceError: X is not defined` → Check variable scope/declaration
- `NullPointerException` → Check for null/undefined values
- `IndexError/IndexOutOfBounds` → Check array bounds
**Compilation Errors**:
- Syntax errors → Fix syntax at indicated line
- Type mismatches → Check type annotations
- Missing imports → Add required imports
**Test Failures**:
- Assertion failures → Check expected vs actual values
- Fixture errors → Check test setup/teardown
- Mock issues → Verify mock configuration
### Step 4: Provide Solution
**Solution Structure**:
1. **Summary**: One-line description of the issue
2. **Root Cause**: Why the error occurs
3. **Fix**: Step-by-step solution with code examples
4. **Prevention**: How to avoid this error in the future
5. **Related Issues**: Common related problems
### Step 5: Verify Fix
**Verification Steps**:
1. Apply suggested fix
2. Reproduce the original scenario
3. Confirm error is resolved
4. Run related tests if applicable
## Image Input Routing (error screenshots)
No vision MCP server is shipped — never assume vision MCP tools exist. Route screenshot input by availability, in order:
1. **Primary — delegate to `error-resolver-subagent`** (Task tool): it runs on the `zai-coding-plan/glm-5.3-flash` vision tier (native multimodal) and sees screenshots directly. This covers both diagnosis and error-text/stack-trace extraction.
2. **Fallback — direct Z.AI vision API call via bash**: use the inline recipe embedded in `image-analyzer-subagent` (`glm-5v-turbo` — a different model from the native one), for text-only sessions or when the vision provider is not connected.
## Error Categories
### JavaScript/TypeScript
```
TypeError: Cannot read property 'X' of undefined
→ Check object exists before accessing property
SyntaxError: Unexpected token
→ Check for missing brackets, parentheses, commas
ReferenceError: X is not defined
→ Import or declare the variable
```
### Python
```
TypeError: 'NoneType' object is not subscriptable
→ Check for None before indexing
ModuleNotFoundError: No module named 'X'
→ Install missing package or fix import path
IndentationError: expected an indented block
→ Fix indentation (use consistent spaces/tabs)
```
### Infrastructure
```
ECONNREFUSED
→ Check if service is running, verify port/host
ETIMEDOUT
→ Check network connectivity, firewall rules
ENOENT: no such file or directory
→ Verify file path exists, check permissions
```
## Best Practices
- Always provide complete error messages
- Include relevant code context around the error
- Mention recent changes that might have caused the error
- Provide environment details (OS, versions, etc.)
- For screenshots, ensure error text is readable
## Delegation
When resolution requires:
- **Code changes**: Delegate to parent agent for implementation
- **File operations**: Delegate to parent agent (no write access)
- **System commands**: Delegate to parent agent (no bash access)
## Iteration Protocol (opt-in)
**DO NOT execute any of the following unless `AUTORESEARCH_PROTOCOL=1` is set in your environment.** When unset, this skill behaves exactly as documented in all sections above; the Iteration Protocol block is descriptive only.
When `AUTORESEARCH_PROTOCOL=1`:
### Auto-detection
If invoked on an iterative task, prompt ONCE per session: "This looks iterative. Enable autoresearch protocol? (y/n)". Cache answer for session.
### Skill-specific patterns
**Falsifiable-hypothesis protocol** (port from uditgoenka's `/autoresearch:debug`): each debugging iteration MUST state a falsifiable hypothesis, predict the observable outcome, run the experiment, then emit `{"pass":bool,"score":N}` where pass = hypothesis confirmed, score = confidence (0-100) based on reproducibility. Revert experimental changes on pass:false. See `evaluator-contract.md`.
### Citations
- `autoresearch-core-skill/references/evaluator-contract.md`
### Imperative gating
When `AUTORESEARCH_PROTOCOL` is unset, this section is descriptive only. Default behavior is documented in all sections above.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!