prompt-evaluation-runn…
Use when evaluating prompts, LLM outputs, red-team suites, or model behavior with local eval configs and safe provider/cost controls.
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
$ npx -y skills add yeaight7/agent-powerups --skill systematic-debugging --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/systematic-debuggingContext preview
The summary Claude sees to decide when to auto-load this skill.
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
name: systematic-debugging description: Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
Find the root cause of any bug before attempting a fix. Random fixes waste time and create new bugs. Symptom fixes are failure.
**Core principle:** ALWAYS find root cause before attempting fixes.
Use for ANY technical issue:
**Use this especially when:**
**Do not skip when:**
You MUST complete each phase before proceeding to the next.
**Before attempting ANY fix:**
1. **Read error messages carefully** — Don't skip past errors or warnings. Read stack traces completely. Note line numbers, file paths, error codes.
2. **Reproduce consistently** — Can you trigger it reliably? What are the exact steps? If not reproducible: gather more data, don't guess.
3. **Check recent changes** — What changed that could cause this? Git diff, recent commits, new dependencies, config changes, environmental differences.
4. **Gather evidence in multi-component systems** — When the system has multiple components (CI → build → signing, API → service → database):
For EACH component boundary:
- Log what data enters the component
- Log what data exits the component
- Verify environment/config propagation
- Check state at each layer
Run once to gather evidence showing WHERE it breaks.
Then analyze to identify the failing component.
Then investigate that specific component.5. **Trace data flow** — Where does the bad value originate? What called this with the bad value? Keep tracing up until you find the source. Fix at source, not at symptom. See `references/root-cause-tracing.md` for the complete backward tracing technique.
1. **Find working examples** — Locate similar working code in the same codebase. 2. **Compare against references** — Read reference implementations completely. Don't skim. 3. **Identify differences** — List every difference between working and broken, however small. 4. **Understand dependencies** — What other components, settings, or config does this need?
1. **Form a single hypothesis** — "I think X is the root cause because Y." Write it down. Be specific. 2. **Test minimally** — Make the smallest possible change to test the hypothesis. One variable at a time. 3. **Verify before continuing** — Did it work? Yes → Phase 4. No → form a new hypothesis. Do not add more fixes on top. 4. **When you don't know** — Say so. Ask for help. Research more. Do not pretend to know.
1. **Create a failing test case** — Simplest possible reproduction. Automated test if possible. Must exist before fixing.
2. **Implement a single fix** — Address the root cause identified. One change at a time. No "while I'm here" improvements.
3. **Verify the fix** — Test passes? No other tests broken? Issue actually resolved?
4. **If fix doesn't work** — STOP. Count how many fixes you've tried.
5. **If 3+ fixes failed: question the architecture** — Each fix revealing new shared state or coupling elsewhere is a sign of an architectural problem, not a hypothesis failure. Stop and discuss with the team before attempting another fix.
Root cause: <what caused the bug — specific, not vague> Evidence: <what you observed that confirmed the hypothesis> Fix: <what was changed and where> Test: <test added or updated> Verification: <how fix was confirmed>
**Red flags — STOP and return to Phase 1:**
**Common rationalizations:**
| Excuse | Reality | | --- | --- | | "Issue is simple, don't need process" | Simple issues have root causes too. Process is fast for simple bugs. | | "Emergency, no time for process" | Systematic debugging is faster than guess-and-check thrashing. | | "Just try this first, then investigate" | First fix sets the pattern. Do it right from the start. | | "I'll write test after confirming fix works" | Untested fixes don't stick. Test first proves it. | | "Multiple fixes at once saves time" | Can't isolate what worked. Causes new bugs. | | "One more fix attempt" (after 2+ failures) | 3+ failures = architectural problem. Question pattern, don't fix again. |
Techniques available in `references/`:
Curated power-ups for coding agents: skills, slash commands, MCP configs, hooks, AGENTS.md templates, and workflows for serious software engineering. Claude Code, Codex, Antigravity CLI, Cursor and more
Repo: yeaight7/agent-powerups
Use when evaluating prompts, LLM outputs, red-team suites, or model behavior with local eval configs and safe provider/cost controls.
Use when creating or reviewing red-team eval plugins, attack templates, grader rubrics, safety fixtures, or model-risk test metadata.
Use when designing, running, debugging, or hardening deterministic eval suites for agent skills, prompts, tool workflows, or MCP-backed cases.
Use when designing tool definitions for a new agent or subagent, an agent shows high retry rates, ambiguous tool invocations, or silent failures, or an…
Use when routing a prompt to a local provider CLI for a second opinion, review, or plan -- you are about to call a provider directly, need the response saved…
Use when starting work in an unfamiliar area of a codebase, spawning a subagent that needs targeted file context, a first search pass missed the relevant file,…