debugging

Reproduce bugs, bisect commits, and validate fixes with failing tests.

1|Updated Feb 2, 2026
One-click install
npx skills add https://github.com/micaelmalta/agentic --skill debugging-micaelmalta
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: debugging
Source: https://github.com/micaelmalta/agentic/tree/main/skills/debugging
Command: npx skills add https://github.com/micaelmalta/agentic --skill debugging-micaelmalta

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Debugging failures systematically helps teams reproduce, hypothesize, bisect, and fix bugs, reducing time to root cause and preventing regressions.

Core Features & Use Cases

  • Structured reproduction: capture steps, environment, and outputs to create reliable failure reproductions.
  • Hypothesis-driven debugging: iteratively test likely causes and isolate the faulty component.
  • TDD-driven fixes: write a failing reproduction test before applying changes, bisect commits to identify the root cause, and verify the fix with tests.

Quick Start

Reproduce the bug with a concise set of steps and environment details, write a failing reproduction test, run the test suite to observe the failure, use git bisect to find the offending commit, implement the fix, then re-run tests to confirm success and document the outcome.

Frequently Asked Questions about debugging

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
What is the best way to debug failures systematically and find a root cause?

Debugging failures systematically involves reproducing the bug, formulating a hypothesis, and bisecting commits to find the root cause. You write a failing reproduction test before changing code to verify the fix and prevent regressions.

How do I reproduce a bug before applying code changes?

To reproduce a bug, capture concise reproduction steps, environment details, and outputs to create a reliable failure. You then write a failing reproduction test that observes the failure before you attempt to fix the code.

Why should I write a failing test before fixing a bug?

Writing a failing test before fixing a bug enforces a disciplined workflow that validates the failure exists and confirms the fix works. This test-driven approach prevents future regressions by verifying the outcome.

How does git bisect help locate the root cause of a failure?

Git bisect helps locate the root cause of a failure by systematically checking commits to identify the offending change. You use it after writing a failing reproduction test to isolate the exact commit that introduced the bug.

When do I need hypothesis-driven debugging across a codebase?

You need hypothesis-driven debugging when a user reports a bug or asks why something fails across a codebase. It involves iteratively testing likely causes to isolate the faulty component before writing a reproduction test.

Can I use this debugging workflow without a test suite?

This debugging workflow requires writing a failing reproduction test before changing code to observe the failure and verify the fix. Without running a test suite, you cannot systematically validate the outcome or prevent regressions.