TICKET MANAGEMENT
Zendesk duplicate detector with embedding similarity and canonical merge
When a new Zendesk ticket arrives, it embeds the subject and body, compares against recent open tickets, and if a near-identical report is found.
How it runs
The automated pipeline, trigger to output.
- TriggerNew Zendesk ticket createdZendesk
- ActionEmbed ticket subject + bodyHugging Face
- ActionFetch recent ticket vectorsPostgres
- LogicTop similarity clears threshold?
- ActionLink ticket to canonical + tag duplicateZendesk
- OutputStore new vector for future matchingPostgres
What it does
Catches the second, third, and fourth report of the same problem before an agent ever touches them. Every incoming Zendesk ticket is turned into a semantic embedding and compared against tickets opened in the last 14 days. When similarity crosses your threshold, the new ticket is linked to the original as a duplicate so one agent owns the fix and the requester still gets acknowledged.
When to use it
During incidents or product bugs that generate a flood of look-alike tickets across a single queue. Keyword matching misses paraphrases ("can't log in" vs "login button does nothing"); embeddings catch them.
How it works
- 1A new Zendesk ticket fires the trigger.
- 2The ticket subject and body are sent to Hugging Face for a sentence embedding.
- 3Recent open-ticket embeddings are pulled from Postgres and cosine similarity is computed.
- 4A branch checks whether the top match clears the duplicate threshold.
- 5If it does, the new ticket is linked to the canonical Zendesk ticket and tagged `duplicate`.
- 6The new embedding is written to Postgres so it can anchor future matches.
Set it up
What you configure once, before turning it on.
- 1Connect ZendeskTickets, queues, knowledge base.
- 2Connect Hugging FaceModels, datasets, spaces — the open-source hub.
- 3Connect PostgresAny Postgres URL — query, write, migrate.
- 4Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
- 5Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
- 6Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.
More Ticket Management workflows
Enrich Discord bug reports with Sentry errors before filing in Linear
Takes a Discord bug report, has an LLM pull out likely error signatures, searches Sentry for matching events.
Front-to-Linear Recurring Bug Linker
When a Front ticket is tagged as a bug, it searches Linear for an existing matching issue and either links the ticket to that parent issue or opens a new tracked one.
Front Duplicate Conversation Clusterer
When a new Front conversation arrives, it semantically compares the report against open conversations.
Intercom Known-Issue Auto-Responder
When a new Intercom conversation matches a known active incident, it attaches the conversation to that incident's parent ticket and sends the customer the current status reply.
Weekly reopen-by-agent coaching digest
Aggregates each agent's solved-then-reopened tickets for the week, identifies the most common reopen reason per agent, and emails a private coaching digest to the support manager.
Escalate repeat reopens to a Linear bug
Detects when the same underlying issue reopens across multiple tickets, uses an AI agent to cluster them by root cause.
Run it inside a business
This workflow drops into a full company template. Import the org, and this is one of the playbooks its agents run.

Run this workflow in your colony.
14-day trial. No DevOps. No Sales call. Provisioned in under a minute.
