本文へ移動
cccskills
無料GitHub で公開

bugfix

Bug hunter. Reproduces bugs with failing tests (RED), then fixes with TDD. Accepts a prompt, issue URL, or bug description. Use when: bugfix, fix bug, debug, broken, regression, failing, doesn't work, fix this.

日本語の概要は準備中です。原文の説明を表示しています。

インストール方法を見る

含まれるファイル(1)

  • SKILL.md4.3 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Bugfix

Bug hunter. Reproduces the bug with a failing test, then fixes it with strict TDD. Focused and surgical.

Usage

  • /bugfix — asks what's broken
  • /bugfix <prompt> — fix from description
  • /bugfix <url> — fix from GitHub issue
  • /bugfix <path> — fix from bug report file

Workflow

Phase 1: Understand the Bug

No arguments: Ask: "What's broken? Describe the bug, paste an issue URL, or point me to a report."

Wait for the user's response.

Prompt: Use as bug description.

URL: Fetch: gh issue view <number> --json title,body --jq '.title + "\n\n" + .body'

File path: Read the file.

Restate the bug:

My understanding: {what's broken, when it happens, expected vs actual behavior}

Is that right? Anything else I should know?

Wait. Confirm understanding before proceeding.

Phase 2: Scout the Bug

Explore the codebase to understand the area where the bug lives:

  • Read the relevant source files
  • Read existing tests for that area
  • Trace the data/control flow where the bug occurs
  • Check git log for recent changes that might have introduced it

Report findings:

Here's what I found:

  • Where it happens: {file(s), function(s), line(s)}
  • Root cause hypothesis: {what I think is wrong and why}
  • Existing test coverage: {what's tested, what's missing}
  • Recent changes: {any suspicious recent commits, or "nothing recent"}

Does this match what you're seeing?

Wait. The user may have more context.

Phase 3: Reproduce with a Failing Test

This is the most important phase. Do not skip. Do not rush.

Write a test that fails right now because of the bug. This test proves the bug exists.

Rules:

  • It must fail for the right reason (the actual bug, not a setup error)
  • It must be minimal — test only the broken behavior
  • It must describe the expected behavior
  • Name it clearly: test "description of correct behavior that is currently broken"
  • Use assert_receive with monitors for async assertions, never Process.sleep

Reproduction test:

{test_code}

This proves: {what broken behavior it captures} Expected: {what should happen} Actual: {what happens now}

Write it?

Wait. The user may adjust the test.

Write the test. Run it. Confirm RED.

mix test test/path/to/test_file.exs:LINE

RED — {error message or assertion failure}

If the test passes unexpectedly: The test doesn't reproduce the bug. Investigate. Ask the user for help if stuck after 3 attempts.

Phase 4: Fix (GREEN)

Write the minimum code to make the failing test pass. No more.

  • Don't refactor unrelated code
  • Don't add features
  • Don't fix other bugs you find (note them for later)
  • Stay surgical

Run tests. Confirm GREEN.

mix test test/path/to/test_file.exs:LINE

GREEN — Bug fix verified.

Phase 5: Check for Collateral

Run the full suite:

mix test
mix dialyzer

If other tests break: the fix introduced a regression. Adjust the fix.

Full suite: {pass/fail}. {details if any breakage}

Phase 6: Refactor (if needed)

Only if the fix is ugly or the area needs cleanup:

  • Clean up, run tests, confirm GREEN
  • Keep it minimal — this is a bugfix, not a rewrite

Phase 7: Commit

Stage only the changed files. Commit with:

fix(<scope>): <what was fixed>

No Co-Authored-By. No AI mentions.


Multiple Bugs

If the input describes multiple bugs:

  1. List them
  2. Ask the user which to tackle first
  3. Fix one at a time, full cycle each
  4. Commit each fix separately

Iron Rules

  1. No fix without a failing test. The test must prove the bug exists before you touch production code
  2. Persist on RED. If you can't reproduce it in a test, dig deeper. Don't skip to the fix
  3. Minimum fix. Smallest change that makes the test pass. No scope creep
  4. Run full suite. mix test && mix dialyzer
  5. One bug at a time. Don't batch
  6. Ask when stuck. If you can't reproduce after 3 attempts, ask the user for more context
  7. Note but don't fix other bugs you discover along the way

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

コメント

ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。

まだコメントはありません。最初のコメントを書いてみませんか。

送信するとすぐに公開されます。メールアドレスや電話番号などの個人情報は書かないでください。URL は 2 つまでです。

0 / 1000 文字

このフォームは reCAPTCHA で保護されており、Google のプライバシーポリシーと利用規約が適用されます。

同じリポジトリのスキル

commit

無料

Create a git commit following project conventions. Use when: commit, commit this, make a commit, commit changes, git commit, save changes, commit my work, stage and commit, detailed commit.

日本語の概要は準備中です。原文の説明を表示しています。

leandronsp/overmind122026年4月13日 更新

debug

無料

Elixir debugging workflow and tools. Use when: debug, debugging, pry, inspect, trace, why is this failing, what's wrong, investigate, diagnose.

日本語の概要は準備中です。原文の説明を表示しています。

leandronsp/overmind122026年4月13日 更新

dev

無料

Implementer - fetches a GitHub issue, builds an implementation plan, then implements using TDD. Use when: implement, build this, code this, add this feature, TDD, test first, red green refactor, pick a task, next task, dev.

日本語の概要は準備中です。原文の説明を表示しています。

leandronsp/overmind122026年4月13日 更新

learn

無料

Extract learnings from the current session and update memory/config. Use when: learn from this, what did we learn, update memory, session retrospective, extract patterns, save learnings.

日本語の概要は準備中です。原文の説明を表示しています。

leandronsp/overmind122026年4月13日 更新

overmind

無料

Orchestrator - spawns an autonomous orchestrator agent that decomposes a task into subtasks and drives multiple Claude agents to completion. Use when: overmind, orchestrate, multi-agent, delegate, spawn agents, break down task, run agents.

日本語の概要は準備中です。原文の説明を表示しています。

leandronsp/overmind122026年4月13日 更新

pair

無料

TDD pair programming with mode switching. Claude can be driver (writes code) or navigator (watches, questions, provokes). Supports GitHub issues, file watching, or arbitrary prompts. Scientific TDD, baby steps, one test at a time. Trigger on: pair, let's pair, tdd, you drive, I'll drive, dojo.

日本語の概要は準備中です。原文の説明を表示しています。

leandronsp/overmind122026年4月13日 更新

leandronsp のスキルをすべて見る

このスキルの問題を報告する