Your bugs
have nowhere
to hide.

Buggo turns bug reports into suspects, so you and your coding agent know where to look first.

Buggo the beetle detective examines code clues at a desk beside an evidence board.
Frijol the cat

“Finally, someone who takes my bugs seriously.”

A very real developer
Sabrina the cat

“Buggo gave me suspects. I supplied the panic.”

Another very real developer
Luna the cat

“Buggo found the issue in 30 seconds. I spent 3 hours blaming my coworkers.”

Also a real developer

Investigate

Turn a messy bug report into a focused investigation.

Find suspects

Get ranked files and the evidence behind each lead.

Save tokens

Give your coding agent fewer files to read first.

Built for agents

Use the CLI, JSON output, or the MCP server.

A little detective work goes a long way.

Find the lead.
Then fix the bug.

Buggo scans the shape of your codebase and ranks likely files from the clues in your report. You decide what to inspect and verify.

  1. 01

    Describe the bug

    Start with what broke. Add an error, stack trace, or recent change if you have one.

  2. 02

    Inspect the suspects

    Buggo points to likely files and functions with evidence for each lead.

  3. 03

    Follow the evidence

    Open the ranked files, reproduce the issue, and make the fix with a smaller search area.

The stylesheet is a suspect now, too.

Clues come in
all kinds of files.

Buggo follows leads across code, components, styles, and configuration.

Code
.js .jsx .mjs .cjs .ts .tsx .mts .cts .py
Components
.astro .vue .svelte .mdx
Styles & markup
.css .scss .less .html
Config & data
.json .yaml .yml .tomlAlso Dockerfile, docker-compose files, .dockerignore, .npmrc, and .nvmrc.

For when you don't even know what you're looking for.

Nothing reported yet?
Go hunt one down.

buggo investigate needs a bug report. New in v0.2.0, buggo hunt doesn't. Point it at a repo and it triages the files most likely to be hiding an undiscovered bug, before anyone files a report.

  1. 01

    Module-level triage

    Scans the repo's structure and narrows in on the riskiest modules and directories first, so large repos stay fast.

  2. 02

    File-level triage

    Inside those modules, ranks individual files by how often they've needed a fix in the past.

  3. 63%

    Where real bugs hide

    of real bugs turn out to sit in the riskiest 10% of the repo. Chance alone predicts about 10%.

Filed under: known limitations

The signal favors busy "core" files over quiet, rarely-touched ones that can still hide a bug. Hunt is v0, experimental, and a companion to investigate, not a replacement. Buggo is still better at finding suspects than alibis.

From the actual evidence drawer / BG-0001

The case of the
missing courses.

One bug report. A repository full of possibilities. Buggo found a place to start.

The report

“The weekly DICIS schedule scraper is silently dropping all Salamanca campus courses.”

Scene scanned: 83 production files

There goes the afternoon of opening files at random.

Suspects

Ranked from the real run
  1. 01
    scrapper/src/scrapers/dicis_salamanca.pyPrimary suspect · 97%

    Symbols: is_valid_room, normalize_room, should_skip_subject, format_professor, extract_days

  2. 02
    scrapper/src/utils.pyWeak lead · 3%

    Symbols: clean, safe_parse_time, normalize, generate_hash, subject_id

5 files recommended for investigation.

Suspects, not convictions. Buggo narrows the search. You verify the culprit.

Watch the original run

Your next case awaits

Ready to find
your first clue?

Install the CLI, add your API key, and investigate a bug in your repository.

01 / installnpm install -g @moraxh/buggo02 / configurebuggo config set-key <your-openrouter-key>03 / investigatebuggo investigate "your bug" --repo .View package