dbt-labs/docs-issue-triage
| Use this skill to triage, score, and label GitHub issues in the docs.getdbt.com repo. Triggers when the user asks to triage issues, rank issues by priority or size, label GitHub issues, review the issue backlog, or score open docs issues. Also use this skill when the user says things like "what should we work on next", "rank our issues", "apply priority labels", "apply size labels", or "what are our highest priority issues". Always use this skill for any request involving prioritizing or sizing docs GitHub issues.
npx skills add https://github.com/dbt-labs/docs.getdbt.com --skill docs-issue-triage
This skill reads open GitHub issues in dbt-labs/docs.getdbt.com, scores them by priority and size using the definitions below, presents a ranked list to the user, and — with their confirmation — applies the appropriate labels directly to GitHub.
Use the list_issues tool to fetch open issues from dbt-labs/docs.getdbt.com. Supported options:
perPage to fetch a specific number (e.g. 10, 50, 100 max per request)orderBy: CREATED_AT + direction: ASC for oldest-first, DESC for newest-firstendCursor from pageInfo to fetch the next pageFor each issue, collect:
Skip issues that already have both a priority: label AND a size: label — they've already been triaged. Track partially-labeled issues (priority but no size, or vice versa) separately — see Edge Cases.
Before proceeding to Step 4, verify that all triage labels exist in the repo by checking the known label set:
priority: high, priority: medium, priority: lowsize: x-small, size: small, size: medium, size: large, size: x-largeIf any label is missing from the repo, note it to the user before applying — do not create labels automatically.
For each issue, assign one priority label and one size label based on the definitions below. Use the issue title, body, and any existing labels as signal. When in doubt, lean toward the more conservative (lower priority / smaller size) label and flag it for human review.
| Label | When to apply |
|---|---|
| priority: high | Technical inaccuracy, missing or incorrect information, or broken links that negatively affect user workflows |
| priority: medium | Fix or enhancement to existing information that is generating customer requests or confusion |
| priority: low | Improvements that don't block workflows — grammar fixes, nice-to-haves, minor clarity improvements |
Priority signal heuristics:
| Label | When to apply |
|---|---|
| size: x-small | Under 3 hours to fix (e.g. fix a typo, update a single code snippet, fix a broken link) |
| size: small | 1–2 days to address |
| size: medium | Up to a week to address |
| size: large | More than a week; may require more than one writer |
| size: x-large | 1+ weeks of research for 1+ writers — e.g. information architecture projects, major restructuring |
Size signal heuristics:
Present the triaged issues as a ranked table, sorted by priority (high → medium → low), then by age (oldest first within each priority tier).
Format:
## Triage Results — [date]
### 🔴 Priority: High
| # | Title | Suggested Size | Confidence | Notes |
|---|---|---|---|---|
| [#123](url) | Broken link in quickstart | x-small | High | 404 detected in title |
...
### 🟡 Priority: Medium
...
### 🟢 Priority: Low
...
### ⚠️ Partially Labeled (needs one dimension only)
| # | Title | Has | Needs | Suggested | Confidence | Notes |
|---|---|---|---|---|---|---|
| [#456](url) | Some issue | `size: small` | priority | `priority: medium` | High | Support ticket origin |
...
#123)At the end of the table, ask:
> "Would you like me to apply these labels to GitHub? I can apply all of them, only the high-confidence ones, or you can tell me which specific issues to label."
Never apply labels without explicit user confirmation. Once confirmed:
["content", "improvement", "paper cut"] + new labels ["priority: medium", "size: small"] → pass ["content", "improvement", "paper cut", "priority: medium", "size: small"]issue_write with method: update and the merged label list.Label names must exactly match:
priority: high, priority: medium, priority: lowsize: x-small, size: small, size: medium, size: large, size: x-largeTake dbt-labs/docs-issue-triage from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.