zendesk-ticket-triage

astropods-org/zendesk-ticket-triage 

Automatically triages Zendesk support tickets using AI — resolves with Pinecone knowledge base or escalates to human agents via Slack.

Copy a prompt to use in Claude Code, Codex, or Cursor.
Repository
Contributors
Integrations
OpenAIZendeskPineconeSlack (via built-in adapter)
More blueprints
AGENT.md

Customer Ticket Triage Agent

Automatically triages incoming Zendesk support tickets. Uses a Pinecone vector knowledge base to auto-resolve common questions, escalates to human agents via Slack when unsure, and learns from human-solved tickets.

How it works

New ticket (ticket.created):

  1. Fetches full ticket details from Zendesk
  2. Searches Pinecone for similar known Q&A pairs
  3. If confident match found (score > 0.85) — replies professionally and sets status to pending
  4. If no confident match — replies that a human agent will follow up, sets status to open

Solved ticket (ticket.status_changed → SOLVED):

  1. Fetches all ticket comments
  2. Checks if the ticket was resolved by a human agent (not a bot)
  3. Searches Pinecone to avoid duplicate entries
  4. If human-solved and not a duplicate — adds clean Q&A pair to Pinecone

Ticket status meanings

StatusMeaning
openPending on customer support
pendingWaiting on the customer
solvedCustomer is happy with the resolution

Webhook setup

Configure a Zendesk webhook to POST to your agent's URL:

  • Trigger 1: Ticket created → send to https://<your-agent-url>/
  • Trigger 2: Ticket status changed to Solved → send to https://<your-agent-url>/

Usage

Via Slack DM or web chat — send any of:

MessageEffect
12345Triage ticket #12345
check ticket 12345Any text containing a ticket ID
{"type":"zen:event-type:ticket.created","detail":{"id":"12345"}}Full webhook payload

Required environment variables

VariableDescription
OPENAI_API_KEYAuto-injected by Astropods — used for both reasoning (GPT-4o mini) and embeddings
ZENDESK_SUBDOMAINThe {subdomain} in https://{subdomain}.zendesk.com
ZENDESK_AGENT_EMAILZendesk agent email for API auth
ZENDESK_API_KEYZendesk API token
PINECONE_HOSTFull Pinecone index host URL
PINECONE_API_KEYPinecone API key
WEBHOOK_SECRETZendesk webhook signing secret — used to verify HMAC-SHA256 signatures on incoming requests

Slack integration

Deploy with the Slack adapter to enable direct Slack interaction. When the agent cannot resolve a ticket, it replies in the channel.