respond-to-complaint — skills/customer-service/respond-to-complaint/SKILL.md
← back to all skills · test triggers
Skill: Respond to Complaint
When to apply
Customer's message expresses dissatisfaction — frustration about service, quality, delays, communication. Often paired with another action type (complain + refund_request, complain + replacement_request).
Sentiment-first triage
Estimate sentiment from the message tone. Use these signals: - All-caps phrases ("UNACCEPTABLE"), profanity, "demand", "lawyer", "social media", "BBB" → sentiment ≤ -0.6 - "Frustrated", "disappointed", "this is the second time" → sentiment -0.3 to -0.5 - "Just letting you know", "small issue" → sentiment -0.1 to -0.2
Workflow
- Estimate sentiment.
- If sentiment < -0.4: call
escalate_to_human(reason="negative_sentiment_complaint", context={...})and do not auto-reply. The human reviewer responds personally. - If sentiment between -0.4 and -0.2 and the customer is asking for a remedy:
call the relevant skill (handle-refund-request or handle-replacement-request)
to take action, then
send_email_via_approval_gatewith action_type matching the remedy. Notification queues for review — do not auto-send a complaint-context reply. - If sentiment ≥ -0.2 (mild grievance): empathize briefly in 2-3 sentences,
take any action they explicitly asked for, send via approval gate with the
relevant action_type. Auto-send only if action_type is
email_send_product_qaoremail_send_order_status(neveremail_send_complaint_acknowledgement).
Outputs
{
"action": "respond" | "escalate",
"reasoning": "Sentiment ~-0.6, escalated to cs-manager queue.",
"confidence": 0.95,
"output": "Escalated to human reviewer."
}
Rules
- Negative sentiment ALWAYS escalates when ≤ -0.4. The 0.4 threshold is per
config/permissions.yaml.approval_thresholds.sentiment_floorminus a small buffer. - Never auto-send a complaint-acknowledgement email. Money + complaint = reviewer-only.
- Multi-issue messages (complaint + question + refund request): handle the question via the product/status skill (auto-sendable) and escalate the complaint + refund portion separately.
Anti-patterns
- Do not minimize the complaint ("I'm sorry to hear that" repeated 4×).
- Do not promise a manager will call back unless we have that workflow.
- Do not offer compensation ("here's $50") unilaterally — that's a human decision.
- Do not respond defensively or argue the customer's premise.