Escalate Zendesk bug tickets into clean Linear issues

When a new Zendesk ticket looks like a real bug, file a structured Linear issue for engineering and link it back on the original ticket so support stops re-typing reports.

Agentic Task
ZendeskLinearCustomer SupportEngineeringFeedback TriageData SyncNotifications & Alerts

Build an agent workflow that escalates real engineering bugs from Zendesk into Linear automatically, so support agents stop manually re-typing bug reports into the engineering tracker.

Trigger: Zendesk poll trigger on the new_ticket event. Fire whenever a new ticket is created in our Zendesk account.

For each new ticket, the agent should do the following:

1. Dedup safety net. Check the ticket's tags. If it already has the linear-escalated tag, stop immediately. As an extra safeguard, the agent may use Zendesk Search Tickets with a query like tags:linear-escalated and the ticket id to confirm it has not already been escalated.

2. Classify the ticket. Read the subject, description, and any existing comments. Decide whether this is a real engineering bug (broken behavior, errors, regressions, things that should work but do not) versus a how-to question, a billing or account issue, a feature request, or general feedback. If it is not a bug, skip the ticket entirely and do nothing else. Only continue when the agent has high confidence it is a real bug.

3. Use Linear's Create Issue operation to file the issue in our designated engineering team. The agent can use Linear's List Teams operation if it needs to discover the right team id. The new issue should include:

- A concise, engineer-friendly title generated from the ticket (not just a copy of the Zendesk subject). - A structured markdown description with these sections: Problem summary, Expected behavior, Actual behavior, Steps to reproduce, Environment details (browser, OS, app version, account or workspace if mentioned), Customer impact (who is affected and how badly), and a Source section with a link back to the Zendesk ticket and the requester's email if available. - Priority mapped from the Zendesk ticket priority using Linear's enum: Zendesk urgent maps to Linear 1 (urgent), Zendesk high maps to Linear 2 (high), Zendesk normal maps to Linear 3 (medium), and Zendesk low or no priority maps to Linear 4 (low).

4. Use Zendesk Update Ticket to add an internal note (not a public reply) on the original ticket containing the new Linear issue URL and a one-line summary like "Escalated to engineering as <linear identifier>." In the same Update Ticket call, add the tag linear-escalated to the ticket so it is never escalated again.

Be defensive. If Linear Create Issue fails, do not tag the Zendesk ticket as escalated, so a retry can happen on the next run. If the ticket is missing fields the agent needs, fall back to sensible defaults rather than failing (for example, default to Linear priority 3 medium when no Zendesk priority is set).

Operations to use: Zendesk Search Tickets (optional dedup), Linear List Teams (optional, to find the engineering team id), Linear Create Issue, Zendesk Update Ticket. Trigger: Zendesk poll, event new_ticket.

Additional information

What does this prompt do?
  • Watches Zendesk for new tickets and decides whether each one is a real engineering bug versus a how-to, billing, or account question.
  • For real bugs, files a clean Linear issue in your engineering team with a clear title and a structured write-up covering problem, expected versus actual behavior, repro steps, environment, and customer impact.
  • Maps the Zendesk ticket priority to a Linear priority and includes a link back to the original Zendesk ticket so engineers always have the customer context.
  • Adds an internal note on the Zendesk ticket with the new Linear issue link and tags the ticket as escalated so the same one never gets filed twice.
What do I need to use this?
  • A Zendesk account where your support team works tickets.
  • A Linear workspace with an engineering team you want bugs filed into.
  • An idea of the priority your team uses, so urgent Zendesk tickets land as urgent in Linear.
How can I customize it?
  • Change which Linear team receives the escalations, or split between front-end, back-end, and platform teams based on ticket content.
  • Tweak the bug-versus-not-a-bug rules, for example always escalating tickets from enterprise customers or never escalating known how-to questions.
  • Adjust how Zendesk priority maps to Linear priority, or pull in custom fields like product area and customer tier into the description.

Frequently asked questions

How does it decide whether a ticket is a bug?
An AI agent reads the ticket subject, body, and recent comments and looks for signs of broken behavior, error messages, or reproduction steps. How-to questions, billing issues, and account access requests are skipped automatically.
Will the same ticket get escalated twice if a customer replies?
No. Once the agent files a Linear issue it tags the Zendesk ticket as escalated and checks for that tag before doing anything, so follow-up replies will not create duplicate Linear issues.
Can I send bugs to different Linear teams?
Yes. You can route by product area, by the Zendesk group that owns the ticket, or by keywords in the description. The agent picks the team before filing the issue.
Does the customer see the Linear issue?
No. The link to Linear is added as an internal note in Zendesk, visible to your support and engineering staff only. The customer keeps talking to support in the original ticket.
What happens to non-bug tickets?
Nothing. The workflow only acts when it has high confidence the ticket is an engineering bug. Everything else stays in Zendesk for your normal support flow.

Stop re-typing customer bugs into Linear by hand.

Connect Zendesk and Linear once, and Geni turns every real bug ticket into a structured engineering issue with a back-link the moment it lands.