← All loops · ops · claude-code
Issue triage loop
No issue sits unlabeled for more than 15 minutes during work hours.
F1 · Goal
No issue sits unlabeled for more than 15 minutes during work hours.
F2 · Trigger
*/15 * * * *
F3 · Discover
gh issue list with empty label filter, state open.
F4 · Act
Label by area and priority, dedupe against existing issues, post a one-line summary.
F5 · Verify
Human spot-checks 1 in 20; mislabel rate must stay under 10%.
F6 · Persist
Triage decisions appended to .loop/triage.jsonl for calibration.
F7 · Exit
Queue empty each cycle; loop itself runs indefinitely on cron.
Cost
~4k tokens per cycle (measured)
Runnable code
/schedule every 15 minutes, label new unlabeled issues by area and priority, dedupe, and post a one-line summary on each
Adapted it for your stack? Submit your variant →