Skip to content
ANDROIDHASSANPublic

About

Give it a repo, a ticket, or a task. Reproduces first, smallest fix, proves it, explains it.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

30 Commits

Folders and files

Repository files navigation

/bhai

Paste a repo, a ticket, or a sentence.
It reproduces the bug, makes the smallest fix, proves it, and tells you how to defend it.

/bhai repo → a real bug, fixed, PR drafted · /bhai ticket → solved at the root cause · /bhai task → done and proven · /bhai status → your open PRs looked after

A chat with bhai: you send a repo link, bhai measures the repo, finds a bug, writes a failing test, fixes it with every check green, and asks before opening the PR

Bhai, bas bol de.

Claude Code plugin Agent Skills format Never pushes without your yes MIT

Chat and terminal are illustrations built from a real merged fix, RealtimeSTT #332, with that repo's measured numbers.

Install · What it does · The fix · Safety · FAQ

Install

claude plugin marketplace add ANDROIDHASSAN/bhai
claude plugin install bhai@bhai

Then, in any repo: /bhai <a link or a sentence>.

Sibling skills, same install:

Skill Hardened? For
/tagda-fix <...> ✅ mandatory, not optional any route — a repo, a ticket, a task
/tagda-build <idea> ✅ same hardening building a real thing from scratch
/tagda-commit <repo> ✅ same hardening open-source contribution only — asks which repo, or what kind, if you don't name one
/tagda-explain <...> — verified explanation, no code change
/tagda-research <...> — goes beyond this codebase — papers, docs, real articles, more than one source, every finding sourced
/bhai-status — health check on your open PRs, no repo name needed
/bhai-audit <repo> — finds candidates, fixes nothing
/bhai-help — this list, from inside Claude Code

One command, five jobs

You type bhai does
/bhai add retry with backoff to the uploader builds it from scratch, the same careful way: understands the codebase first, smallest working change, proves it
/bhai ABC-123 · a Jira/Linear/GitHub issue link reads the whole ticket (comments, screenshots, logs if connected), finds the root cause and its siblings, fixes and proves it
/bhai https://github.com/owner/repo learns how that repo merges, finds a real bug, reproduces it with a failing test, fixes it, drafts a PR in the repo's own style
/bhai why is this slow? · any plain question no code changes — just the answer in 5–10 lines, in words you'd use with a friend, marked clearly if it's a guess
/bhai status · /bhai watch owner/repo looks after your open PRs: red CI, conflicts, bot reviews, merges, then the next bug

Every input goes through one route, then the same spine: understand, reproduce, smallest fix, prove, review, gate, explain, log

The same run in a terminal: route, the repo's merge style, the bug, a failing test, the fix, every check, and the explanation

The best fix is the shortest correct one

Most AI fixes bhai
patch the line the error points at fixes the root cause where every caller routes through, and the sibling bugs with the same cause
add a new helper reuses what the codebase already has; one line if one line works
"tests pass" the test fails on the old code first, then a mutation check breaks the fix to make sure the test notices
big diff a shrink pass deletes every line the tests and acceptance list don't need
guesses reads the real log line and database record when you have them connected (read-only)
"should work" 29 self-grill questions before and after the fix, answered from command output

Why it doesn't break things

It always It never, without your yes
reproduces before it fixes pushes, opens a PR, comments, merges or deploys
runs the repo's own lint, type and test commands, and its CI workflows locally force-pushes, adds a dependency, or edits lockfiles and versions
merges the default branch right before opening a PR, so there are no conflicts claims a number it didn't measure
follows each repo's AI-contribution policy, and stops where it forbids AI PRs opens another PR in a repo before the open ones there have had time to be reviewed
keeps the diff to the fix and its test puts itself in your commits or PRs

--auto is a one-run yes for a single PR whose gates all passed. Human reviewers, CLAs and design questions still come to you.

It explains like a friend

Branch fix/client-empty-language — draft ready, PR nahi khola
Bug kya tha client language="" bhejta hi nahi tha, server "en" pe atak jaata tha
Fix kya kiya client ab --language "" pass karta hai; server ka default chhua nahi
Proof naya test master pe fail hua, fix ke baad pass; repo ke tests green
Reviewer pooche to "server default badalna breaking change hota, isliye client side fix kiya"
Tumhe karna hai "haan" bolo to PR khol dun

Hinglish by default, technical words in English. Write to it in another language and it answers in that one.

Where it comes from

The workflow inside /bhai is the one behind 15 merged pull requests in LiveKit, RealtimeSTT, RealtimeTTS, Piper and Mastra in October 2026, plus a production ticket flow for a voice-AI platform. Each rule exists because of a real failure; the research behind them is in research.md.

Every run is logged

One Markdown file per run in ~/.bhai/runs/: decisions, every command and its output, the diff, each gate. It lives outside your repo, so it can never land in a commit.

FAQ

Will my PR get merged? No tool can promise that; maintainers decide. bhai removes everything on your side that blocks a merge: conflicts, red CI, style mismatches, missing template sections, duplicates.

Is this an AI-PR spam machine? The opposite. It refuses repos that ban AI PRs, never piles a second PR onto a repo faster than that repo can actually review, never pings maintainers, and won't open a PR you can't explain. Read the gates.

What does it need from me? A link or a sentence, gh logged in, and a "haan" before anything leaves your machine. Full list.

Does it work with Codex, Cursor or Gemini CLI? The skill uses the open Agent Skills format. It is tested on Claude Code; other agents are not verified yet.

What doesn't it do? Model-quality bugs (LLM/STT/TTS behaviour), product decisions, and anything it can't reproduce: it stops and tells you why.

License

MIT © Hassan Kazi

About

Give it a repo, a ticket, or a task. Reproduces first, smallest fix, proves it, explains it.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors