AI triage for GitHub issues and pull requests
Rusuban has Claude Code read every issue and pull request of your repos and judge it against the rules in the repo. Each judgment says what the item is, whose move it is, and when to look again. What your rules allow happens at once. The rest comes to you as one card.
What a judgment holds
| Field | What it says |
|---|---|
| Kind | bug, feature, maintenance, docs, translation, question or other |
| Priority and area | On your scale, P0 to P3, and in the areas your rules name |
| Owner | The agents, a third party, you, or another GitHub login |
| Next | What happens next, and what blocks it |
| Revisit | When the agents look again, or how long a third party is waited for |
| Links | Related issues, what must land first, and the original of a duplicate |
| For a PR | Whether it may merge without a person, and why, for that head |
What happens next
Your rules decide. For example:
- a duplicate is closed, with a link to the original;
- a reporter is asked for what is missing, in the language and tone your rules set;
- a bug that can be reproduced goes to a worker, which writes the fix and a test that fails without it, then opens the PR;
- a feature request, a new dependency, or anything your rules keep comes to you on a card.
Where your rules say nothing, the agents do not guess: the item comes to you. When several cards ask the same thing, an agent proposes the rule that would answer them, as a PR you merge.
Rules in plain text
Triage follows Markdown files in .rusuban/rules/, on the repo's default branch. Write orders, define your words, and give every wait a duration.
## Kinds
- A bug is a behavior the docs or the code contradict. A crash is P0.
- A question about using the app is answered with a link to the docs,
then closed after 7 days without a reply.
## To the owner, with a card
- A feature, as an issue or a PR.
Without rules, Rusuban only watches a repo: its items show in the dashboard, and no agent judges them. See Writing rules.
Safe with what anyone can write
Anyone can open an issue. For the judge, an issue, a PR, a comment and a diff are data, never instructions: a PR that asks to be merged is judged on its diff like any other. Rules come only from the default branch, so a PR cannot change the rules it is judged by. The security model says what else holds the agents.
Where you see it
- The project's graph and kanban show every item and its judgment.
- The inbox holds the cards. A channel pings you on ntfy, Slack, Discord, Teams or e-mail.
- The journal lists what the agents did without you.
Get started
- Install Rusuban. It runs on your machine, with your
ghandclaudelogins. - Copy an example's
rules/into.rusuban/in your repo, then edit it. - Read the first judgments in the dashboard, and adjust the rules.