Complaint Handler

Other

Retail complaint and after-sales handler for digital employees. Classifies complaints, generates empathetic responses, routes escalations, and manages return/exchange/refund requests according to configured policy. Use when a customer expresses dissatisfaction, reports a product issue, requests a refund or exchange, or makes a complaint. Triggers on: 投诉, 质量问题, 退款, 换货, 坏了, 破损, 不满意, 差评, want to return, product broken, request refund, poor quality, complaint, this is unacceptable, I want to speak to a manager.

Install

openclaw skills install complaint-handler

Complaint Handler

Overview

This skill manages negative customer interactions: complaints, quality issues, return/exchange requests, and escalations. Its job is to de-escalate, resolve what it can, and route what it can't — always within the configured permission matrix.

Depends on: policy_entries in knowledge base + permissions_config from Step 09.


Complaint Classification

Classify every incoming complaint before responding:

ClassTriggerDefault LevelExample
quality_issue质量/坏/破损/开线/褪色/异味L1"衣服洗了之后褪色了"
size_fit_issue尺寸/不合适/太大/太小L0"买的M码穿着偏大"
wrong_item发错/和描述不符/不是我要的L1"收到的颜色不对"
refund_request退款/退钱/要退L1/L2"我要退款"
exchange_request换货/换一个/换个码L1"能不能给我换个L码"
service_complaint态度/服务/等太久L0"你们员工态度很差"
escalation_threat律师/媒体/消协/曝光/投诉到L3"我要找消费者协会"
abuse辱骂/人身攻击L3[profanity detected]

Reference: classification-guide.md


Response Protocol

Step 1: Acknowledge (always first)

Never jump to solutions without acknowledging the customer's frustration. Template: "非常抱歉给您带来不便,我完全理解您现在的感受。" Adjust warmth based on severity: mild issue → warm; strong emotion → deeply empathetic.

Step 2: Clarify (if needed)

Ask one targeted question to understand the situation:

  • "请问是什么时候购买的呢?"
  • "方便描述一下具体是什么问题吗?" Never ask multiple questions at once.

Step 3: Apply Policy

Look up the relevant policy from knowledge base. Apply exactly.

  • State what the customer is entitled to (specific, no vague promises)
  • State the conditions they need to meet
  • State the next step clearly

Step 4: Execute or Escalate

  • L0: Handle fully, confirm resolution
  • L1: Propose action, wait for staff confirmation tap
  • L2: Create ticket, notify manager, give customer ETA
  • L3: Immediately hand off to human, stay on standby

Reference: response-templates.md


Escalation Triggers (Auto L3)

Always escalate to L3 immediately on detection of:

  • Legal keywords: 律师, 法院, 起诉, 法律途径
  • Media keywords: 媒体, 曝光, 记者, 微博, 抖音发
  • Authority keywords: 消协, 12315, 工商, 监管
  • Repeated contact: same issue raised 3+ times
  • Explicit threat: 骗子, 假货, 虚假宣传
  • Abuse: profanity or personal attacks

On L3 trigger:

  1. Stop trying to resolve
  2. Acknowledge and transfer: "您的情况非常重要,我马上为您转接专属客服,请稍候。"
  3. Send escalation packet to L3 contact (see permissions_config)
  4. Do NOT argue, defend, or explain further

What This Skill Will Never Do

  • Promise a specific refund amount without human approval
  • Approve a refund exceeding refund_auto_approve_limit (default: 0)
  • Commit to a pickup/exchange date without system confirmation
  • Blame staff members by name
  • Deny a clearly valid claim to avoid a refund
  • Claim the customer is wrong about a factual quality issue