From ork
Analyzes error patterns from Claude Code sessions using logs and scripts to troubleshoot issues like connection refused and PostgreSQL errors. Invoke /errors for batch analysis.
npx claudepluginhub yonatangross/orchestkit --plugin orkThis skill is limited to using the following tools:
Analyze errors captured from Claude Code sessions to identify patterns and get actionable insights.
Recognizes development errors from bash, Playwright, builds, APIs, logs; searches past solutions via scripts; applies fixes and logs new ones for future reference. Activates on error mentions or debug requests.
Searches logs and codebases for error patterns, stack traces, and anomalies. Correlates errors across systems and identifies root causes when debugging issues, analyzing logs, or investigating production errors.
Searches logs and codebases for error patterns, stack traces, and anomalies. Correlates errors across systems and identifies root causes for debugging distributed issues.
Share bugs, ideas, or general feedback.
Analyze errors captured from Claude Code sessions to identify patterns and get actionable insights.
/errors # Batch analysis of historical error patterns
/debug # CC 2.1.30 real-time debug for current session
| Command | Purpose | Scope |
|---|---|---|
/errors | Batch analysis of error patterns (last 24h/7d) | Historical patterns |
/debug | Real-time debug of current session state | Current session |
/ork:fix-issue | Full RCA workflow for specific bug | Single issue |
# Run batch analysis on last 24h of errors
python .claude/scripts/analyze_errors.py
# Analyze last 7 days
python .claude/scripts/analyze_errors.py --days 7
# Generate markdown report
python .claude/scripts/analyze_errors.py --report
The error collector hook captures:
Location: .claude/logs/errors.jsonl
Check learned patterns that trigger warnings:
cat .claude/rules/error_rules.json | jq '.rules[] | {id, signature, count: .occurrence_count}'
| File | Purpose |
|---|---|
.claude/hooks/posttool/error-collector.sh | Captures errors to JSONL |
.claude/hooks/pretool/bash/error-pattern-warner.sh | Warns before risky commands |
.claude/scripts/analyze_errors.py | Batch pattern analysis |
.claude/rules/error_rules.json | Learned error patterns |
.claude/logs/errors.jsonl | Raw error log |
pattern: ECONNREFUSED|connection refused|ERR_CONNECTION_REFUSED|connect ECONNREFUSED
fix: The port may have changed or the service isn't running.
1. Check services: portless list (if installed)
2. Use named URLs: api.localhost:1355 instead of localhost:PORT
3. Fallback: lsof -iTCP -sTCP:LISTEN -nP | grep -E 'node|python|java'
4. Install Portless to avoid port guessing: npm i -g portless
pattern: ERR_CONNECTION_RESET|ECONNRESET|socket hang up
fix: Service may have crashed. Check process logs, restart the service,
and use agent-browser to verify the app is responding:
agent-browser open "http://myapp.localhost:1355"
pattern: role "X" does not exist
fix: Use Docker connection: docker exec -it orchestkit-postgres-dev psql -U orchestkit_user -d orchestkit_dev
pattern: relation "X" does not exist
fix: Check MCP postgres server connection string - may be connected to wrong database
ork:fix-issue: Fix identified errorsdebug-investigator: Debug error root causesRules are auto-generated by analyze_errors.py when patterns repeat 2+ times.
For manual rules, edit .claude/rules/error_rules.json:
{
"id": "custom-001",
"pattern": "your regex pattern",
"signature": "human readable signature",
"tool": "Bash",
"occurrence_count": 1,
"fix_suggestion": "How to fix this"
}