Dock for customer support is a workspace where an AI agent triages incoming tickets, drafts the first response, and writes its reasoning into a row a reviewer signs off on before the reply leaves the helpdesk. The agent reads the helpdesk. It writes the prioritized queue, the draft body, and the escalation note into Dock rows that carry the agent's name, timestamp, and reviewer. Support gets AI velocity without losing the escalation log QBRs depend on.
Zendesk, Intercom, Freshdesk, Help Scout, and Gorgias stay the system of record for the raw ticket data: the customer message, the channel, the SLA timer, the conversation history. Dock is the system of record for what the agent interprets from that data. The triage priority. The drafted response. The escalation rationale. The reviewer's sign-off. Each Dock row carries a pointer back to the helpdesk record (zendesk_ticket_id, intercom_conversation_id, freshdesk_ticket_id), the agent identity, the human reviewer, and the timestamp. The agent re-fetches current ticket state via the helpdesk API. Dock holds the persistent interpretive layer that survives across sessions.
The triage table
| ticket_pointer | priority | category | drafted_response | reviewer | status |
|---|---|---|---|---|---|
| zendesk:48211 | P1 | billing_dispute | "Hi Mara, I see the duplicate charge on May 27. Refund issued, reference R-9912." | jenna@ | approved, sent |
| intercom:c_77af | P2 | feature_request | "Thanks for the suggestion. Logging this for our product team under FR-2204." | (pending) | awaiting_review |
| freshdesk:88102 | P0 | outage_report | (escalated to on-call, no draft) | rajiv@ | escalated_to_eng |
Each row carries the pointer, the drafting agent, the reviewer, and the timestamp.
One ticket, end to end
A billing dispute hits Zendesk. The triage agent reads the message, checks payment history through the Stripe MCP, classifies it P1 billing_dispute, drafts a refund response, and writes a row with zendesk_ticket_id: 48211 and the draft body. Jenna opens the row, reads the agent's rationale ("duplicate charge confirmed via Stripe charge_3Pq..."), edits one sentence, and clicks approve. The approval flips the row status and triggers the write-back: the reply posts to Zendesk under Jenna's identity, with a pointer back to Dock for audit. Had Jenna routed to engineering instead, the escalation would persist as its own row with the engineer's name, resolution, and close timestamp.
That row is what survives the quarter. See how to run customer support with AI for the broader workflow.
Why this matters
Support teams adopting AI hit the same wall. Triage gets fast. Draft quality is fine. The escalation log, the thing the head of support needs for the QBR, lives nowhere. It is buried in helpdesk macros, in Slack threads, in agent session memory that vanished last Tuesday. Dock makes the log a first-class artifact with attribution.
Attribution matters because reviewers are accountable. When a refund goes out under an agent draft, the row records the drafter, the approver, and the policy cited. Same pattern as agent audit and compliance for any reviewer-gated action, same pattern Dock for sales uses for outbound writes.
It also matters because agents need names. A triage agent, a draft agent, and an escalation agent are three different principals with three different scopes. See agent identity for why service accounts do not survive audit.
Sign up for Dock to give your support agent a workspace.
FAQ
Does Dock replace Zendesk or Intercom? No. The helpdesk stays the system of record. Dock holds the agent's interpretation, the prioritized queue, the drafted response, and the reviewer log.
How does the agent push a reply back into the helpdesk? Through a reviewer-gated write. The approval click is the second key in a two-key handshake that signs the draft and the reviewer identity together before the API call fires.
What stops the agent from sending unauthorized refunds? Refund issuance is a dangerous op. It runs under the dangerous-ops contract, which requires a reviewer signature and a policy check before the Stripe call.
Can we see which agent drafted which response? Yes. Every row records agent, reviewer, timestamp, and helpdesk pointer. Filter by any of them for QBR reporting.
Reference: Zendesk CX Trends, Forrester US CX Index 2024, Zendesk QA benchmarks.