05b6d799f0
Three more learnings from alirezarezvani/claude-skills, applied: 1. SkillCheck validator (scripts/skillcheck.mjs) — validates every SKILL.md against the authoring standard (frontmatter, name/folder match, trigger + produces clauses, required headings) plus tier referential integrity. Errors fail CI; --strict fails on warnings too. New skillcheck.yml workflow and a SkillCheck status badge in the README. Current: 0 errors / 14 advisory warnings across 172 skills. 2. Cursor export platform — build-exports.mjs now generates exports/cursor/<bundle>/<skill>/<skill>.mdc rule files. The PLATFORMS registry now supports per-skill filenames (file as a function). 3. Per-agent installers — scripts/install.sh unifies install for claude/hermes/codex/openclaw/cursor (--link, --target, --dry-run, --list). Curl-able one-liners codex-install.sh, openclaw-install.sh, and cursor-install.sh clone the library and install in a single command. README documents the one-line installs and Cursor exports; CHANGELOG and the authoring standard updated. Claude-Session: https://claude.ai/code/session_016JWn5jRD5tcEFKrubjQ6Px Co-authored-by: Claude <noreply@anthropic.com>
89 lines
3.9 KiB
Plaintext
89 lines
3.9 KiB
Plaintext
---
|
||
description: "Parse error logs, stack traces, and crash reports into a structured root cause diagnosis. Use when an application is throwing exceptions, crashing, or producing unexpected errors and you need to understand why and what to fix. Produces a structured diagnosis with error classification, stack trace walkthrough, probable root cause with confidence level, affected code path, a concrete code-level fix suggestion, and ordered next debugging steps."
|
||
globs:
|
||
alwaysApply: false
|
||
---
|
||
|
||
# Debugging Log Analyser Skill
|
||
|
||
Parses raw error logs, stack traces, and crash reports into a structured diagnosis with probable root cause, affected code path, and specific next steps — no hand-waving.
|
||
|
||
## Required Inputs
|
||
|
||
Ask for these if not provided:
|
||
- **The log / stack trace / error output** (paste directly or describe the error)
|
||
- **Language and framework** (e.g. Node.js + Express, Python + Django, Java Spring, Go)
|
||
- **Context** (what changed before this started — e.g. recent deploy, config change, increased traffic, new input data; or "nothing changed" is also useful)
|
||
- **Frequency** (one-off / intermittent / consistent / regression after a specific change)
|
||
- **Environment** (local dev / staging / production)
|
||
- **What they've already tried** (if anything)
|
||
|
||
## Output Format
|
||
|
||
---
|
||
|
||
# Debugging Report: [Service/App Name]
|
||
|
||
### 1. Error Classification
|
||
**Error type:** [Runtime exception / Build error / Config error / Network error / Memory error / Unknown]
|
||
**Severity:** [Fatal / Critical / Warning / Informational]
|
||
**Recurrence pattern:** [One-off / Intermittent / Consistent / On-startup / Under load]
|
||
|
||
### 2. Stack Trace Analysis
|
||
|
||
Walk the stack frame by frame, starting from the origin:
|
||
- **Origin frame:** [File, line, function where it started]
|
||
- **Propagation path:** [How it travelled through the call stack]
|
||
- **Crash point:** [Where it ultimately threw/panicked/exited]
|
||
|
||
For each significant frame, note whether it is:
|
||
- User code (fixable here)
|
||
- Framework/library code (usually a misuse issue)
|
||
- System/runtime code (usually a config or environment issue)
|
||
|
||
### 3. Root Cause Assessment
|
||
**Probable root cause:** [1–2 sentence plain English statement]
|
||
**Confidence:** [High / Medium / Low — and why]
|
||
**Alternative causes to rule out:** [If confidence is not high]
|
||
|
||
### 4. Affected Code Path
|
||
**Entry point:** [Where the triggering call began]
|
||
**Key function(s) involved:** [Specific functions/methods named in the trace]
|
||
**Data that triggered it:** [If inferable from the log — e.g. null value, malformed JSON]
|
||
|
||
### 5. Suggested Fix
|
||
Provide a concrete, code-level suggestion:
|
||
- What to change (the minimal fix)
|
||
- Why this fixes the root cause
|
||
- Any trade-offs or risks in the fix
|
||
- A short code snippet if helpful
|
||
|
||
### 6. Next Debugging Steps
|
||
If the root cause is uncertain, provide an ordered list of 3–5 specific debugging actions:
|
||
1. [Specific thing to check — file, log line, config value]
|
||
2. [Specific reproduction step or isolation test]
|
||
3. [Specific tool command — e.g. `strace`, `pprof`, `--verbose`, add logging at X]
|
||
|
||
### 7. Prevention
|
||
One or two concrete things that would prevent this class of error recurring:
|
||
- Better input validation at [point]
|
||
- Add monitoring/alerting for [condition]
|
||
- Test that covers [scenario]
|
||
|
||
---
|
||
|
||
## Quality Checks
|
||
- [ ] Root cause is specific (not "there might be a null pointer issue")
|
||
- [ ] At least one concrete code-level fix is suggested
|
||
- [ ] Next steps are actionable commands, not vague advice
|
||
- [ ] Suggested fix references the actual language/framework in the input (not a generic fix that could apply to any language)
|
||
- [ ] Confidence level includes a stated reason (not just "High" or "Low" with no explanation)
|
||
- [ ] Prevention is proactive (not just "add error handling")
|
||
|
||
## Usage Examples
|
||
- "Why is this crashing?" + [paste log]
|
||
- "Can you analyse this stack trace?"
|
||
- "I'm getting this error, what does it mean?"
|
||
- "Debug this log for me"
|
||
- "What's causing this exception?"
|