Skip to content
6 changes: 6 additions & 0 deletions .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,12 @@
"source": "./plugins/bug-report",
"category": "workflow",
"tags": ["bug", "bug-report", "defect", "triage", "issue", "skill"]
},
{
"name": "diagnose",
"source": "./plugins/diagnose",
"category": "debugging",
"tags": ["debug", "diagnose", "troubleshooting", "root-cause", "regression", "skill"]
}
]
}
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ Browse and manage with `/plugin`. To refresh after updates: `/plugin marketplace
| [`actionlint`](plugins/actionlint) | Hook | Lints GitHub Actions workflow files (`.github/workflows/*.yml`/`.yaml`) on edit via the `actionlint` already on your `PATH` — advisory findings, never blocking. |
| [`guardrails`](plugins/guardrails) | Hook | Bundles four independently-toggleable PreToolUse safety guards: secret-pattern detection, hardcoded machine-path check, git hook-bypass blocking (`--no-verify`, `core.hooksPath`, `LEFTHOOK=0`), and advisory CLI-flag verification. |
| [`bug-report`](plugins/bug-report) | Skill | Turns an informal defect description into a structured five-field bug report (title, repro, expected vs actual, severity, fix location). Read-only — it captures, never fixes or files on its own. |
| [`diagnose`](plugins/diagnose) | Skill | Debugs observed failures via a disciplined six-phase loop — build a fast deterministic reproduction signal, reproduce, rank falsifiable hypotheses, instrument, fix with a regression test, then clean up and post-mortem. |

Install one: `/plugin install <plugin-name>@melodic-software`.

Expand Down
11 changes: 11 additions & 0 deletions plugins/diagnose/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
"name": "diagnose",
"version": "0.1.0",
"description": "Debug observed failures via a disciplined six-phase loop: build a fast deterministic reproduction signal, reproduce, rank falsifiable hypotheses, instrument, fix with a regression test, then clean up and post-mortem.",
"author": {
"name": "Melodic Software",
"email": "info@melodicsoftware.com"
},
"keywords": ["debug", "diagnose", "debugging", "troubleshooting", "root-cause", "regression", "skill"]
}
56 changes: 56 additions & 0 deletions plugins/diagnose/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# diagnose

A Claude Code plugin that debugs **observed failures** — a wrong UI, a bad log
line, a performance regression, a screenshot of a bug, a production symptom —
via a disciplined six-phase loop. It is the discipline that separates a fixed
bug from a lucky one: no phase proceeds without a fast, deterministic,
agent-runnable pass/fail signal.

Invoke it with `/diagnose:diagnose <bug description>`, or let Claude reach for it
when you describe broken behavior with no pre-existing reproduction.

## The six phases

1. **Build a tight feedback loop** — the load-bearing work. A fast, deterministic
signal that says "bug present / bug fixed". Ten construction strategies, from a
failing test to a human-in-the-loop script.
2. **Reproduce** — run the loop; confirm it shows *the* failure the user described.
3. **Hypothesise** — 3-5 ranked, falsifiable hypotheses before testing any.
4. **Instrument** — one probe per prediction, one variable at a time; tagged debug
logs that clean up with a single grep. A dedicated performance branch.
5. **Fix + regression test** — test at a *correct seam* first; if none exists, that
absence is itself the finding.
6. **Cleanup + post-mortem** — remove instrumentation, verify the original repro is
gone, and capture what would have prevented the bug.

## Works in any repo

- **Self-contained.** The methodology, the per-ecosystem debugging reference, the
phase checklist, and the human-in-the-loop script template all ship inside the
plugin and are referenced via `${CLAUDE_PLUGIN_ROOT}`.
- **Graceful degrade.** Where a phase mentions an adjacent capability — a
test-investigation routine, a TDD helper, a headless-browser driver, an
architecture-audit agent, an issue tracker, an outcome verifier — it is treated as
**optional**: if your environment provides it, the skill uses it; otherwise it
proceeds with self-contained inline guidance. No phase blocks on a missing tool.
- **Reads your conventions, assumes none.** Test naming, module layout, banned APIs,
and where working notes live come from your own project's `CLAUDE.md` /
`.claude/rules` and tool config.

## Install

```shell
/plugin marketplace add melodic-software/claude-code-plugins
/plugin install diagnose@melodic-software
```

## Configuration

This plugin has no `userConfig`. The phase checklist is a bundled template you copy
into your own working-notes location (or track inline); nothing is written to shared
plugin storage.

## License

MIT (SPDX-License-Identifier: MIT). See the `LICENSE` file at the root of the
melodic-software/claude-code-plugins repository.
Loading
Loading