Triage a whole column
The single-ticket flow in Fix a ticket scales by repetition. Pointing Claude at a whole column lets you blow through 10 to 50 tickets in one session. This page describes the pattern; the toado-triage skill packages it as a one-line invocation.
When to triage a column vs. a single ticket
| Use column triage when | Use single-ticket fixes when |
|---|---|
| You have 10+ tickets piled up in To Do. | You have one specific bug you want to focus on. |
| Tickets are small and similar (visual nits, copy fixes, easy regressions). | The bug is complex and needs back-and-forth with the user. |
| You want a unified branch across several tickets. | Each ticket needs its own commit and review. |
| You are comfortable with Claude making decisions per-ticket without asking. | You want to review every decision. |
The loop
LIST tickets in the column↓For each ticket: ↓ READ context (get_ticket, get_capture_asset, list_comments) ↓ DECIDE: fix, ask, or skip ↓ If fix: EDIT, VERIFY, COMMIT COMMENT with what you did MOVE forward If ask: COMMENT with the question LEAVE in column If skip: COMMENT with reasoning (or move to a "blocked" / "won't fix" column)↓SUMMARIZE the runBundling
A common variation: bundle several small tickets onto one branch so you do one commit and one PR for the whole batch.
list_tickets(project_id, column_id=todo_id, limit=20)→ pick the 5 visual-only tickets
start_work_on_ticket( ticket_ids=['t-1','t-2','t-3','t-4','t-5'], branch_name='t-bundle-visual-cleanup')
[edit code locally, all 5 fixes]
git commit -m "Visual cleanup bundle\n\nToado: t-1, t-2, t-3, t-4, t-5"
bulk_move_tickets( ticket_ids=['t-1','t-2','t-3','t-4','t-5'], target_column_id=in_review_id)
For each, add_comment with the per-ticket fix description.start_work_on_ticket requires an explicit branch_name when you pass more than one ticket id, since slugifying multiple titles into one name does not produce a sensible result.
bulk_move_tickets runs sequentially server-side and returns a per-ticket result array. Partial failures are reported per ticket, not as a transaction rollback.
Per-ticket triage decisions
A useful default decision matrix:
| Signal | Decision |
|---|---|
| Capture has a clear visual bug, fix is in 1-2 files, tests pass after change. | Fix and move to In Review. |
| Description is ambiguous (“the button is broken” with no other context). | Comment asking for clarification. Leave in To Do. |
| Capture is missing (banner says “console capture unavailable”). | Comment with what is missing. Leave in To Do. |
| Bug is in third-party code or out of scope. | Comment with reasoning. Move to Won’t Fix or Done depending on your convention. |
| Issue is a duplicate of another ticket. | Comment “Duplicate of t-xyz”. Move to Done. |
| Tests fail after the proposed fix. | Comment with the failure log. Leave in In Progress (or revert and leave in To Do). |
Verification sweep
A variant of triage: rather than fixing tickets in To Do, walk the In Review column and verify the previous run’s fixes hold up.
list_tickets(project_id, column_id=in_review_id)
For each: get_ticket → read what the agent claimed to fix Run the verification (load the page, run the test, check the build) If verified: move_ticket to Done, add_comment "Verified." If not: add_comment with what is still wrong, move back to To Do.This is the canonical use of the toado-verify skill recipe.
Reporting
After the loop, emit a summary so the user knows what happened:
Triage run, project Acme Web, To Do column. Processed 12 tickets. Fixed and moved to In Review: 8. Asked for clarification (left in To Do): 2. Marked as duplicate (moved to Done): 1. Could not reproduce, left in To Do: 1.
Branches:
t-abc-fix-...,t-def-...,t-bundle-visual-cleanup. Total commits: 3.
Even when no human reads it immediately, summary text makes the audit trail much easier when someone does come back to the session.
What to read next
toado-triageskill, the packaged version of this loop.- Skill recipes for variants (verify, screenshot regression, dupe detection).
- Authoring your own skill when none of the recipes fit.