跳到正文
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(原文)

安装前可以查看交给 AI 代理的指令内容。

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 的全部技能

报告此技能的问题