PluginBench
Skill
Official
Review
Audit score 70

handle-complaint

anthropics/knowledge-work-plugins

End-to-end complaint handling: pull context, draft response, suggest operational fixes.

What is handle-complaint?

Handles incoming customer complaints by retrieving context from email/ticketing systems, drafting a tone-matched response, and identifying patterns to prevent recurrence. Use when you need to resolve a complaint systematically while maintaining approval control.

  • Retrieves complaints from Gmail, HubSpot, or manual paste input
  • Gathers customer history: past purchases, prior complaints, lifetime value
  • Searches transaction records (PayPal) for order and refund status
  • Drafts empathetic, severity-matched responses based on customer profile
  • Identifies complaint patterns and suggests operational improvements
  • Presents drafts for owner approval before any action

How to install handle-complaint

npx skills add https://github.com/anthropics/knowledge-work-plugins --skill handle-complaint
Prerequisites
  • Gmail or HubSpot account connected (or ability to paste complaint text manually)
  • PayPal account connected (optional; skipped if unavailable)
  • Access to customer history and transaction records
Claude Code
Cursor
Windsurf
Cline

How to use handle-complaint

  1. 1.Provide an email thread ID, HubSpot ticket ID, or 'latest' as an argument, or paste the complaint text when prompted
  2. 2.Review the generated customer context summary and complaint analysis
  3. 3.Read the drafted response and confirm the tone matches your intent
  4. 4.Review the suggested operational fix (if a pattern is detected)
  5. 5.Approve, edit, or reject the response before it is sent

Use cases

Good for
  • Resolving a high-value customer's complaint while preserving the relationship
  • Detecting recurring issues (e.g., shipping delays) across multiple complaints
  • Handling a repeat complainer with a professional, solution-focused tone
  • Responding to an abusive complaint with firm, boundary-setting language
  • Escalating a pattern-based operational fix to product or ops teams
Who it's for
  • Customer service managers
  • Support team leads
  • Operations and product managers
  • Small business owners handling complaints directly

handle-complaint FAQ

Will this skill send responses automatically?

No. The skill only drafts responses and requires explicit owner approval before sending. You control all customer-facing communication.

What happens if Gmail and HubSpot are not connected?

You can paste the complaint text directly. The skill will work with manual input, though it won't retrieve historical context from those systems.

Can this skill issue refunds or credits?

No. It presents refund or credit options for you to decide. The owner always approves financial actions.

How does it identify complaint patterns?

It checks HubSpot for similar complaints and prior `/customer-pulse-check` runs, then flags recurring themes and suggests operational changes.

What if the complaint is isolated and not part of a pattern?

The skill will note 'No pattern detected' and focus on resolving the individual complaint without suggesting systemic changes.

Full instructions (SKILL.md)

Source of truth, from anthropics/knowledge-work-plugins.


name: handle-complaint description: 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. allowed-tools: Read, WebFetch, Bash

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:

  1. If an ID was given: pull the full thread from Gmail or HubSpot.
  2. If "latest": pull the most recent unresolved HubSpot ticket or Gmail thread tagged as complaint/support.
  3. If neither: ask the owner to paste the complaint text directly.
  4. Identify: customer name, order/account info, what they're upset about, what they're asking for.

Step 2 — Pull context

  1. Search HubSpot for the customer's history: past purchases, prior complaints, deal stage, lifetime value.
  2. Search PayPal for relevant transaction: order status, refund history, dispute status.
  3. 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:

  1. 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
  2. Include: acknowledgment, explanation (if known), resolution offer, next step.
  3. Present the draft to the owner. Do NOT send.

Step 4 — Suggest operational fix (customer-pulse)

  1. Check if this complaint matches a known theme (from prior /customer-pulse-check runs or similar complaints in HubSpot).
  2. If it's a pattern: "This is the {Nth} complaint about {issue} this month. Consider: {specific operational change}."
  3. 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?"