Purpose
Produce word-for-word, brand-voice-aligned scripts that frontline retail staff can use in the moment to de-escalate upset customers, resolve complaints, and protect the customer relationship. Removes the guesswork of what to say under pressure and turns inconsistent, improvised responses into a repeatable standard.
When to Use
Invoke this skill when the user asks to:
- Create scripts for handling angry or upset in-store customers
- Give staff language for refund, return, or exchange disputes
- Defuse a public confrontation or a customer making a scene
- Standardize how the team responds to a recurring complaint type
- Train new hires on complaint handling with specific phrasing
- Handle a specific escalation (loud complaint, demand to see a manager, threat to post a review)
Inputs Required
Before starting, collect:
- Complaint type: The situation being handled (e.g., defective product, long wait, out-of-stock item, staff dispute, pricing error, refund refusal)
- Brand voice: How the brand speaks — warm/casual, premium/formal, playful, no-nonsense, etc.
- Staff role/authority: Who is running the script and what they're allowed to offer (frontline associate vs. shift lead vs. store manager)
- Resolution levers available: What staff can actually give (refunds, exchanges, discounts, store credit, comps, escalation only)
- Policy constraints: Hard limits — what cannot be offered under any circumstances
- Setting: In-store at the counter, on the floor with other customers watching, private back-office, or phone
- Desired outcome: Retain the customer, resolve fast, protect other shoppers' experience, or minimize refund exposure
If brand voice or authority level is missing, default to a warm-but-professional tone at frontline-associate authority and note the assumption.
Instructions
Step 1: Diagnose the Emotional State and Escalation Level
Classify where the customer is so the script matches the moment:
- Frustrated (Level 1): Annoyed but reasonable — wants to be heard and helped
- Angry (Level 2): Raised voice, blaming, may be interrupting — needs acknowledgment before any solution
- Escalated (Level 3): Making a scene, threatening (reviews, chargebacks, "I'll never shop here again"), or drawing an audience — needs containment, privacy, and authority
Match script intensity to level. Level 1 can move to resolution quickly; Levels 2–3 require full acknowledgment and pacing before any offer.
Step 2: Build the Script in Five Sequenced Blocks
Every script follows the same proven arc. Write actual, speakable lines — not descriptions of what to say.
Block 1 — Open with Acknowledgment (no defense, no "but") The first line must validate the feeling before addressing the facts.
- Never open with a policy statement or a justification
- Ban the word "but" — replace with "and" or a full stop
- Formats: "You're right to be frustrated — let's fix this." / "I hear you, and I'm going to help sort this out."
Block 2 — Empathy and Ownership Take ownership of the resolution without necessarily admitting fault.
- Use "I" and "we," never "you should have" or "the system"
- Name the specific inconvenience: the wait, the defect, the wasted trip
- Formats: "That's not the experience we want you to have." / "I'd be frustrated too if I'd made a trip for this."
Block 3 — Clarify and Contain Ask one calming, information-gathering question and — if Level 2–3 — move the interaction to a lower-audience setting.
- One question, not an interrogation
- Containment line for public settings: "Let's step over here where I can give you my full attention."
Block 4 — Resolution Offer (tiered by authority) Present what can be done, ordered from the least costly acceptable option to the highest, within the authority level given.
- Tier 1 (frontline): The default resolution the associate can offer immediately
- Tier 2 (shift lead): A stronger option if Tier 1 is refused
- Tier 3 (manager): The escalation offer, plus a clean handoff line
- Always frame as choice: "Here's what I can do for you right now — [option A] or [option B]. Which works better?"
- Include one honest boundary line for requests outside policy: "That one I can't do — here's what I can do instead."
Block 5 — Recovery and Close End on a relationship-repairing note that leaves the door open.
- Confirm the resolution back to them
- Add a small goodwill or invitation-to-return line where appropriate
- Formats: "You're all set — and I'm sorry it took this to get there." / "Come find me next time you're in."
Step 3: Add De-escalation Guardrails
Alongside the script, provide a short tactical sidebar:
- Phrases to never say (3–5): e.g., "Calm down," "That's our policy," "There's nothing I can do," "You should have..."
- Body language / pacing cues (3–4): lower voice, slow down, uncross arms, don't stand over the customer
- Hard-stop line: One professional exit line for abusive or unsafe behavior that ends the interaction and escalates to a manager
Step 4: Produce Two Variations
Generate the full script plus:
- A short version (3–4 lines) for quick, Level 1 counter interactions
- A branch line for when the customer refuses the first resolution offer, so staff aren't caught without a next move
Output Format
- Structure: One primary five-block script, then a short version, a refusal branch, and a guardrails sidebar
- Length: 600–900 words
- Format: Scripted dialogue with clearly labeled blocks; guardrails as scannable lists
- Sections: Escalation level note → Full 5-block script → Short version → Refusal branch → Guardrails sidebar (never-say / body language / hard-stop line)
- Tone: Every spoken line written in the specified brand voice; instructional labels kept plain and directive
Quality Checklist
Before delivering output, verify:
- [ ] All five blocks are present and in order (Acknowledge → Empathize → Clarify → Resolve → Recover)
- [ ] No script line contains "but," "calm down," "policy," or "there's nothing I can do"
- [ ] Resolution offers stay within the stated authority level and never offer anything on the policy-constraint list
- [ ] Spoken lines match the specified brand voice — not generic corporate filler
- [ ] The guardrails sidebar includes at least 3 never-say phrases and a hard-stop line
- [ ] Both a short version and a refusal-branch line are included
Notes
- The single highest-impact block is the opening acknowledgment — most escalations get worse because staff jump to policy before the customer feels heard
- Scripts are starting frameworks, not robotic lines — coach staff to keep the sequence but use their own natural cadence
- For recurring complaint types, generate a set and turn it into a one-page counter reference or new-hire training sheet
- If the situation involves safety, theft, or abuse, the hard-stop line and manager escalation take priority over any resolution attempt
How to use this skill
This file is a Claude Code skill in Anthropic's standard format — markdown with YAML frontmatter at the top.
Installing in Claude Code:
~/.claude/skills/<folder-name>/SKILL.md— auto-loads in every session anywhere on your machine (recommended for skills you'll use across multiple projects)<your-project>/.claude/skills/<folder-name>/SKILL.md— auto-loads only when working in that project (recommended for project-specific skills)
Restart Claude Code or open a new session to register.
Using in Claude.ai, ChatGPT, Gemini, or other AI tools:
- Drag this file into a new chat, or copy and paste its contents
- Send your task or request as your next message — the AI will apply the skill where it fits
For Claude Code skill details: https://docs.anthropic.com/en/docs/claude-code/skills