architecture
Use when the user asks to improve architecture, find refactoring opportunities, surface deepening opportunities, consolidate tightly-coupled modules, or make a…
Use when encountering any bug, test failure, build break, or unexpected behavior — runs a 4-phase systematic debugging process before proposing any fix. Iron Law: NO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRST. Produces a `.orchestrator/debug/` artifact the fixer agent must
$ npx -y skills add Kanevry/session-orchestrator --skill debug --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/debugContext preview
The summary Claude sees to decide when to auto-load this skill.
Use when encountering any bug, test failure, build break, or unexpected behavior — runs a 4-phase systematic debugging process before proposing any fix. Iron Law: NO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRST. Produces a `.orchestrator/debug/` artifact the fixer agent must
name: debug description: > Use when encountering any bug, test failure, build break, or unexpected behavior — runs a 4-phase systematic debugging process before proposing any fix. Iron Law: NO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRST. Produces a `.orchestrator/debug/` artifact the fixer agent must reference. model: inherit color: red tools: Read, Grep, Glob, Bash, Write
> 4-phase root-cause investigation. Iron Law: no fix without root cause.
Read `skills/_shared/bootstrap-gate.md` and execute the gate check. If the gate is CLOSED, invoke `skills/bootstrap/SKILL.md` and wait for completion before proceeding. If the gate is OPEN, continue to Phase 1.
<HARD-GATE> Do NOT proceed past Phase 0 if GATE_CLOSED. There is no bypass. Refer to `skills/_shared/bootstrap-gate.md` for the full HARD-GATE constraints. </HARD-GATE>
> **NO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRST.**
No matter how obvious the fix looks, complete Phase 1 (Root Cause Investigation) and produce the artifact BEFORE writing any fix code. This is non-negotiable.
The "2-hour obviously a typo" case has been the root cause of every multi-day debugging session in every project's history. Treat the obvious fix as a hypothesis to verify, not a conclusion to act on.
Quote the exact error message, full stack trace, and exit code in the artifact. Do not paraphrase. Paraphrasing introduces your assumptions before investigation begins.
Document the exact command and environment that triggers it. If reproduction is flaky, that itself is a data point — write down the failure rate.
# minimum reproduction attempt <exact command> # env: Node version, OS, env vars relevant to the failure
git log --oneline -20 git diff HEAD~5..HEAD -- <affected paths>
Identify the smallest set of commits that could have introduced this. Do not assume the most recent commit is the culprit without checking.
Add temporary logging at each input/output point along the failing path's modules. Capture actual values, not assumptions about what they should be. Run with instrumentation in place and record results.
Start from the failure point and walk upstream. At each step, verify what you think is true with an actual Read or Bash call. "I assume X is Y" is not data.
Write to `.orchestrator/debug/<session-id>-<sequence>.md` (sequence = 1, 2, 3 within session).
**Artifact MUST be written before proceeding to Phase 2.** See "Artifact contract" section below.
After the Phase 1 artifact is written:
grep -rn "<suspect pattern>" --include="*.ts" --include="*.mjs" git grep "<symbol>"
Record findings in the artifact's Phase 2 section.
**Optional operator-side companion:** `/tmux-layout --layout debug` renders a 4-pane layout (scratch shell + `npm test --watch` + `tail -F .orchestrator/debug/*.md` + `watch -n 2 'git diff --stat'`) so you can observe hypothesis tests, debug artifacts, and diff progression peripherally. Pure observability — the `/debug` skill works identically with or without the layout (per ADR-0007 + GitLab #562).
grep -rn "<function or symbol name>"
Only after Phases 1-3 are complete and the artifact is written:
1. Propose the minimal fix — the smallest code change that addresses the confirmed root cause 2. Identify test cases that would have caught this; write them alongside or before the fix if appropriate 3. Document the fix decision in the artifact under a "Resolution" section 4. Verify the fix: run the test command from Session Config (`test-command`) and confirm the failure no longer reproduces
Do not gold-plate the fix. Scope creep during a bugfix introduces new bugs.
`.orchestrator/debug/<session-id>-<sequence>.md`:
# Debug session: <topic> Created: <ISO timestamp> Session: <session-id> ## Phase 1 — Root Cause ### Error [exact error message + stack trace + exit code — verbatim] ### Reproduction [exact command] [environment: Node version, platform, relevant env vars] [frequency: always | intermittent (~N/10)] ### Suspect commits - <sha> <subject> — reason ### Instrumentation data [per-boundary observations with actual values] ### Hypothesized root cause [ONE sentence] · Confidence: [low|medium|high] ## Phase 2 — Pattern [recurrence? class? missing test? similar code paths?] ## Phase 3 — Impact [affected files, callers, dependents] ## Phase 4 — Solution [proposed fix + test cases identified] ## Resolution [commit SHA, files changed, tests added — filled in after fix lands]
**Rules for the artifact:**
Give your agents a working rhythm. Plan the work. Run it in checked waves. Pick up where you left off. Session Orchestrator is a free, MIT-licensed workflow plugin for Claude Code, Codex CLI, Cursor IDE, or Pi.
Repo: Kanevry/session-orchestrator
Use when the user asks to improve architecture, find refactoring opportunities, surface deepening opportunities, consolidate tightly-coupled modules, or make a…
Use this skill when running an autonomous session-orchestration loop. Chains session-start → session-plan → wave-executor → session-end for N iterations with…
Use this skill when scaffolding the minimum repository structure required by session-orchestrator. Invoked automatically by the Bootstrap Gate when CLAUDE.md,…
Use when you have a feature idea but the scope or UX is still ambiguous — runs a lightweight Socratic design dialogue (3-5 AUQ rounds) and writes a spec…
Use when detecting drift between CLAUDE.md (or AGENTS.md, the Codex CLI alias) / _meta narrative and live repository state. Ten checks: absolute-path…
Monitor iterative improvement loops for convergence. Three signals — shrinking diff, pass-rate plateau, velocity — drive a Stop/Continue/Investigate decision…