n8n

How to Automate Linear Bug Team Assignment?

New bug reports often land in a shared team and wait for someone to sort them. This build listens for new issues in Linear, uses AI to pick the best team, updates the issue, or alerts Slack if it cannot decide. It helps engineering and support leads move bugs to the right owners fast.

It begins with a Linear event trigger for new issues in a chosen team. A filter keeps only items that have the right label and a filled description so noisy tickets do not slip through. The AI step reads the bug text and a list of teams with their duties, then returns a best match. A GraphQL call pulls the full team list from Linear so the AI choice can be mapped to a real team ID and the issue can be moved. If the AI is unsure, a Slack message asks a human to review and assign.

You need accounts for Linear, Slack, and OpenAI. Set the team in the trigger, define your team names and areas of responsibility in the setup node exactly as they appear in Linear, and set your Slack channel. Expect faster handoffs, fewer misroutes, and less time reading tickets, especially when bugs first arrive in a general inbox.

What are the key features?

  • Linear event trigger monitors new issues for a selected team.
  • Filter step keeps only tickets that match a label and have a filled description.
  • OpenAI classifies the bug using your custom list of teams and their duties.
  • HTTP Request to Linear GraphQL pulls team names and IDs for accurate mapping.
  • Merge node combines AI output with real team data before routing.
  • If check confirms the AI found a valid team name.
  • Linear update moves the issue to the target team using the correct team ID.
  • Slack notification alerts a channel when AI cannot identify a team.

What are the benefits?

  • Reduce manual triage time from 15 minutes per bug to about 2 minutes
  • Automate up to 80 percent of bug routing from a shared inbox
  • Improve assignment accuracy by an estimated 60 percent with clear team scopes
  • Connect Linear and Slack so unresolved cases get quick human review
  • Handle up to 5 times more incoming bugs without extra triage effort

How do you set it up?

  1. Import the template into n8n: Create a new workflow in n8n > Click the three dots menu > Select 'Import from File' > Choose the downloaded JSON file.
  2. You'll need accounts with Linear, Slack and OpenAI. See the Tools Required section above for links to create accounts with these services.
  3. Open the Linear Trigger node. In the credential field, click Create new credential and follow the on screen steps to connect with Linear using OAuth. Select the team you want to watch for new issues.
  4. Open the Update team node. In the credential field, click Create new credential and connect to Linear using an API Key if prompted. Name your credential clearly so your team can recognize it later.
  5. Open the Get all linear teams node. If credentials are not set, choose the same Linear OAuth credential you used for the trigger. Ensure the GraphQL query returns team names and IDs.
  6. Open the OpenAI node. Click Create new credential, paste your OpenAI API key from the official OpenAI website, and save. Keep the default model or choose a supported model in your account.
  7. Open the Slack node. Click Create new credential and follow the steps to authorize Slack in n8n Cloud. Make sure the app has permission to post to your chosen channel.
  8. Open the Set me up node. List your teams in the format [Teamname][Description of duties], one per line. The team names must match Linear exactly. Set the slackChannel field to the channel name you want to notify.
  9. Check the Only tickets that need to be classified filter. Confirm it looks for your chosen label and requires a filled description. Adjust the conditions to fit your bug intake rules.
  10. Click Execute Node on Get all linear teams to confirm you see team IDs and names. If empty, check Linear OAuth scopes or team access.
  11. Click Execute Node on OpenAI with a sample issue from the trigger data. Confirm the output includes a team name that exists in Linear.
  12. Run a full test by creating a test bug in your Linear general team with the right label and a clear description. If AI finds a match, the issue should move to that team. If not, check Slack for the alert.
  13. Troubleshooting: If the team does not update, verify the team name in Set me up matches Linear exactly. If Slack is not posting, confirm the channel name and app permissions. If AI fails, check your OpenAI key and model selection.

Tools Required

$24 / mo or $20 / mo billed annually to use n8n in the cloud. However, the local or self-hosted n8n Community Edition is free.

Linear

Sign up

Free: $0 / mo, includes API access (2 teams, 250 issues)

OpenAI

Sign up

Pay-as-you-go: GPT-5 at $1.25 per 1M input tokens and $10 per 1M output tokens

Slack

Sign up

Free plan: $0 / mo; limited to 10 apps (third-party or custom) and usable via Slack API

Similar Templates

Join Futurise to access 1,200+ automation templates

Get instant access to ready-made automation workflows for n8n, Make.com, AI agents, and more. Download, customise, and deploy in minutes.