~/blog/openclaw-ai-assistant-email-filtering-customer-complaints-2026.md
企業系統與 CRM · 2026 / 03 / 25

OpenClaw 智慧秘書實戰:爆量客服信箱的秒速過濾與客訴精準分類

Eric — 浪花科技創辦人 / AI 架構師
Eric
浪花科技創辦人 · AI 架構師
OpenClaw 智慧秘書實戰:爆量客服信箱的秒速過濾與客訴精準分類
目錄 table-of-contents.md

關鍵字過濾規則寫到第兩百條,垃圾信照樣穿透、真客訴照樣漏接——這不是規則寫得不夠多,而是 Regex 根本讀不懂語意。真正有效的做法,是讓具備語意理解與情緒分析能力的 AI 代理(AI Agent)判讀每封信的意圖,再依結果自動分流。這篇用 OpenClaw 這套自主 AI 代理示範:把它串接到 WordPress 或 CRM,組出一個 24 小時運轉、情緒永遠穩定的客服信件分流系統。

你會學到三件事:傳統過濾為什麼失效、OpenClaw 在這個架構裡扮演什麼角色,以及「攔截信件 → AI 分析意圖與情緒 → 自動分流打標籤 → 通知負責人」這條自動化鏈路要怎麼落地。

先說個熟悉的崩潰早晨:剛坐到電腦前,客服信箱迎面就是 500 封未讀,裡面混雜國外推銷信、「忘記密碼」的基礎詢問、一般業務諮詢,還有已經在暴怒邊緣的客訴。手動分類這些信,往往就吃掉一整個早上的專注力。

為什麼傳統信件過濾在現在已經不夠用?

過去工程師(包含我)總在寫永無止盡的 Regex 和關鍵字規則:「標題含『退款』或『生氣』就標紅」。但人類語言太複雜,客戶可能寫「你們的東西真的很棒,棒到我一打開就碎了,請把錢還我」——傳統關鍵字過濾很可能把這封歸類成「正面回饋」,這就是災難的開始。

傳統過濾機制(例如 Gmail 篩選器或基本 Helpdesk 規則)有三個結構性的致命傷:

  • 缺乏語意理解(Semantic Understanding):它們只認得字,不認得上下文。客戶的諷刺、急迫感或隱含的退款意圖,傳統系統完全抓不到。
  • 無法做情緒分析(Sentiment Analysis):當客戶情緒已瀕臨爆發,這封信仍會乖乖在佇列裡排隊,等到有人處理時公關危機可能已經發生。
  • 維護成本極高:行銷活動一換、產品一更新,工程師就得回去改一堆 IF/ELSE 條件,技術債越積越厚。

關鍵字過濾的本質是「比對字串」,而客訴判讀需要的是「理解意思」。這兩件事不在同一個層級,所以再怎麼補規則都補不完。我們真正需要的,是一個具備 LLM(大型語言模型)大腦、能自主判斷並呼叫工具的 AI 代理。

OpenClaw 是什麼?它和「直接問 ChatGPT」差在哪?

OpenClaw(社群戲稱「AI 小龍蝦」)是 2026 年極具代表性的開源 AI 代理架構。它和單純對話式的 LLM 最大的差異在於「意圖驅動(Intent-driven)」:你給的不是一條條指令,而是一個目標,由代理自己拆解步驟、決定要呼叫哪些工具來達成。

OpenClaw 內建多種通訊協定(如 MCP, Model Context Protocol),讓它能較安全地與外部系統對話——例如你的 WordPress 資料庫、Email 伺服器或第三方 CRM。換句話說,它不只是「回你一段文字」,而是能實際「去做事」。

套用到客服場景,你只要告訴它一個目標:「閱讀所有進件,把垃圾信丟掉、把客訴信標記緊急並轉發給主管、一般詢問則先生成草稿」,剩下的判讀與分流由它完成。

什麼情況適合用 AI 代理,什麼情況其實不用?

不是所有過濾都該丟給 LLM。建議這樣分工:

  • 仍交給規則的部分:明確的寄件人黑白名單、特定網域、已知系統通知信。這些用 Regex 既快又便宜,沒必要花 AI 額度。
  • 交給 AI 代理的部分:需要理解語氣、判斷急迫程度、辨識隱含退款/投訴意圖的「灰色地帶」信件。這正是規則最容易誤判、AI 最有價值的地方。

把這兩層疊在一起(先用便宜規則篩掉確定的,再讓 AI 處理需要判斷的),整體成本與準確率才會平衡。

實戰架構:24 小時智慧秘書的三個步驟

以下分享浪花科技為企業客戶建置這套系統的做法。目標架構是一條清楚的資料流:

接收信件/表單 → OpenClaw 分析意圖與情緒 → 自動分流打標籤 → 推送通知給對應負責人。

步驟一:攔截信件與表單資料(Webhook 觸發)

第一步是把客戶的聲音「餵」給 OpenClaw。常見做法有兩種:

  • 透過 WordPress 上的聯絡表單(如 Contact Form 7、Gravity Forms)在送出時攔截。
  • 把客服信箱綁定 Mailgun/SendGrid,接收 Inbound Webhook,讓每封進信都觸發一次處理。

當有新詢問進來,我們利用 WordPress 的 Hook 攔截這筆資料。這裡有個工程師的小囉嗦但很重要:務必先做資料驗證與清洗,別讓無效或惡意的 Payload 直接打進你的 AI 端點——既是安全考量,也避免無謂地燒掉 API 額度。

步驟二:呼叫 OpenClaw 進行意圖與情緒分析

拿到信件內容後,透過 HTTP Request 把內容送到 OpenClaw 部署的端點。這一步 Prompt Engineering(提示詞工程)是關鍵:務必要求 OpenClaw 回傳「結構化的 JSON」,包含分類、情緒分數與建議動作,下游程式才好做判斷。

幾個讓回傳更穩定的實務原則:

  • 把分類選項寫死成固定清單(例如 Spam/Urgent Complaint/Sales/Tech Support),避免 AI 自由發揮出五花八門的標籤。
  • 明確定義情緒分數的範圍與意義(例如分數越低代表越不滿),讓後續門檻判斷有一致依據。
  • 設定逾時與錯誤處理:外部 API 一定會有失敗的時候,呼叫端要能優雅降級,而不是讓表單流程整個卡死。

以下是一段支援 WordPress 經典編輯器的 PHP 實作範例,攔截 CF7 表單送出後把內容交給 OpenClaw 做初步客訴分類:

// 攔截 CF7 表單送出,將內容傳遞給 OpenClaw 進行初步客訴分類
add_action('wpcf7_mail_sent', 'roamer_filter_email_via_openclaw');

function roamer_filter_email_via_openclaw($contact_form) {
    $submission = WPCF7_Submission::get_instance();
    if ($submission) {
        $data = $submission->get_posted_data();
        $customer_email = sanitize_email($data['your-email']);
        $email_body = sanitize_textarea_field($data['your-message']);

        // 準備傳送給 OpenClaw 的 Payload
        $payload = array(
            'task' => 'email_classification',
            'content' => $email_body,
            'categories' => array('Spam', 'Urgent Complaint', 'Sales', 'Tech Support'),
            'require_sentiment' => true
        );

        $response = wp_remote_post('https://api.your-openclaw-server.com/v1/analyze', array(
            'method'    => 'POST',
            'headers'   => array(
                'Authorization' => 'Bearer YOUR_SECRET_KEY',
                'Content-Type'  => 'application/json',
            ),
            'body'      => wp_json_encode($payload),
            'timeout'   => 15
        ));

        if (is_wp_error($response)) {
            error_log('OpenClaw API 呼叫失敗: ' . $response->get_error_message());
            return;
        }

        $body = wp_remote_retrieve_body($response);
        $result = json_decode($body, true);

        // 根據 OpenClaw 的判定結果執行後續動作
        if ($result['category'] === 'Urgent Complaint' && $result['sentiment_score'] < 3) {
            // 情緒極度不滿的客訴,立刻觸發緊急通知 (例如傳送 Slack/LINE 給客服主管)
            roamer_trigger_urgent_alert($customer_email, $email_body);
        }
    }
}

這段程式碼裡有幾個值得留意的設計:先用 sanitize_email()sanitize_textarea_field() 清洗輸入;用 is_wp_error() 處理呼叫失敗並記錄 log;最後用「分類 + 情緒分數雙條件」來決定是否升級為緊急通知,避免只看單一訊號而誤判。YOUR_SECRET_KEY 與端點網址只是佔位字串,實際部署時應改用環境變數或安全的設定管理,切勿把金鑰硬寫進版本控管的程式碼。

步驟三:智慧分流與 CRM 連動

當 OpenClaw 回傳判定結果(例如:這是一封「緊急客訴」、情緒為「憤怒」),系統就不只是把信塞進資料庫,而是啟動對應的自動化流程:

  • 垃圾推銷信:直接封存,工程師的信箱終於乾淨了。
  • 一般常見問題:標記為「待回覆」,並讓 OpenClaw 先生成一份包含官方 FAQ 連結的草稿,人工只需審核微調。
  • 危機客訴:加上紅色標籤,立即透過 LINE Notify 或 Slack 發送警報給客服主管,甚至自動建立一張高優先級的工單(Ticket)。

這一步正是 AI 代理「能呼叫工具」的價值所在:判讀完不會停在結論,而是直接驅動後續動作。如果你的客戶資料集中在 CRM,這裡也能順手把該封信掛回對應的客戶紀錄,讓業務或客服在 CRM 裡就看得到完整的往來脈絡,而不是分散在信箱各角落。

企業導入這套 AI 客服大腦,真正的價值是什麼?

在浪花科技為多家企業導入後,我們發現最大的改變不在於「省了多少人力」,而是「降低了多少心智耗損(Context Switching)」

客服人員不必再把每天的第一個小時花在大海撈針、手動分類。更關鍵的是時效:當系統能在客戶暴怒發文之前,提早讓主管親自介入安撫,這種公關危機的防護價值,往往是無法用金錢直接衡量的。把過濾與分類交給 AI,人力就能集中在「真正需要人來處理」的對話上。

導入前要先想清楚的幾件事

這套架構很實用,但落地前有幾個現實面要先評估:

  • 誤判的容錯設計:不要讓 AI 直接「刪除」任何信件,而是移到「待確認區」或降低優先級,保留人工複核的空間。
  • 白名單與 VIP 保護:用 Prompt 與規則層定義嚴格白名單,確保特定網域或 VIP 客戶的信件絕對不會被誤濾。
  • 成本與額度監控:每封信都呼叫一次 AI 是有成本的,先用便宜的規則層篩掉確定信件,再讓 AI 處理灰色地帶。
  • 隱私與資料邊界:信件內容可能含個資,務必確認資料傳輸與儲存符合公司的合規要求,金鑰也要妥善保管。

結論:工程師的職責,從「寫死規則」變成「設計會思考的系統」

從以前的 Keyword/Regex,到現在的自主 AI 代理,工程師的角色正在轉變——不再是把每條規則都寫死,而是設計一套「會自我判斷與分流」的系統架構。OpenClaw 這類開源代理的出現,讓企業能以相對低的成本,在內部部署一個兼顧隱私與能力的判讀大腦。

如果你也受夠了每天被無效信件淹沒,下一步就是先盤點你的信件類型、定義清楚的分類與情緒門檻,再從一個最痛的場景(通常是客訴升級)開始試做。

延伸閱讀

// FAQ

常見問題

為什麼傳統關鍵字過濾不足以處理客服信件?
傳統過濾機制(如 Gmail 篩選器或關鍵字、正規表達式規則)有三個結構性弱點:缺乏語意理解,只認得字不認得上下文,抓不到諷刺或隱含意圖;無法做情緒分析,情緒已瀕臨爆發的信仍會排隊;維護成本極高,活動或產品一換就得回去改一堆條件。關鍵字過濾本質是比對字串,而客訴判讀需要的是理解意思。
OpenClaw 和直接問 ChatGPT 有什麼不同?
OpenClaw 最大的差異在於意圖驅動(Intent-driven):你給的不是一條條指令,而是一個目標,由代理自己拆解步驟、決定要呼叫哪些工具來達成。它內建多種通訊協定(如 MCP),能與外部系統對話並實際去做事,而不只是回你一段文字。
什麼情況該用 AI 代理過濾信件,什麼情況用傳統規則就好?
明確的寄件人黑白名單、特定網域、已知系統通知信,用正規表達式規則既快又便宜,不必花 AI 額度。需要理解語氣、判斷急迫程度、辨識隱含退款或投訴意圖的灰色地帶信件,才交給 AI 代理。先用便宜規則篩掉確定的,再讓 AI 處理需要判斷的,成本與準確率才會平衡。
呼叫 AI 做信件分類時,如何讓回傳結果更穩定?
幾個實務原則:把分類選項寫死成固定清單(例如 Spam、Urgent Complaint、Sales、Tech Support),避免 AI 自由發揮出五花八門的標籤;明確定義情緒分數的範圍與意義,讓門檻判斷有一致依據;設定逾時與錯誤處理,讓呼叫端能優雅降級,而不是讓整個流程卡死。此外應要求 AI 回傳結構化的 JSON 以便下游程式判斷。
~/roamer-tech/newsletter // FREE
// newsletter

訂閱免費電子報

把 AI 自動化、企業系統設計與 WordPress / Laravel 開發的真實案例和可直接照做的技巧,整理成電子報寄給你。只寄精選內容、不灌垃圾信,一鍵就能退訂。

$
// final.exec()

準備好讓你的網站開始為你工作了嗎?