GitHub - rvoertmann/barbequeue: Installs /barbeque, a Claude Code skill that drains a ticket backlog unattended, one subagent per ticket. · GitHub
/" data-turbo-transient="true" />
Skip to content
Search/
Sign in<br>Sign upAppearance settings
You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.
Dismiss alert
{{ message }}
rvoertmann
barbequeue
Public
Notifications<br>You must be signed in to change notification settings
Fork
Star
main
BranchesTags
Go to file
CodeOpen more actions menu
Folders and files<br>NameNameLast commit message<br>Last commit date<br>Latest commit
History<br>7 Commits<br>7 Commits
.scratch/drain-branch-naming/issues
.scratch/drain-branch-naming/issues
bin
bin
docs
docs
skill
skill
.gitignore
.gitignore
CLAUDE.md
CLAUDE.md
CONTEXT.md
CONTEXT.md
LICENSE
LICENSE
README.md
README.md
package.json
package.json
View all files
Repository files navigation
( (<br>) ) ( ) )<br>( ( ) ) ( (<br>) ) ( ( ) )<br>██████╗ █████╗ ██████╗ ██████╗ ███████╗ ██████╗ ██╗ ██╗███████╗██╗ ██╗███████╗<br>██╔══██╗██╔══██╗██╔══██╗██╔══██╗██╔════╝██╔═══██╗██║ ██║██╔════╝██║ ██║██╔════╝<br>██████╔╝███████║██████╔╝██████╔╝█████╗ ██║ ██║██║ ██║█████╗ ██║ ██║█████╗<br>██╔══██╗██╔══██║██╔══██╗██╔══██╗██╔══╝ ██║▄▄ ██║██║ ██║██╔══╝ ██║ ██║██╔══╝<br>██████╔╝██║ ██║██║ ██║██████╔╝███████╗╚██████╔╝╚██████╔╝███████╗╚██████╔╝███████╗<br>╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═════╝ ╚══════╝ ╚══▀▀═╝ ╚═════╝ ╚══════╝ ╚═════╝ ╚══════╝<br>═══════════════════════════════════════════════════════════════════════════════════<br>you, at midnight ▸ ticket ▸ ticket ▸ ticket ▸ gate ▸ report ▸ you, in the morning
Installs /barbequeue , a Claude Code skill that drains a ticket backlog unattended.
A queue, and a barbeque. It works its way down the line and leaves everything on the grill for you.
You go to bed. It takes every eligible ticket, implements each one in its own subagent session, commits it to a drain branch, verifies the whole night's work at the end, and leaves you a report. Nothing is merged. You review in the morning.
It is built to sit on top of Matt Pocock's engineering skills: /to-tickets produces the backlog, /implement does each ticket, /code-review checks the result. /barbequeue is the loop around them.
Install
Not on npm yet, so install straight from GitHub:
npx -y github:rvoertmann/barbequeue install --global # ~/.claude/skills/barbequeue<br>npx -y github:rvoertmann/barbequeue install --project # ./.claude/skills/barbequeue
The scope flag is required. Global follows you into every repo; project is committable and travels with the repo for your teammates. If both exist, the project copy wins inside that repo.
Installing from GitHub tracks the default branch rather than a released version, so re-running it is how you update. The checksum guard still protects your local edits, it just cannot tell you whether a newer version exists.
Once it is published, the shorter form works and status can tell you whether you are current:
npx barbequeue install --global<br>npx barbequeue@latest update --global<br>npx barbequeue status # what is installed, where, and whether it is current<br>npx barbequeue uninstall --project
The installer copies the skill rather than symlinking it, so it keeps working with no npm involvement afterwards. It records a checksum at install time, so if you have edited your copy, an update refuses to overwrite it and tells you how to diff. Pass --force when you mean it.
Prerequisites
A git repo with a clean working tree.
A backlog. /barbequeue consumes tickets, it never generates them. Run /to-tickets first.
docs/agents/issue-tracker.md, from /setup-matt-pocock-skills. GitHub, GitLab, and local markdown all work.
A green test suite before you start. A red baseline aborts the run.
Use
/barbequeue drain every eligible ticket in the tracker<br>/barbequeue auth-rework drain one feature's tickets
A ticket is eligible when it is ready-for-agent and every ticket it is blocked by is done. The frontier is recomputed each iteration, so a ticket you file at 3am gets picked up.
Each ticket goes to a fresh subagent, which runs /implement and returns a three-line verdict: done, failed, or blocked. The loop never reads the ticket bodies, only the verdicts, which is what lets it stay alive all night.
What it does when things go wrong
A ticket fails<br>Its partial work is preserved on failed/-, the drain branch resets clean, its dependents stay blocked, the loop continues. No retry.
The end gate goes red<br>git bisect names the culprit commit, it gets reverted, the gate re-runs. At most twice.
A revert conflicts<br>It stops and tells you. Conflicts are never resolved unattended.
A ticket is ambiguous<br>Verdict is blocked. It never guesses at intent.
What it will not do
Merge to your default branch, or open a PR.
Write a fix during the gate. The gate may only revert, never author...