
handle-complaint
Handles an incoming customer complaint end-to-end — pulls context, drafts a response, and suggests an operational fix. Accepts optional email or ticket ID argument.
- Installs
- 1.4K
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/anthropics/knowledge-work-plugins --skill handle-complaint- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads handle-complaint automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Run the complaint resolution workflow by chaining two skills. Read the complaint, gather context, draft a response, and suggest a fix so it doesn't happen again.
Parse arguments:
EMAIL_OR_TICKET_ID(optional) — Gmail thread ID, HubSpot ticket ID, or "latest" to pull the most recent unresolved complaint. If omitted, ask the owner to paste the complaint text.
Step 1 — Load the complaint (ticket-deflector)
Using the ticket-deflector skill workflow:
- If an ID was given: pull the full thread from Gmail or HubSpot.
- If "latest": pull the most recent unresolved HubSpot ticket or Gmail thread tagged as complaint/support.
- If neither: ask the owner to paste the complaint text directly.
- Identify: customer name, order/account info, what they're upset about, what they're asking for.
Step 2 — Pull context
- Search HubSpot for the customer's history: past purchases, prior complaints, deal stage, lifetime value.
- Search PayPal for relevant transaction: order status, refund history, dispute status.
- Summarize: "This is a {new/returning} customer, ${lifetime_value} in purchases, {0/N} prior complaints. Their current issue is {one sentence}."
Step 3 — Draft response (ticket-deflector)
Using the ticket-deflector skill workflow for tone-matched response:
- Draft a reply matched to the severity and the customer's history:
- First-time complainers with high LTV → empathetic, generous
- Repeat complainers → professional, firm, solution-focused
- Abusive tone → professional, brief, boundary-setting
- Include: acknowledgment, explanation (if known), resolution offer, next step.
- Present the draft to the owner. Do NOT send.
Step 4 — Suggest operational fix (customer-pulse)
- Check if this complaint matches a known theme (from prior
/customer-pulse-checkruns or similar complaints in HubSpot). - If it's a pattern: "This is the {Nth} complaint about {issue} this month. Consider: {specific operational change}."
- If it's isolated: "This looks like a one-off. No pattern detected."
Connector failures
If Gmail and HubSpot are both unreachable, ask the owner to paste the complaint text — the skill works with manual input. If PayPal is missing, skip transaction lookup and note "PayPal not connected — order status unavailable, working from complaint text only."
Approval gates
- Never send a response without explicit owner approval. Drafts only.
- Never issue refunds or credits automatically. Present the option; the owner decides.
- Never close tickets or resolve disputes without owner confirmation.
Output
Present the customer context summary, the drafted response, and any pattern-based operational suggestion. Ask: "Want to send this response, edit it, or handle it differently?"
FAQ
What does the handle-complaint skill do?
Handles an incoming customer complaint end-to-end — pulls context, drafts a response, and suggests an operational fix. Accepts optional email or ticket ID argument.
How do I install handle-complaint?
Run npx skills add https://github.com/anthropics/knowledge-work-plugins --skill handle-complaint in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/handle-complaint/ (personal) or .claude/skills/handle-complaint/ (project).
Which AI agents can use handle-complaint?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is handle-complaint safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains handle-complaint?
It is published by anthropics in anthropics/knowledge-work-plugins, and it is an official skill from the maker of the technology it covers. It has 1,435 recorded installs.
More from anthropics/knowledge-work-plugins
data-visualization
anthropics/knowledge-work-plugins
Create effective data visualizations with Python (matplotlib, seaborn, plotly). Use when building charts, choosing the right chart type for a dataset, creating publication-quality figures, or applying design principles like accessibility and color theory.
documentation
anthropics/knowledge-work-plugins
Write and maintain technical documentation. Trigger with "write docs for", "document this", "create a README", "write a runbook", "onboarding guide", or when the user needs help with any form of technical writing — API docs, architecture docs, or operational runbooks.
code-review
anthropics/knowledge-work-plugins
Review code changes for security, performance, and correctness. Trigger with a PR URL or diff, "review this before I merge", "is this code safe?", or when checking a change for N+1 queries, injection risks, missing edge cases, or error handling gaps.
build-dashboard
anthropics/knowledge-work-plugins
Build an interactive HTML dashboard with charts, filters, and tables. Use when creating an executive overview with KPI cards, turning query results into a shareable self-contained report, building a team monitoring snapshot, or needing multiple charts with filters in one browser-openable file.
system-design
anthropics/knowledge-work-plugins
Design systems, services, and architectures. Trigger with "design a system for", "how should we architect", "system design for", "what's the right architecture for", or when the user needs help with API design, data modeling, or service boundaries.
memory-management
anthropics/knowledge-work-plugins
Two-tier memory system that makes Claude a true workplace collaborator. Decodes shorthand, acronyms, nicknames, and internal language so Claude understands requests like a colleague would. CLAUDE.md for working memory, memory/ directory for the full knowledge base.
Popular testing & qa skills
tdd
mattpocock/skills
Test-driven development. Use when the user wants to build features or fix bugs test-first, mentions "red-green-refactor", or wants integration tests.
grilling
mattpocock/skills
Grill the user relentlessly about a plan, decision, or idea. Use when the user wants to stress-test their thinking, or uses any 'grill' trigger phrases.
migrate-to-shoehorn
mattpocock/skills
Migrate test files from as type assertions to @total-typescript/shoehorn. Use when user mentions shoehorn, wants to replace as in tests, or needs partial test data.
run-train
lllllllama/rigorpilot-skills
Rigor Train skill for deep learning research repositories. Use when a documented or selected training command should be run conservatively for startup verification, short-run verification, full kickoff, or resume, with command, config, seed, log, checkpoint, status, and metric evidence written to standardized trainoutputs/. Do not use for environment setup, exploratory sweeps, speculative idea implementation, or end-to-end orchestration.
test-driven-development
obra/superpowers
Use when implementing any feature or bugfix, before writing implementation code
finishing-a-development-branch
obra/superpowers
Use when implementation is complete, all tests pass, and you need to decide how to integrate the work