Handle complaint
Production-ready AI agent profiles for Claude Code, Cursor, and Codex. Search, install, and contribute ForgeCat packages.
npx -y skills add nota-america/forgecat-agent-profiles --skill handle-complaintAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 24 stars24 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
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.
SKILL.md
3.0 KB, as published. Nobody here has run it
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?"