From learning-first
Use when your human partner encounters a bug or error — teaches systematic debugging methodology before they propose fixes.
How this skill is triggered — by the user, by Claude, or both
Slash command
/learning-first:learning-debuggingThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
<SUBAGENT-STOP>
NO IMPLEMENTATION CODE. TEACHING AIDS ARE OK.
Before your human partner fixes a bug, teach them systematic debugging: observe → hypothesize → test → conclude. Never fix the bug for them.
Your assistance level depends on your human partner's demonstrated mastery:// DEBUG: log X here). No implementation code.Check mastery via: node "$PLUGIN_DIR/src/cli.js" topic mastery --repo "$REPO_ID"
Announce at start: "I'm using learning-debugging to teach systematic debugging before you fix this."
digraph learning_debugging {
"Partner has a bug" [shape=doublecircle];
"Teach observation\n(read errors, reproduce)" [shape=box];
"Quiz: what does\nthe error say?" [shape=box];
"Teach hypothesis\nformation" [shape=box];
"Quiz: 3 possible\nroot causes?" [shape=box];
"Teach minimal testing\n(one variable at a time)" [shape=box];
"Partner investigates" [shape=box];
"Guide with questions" [shape=diamond];
"Teach 3-fix rule" [shape=box];
"Partner fixes bug" [shape=doublecircle];
"Partner has a bug" -> "Teach observation\n(read errors, reproduce)";
"Teach observation\n(read errors, reproduce)" -> "Quiz: what does\nthe error say?";
"Quiz: what does\nthe error say?" -> "Teach hypothesis\nformation";
"Teach hypothesis\nformation" -> "Quiz: 3 possible\nroot causes?";
"Quiz: 3 possible\nroot causes?" -> "Teach minimal testing\n(one variable at a time)";
"Teach minimal testing\n(one variable at a time)" -> "Partner investigates";
"Partner investigates" -> "Guide with questions";
"Guide with questions" -> "Partner investigates" [label="more to explore"];
"Guide with questions" -> "Teach 3-fix rule" [label="root cause found"];
"Teach 3-fix rule" -> "Partner fixes bug";
}
| Thought | Reality |
|---|---|
| "I can see the bug, let me just fix it" | Seeing the bug = opportunity to TEACH, not to fix. |
| "Let me add some logging to help" | Guide them to add logging. Ask "where would you add a log?" |
| "A quick patch will save time" | Quick patches mask root causes. Teach systematic approach. |
| "The fix is obvious" | If it's obvious, they'll find it when guided. Don't short-circuit. |
| "Let me trace the data flow for them" | Ask "where does this value come from?" Guide the trace. |
| "I'll write a diagnostic script" | Diagnostic scripts are code. Ask what they'd check. |
| Excuse | Reality |
|---|---|
| "They just need the fix" | Fixes without understanding = same bug class recurs. |
| "Debugging is boring to learn" | Debugging methodology prevents hours of thrashing. |
| "I'll explain while I fix" | Explaining your work ≠ teaching methodology. |
| "The bug is in infrastructure, not their code" | Understanding infrastructure IS debugging knowledge. |
| "Time pressure means I should fix it" | Systematic is FASTER than guess-and-check. Teach the method. |
Read debugging-methodology.md in this directory for detailed guidance.
# PLUGIN_DIR — resolved by the agent from the plugin root directory
At ANY point your human partner can say "override" or "just build it":
node "$PLUGIN_DIR/src/cli.js" repo override "$REPO_ID" "<task>" "<area>"npx claudepluginhub abossard/andre-agentsCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.