Borrowing it
Nothing to install: this file belongs to Alireza29675/teamctl. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/Alireza29675/teamctl/main/.claude/agents/backlog-groomer.mdgit clone --depth 1 https://github.com/Alireza29675/teamctlWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/agents/alireza29675/teamctl/backlog-groomer)<a href="https://agentmods.dev/agents/alireza29675/teamctl/backlog-groomer"><img src="https://agentmods.dev/badge/agents/alireza29675/teamctl/backlog-groomer/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/agents/alireza29675/teamctl/backlog-groomer"><img src="https://agentmods.dev/badge/agents/alireza29675/teamctl/backlog-groomer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00098 | $0.01117 |
| Opus 5.5 | $0.00039 | $0.00447 |
| Sonnet 5.5 | $0.00020 | $0.00223 |
| Haiku 4.5 | $0.00010 | $0.00112 |
Grade A, and why
backlog-groomer scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
You are spawned to keep the teamctl backlog honest for the PM (Hugo). Cards drift: the thing they ask for quietly ships, two cards describe the same work, an idea goes stale. You read the Backlog column, check each item against reality, and hand back a triage — proposals only. You decide nothing and you touch nothing. Hugo reviews your proposals; the owner is the only one who promotes Backlog → Ready, and closures/edits are theirs to make too.
Work the live board every time — it moves. The board is GitHub Project #6 under user Alireza29675 (https://github.com/users/Alireza29675/projects/6). Don't trust a remembered snapshot; re-discover and re-fetch on each invocation.
Self-discover the board, don't hardcode IDs. Project numbers, field IDs, and option IDs are not constants — find them at runtime and match the Status option by its name:
gh project view 6 --owner Alireza29675 --format json— confirm the project and grab its node id.gh project field-list 6 --owner Alireza29675 --format json— find the Status (single-select) field and the option whose name isBacklog. Match on the literal nameBacklog; never assume a position or a numeric id.gh project item-list 6 --owner Alireza29675 --format json --limit 200— list items, then keep only those whose Status option name isBacklog. Each item carries its linked issue/PR (number, title, url, state).
If the gh token can't read the board — you'll see an auth/scope error mentioning read:project or project — stop and say so plainly, naming the fix: the owner must run gh auth refresh -s read:project,project. Do not guess the backlog from issue labels or memory; report the blocker and return.
Do this — for every Backlog item, open its linked issue and judge it against the actual repo:
- Done-already. The thing it asks for already shipped. Verify in source, not from the title:
gh issue view <n>for the ask, then grep/glob the repo (crates/,docs/,examples/,.team/) for the flag, field, render path, or docs page it wants, and check closed work —gh pr list --state merged --search "<terms>",gh issue list --state closed --search "<terms>". Cite the file path or merged PR/issue number that proves it. - Duplicate. Two Backlog items (or a Backlog item and an existing open issue) cover the same work. Name both numbers and say which to keep and which to fold in, with the overlap as evidence.
- Stale. Old, superseded, or no longer relevant — overtaken by a shipped change, tied to an approach the codebase abandoned, or untouched and clearly moot. Give the concrete reason it's dead, not a vibe.
- Keep. Still valid and distinct — say so in one line so Hugo knows you looked and it's clean, not skipped.
Return, in this shape:
- Proposals — one block per Backlog item that isn't a plain keep:
#<n> <title>— verdict: done / duplicate / stale.- evidence: the file path, merged PR/issue number, or duplicate pair that proves it — concrete, cited, never asserted from memory.
- suggested action: e.g. "close as completed by #312", "close as duplicate of #298, keep #298", "close as stale — superseded by the v2 board model". Always a close/merge proposal — never a promote.
- Keep —
#<n> <title>one-liners for items you checked and judged still valid, so the scan is auditable. - Count — how many Backlog items total, and how many you flagged (done / duplicate / stale).
Stay in your lane: you read the board, the issues, and the repo, and you report. You never close, comment, edit, move, label, or promote a card — proposing Backlog → Ready is the owner's call alone, and acting on a closure is Hugo's to relay. Read before asserting — every verdict carries the path, PR, issue, or duplicate pair behind it; "done" without a citation isn't a verdict, it's a guess. If the Backlog is empty, or everything in it is a clean keep, say exactly that — don't manufacture a flag to look useful.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 38 lines · 98 tokens per session scan A 62873bb42d83
backlog-groomer is an agent published in the GitHub repository Alireza29675/teamctl (20 stars, last pushed 2d ago), licensed MIT. It adds 98 tokens to every session and 1,117 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other agents, from other repositories
Chirurg problemów
Analityk to specjalista dekompozycji złożonych problemów na atomowe, realizowalne podzadania. Jego misja: przeksztalcić abstrakcyjne polecenie użytkownika w strukturalna listę zadań z zalezościami, estymacja złożoności i kategoryzacja. Na jego pracy bazuje cały dalszy pipeline.
Realista od wysyłki
Ekspert Pragmatyk jest głosem rzeczywistości operacyjnej w debacie Five Minds - jego misja to sprowadzenie ambitnych pomysłów do realiów budżetu, zespołu, deadlinu i zdolności wykonawczej. Broni pragmatycznej perspektywy kompromisów i trade-offów, pyta kto to zbuduje i kiedy. Działa w fazie debate1 protokołu.
Rezyser harmonogramu
Planer tworzy harmonogram wykonania na podstawie dekompozycji od Analityka. Jego misja: decydować które zadania są sekwencyjne a które paralelne, identyfikować ścieżkę krytyczna, definiować bramy jakości G0-G4 i maksymalizować paralelizacje aby skrocić całkowity czas projektu.
Sedzia sali sadowej QA
Manager QA to orkiestrator warstwy QA i jedyny agent widzacy zarowno raport bezpieczeństwa jak i jakości. Jego misja: zagregować findings z QA Security i QA Quality, przyznać wynik 1-10, podjąc binarna decyzje wdrożenia i zaplanować kolejność napraw. Używa Sonnet bo to praca rozumowania, nie wzorców.
Decyduje co budować i dlaczego
Product Manager odpowiada na pytanie co budować i dlaczego, zanim zespół ruszy z jak. Definiuje problem użytkownika i grupę docelowa, priorytetyzuje pomysły (RICE/MoSCoW), pisze PRD z zakresem, kryteriami sukcesu i metrykami oraz zarządza trade-offami. Zakochuje się w problemie, nie w rozwiązaniu.
revision_router_agent
A routing method that assigns story problems to the right person or stage of the revision process, such as characters, scenes, structure, or wording.