type.com team guide
AI for customer service teams: a practical guide
Set up one Support Space that triages the queue, drafts replies from your help center, and checks refunds, while agents send every reply.

How should a customer service team use AI?
A customer service team should use AI to triage tickets, draft replies from approved sources, brief engineering, check refunds against policy, and report on the queue, while agents review and send every reply and a person approves anything that moves money.
This guide is for support leads, CX managers, and agents who work a shared queue in Zendesk, Intercom, Freshdesk, Gorgias, Help Scout, Pylon, or similar. By the end you will have one Support Space in type.com running seven workflows. Each posts to its own channel, and nothing reaches a customer, changes a ticket, or moves money until a person approves it.
The hard part of support is rarely writing the answer. It is the work around it: sorting the queue, finding the right article, writing up a bug engineering can reproduce, checking a refund against policy, and explaining why first reply time slipped. That is where AI for customer support earns its keep.
A common approach is one named bot per job plus a manager bot to keep track of them. This guide follows the documented type.com model instead: one Space per department, where everyone shares the same connections, instructions, memory, and skills, with a channel for each workflow. type.com's founders previously built Halp, a Slack-based help desk, so this is familiar ground.
The examples follow Larkfield, a fictional scheduling and payments app used by about 18,000 salons, clinics, and studios. Its support team has a lead, 11 agents across two shifts, and a support ops specialist, and it handles about 2,100 tickets a week in Zendesk. Times are Eastern. The time ranges below are estimates for a team that size; measure your own baseline first (see the last section).
| Workflow | Runs | Replaces | Typical time back |
|---|---|---|---|
| Triage and routing | Every 15 minutes, weekdays | Reading, tagging, and assigning each new ticket | 5 to 8 hours a week |
| Reply drafting | On request, per ticket | Searching the help center and macros, then writing | 6 to 12 hours a week |
| Escalation brief | When a ticket is tagged for engineering | Writing repro steps and chasing scope | 20 to 40 minutes per escalation |
| Refund and credit check | Weekdays, 11:00 AM and 3:00 PM | Looking up charges and re-reading the policy | 2 to 4 hours a week |
| Queue health and SLA report | Weekdays, 8:00 AM | The morning dashboard check and shift plan | 1 to 2 hours a week |
| Voice of the customer | Mondays, 9:00 AM | Hand-tallying top issues for product | 2 to 3 hours a week |
| Knowledge base gaps | Thursdays, 10:00 AM, plus release notes | Guessing which articles to write or fix | 1 to 2 hours a week |
How do you set up a Support Space in 30 minutes?
Create a private Support Space, connect the help desk and supporting tools read-only, add one channel per workflow, and paste a starter set of Space instructions.
Support platforms, billing, and issue trackers belong in organization connections, which use shared company access (see Space connections). Assign each one only to the Support Space. A Read-only setting tells the AI not to make changes, but it does not stop the connected service from accepting them, so enforce limits with each tool's own roles: a dedicated help desk user, a restricted Stripe key, a read-only tracker role.
Space instructions are the team's standing brief, and type.com includes them with every message in the Space, scheduled runs included. Put sources of truth, SLA targets, tone, and hard rules there once. Find them in Space settings, Details, Instructions. Space memory builds up separately from finished threads and is read-only. Treat it as context, never as the record: plans, charges, and SLA clocks always come from the source.

- 1
Create a private Space from the Support template
Open Create, choose Space, and pick the Support template. Edit the prompt, make the Space private, and approve only what you want from the setup thread.
- 2
Choose Claude or Codex
The docs suggest Claude for writing and operational work, which is most of support. Agents can connect their own Claude or ChatGPT subscriptions in Settings, Details.
- 3
Connect the help desk through a dedicated user
Create a help desk user just for type.com with the smallest role that can read tickets, such as a Zendesk light agent. Then add Stripe, your issue tracker, and your policies folder.
- 4
Create the channels and map Slack
Add one channel per workflow: support-triage, reply-drafts, support-escalations, refunds, support-daily, voice-of-customer, and kb-gaps. Map your internal escalations Slack channel to support-escalations with Mentions only. Channels are not a permission boundary, so handle legal threats and security reports in a private thread, which only its participants can see.
- 5
Paste the instructions and upload the policies
Paste the starter instructions, edit the SLA targets, and file the refund policy and tone guide into the Library.
- 6
Check one answer
Ask in a thread for one recent ticket's plan, SLA status, and the help center article that answers it. If it matches Zendesk, the connection works.
Space instructions: starter for a Support Space
You support Larkfield's customer support team: 1 lead, 11 agents, 1 support ops specialist, about 2,100 tickets a week. Use Eastern Time. Sources of truth - Zendesk: tickets, requester, organization, plan, tags, priority, group, SLA status, CSAT. - Zendesk help center: public articles. Cite the article ID for every product claim. - Zendesk macros: approved wording for common answers. - Stripe: charges, invoices, refunds, subscriptions. Read only. - Linear: bugs and their status. Read only. - Google Drive "Support policies": refund policy, credit policy, SLA policy, tone guide. SLA targets (first reply, business hours) - Business plan: 1 hour. Pro: 2 hours. Starter: 4 hours. Urgent priority: 1 hour on any plan. Rules 1. Never send, post, or reply to a customer. Label customer-facing text "Draft, not sent". 2. Never change a ticket, issue a refund or credit, or change a subscription. Propose changes as old value -> new value and wait for a named person to write "approve". 3. Never promise a fix date, refund, credit, or exception. Only an approver can. 4. If a source fails, a field is empty, or no article covers the question, say so. Never guess. 5. Never copy card numbers, passwords, or government IDs into a thread. Refer to the ticket instead. 6. Keep customer names and emails out of support-escalations, which is mapped to Slack. Use ticket numbers. 7. If 3 or more tickets describe the same new problem within 30 minutes, flag a possible incident at the top of your reply. Tone: plain, warm, and specific. Short sentences. Apologize once, only when we caused the problem. No exclamation marks, no "unfortunately", no "per our policy".
| Connection | Start with | Why | Upgrade later |
|---|---|---|---|
| Zendesk, Intercom, Freshdesk, Gorgias, Help Scout, or Pylon | Dedicated user, read-only or light agent role | Tickets, requesters, tags, SLA status, CSAT, macros, articles | Week 3: internal notes. Week 4: tags, priority, and group, if your plan supports a custom role. Public replies stay human. |
| Stripe | Restricted key, read-only | Charges, invoices, refunds, and subscriptions for billing tickets | Never. Refunds and credits stay with approvers in Stripe. |
| Linear or Jira | Read | Match escalations to known bugs and check fix status | Week 3: create an issue after an engineer approves in the thread. |
| Google Drive or Notion | Read, one policies folder | Refund, credit, and SLA policies and the tone guide | None needed. |
| Slack | One mapped channel, Mentions only | Engineers and product read escalations where they work | Map a product feedback channel once the weekly report is trusted. |
How do you use AI to triage and route support tickets?
Every 15 minutes on weekdays, AI reads untriaged tickets and proposes tags, priority, and a queue for each, with a confidence level, and the shift lead applies them.
When and who: every 15 minutes on weekdays, in support-triage. The shift lead owns it and creates the automation, because scheduled runs use the creator's connections. If there are no untriaged tickets, the run posts nothing. Inputs: the Zendesk view of new, unassigned tickets, the requester's plan and organization, recent tickets from the same requester, and open Linear bugs.
Triage helps fastest because the rules already exist in someone's head. Write them down: a closed tag list, what makes a ticket urgent, and which group owns which tag. Reporting depends on consistent tags.
Review rule: for the first two weeks the shift lead applies tags and assignments by hand, using the batch as a checklist. From week 4, if the proposals were right at least 9 times in 10, give the help desk user a role that can edit tags, priority, and group, and let the lead reply 'apply' to accept a batch. Low-confidence tickets always stay with a person.

Automation instructions: Triage batch (every 15 minutes, weekdays, support-triage)
Read Zendesk tickets in the view "New - untriaged" created since the last batch. If there are none, post nothing. For each ticket, propose: 1. Tags, using only this list: how_to, bug, calendar_sync, payments, billing_duplicate, billing_refund, cancellation, account_access, feature_request, integrations, outage. 2. Priority: urgent if the customer cannot take bookings or payments right now, or reports a security issue; high if money is involved; low for how-to questions answered by an article; normal otherwise. 3. Group: Tier 1 (how_to, integrations, calendar_sync), Billing (anything with billing_), Retention (cancellation), Tier 2 (bug, outage, account_access). 4. Confidence: high, medium, or low, and one reason if not high. 5. For how_to tickets, the help center article that answers it, with its ID. If none does, write "no article". Format: a table with ticket number, subject (under 8 words), tags, priority, group, confidence. List low-confidence tickets last under "For a person". If 3 or more tickets describe the same new problem, put "Possible incident" first, with the ticket numbers. Never change a ticket.
- Failure: tags drift into near-duplicates ('billing', 'billing_issue'). Fix: a closed tag list in the instructions.
- Failure: every angry ticket is marked urgent. Fix: define urgent by impact (cannot take bookings or payments), not by tone.
- Failure: the batch duplicates tickets that were triaged by hand. Fix: read only the untriaged view, which a human assignment removes tickets from.
How do you draft support replies with AI without losing accuracy?
An agent asks for a draft on a specific ticket, and AI writes one from the help center, macros, and account facts, citing each source, for the agent to edit and send from the help desk.
When and who: on request. An agent starts a thread in reply-drafts with a ticket number and invokes the skill. Each agent owns their drafts. Inputs: the ticket and its history, the requester's plan, the help center, macros, and open bugs.
This belongs in a skill, not an automation. Skills in the Space Library give everyone the same behavior, and teammates can suggest edits for the owner to review. When an agent fixes the same mistake twice, the fix goes into the skill.
Example: ticket #88412 from Bloom Studio says calendar sync stopped. Before writing, the draft checks that Bloom is on Pro, that the last successful sync was October 6 at 4:12 PM, right after the password change, and that no incident is open. It then adapts the reconnect macro, cites article 1182, and stays under 120 words. Marcus changes one line and sends it from Zendesk.
Review rule: agents send every reply from the help desk. From week 3, the skill may post the draft as an internal note on the ticket, so agents never copy and paste; public replies stay human.

SKILL.md example: support-reply (Space Library skill)
--- name: support-reply description: Draft a reply to one support ticket from the help center, macros, and account facts. Use when an agent asks for a draft on a ticket number. --- # Support reply 1. Read the whole ticket, including earlier replies and internal notes. Note what the customer is actually asking and what they already tried. 2. Check facts before writing: - Plan and account status in Zendesk. - Open incidents or Linear bugs that match the symptom. - For billing questions, the charge or invoice in Stripe. 3. Find the help center article and macro that fit. If none fit, say "No approved source" and stop. Do not write an answer from general knowledge. 4. Write the draft: - Answer first, in the first sentence. - Numbered steps if there is something to do. - Under 120 words unless the steps need more. - Use the customer's name once. Match their language only if the team supports it; otherwise flag it. - Follow the tone guide. Apologize once, only if we caused the problem. 5. Never promise a fix date, refund, credit, or exception. If the customer asks for one, say who will decide and by when, and flag the ticket for the lead. 6. Under the draft, list: - Sources: article ID, macro name, and each fact you checked. - Unsure: anything you could not verify. 7. Label the draft "Draft, not sent". Never reply on the ticket.
- Failure: confident answers about features that do not exist. Fix: the 'No approved source' stop rule, and a weekly check of drafts with no article cited.
- Failure: drafts that read like a policy document. Fix: concrete good and bad examples in the tone guide, filed in the Library.
How do you keep AI replies accurate and on-brand?
Treat accuracy and tone as rules the AI must follow and agents can check: every claim cites a source, missing information is stated, and the tone guide has real examples.
Bad AI replies fail in predictable ways: an invented answer, a policy stated more generously than written, a date nobody gave, or a cheerful tone to someone who lost a day of bookings. Each has a check.
Tone is learned from examples, not adjectives. Put 10 real replies into the tone guide, five good and five rewritten, with a note on why, including how you say no and how you handle an outage.
| Risk | The rule | How an agent checks it |
|---|---|---|
| Invented answer | Every product claim cites a help center article or macro | A missing source line means the draft is not ready |
| Wrong account facts | Plan, charges, and settings come from Zendesk and Stripe | Facts checked are listed under the draft |
| Overpromising | No fix dates, refunds, credits, or exceptions | Search the draft for dates and amounts |
| Wrong tone | Tone guide with real examples; apologize once | Read it aloud; would your best agent send it? |
| Stale article | Articles older than the last release that touched the feature are flagged | The kb-gaps report lists them weekly |
How do you write escalation briefs engineering can act on?
When an agent tags a ticket for engineering, AI writes a brief with repro steps, scope, environment, and matching bugs, and an engineer decides what to file.
When and who: when an agent adds the escalate_eng tag. A Zendesk trigger sends the ticket to a type.com webhook automation that posts in support-escalations, which is mapped to the engineering Slack channel. Intercom, Freshdesk, and Gorgias can send similar webhooks. Treat the webhook URL as a credential. If your help desk signs requests in a format type.com cannot verify, keep the URL private and delete and recreate the webhook if it leaks.
A good brief answers what engineers otherwise ask in five Slack replies: can you reproduce it, how many customers, since when, which browser, and is it known. At Larkfield, six Business plan accounts reported missing bookings within 40 minutes, all in Safari 18, starting 40 minutes after a web release. That is an incident, and the brief says so first.
Review rule: the on-call engineer reproduces the bug and files or links the issue. From week 3, AI may create the Linear issue after an engineer writes 'approve' in the thread. Customer updates go out from the help desk, and never with a fix date engineering has not given.

Automation instructions: Escalation brief (Zendesk webhook, support-escalations)
A Zendesk ticket was tagged escalate_eng. If this ticket already has a brief, post nothing. Write a brief for engineers, using ticket numbers, not customer names or emails: 1. Title: ticket number, the symptom in under 8 words, and the proposed priority. 2. Scope: how many tickets and accounts report the same symptom in the last 24 hours, their plans, and when the first one arrived. Compare the start time with the latest release notes. 3. Environment: browser, device, app version, and integration, from the ticket and its metadata. Write "unknown" for anything missing. 4. Repro steps: numbered, starting from login. Mark each step "from customer" or "inferred". Then expected result and actual result. 5. Workaround, if a customer or agent found one. 6. Known issues: open Linear issues that match, with key and status. Closed issues that look similar. 7. A draft Linear issue (title, description, priority), labeled "Not filed". 8. A draft customer update under 80 words, labeled "Draft, not sent", with no fix date. If 3 or more accounts are affected, start with "Possible incident" and the count.
- Failure: briefs are written for tickets that are not bugs. Fix: agents tag escalate_eng only after a quick check, and the brief says 'could not reproduce from ticket' when steps are missing.
- Failure: customer names leak into Slack. Fix: rule 6 in the Space instructions and ticket numbers only in this channel.
How should AI handle refund and credit requests?
Twice a day, AI checks each refund or credit request against the charge and the written policy, recommends approve, deny, or escalate with the clause it used, and a named approver issues any money.
When and who: weekdays at 11:00 AM and 3:00 PM, in refunds. The support lead owns it. Inputs: Zendesk tickets tagged billing_refund or billing_duplicate, the matching Stripe charges, invoices, and refunds, and the refund policy document.
Batching gives the approver a predictable moment to act. The recommendation is only as good as the written policy, so write numbered clauses with amounts and windows. 'Use judgment for loyal customers' cannot be checked; 'annual plans: full refund within 30 days of renewal' can.
Review rule: AI never issues money. The Stripe key is restricted and read-only, so that rule does not depend on instructions. A named approver issues the refund or credit in Stripe, then the agent sends the reply from the help desk. Anything outside policy, over $500, or from an account that received a credit in the last 90 days goes to the lead.
Shortcut: many 'you charged me' tickets are really failed renewals. The Failed Payment Recovery skill in the type.com Skills Library classifies declines and runs a retry and outreach ladder with a ledger, so nobody is contacted twice. It needs billing write access, so give it to your billing owner rather than the support queue, and set its send mode to approve every message.

Automation instructions: Refund and credit check (weekdays, 11:00 AM and 3:00 PM ET, refunds)
Read open Zendesk tickets tagged billing_refund or billing_duplicate that have no check yet. If there are none, post nothing. For each ticket: 1. Find the customer in Stripe by the email on the ticket. If there is no match or more than one, say so and stop for that ticket. 2. List the relevant charges: date, amount, invoice, status, and any refund already issued. Show only the last 4 digits of a card. 3. Read the refund policy in "Support policies". Quote the clause that applies, with its number. 4. Recommend one of: approve (with exact amount), deny, or escalate. Escalate if the request is outside policy, over $500, or the account had a refund or credit in the last 90 days. 5. Draft a reply under 100 words. For approve, label it "Draft, send after the refund is issued". For deny or escalate, label it "Draft, not sent", explain the clause plainly, and offer what policy allows. 6. End with "Awaiting approval from:" and the approver. Never issue a refund, credit, or plan change, and never say one has been issued.
- Failure: the check approves a refund that was already issued. Fix: step 2 lists existing refunds, and the approver checks Stripe before acting.
- Failure: inconsistent decisions for the same request. Fix: numbered policy clauses, and new edge cases written back into the policy, not into the instructions.
What should a daily queue health and SLA report include?
At 8:00 AM every weekday, AI posts a one-screen report of backlog, SLA breaches and risks, first reply time, CSAT, and volume spikes, with a suggested staffing move for the shift lead.
When and who: weekdays at 8:00 AM Eastern, in support-daily, before the first shift's stand-up. The support lead creates and owns it. Inputs: Zendesk views and SLA status, yesterday's solved tickets and CSAT ratings, and tag counts for the last four weeks.
The comparison matters more than the totals. A queue of 412 means little; 38 more than yesterday, with calendar_sync tickets at three times their usual volume, tells the shift lead where to put people. Name the oldest open ticket every day; it is the likeliest complaint.
Review rule: the report is internal. The shift lead decides staffing, and any number that disagrees with the help desk's own reporting gets its definition fixed in the instructions.
For more on building recurring reports people actually read, see how to automate a weekly team report.

Automation instructions: Queue health and SLA report (weekdays, 8:00 AM ET, support-daily)
Write this morning's queue report in under 200 words. 1. Now: open tickets and change since yesterday's report, unassigned tickets, SLA breaches, and tickets whose first-reply SLA breaches in the next 2 hours. Use Zendesk's SLA status, not your own calculation. 2. Yesterday: tickets created and solved, median first reply time against target by plan, and CSAT with the number of ratings. If there were fewer than 30 ratings, say the CSAT is not reliable. 3. Spikes: any tag whose count yesterday was more than twice its daily average over the last four weeks, with the count and the average. 4. Oldest open ticket: number, subject, age, and assignee. 5. One suggestion for the shift lead, such as moving agents between groups, based only on the numbers above. End with "Sources checked", marking any that failed. Never estimate a number you could not read.
- Failure: the report's first reply time disagrees with the help desk dashboard. Fix: use the help desk's own SLA and metric fields, and name them in the instructions.
- Failure: a CSAT swing from 15 ratings causes a panic. Fix: the 30-rating rule.
How do you turn support tickets into a weekly voice-of-customer report?
Every Monday, AI groups last week's tickets into the top issues by volume and customer impact, with real quotes and counts, so product sees what customers struggle with in their own words.
When and who: Mondays at 9:00 AM Eastern, in voice-of-customer. The support lead owns it, and the product manager reads it before planning. Inputs: last week's tickets, their tags and CSAT, Linear issues linked to tickets, and feature request tags.
Example: the report for the week of September 28 ranks calendar sync first (188 tickets, up from about 140 the week before, CSAT 84% against 91% overall), names the Google password-change path as the main cause, and quotes three customers word for word. It lists two feature requests with account counts and notes that 11 cancellation tickets mentioned a competitor's group booking feature.
Review rule: the support lead reads it first and removes anything that identifies a customer before sharing it beyond the Space. Accounts that mention cancelling go to the account team. For B2B accounts with a CSM, AI for customer success covers churn-risk sweeps and renewals, and the Churn Risk Scanner skill uses support load and CSAT as two of its seven risk factors.
Shortcut: the Review Insight Miner skill clusters a ticket export into themes from the text itself, separates product defects from expectation mismatches, and attaches verbatim evidence. It works from the first customer message per ticket and is built for ecommerce reviews and tickets, so check its labels against your product and give it at least 60 tickets.
Automation instructions: Voice of the customer (Mondays, 9:00 AM ET, voice-of-customer)
Summarize last week's tickets (Monday to Sunday) for the product team in under 400 words. 1. Top 5 issues by ticket count. For each: count, change from the previous week, CSAT for those tickets, the likely cause in one line, and 2 short customer quotes, word for word, with ticket numbers. 2. Separate "product is broken" (bugs) from "product works but confuses people" (how-to, expectations). Link Linear issues for bugs. 3. Feature requests: the top 3 by number of accounts asking, with plans. 4. Cancellation reasons: counts by reason, and any competitor named. 5. One question for product to answer this week. Use the first customer message of each ticket, not agent replies. Leave out customer names and emails. If a theme has fewer than 5 tickets, leave it out.
How do you find knowledge base gaps with AI?
Weekly, AI finds the questions agents keep answering by hand and the articles that a recent release made stale, and drafts outlines for support ops to write and publish.
When and who: Thursdays at 10:00 AM Eastern, plus an RSS automation on your public changelog, both in kb-gaps. Support ops owns it. Inputs: last week's how_to tickets, the reply-drafts threads that said 'No approved source', help center articles and their update dates, and release notes.
The RSS trigger catches the other half of the problem. When a release note mentions a feature, AI lists the articles that describe it and what may now be wrong. RSS feeds must be public URLs (see email and RSS automations). If your release notes are internal, forward them to the Space's inbound email address instead.
Review rule: support ops writes and publishes every article. AI drafts outlines and flags; it never edits the help center. Each new article feeds straight back into reply drafting, because the skill cites articles.
Automation instructions: Knowledge base gaps (Thursdays, 10:00 AM ET, kb-gaps)
Find help center gaps from the last 7 days. 1. Missing articles: group how_to tickets and reply-drafts threads marked "No approved source" by question. List groups with 5 or more tickets: the question in the customer's words, ticket count, and 2 ticket numbers. 2. Weak articles: articles that were linked in tickets that were reopened or got a CSAT of 2 or lower. Give the article ID and the likely problem. 3. Stale articles: articles about features mentioned in release notes since the article was last updated. 4. For the top 3 gaps, draft an outline: title written as the customer's question, the answer in one sentence, numbered steps, and what screenshots are needed. Never edit or publish an article.
What does a support team's weekly rhythm look like?
Run a fixed rhythm: the queue report starts each day, triage and drafts run all day, refunds are checked twice daily, and product and help center reviews close out the week.
Put each report where a decision already happens: stand-up, product planning, or the approver's check-in.
| When | Workflow | Channel | Owner | What a person does |
|---|---|---|---|---|
| Weekdays 8:00 AM | Queue health and SLA report | support-daily | Support lead | Sets the day's staffing at stand-up |
| Every 15 min, weekdays | Triage batch | support-triage | Shift lead | Applies or corrects tags and assignments |
| On request | Reply drafts | reply-drafts | Each agent | Edits and sends from the help desk |
| On escalate_eng tag | Escalation brief | support-escalations | On-call engineer | Reproduces, files, and sets priority |
| Weekdays 11:00 AM, 3:00 PM | Refund and credit check | refunds | Support lead, billing approver | Approves, denies, and issues money in Stripe |
| Mon 9:00 AM | Voice of the customer | voice-of-customer | Support lead, PM | Picks one issue to raise in planning |
| Thu 10:00 AM | Knowledge base gaps | kb-gaps | Support ops | Writes and publishes the top articles |
What guardrails does AI need in customer service?
AI may read and draft, people approve ticket changes and send every reply, and nothing issues refunds, changes subscriptions, or publishes help articles on its own.
Know whose access each run uses. In type.com, AI acts with the access of the person who started the work, and scheduled automations run with their creator's identity, connections, and AI subscription. When an agent leaves, check which automations they created. New automations start paused: Save, then Test (which runs privately as you and does not prove the creator's access), then Enable. Three failed runs in a row pause a schedule until someone fixes and re-enables it.
Customer data needs its own rules. Keep the Support Space private and limited to the support team and the few people who need it. Never put card numbers, passwords, or government IDs into a thread, and use your help desk's redaction when a customer sends them. Keep names and emails out of Slack-mapped channels. Private threads and Sidekick are not moved into workspace memory, so use a private thread for a sensitive case. If a queue carries health, financial, or children's data, keep it out of this Space until your security team has reviewed your contracts and settings.
For approval patterns in more depth, read AI agent approval workflows and permissions and approvals in a shared AI workspace.
| Tool | Read | Draft | Only with approval | Never |
|---|---|---|---|---|
| Help desk | Tickets, requesters, SLA, CSAT, macros | Replies, internal notes, tag proposals | Internal notes (week 3+); tags, priority, group (week 4+) | Public replies; close, merge, or delete tickets |
| Help center | Published articles | Outlines and edits | Nothing; support ops publishes | Publish or unpublish articles |
| Stripe | Charges, invoices, refunds | Recommendations and replies | Nothing; approvers act in Stripe | Refunds, credits, retries, plan changes |
| Linear or Jira | Issues and status | Issue drafts | Create an issue (week 3+) | Change priority or close issues |
| Slack | The mapped channel | Replies when mentioned | Posts elsewhere | Post customer names, emails, or ticket text |
- Start read-only everywhere, enforced by each tool's own roles, not only by instructions.
- Every customer-facing word is a draft until an agent sends it from the help desk.
- Money moves only when a named approver acts in the billing system.
How should a support team roll this out over 30 days?
Turn on one or two workflows a week, starting with the internal ones, review every output in week one, and widen access only after proposals have been reliably right.
Start with the support lead and one shift. Internal reports and triage show value without touching customers, so they go first. When a run is wrong, correct it in the thread, then fix the instructions or skill.
- 1
Week 1: Space, connections, queue report, and triage
Set up the Space read-only. Turn on the 8:00 AM report and the triage batch. The shift lead applies every tag by hand and logs each correction. Compare the report's numbers with your help desk's dashboard.
- 2
Week 2: Reply drafts for one shift
Add the support-reply skill and have one shift request drafts on how-to and integration tickets. Agents send from the help desk and record whether each draft was sent as is, lightly edited, or rewritten.
- 3
Week 3: Escalations, refunds, and the whole team
Connect the escalation webhook and the refund check, roll drafts out to every agent, and allow internal notes. If 9 in 10 issue drafts were accepted, let AI create Linear issues after an engineer approves.
- 4
Week 4: Voice of the customer, KB gaps, and triage writes
Add the Monday and Thursday reports and the changelog RSS. If triage was right 9 times in 10, give the help desk user a role that can set tags, priority, and group. Review who created each automation and what it can reach.
How do you measure whether AI is working for customer service?
Compare the same ticket types before and after on first reply time, resolution time, reopen rate, SLA breaches, and CSAT, alongside triage accuracy and draft acceptance.
Take the baseline from four weeks of help desk reporting before you turn anything on, split by ticket type and plan. Compare like with like: an outage week inflates volume and depresses CSAT whether or not AI is involved. Expect operational numbers to move in the first month; CSAT usually follows more slowly and needs enough ratings to mean anything.
Do not count 'tickets handled by AI'; here AI handles none on its own. Count what changed for customers: time to first reply, time to resolution, and whether they had to write back.
Other guides in this series cover AI for ecommerce (including DTC support with Shopify order data), AI for customer success, and AI for small business. For how context builds up in a Space over time, read shared AI memory for teams.
| Metric | Baseline | Good after 30 days |
|---|---|---|
| First reply time | Median by plan and priority, last 4 weeks | Lower on how-to and integration tickets; urgent within SLA |
| Full resolution time | Median by ticket type, last 4 weeks | Lower on drafted ticket types; flat elsewhere |
| Reopen rate | Share of solved tickets reopened within 7 days | Flat or lower; a rise means drafts are missing something |
| SLA breaches | Breaches per week by plan | Fewer, especially in the first hour of each shift |
| CSAT | By ticket type, with rating counts | Flat or higher on drafted types; never read under 30 ratings |
| Triage accuracy | Not measured before; log corrections from week 1 | 9 in 10 proposals applied unchanged |
| Draft acceptance | Not measured before; log sent, edited, rewritten | Most sent with light edits; under half means fix the skill |
| Escalation bounce-back | Escalations engineering returned for more information | Rare; briefs include repro steps and scope |
Frequently asked questions
How can AI be used in customer service?
Use it for the work around each reply: triaging and routing new tickets, drafting answers from your help center and macros, writing escalation briefs with repro steps, checking refund requests against policy, reporting on queue health and SLAs, summarizing what customers complain about, and finding missing help articles. Agents still review and send every reply, and a person approves anything that moves money.
Should AI reply to customers automatically?
Not at first, and not for anything involving money, account access, or an outage. Start with drafts that an agent sends from the help desk, and measure how many go out with light edits. If your help desk has its own customer-facing bot, keep it to questions your help center already answers well, and use the knowledge base gap report to see where it falls short.
Is it safe to connect Zendesk or Intercom to AI?
It can be if access stays narrow. Connect the help desk through a dedicated user with the smallest role that works, such as a Zendesk light agent who can read tickets and add internal notes but cannot send public replies. Assign the connection only to the Support Space. In type.com, AI acts with the access of the person who started the work, and scheduled automations run as their creator.
How do you handle customer PII when using AI for support?
Keep the Support Space private, never paste card numbers or passwords into threads, and use your help desk's redaction for anything a customer over-shares. Keep customer names and emails out of Slack-mapped channels, because AI responses flow back into Slack. If your queue carries regulated data such as health or financial records, check your security and contract requirements before connecting that queue at all.
Can AI process refunds for customer support?
In this setup, no. AI reads the charge and the policy, recommends approve, deny, or escalate with the clause it relied on, and drafts the reply. A named approver issues any refund or credit in the billing system. Connect Stripe with a restricted read-only key so the rule holds even if instructions are wrong.
How do you measure the impact of AI on CSAT and response times?
Take a four-week baseline from your help desk before turning anything on: first reply time, full resolution time, reopen rate, SLA breaches, and CSAT by ticket type. Then compare the same ticket types after 30 days, alongside triage accuracy and draft acceptance. Expect leading indicators to move before CSAT does, and account for incidents and seasonal volume.
