What This Automation Does
This workflow reads bug tickets from Linear and automatically assigns them to the right team based on ticket details. It removes wrong or unclear tickets and uses AI to classify the bugs fast. If AI can’t decide, it sends a Slack message for manual check.
You get faster bug handling and less manual work. It saves hours by sorting bugs right away.
Tools and Services Used
- n8n: Runs the automated workflow.
- Linear API: Accesses bug tickets and teams data.
- OpenAI GPT-4: Classifies bugs by understanding text.
- Slack API: Sends notifications when AI cannot classify.
How This Workflow Works: Input → Process → Output
Input
The workflow triggers when a new or updated bug ticket appears in Linear with a “bug” label and is in “Triage” state.
Tickets without description or without the right label/state are ignored.
Process
First, it fetches the list of teams from Linear.
Then, it sends the bug’s title and description along with predefined team descriptions to OpenAI GPT-4 for classification.
AI returns the team name responsible for the bug.
If AI says “Other,” the bug is sent to Slack for manual review.
If AI returns a clear team, the workflow finds that team’s ID from Linear’s data.
The bug ticket in Linear is updated with the correct team assignment.
Output
Bugs get labeled with the correct team in Linear automatically.
If AI can’t classify, a Slack message alerts the team to review the ticket.
Who Should Use This Workflow
This is useful for product managers and engineering teams using Linear to track bugs.
It helps when many bug tickets cause slow or wrong assignments.
The workflow fits teams that want to save time and reduce errors in bug triage.
Beginner Step-by-Step: How to Use This Workflow in n8n
1. Get the Workflow
- Download the workflow file using the Download button on this page.
- Open n8n editor where you workflow runs.
- Choose “Import from File” and upload the downloaded workflow.
2. Configure Credentials and Settings
- Add your Linear OAuth2 credentials in n8n settings for API access.
- Enter your OpenAI API key for GPT-4.
- Set your Slack app token for sending notifications.
- Update any IDs such as Linear team IDs, label IDs, or Slack channel names if incorrect.
- Verify the “Set me up” node has your team descriptions and Slack channel name correct.
3. Test and Activate
- Create a test bug ticket in Linear that fits the filter criteria (has bug label, description, and triage state).
- Run the workflow manually or wait for the trigger to activate.
- Check if the ticket gets assigned correctly or Slack gets notified on failure.
- If tests pass, activate the workflow by clicking “Active” in n8n editor.
Once active, the workflow labels bugs automatically every time they come.
For more control, consider self-host n8n on a server.
Edge Cases and Failure Handling
If AI replies “Other,” the workflow sends a Slack alert so humans can review the bug.
If tickets lack description or correct labels, those tickets skip processing to avoid errors.
Trigger failures usually mean wrong credentials or team IDs—verify these in the Linear Trigger node.
Mapping AI team names to actual Linear IDs is critical; check expressions if assignments fail.
Customization Ideas
- Change team descriptions in the “Set me up” node to fit your company.
- Adjust filter node rules to handle other labels or ticket states.
- Edit Slack notification message to add URLs or extra bug info.
- Enhance AI prompt to include more bug context for better classification.
- Switch Slack channel in the “Set me up” node to target different teams.
Key Code Snippets and Prompts
The workflow uses this expression to find the team ID matching AI result:
{{$json.data.teams.nodes.find(team => team.name === $json.message.content).id}}This OpenAI prompt tells the AI how to classify bugs by team:
I need you to classify a bug ticket and tell me which team should work on it.
All possible teams will be described in the following format: [Teamname][Areas of responsibility].
=The possible teams are: - [Adore][Is responsible for every persona that is not Enterprise. This includes signup journeys, trials, n8n Cloud, the Canvas building experience and more]
- [Payday][Handles the Enterprise persona. Covers SSO, LDAP, environments, queue mode, version control, external storage, etc.]
- [Nodes][Responsible for everything related to specific nodes in n8n]
- [Other][Placeholder for unclassifiable bugs]
=This is the bug: Title and Description from the Linear Trigger data.
Which team should work on this bug?
Do not respond with anything else than the name of the team from the list.Summary of Benefits and Results
✓ Saves over 10 hours per week by automating bug classification.
✓ Reduces human errors by assigning bugs correctly first time.
✓ Speeds up developer fixes by accelerating triage.
→ Bugs with missing info are filtered out, so no mistakes happen.
→ Tickets with unclear AI classification generate Slack alerts for manual handling.
