ai-triage
Skill65 starsChanged 2 months agoApache-2.0View on GitHub
Reads one GitHub or Azure DevOps backlog, explains what to work on first, and writes a complete report without changing remote items. Use for backlog triage, not debugging one failure, filing an issue, reviewing a diff, or deciding what to build.
In this repository41 other files it gives its agents.
- AGENTS.mdAGENTS.md
- a11y-auditSkill
- ai-adversarial-loopSkill
- ai-agents-mdSkill
- ai-architectSkill
- ai-audit-codeSkill
- ai-audit-designSkill
- ai-audit-docsSkill
- ai-brainstormSkill
- ai-codegraphSkill
- ai-config-to-projectSkill
- ai-debugSkill
- ai-design-md-plannerSkill
- ai-exploreSkill
- ai-git-cleanupSkill
- ai-issue-reportSkill
- ai-noteSkill
- ai-orchestratorSkill
- ai-prototypeSkill
- ai-prSkill
- ai-read-docsSkill
- ai-researchSkill
- ai-review-uiSkill
- ai-securitySkill
- ai-stress-testSkill
- ai-test-plannerSkill
- ai-verifySkill
- ai-visual-recapSkill
- ai-writeSkill
- ai-writing-behaviorSkill
- build-checkSkill
- code-auditSkill
- design-checkSkill
- feature-verifySkill
- full-reviewSkill
- perf-auditSkill
- review-routerSkill
- second-opinionSkill
- security-auditSkill
- spec-extractSkill
- verify-featureSkill
The file
We split this skill into the rules it gives an agent
10 rules. About 0 are common, 4 are distinctive, and 6 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
6
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 12
Use one provider-specific procedure for one backlog at a time.
- Very specific: line 17
When no URL is supplied, list remotes with git remote and collect each URL with git remote get-url --all <name>.
- Very specific: line 21
If the resolver returns needs-answer, ask for the missing or conflicting provider, project, team, board, or backlog selection before any …
- Very specific: line 24
Use only bare allowlisted CLI names from the trusted PATH.
- Very specific: line 36
After collection returns complete: true, create exactly one analysis record per inventoried work-item ID.
- Very specific: line 44
Read each Azure item's signals and revision-linked sources during analysis.
- Very specific: line 51
Use exact source IDs/excerpts/values, blocker identity, current-work status and matching parent/date linkage.
- Distinctive: line 75
If the provider or target is unclear, ask before reading anything.
- Distinctive: line 79
Never create, edit, label, assign, comment on, close, merge, review, or delete remote items.
- Distinctive: line 87
Read by: the human deciding what to work on next.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
ai-triage — read the backlog, rank it, touch nothing
Use one provider-specific procedure for one backlog at a time. Do not combine repositories, organizations, projects, teams, or boards in one report.
Routing
- When no URL is supplied, list remotes with
git remoteand collect each URL withgit remote get-url --all <name>. Pass the URLs and any explicit URL to the exportedresolveTargetfunction inscripts/resolve-target.mjs; an explicit URL takes precedence over remotes. - If the resolver returns
needs-answer, ask for the missing or conflicting provider, project, team, board, or backlog selection before any work-item read. Keep the answer only for that run; do not save it in configuration. Stop onunsupported. - Use only bare allowlisted CLI names from the trusted
PATH; never use path-qualified executables, environment-prefixed commands, or shell wrappers. Do not inspect active Azure CLI defaults. - For a GitHub target, follow the complete GitHub procedure. It preserves the existing issue and pull-request inventory, ranking, evidence, and report.
- For Azure DevOps, follow the Azure procedure. Route the
resolved target through
resolveTargetAndRead; its callback is the only place to callcollectAzureBacklogwith the scopedcreateAzureDevOpsInvokeradapter andincludeSignals: trueon every normal Azure run. This explicitly enables comments, dates, direct-parent context and selected-team iteration evidence; inventory-only compatibility defaults are not the triage procedure. If the selected scope is not ready or collection is incomplete, stop without writing. - After collection returns
complete: true, create exactly one analysis record per inventoried work-item ID. Keep no more than five per-item analyses in flight; recordUNASSESSEDexplicitly when an item cannot be assessed. Pass the complete inventory and ananalyzeItemlookup keyed by item ID towriteAzureTriageReportinscripts/render-report.mjs. It validates and renders everything before writing.ai-engineering/triage.html; an ambiguity, incomplete inventory, missing/invalid analysis, unsafe link, or render failure must leave the prior report untouched. Parent and child links are context, never inventory. - Read each Azure item's
signalsand revision-linkedsourcesduring analysis. Respect complete, absent, partial and inaccessible signal coverage and its next action; limited discussion never proves no blockers. Creation/change ages are elapsed times, not continuously-open duration or urgency. Native Priority/Severity stay unchanged; parent dates and sprint end are context, not inherited deadlines. - An assessed Azure record must include a nonempty summary and structured
claimsfrom the semantic extraction contract. Use exact source IDs/excerpts/values, blocker identity, current-work status and matching parent/date linkage; useclaims: []when unsupported. Do not classify by keywords or generate a second priority score. Board evidence is team-reported, not code-verified merely because it links to HTTPS. Pair delivery/dependency claims by the source-backed issue identity, not shared dates alone. Include completed, withdrawn and unknown counterclaims, even in older-created comments edited later. Compare creation and edit timestamps together; overlapping edits require clarification, not promotion. Reconcile current child dependency before using a parent commitment and retain its supporting comment references. Incomplete chronology cannot establish a current blocker or commitment. The writer validates claims, preserves the native band and derives Recommendation/Why now independently of Analysis. - Include
summary,whyNow,confidence(HIGH,MEDIUM, orLOW), andconfidenceBasisin each assessed record. With signals, the report uses its independently derived recommendation rationale and coverage-based confidence; without signals, it shows the assessment'swhyNowand confidence basis. Keep those explanations distinct. Recent-comment context is the fixed latest-five window; it is separate from the full selected-item discussion used for chronology. Direct same-project parents/children are context only, and comments are not verified facts. - Remote GitHub and Azure work-item links open in a new tab; Azure item links target the Azure Boards work-item page, not a REST API endpoint.
- The report uses the shared shell in
templates/triage.html.tpland follows artifact-design.md; preserve the existing GitHub report sections and output contract. - If the provider or target is unclear, ask before reading anything.
Read-only boundary
Never create, edit, label, assign, comment on, close, merge, review, or delete remote items. The report is the only output artifact. Keep all inventoried items visible, including any that could not be assessed; never present a partial inventory as complete.
Lifecycle
Lane: light
Writes: .ai-engineering/triage.html for GitHub and Azure DevOps
Read by: the human deciding what to work on next; ai-brainstorm when an item becomes work
Dies: replaced by the next triage of the same repository
Next: ai-brainstorm when the human picks an item to build; none when the report only closes items
Source: ai-engineering (own), Apache-2.0.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

