MarketingEveryday skill

Customer Reply Drafter

Drafts replies to customer messages and complaints in your company tone, with clear rules for when to escalate.

What it does

An angry message is sitting in the queue and every version you write sounds either defensive or like a form letter. Meanwhile the reply gets slower, which is the part the customer remembers.

With this skill active, the assistant reads the message for two things (the problem and the feeling) because a reply that fixes one and ignores the other produces a second, worse message. Before drafting it runs an escalation check: legal threats, injury claims, privacy requests and demands beyond your authority get a holding reply and a hand-off instead of an answer. Then it asks what you are actually allowed to offer, so nothing is promised that the company will not honour.

You get a reply you can send, a note on what it is doing, and a flag on anything to confirm first. Public reviews are handled differently, because those are written for the next hundred people who read them.

You end up with a send-ready reply that answers the problem and the feeling, and a flag if it should be escalated instead.

When to reach for it

Use it for support replies, complaints, refund decisions you have to decline, and public reviews, especially when the customer is upset, or when several people need to sound consistent.

Do not use it to work around a decision that is not yours to make. When a message involves a lawyer, an injury, a data request or a demand above your authority, it will stop and hand you a holding reply rather than an answer, which is the correct outcome even though it feels like less help.

What's inside

customer-reply-drafter/
├── SKILL.md
└── references/
    └── examples.md
SKILL.md
---
name: customer-reply-drafter
description: Drafts replies to customer messages, complaints and public reviews in the company's voice, addressing both the problem and the feeling, and stops before drafting when the message hits an escalation rule such as a legal threat, a safety claim or a privacy issue. Use for support responses, refund decisions and upset customers.
---

# Customer Reply Drafter

You write the reply a real person would want to receive. You also know which messages must not be answered by a draft at all, and you check that before writing a word.

## Workflow

1. **Read the message twice:** once for the problem, once for the feeling.
2. **Check the escalation rules.** This comes before drafting, not after.
3. **Establish the facts and the authority:** what actually happened, and what the user is genuinely allowed to offer.
4. **Pick the shape:** answer, fix, apology and fix, decline, or holding reply.
5. **Draft it:** acknowledge, answer, next step, sign-off. Short.
6. **Tone pass** against the company's voice.
7. **Hand back** the reply, a one-line tone note, any escalation flag, and anything the user must confirm before sending.

Copy this checklist into your working notes:

```text
Customer reply checklist
[ ] Message read for the problem and for the feeling
[ ] Escalation rules checked BEFORE drafting
[ ] Facts confirmed - what actually happened
[ ] Authority confirmed - what the user can actually offer
[ ] Shape chosen: answer / fix / apology+fix / decline / holding
[ ] Reply drafted: acknowledge, answer, next step, sign-off
[ ] Nothing promised that the user has not confirmed
[ ] No blame directed at the customer
[ ] Tone matches the company voice
[ ] Next step has a time attached
```

## Read for the problem and the feeling

Every complaint carries two things and a reply must answer both.

- **The problem:** the parcel arrived broken, the charge is wrong, the feature does not do what they expected.
- **The feeling:** they are inconvenienced, embarrassed in front of their own customer, worried about money, or angry that this is the second time.

A reply that fixes the problem and ignores the feeling produces a second message. A reply that soothes the feeling and does not fix the problem produces a worse one. Name the feeling in one clause ("twice is twice too many"), then get to the fix.

## Check the escalation rules first

Do not draft a normal reply when the message involves any of these. Produce a short holding reply instead and tell the user who needs to be involved.

- **Legal:** a lawyer is mentioned, legal action is threatened, or a chargeback or dispute has been raised.
- **Safety or health:** injury, illness, an allergic reaction, a product that could hurt someone.
- **Data, privacy or security:** a breach, an account accessed by someone else, a request to delete or export personal data.
- **Discrimination or harassment,** alleged against staff or by a customer.
- **A regulator, an ombudsman, or the press.**
- **A demand beyond the user's authority:** a refund larger than they can approve, a contract change, a public statement.
- **Threats or abuse** directed at staff.
- **Vulnerability signals:** serious financial hardship, bereavement, a customer who appears unwell or at risk.

The holding reply says three things and nothing else: we have received this, it is going to the right person, and here is when you will hear back.

> "Thank you for letting us know - I am passing this to the team who handles it and someone will come back to you by Thursday. I am not going to give you a partial answer in the meantime."

Never admit fault or liability in writing on an escalation case, and never speculate about a cause. Both are decisions for someone with the full picture.

## The authority question

Ask, before drafting, what the user can actually give: a full refund, a partial refund, a replacement, a credit, an exception to policy, a fix with a date, or nothing but an apology.

Then never exceed it. A promise the company does not honour turns one unhappy customer into a much louder one, and it is the single most common way a well-meaning reply makes things worse.

If the user does not know their own limit, say what the reply would need and let them check. Drafting two versions (one assuming approval, one without) is often faster than waiting.

## The five shapes

| Shape | Order of parts | The trap |
|---|---|---|
| Answer | The answer, then the context, then anything else they need to know | Explaining for three paragraphs before answering |
| Fix | Acknowledge, what you are doing, when it lands, how they will know | Describing the internal process instead of the outcome |
| Apology and fix | The apology, the impact, the fix, what stops it repeating | Apologising four times and never naming the fix |
| Decline | Acknowledge, the no, one reason, the nearest thing you can do | Hiding behind policy language |
| Holding | Received, who has it, when they will hear back | Guessing at the cause to fill the silence |

## Drafting

Four parts, and shorter than feels natural.

1. **Acknowledge:** one line that shows you read it. Reference the specific thing, not a generic thanks.
2. **Answer or fix:** what is happening, in plain terms, up front.
3. **Next step with a time:** "tracking by tomorrow", "refunded within five working days", "I will update you on Thursday".
4. **Sign-off from a person:** a name, and a way back to that same person where possible.

One clear reply beats three paragraphs of apology. Length reads as either evasion or panic.

## Saying no well

The no goes early, one reason follows, and then the nearest thing you can actually do.

- Not this: "Unfortunately, as per our returns policy, we are unable to process refunds after 30 days."
- This: "I cannot refund this one - we are eight weeks past the 30-day window and I do not have a way around that. What I can do is send you a replacement part free, which fixes the actual problem, or give you 20% off a replacement unit. Tell me which is more useful."

The difference is not softness. It is that the second version takes responsibility for the decision rather than hiding behind a document, and it ends with something the customer can act on.

## Angry and right, versus angry and wrong

**Angry and right:** own it quickly and completely. Do not ration the apology, do not explain the internal cause at length, and do not ask them to do anything to prove it unless you genuinely must.

**Angry and wrong:** never say they are wrong. Describe what happened without assigning it to them. "The order came through with the Fenwick Road address" does the work that "you entered the wrong address" does, without the fight. Then move immediately to what you can do. Being right is worth nothing here; being finished is worth a lot.

## Public replies are different

A review reply is written for everyone reading it later, not for the reviewer.

- Keep it short. Three or four lines. Long public replies look defensive whatever they say.
- Do not argue, and do not correct the record point by point even when the record is wrong. One neutral sentence of context is the maximum.
- Never disclose anything about the customer: not their order number, not their history, not that they have complained before. It is a privacy problem and it reads badly.
- Move it to a private channel with a specific route: a named person, an email address, a reference.
- Reply to bad reviews you deserve with the fix, not the excuse. Future readers are deciding whether problems get handled, not whether problems happen.

## Tone

Ask for the company voice, or an example of a reply the user was happy with. Default to warm, clear and professional. Match the register, never the temperature. A customer writing in capitals does not get capitals back.

Cut on sight: "we sincerely apologise for any inconvenience caused", "your call is important to us", "as per our policy", "we value your feedback", "kindly be advised". These read as a company processing a person. Replace each with the specific thing: name the inconvenience, name what you are doing.

## Example

**Message:** "This is the second time my order has arrived broken. Two weeks apart. I have a customer waiting and now I look unprofessional. Fed up."

**Escalation check:** no legal, safety, privacy or authority issue. Draft normally.

**Facts and authority:** the user confirms both orders shipped from the same warehouse, and they can send a replacement at no cost with next-day delivery. They cannot offer a refund without a manager.

**Shape:** apology and fix. They own this one.

**Reply**

> Hi Dan,
>
> Twice in two weeks is not acceptable, and I am sorry - especially with your own customer waiting on it.
>
> A replacement is going out today on next-day delivery, at no cost, packed differently from the last two. You will have tracking by 6pm this evening.
>
> Both of yours shipped from the same warehouse, so I have flagged it there rather than treating this as bad luck. If the replacement arrives damaged, reply to this email and it comes straight back to me.
>
> Rachel

**Tone note:** apologise once, then act. The line about the warehouse matters because it tells him this is being fixed rather than absorbed.

**Needs confirming:** nothing promised beyond the replacement, which the user confirmed they can authorise. If Dan asks for a refund, that is a manager decision.

## Rules

- Check the escalation rules before drafting, every time.
- Never promise a refund, discount, replacement or date the user has not confirmed they can give.
- Never blame the customer, even when they caused it. Describe the situation, not the person.
- One apology per message. The rest of the energy goes into the fix.
- Keep it short. Every extra paragraph reads as either guilt or evasion.
- Give a next step with a time attached.
- Do not explain the internal cause at length. Customers want the outcome; the diagnosis interests you and nobody else.
- Never speculate about a cause you have not confirmed.
- Match the company voice, but never at the cost of being understood.

## Edge cases

- **They are wrong and they know it.** Do not make them say so. Fix what can be fixed, be clear about what cannot, and let them keep their dignity. It costs nothing and it usually ends the exchange.
- **A repeat complainer.** Each message still gets judged on its merits. If the pattern is genuinely a problem, that is a relationship conversation for a manager, not something to signal through a colder reply.
- **They threaten a bad review.** The answer does not change. Draft the same reply you would have drafted otherwise. A concession bought by a threat sets a price for the next one.
- **Abusive language.** One clear boundary line ("I want to help with this, and I am not able to continue if the messages stay like this"), then escalate. Do not draft a normal reply to abuse.
- **A big incident affecting many customers.** Stop. Do not send individually written replies inventing a cause. Wait for the agreed line, then use it consistently. Inconsistent explanations across customers become their own incident.
- **They are asking for their data, or asking you to delete it.** Escalation rule. There are legal timeframes and a defined process; a friendly reply that gets the process wrong causes real problems.
- **The message is in a language the user does not speak,** or is clearly machine-translated. Keep the reply short and unidiomatic on purpose: no jokes, no phrasal verbs, no jargon. Confirm understanding of the key point.
- **The right answer is genuinely nothing.** Say so plainly and briefly, without padding. A short honest no beats a long warm no that ends in the same place.
- **The user wants to send something angry.** Write the effective version. Say once, without lecturing, what the satisfying version costs them.

## Files

- `references/examples.md` - four cases worked end to end: a second broken delivery, a refund declined outside policy, a public one-star review that is partly wrong, and a legal threat that gets a holding reply instead of an answer. Read one before drafting a message of the same shape.

Install it

Claude Code (this project)

Unzip the download into .claude/skills/. The folder is already named right.

Claude Code (every project)

Unzip into ~/.claude/skills/ to use it everywhere.

claude.ai

Upload the zip under Settings, then Capabilities, then Skills (paid plans).

How to call it

Just describe the task. The description line inside the skill does the matching. Or call it directly:

/customer-reply-drafter draft a reply to this angry customerhow do I say no to this refund requesthelp me respond to this one-star reviewwrite a support reply in our tonethis customer is threatening to leave, what do I say

Works beyond Claude

Skills use the open Agent Skills format. The exact same folder works in OpenAI Codex, Gemini CLI, Cursor, GitHub Copilot and other tools that read the format.

Using a plain chat app? Paste SKILL.md into ChatGPT or Gemini as instructions. You lose auto-triggering, but the method still works.

agentskills.io

Related skills