Know what matters before you open the tab
Every issue arrives labelled with severity, category, and the components it touches — so the queue sorts itself and the urgent things surface first.
Sentifix reads each new GitHub issue, traces it back to the code that caused it, and replies with a root cause and a working patch — usually within 30 seconds of the issue being opened.
Discount codes silently ignored when cart total is exactly £50
Seventy-two seconds: an issue classified, the repository searched, a root cause found, a patch written, and the patch scored. The diff and the score on screen are the real output of a real run.
Triage is the tax on every popular repository. Sentifix pays it for you, and shows its work.
Every issue arrives labelled with severity, category, and the components it touches — so the queue sorts itself and the urgent things surface first.
Sentifix indexes your repository and searches it the way a reviewer would — following stack traces and imports, not just matching words — then names the exact lines at fault.
You get a real unified diff you can read, argue with, or apply. Nothing is ever pushed or merged — the change stays a suggestion until a human says otherwise.
Plenty of them start as someone in a channel saying “hey, checkout is broken again”. Sentifix takes that as a report too — mention it, and the triage comes back in the thread.
Someone opens an issue. Sentifix picks it up from the webhook and replies on the thread with the diagnosis and a patch.
Best for reports that already have a stack trace or a reproduction.
applyDiscount() — inclusive threshold compared with >. Patch and eval score attached.
Best for the reports that would otherwise never become issues at all.
Install once. Everything after that happens on its own, in the open, in the issue thread.
Sentifix picks it up from the webhook and classifies it — what kind of bug, how severe, which parts of the system it touches.
It searches the indexed repository for the code the report points at, pulls in the surrounding context, and works out the root cause.
A comment lands on the issue with the diagnosis and a proposed diff — already scored for correctness and safety before you ever see it.
An AI that guesses confidently is worse than no AI at all. So Sentifix scores its own output against the issue it was given, and that score ships with the suggestion.
“Replace this with a real quote once you have one — a maintainer describing what triage cost them before, and what it costs now.”
The whole thing is open source. Paying is for people who would rather not run a queue, a database, and a vector store themselves.
£0
Run it on your own box with your own API keys.
£49 / month
Hosted, maintained, and watching your repos.
Talk to us
For busy monorepos and larger organisations.
No. Sentifix writes a comment containing a proposed diff. Applying it, editing it, or ignoring it is entirely your call — nothing reaches a branch until you approve it from the dashboard.
If you self-host, nowhere — the index lives in your own database on your own infrastructure. On the hosted plan, your repository is indexed on our servers and used only to answer issues in that repository.
Any language in your repository can be indexed and searched. Patch quality is strongest where the codebase has clear structure and the issue includes a stack trace or a reproduction.
Sometimes it will be. That's why every patch is scored before posting and nothing is applied automatically. Treat a Sentifix comment as a well-prepared first draft from a reviewer who has already read the code.
Yes. Run it on everything, restrict it to a single label, or trigger it manually by commenting /sentifix on the issues you want looked at.
Three scopes: read the mentions addressed to it, and post messages. It cannot read channel history, browse other conversations, or see anything it wasn't explicitly mentioned in.
Install the GitHub App, pick your repositories, and the first index runs immediately. Most teams see their first triaged issue within a few minutes.
Free to try, no card, and you can uninstall it in two clicks if it isn't pulling its weight.
Root cause. The eligibility check in
applyDiscount()uses>where the threshold is meant to be inclusive, so a cart at exactly the minimum is rejected.✓ Patch reviewed and scored before posting · 3 related tests found