TICKET MANAGEMENT
Nightly duplicate-ticket clustering with a human review queue
Each night, embed the day's open Zendesk tickets, cluster the semantically similar ones.
How it runs
The automated pipeline, trigger to output.
- TriggerNightly schedule
- ActionFetch open tickets from last 24hZendesk
- ActionEmbed each ticketOpenAI
- LogicCluster embeddings above similarity cutoff
- ActionPersist candidate clusters as pendingPostgres
- OutputPost clusters to Slack review channelSlack
What it does
Runs a batch clustering pass over open tickets and surfaces likely duplicate groups for a human to confirm, instead of merging automatically. Lower-risk than real-time auto-merge, it catches duplicates that share a topic but not exact wording.
When to use it
Use it when your team wants the speed of clustering but not blind auto-merges — for example, regulated support desks or teams burned by false-positive merges. The nightly cadence keeps the morning queue deduplicated.
How it works
- 1A scheduled trigger runs overnight.
- 2Zendesk returns all tickets still open from the last 24 hours.
- 3OpenAI embeds each ticket's text.
- 4A logic step runs agglomerative clustering on the embeddings, grouping tickets above a similarity cutoff into candidate clusters of two or more.
- 5Clusters are written to Postgres with a pending status so approvals survive restarts.
- 6Each cluster is posted to a Slack review channel with ticket summaries and Approve / Reject buttons; an approval triggers the merge back in Zendesk.
Set it up
What you configure once, before turning it on.
- 1Connect ZendeskTickets, queues, knowledge base.
- 2Connect OpenAIModels, embeddings, files.
- 3Connect PostgresAny Postgres URL — query, write, migrate.
- 4Connect SlackChannels, DMs, threads, mentions.
- 5Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
- 6Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
- 7Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.
More Ticket Management workflows
Deduplicate Discord bug reports against existing Linear issues
Before creating anything, searches Linear for issues matching a new Discord bug report; if a duplicate exists it comments and links the report there, otherwise it opens a fresh…
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.
Promote a Discord message to a Linear issue via an emoji reaction
When a moderator adds a designated emoji reaction to any Discord message, an LLM converts that message into a structured Linear issue and threads the link back.
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.
Route Discord bug reports by severity to Linear or PagerDuty
Classifies each Discord bug report by severity using an LLM, then files normal bugs as Linear issues while escalating critical outages to a PagerDuty incident so on-call gets…
Triage Discord bug threads into structured Linear issues with repro checklists
Watches a Discord bug-report channel, uses an LLM to extract a clean title, severity, and step-by-step reproduction checklist from the messy thread.
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.
