Linear Issue Triage Agent

Triage unassigned and unprioritized Linear issues automatically. Set priority, add labels, and assign based on content.

Auto-triagePriority classificationLabel assignmentBacklog hygiene

The Challenge

Issues pile up in Linear without priorities, labels, or assignees. Someone creates a ticket in a hurry, forgets to set the priority, and it sits in the backlog invisible to everyone. By the time someone notices, there are dozens of untriaged issues and nobody wants to spend two hours reading through each one to classify them. The backlog becomes a graveyard of good intentions.

What This Prompt Does

Find Untriaged Issues

Searches for issues missing priority, assignee, or labels across your team

Classify Priority

Analyzes title and description to determine urgency based on keywords and context

Apply Labels

Tags issues with component, type, and area labels based on their content

Document Decisions

Adds a comment to each issue explaining why the priority and labels were chosen

The Prompt

The Prompt

Task

Use @Linear/List IssuesName it "Linear/List Issues" and call it with @Linear/List Issues to find issues with no priority, no assignee, or no labels. Classify priority based on title and description. Use @Linear/Add LabelName it "Linear/Add Label" and call it with @Linear/Add Label to tag issues and @Linear/Update IssueName it "Linear/Update Issue" and call it with @Linear/Update Issue to set priority and add a comment explaining the triage decision.

Input

The user provides:

  1. Their Linear team name or ID
  2. Triage rules (optional) - e.g., "anything mentioning production is Urgent", "label frontend issues with 'frontend'"
  3. Whether to auto-assign (optional) - e.g., "assign frontend issues to @alice"

Example: "Triage all unassigned issues in the Engineering team's backlog"

Context

Issue Discovery

  1. Use @Linear/List IssuesName it "Linear/List Issues" and call it with @Linear/List Issues to find issues with no priority set
  2. Use @Linear/List IssuesName it "Linear/List Issues" and call it with @Linear/List Issues to find issues with no assignee
  3. Use @Linear/List IssuesName it "Linear/List Issues" and call it with @Linear/List Issues to find issues with no labels
  4. Combine results, deduplicating issues that match multiple criteria

Priority Classification

  1. Analyze each issue's title and description for priority signals:
    • Urgent: production down, data loss, security vulnerability, customer-facing outage
    • High: bug affecting multiple users, regression, broken integration, SLA risk
    • Medium: feature request with business justification, performance degradation, UX issues
    • Low: nice-to-have improvements, cosmetic issues, internal tooling requests
  2. Consider keywords, sentiment, and context when classifying

Label Assignment

  1. Analyze issue content to determine relevant labels:
    • Component labels: frontend, backend, infrastructure, mobile, API
    • Type labels: bug, feature, improvement, chore, documentation
    • Area labels: based on mentioned systems, services, or product areas
  2. Use @Linear/Add LabelName it "Linear/Add Label" and call it with @Linear/Add Label to apply the determined labels

Triage Execution

  1. Use @Linear/Update IssueName it "Linear/Update Issue" and call it with @Linear/Update Issue to set the priority field
  2. Add a comment explaining the triage reasoning:
    • Why this priority was chosen
    • What labels were applied and why
    • Any recommendations for assignment or next steps
  3. If auto-assign rules are provided, set the assignee accordingly

Output

Triage Report:

Team: [Team Name] Issues Triaged: [count]

Priority Breakdown:

  • Urgent: [count] issues
  • High: [count] issues
  • Medium: [count] issues
  • Low: [count] issues

Actions Taken: | Issue | Title | Priority Set | Labels Added | Assigned To | Reasoning | |-------|-------|-------------|-------------|-------------|-----------| | [ID] | [title] | [priority] | [labels] | [assignee] | [brief reasoning] |

Issues Needing Human Review:

  • [Issue ID] [Title] - [reason it needs manual review]

Summary: [1-2 sentence overview of triage results]

Example Usage

Try asking:

  • "Triage all unassigned issues in the Engineering team's backlog"
  • "Find issues with no priority in the Platform team and classify them"
  • "Label and prioritize all untriaged issues created this week"