2026 OpenClaw 通道側排障:羣聊 @mention、pairing 審批與 Slack/Discord 機器人權限清單(對照「已連接但不回」)

網關與通道已裝通,Dashboard 與 18789 也正常,但私聊能回、羣聊像斷線,或通道綠燈卻永遠無人應答——這往往不在模型層,而在IM 策略與機器人權限。本文與 heartbeat/thinking 靜默Matrix 外掛 錯層:專注 requireMentionpairing 新發件人審批Slack/Discord 最小權限集;給出對照表六步聯用命令與可寫進 Runbook 的參數,幫你在 Mac 雲 7×24 場景快速定性「通道側」而非誤重裝。讀完你應能獨立判斷:該改平臺 Bot 設置、網關 pairing,還是回到模型與定時任務層。

在 Mac 雲主機上排查 OpenClaw Slack Discord 通道 mention 與 pairing 的示意圖

本文要點

1. 三類痛點:已連接不回常見根因

網關日誌可能出現「已處理」而用戶側空白,多數與通道策略有關,而非 API Key 立刻失效。許多團隊第一反應是換模型或重裝 npm 包,結果問題仍在,只因未區分「平臺是否把消息交給 Bot」與「網關是否把消息交給模型」。

  1. 羣聊 @mention 與 requireMention:默認要求羣裏 @Bot 才觸發時,未 mention 的消息會被策略層直接丟棄,看起來像「掛了」。私聊無此約束故表現正常。需在配置中顯式關閉或改爲白名單房間,並在文檔裏寫清「羣內必須 @」的運營規則。若同一 Bot 在多個羣表現不一致,還要覈對是否按頻道/房間單獨覆蓋了策略,避免只改了全局卻漏了某羣的遺留配置。
  2. pairing 與新發件人審批:安全策略下,新用戶或新會話可能進入待審批隊列;未執行 pairing approve 或等效操作前,網關不會向模型投遞。表現爲連接測試通過、歷史用戶正常、新成員永遠無回。與 網關策略與 Token 聯讀可區分「策略攔截」與「鑑權失敗」。升級 OpenClaw 或合併多份配置文件時,pairing 默認值可能被重置,建議在變更說明裏寫明「升級後必跑 pairing list」。
  3. Slack/Discord 權限與 intents:Slack 缺 chat:write、頻道未邀請 Bot、或 Discord 未開 Message Content Intent / 歷史消息權限時,入站可見但出站失敗或消息被平臺靜默丟棄。Webhook 與 Socket 模式所需權限集合不同,混用文檔會導致「本地 curl 成功、正式羣不行」。Slack 多 Workspace 場景下,還要確認 App 安裝在當前 Workspace 且事件訂閱指向當前網關公網地址,否則 Dashboard 仍可能顯示「已連接」而實際收不到該 Workspace 的 payload。

先對照下一節表定性,再動模型參數或重裝依賴。

工程上建議把「通道側」與「會話/模型側」寫在兩張 Runbook 裏:前者只含 probe、pairing、mention、平臺權限與回調 URL;後者才含 models status、thinking、heartbeat 與 Cron 通道。混在一張表裏會導致每次事故都從換 Key 開始,浪費數小時。

若你同時接了 Matrix 與 Slack,症狀可能是「Matrix 房間正常、IM 羣不行」——這幾乎直接指向 IM 專屬策略或 Bot 安裝範圍,而不是 Homeserver 故障。

排障時建議單變量:一次只改 mention、或只改 pairing、或只改 Slack 重授權,並在變更窗口記錄前後探針結果,方便次日對照。

2. 現象對照表

現象優先懷疑首選驗證可先排除
僅羣聊無回,私聊正常requireMention、房間策略羣內髮帶 @ 的短句對比整站模型 Key
新成員無回,老成員正常pairing 待審批pairing list 看 pending端口 18789
全通道無回,doctor 黃項通道 Token 失效channels status --probeCPU 滿載
Discord 私聊正常、服務器頻道無聲intents、Bot 角色、頻道可見性開發者門戶 intents 與頻道權限矩陣模型 temperature
Slack 線程外無回事件訂閱範圍、app 安裝範圍重授權與事件 URL 對齊網關隨機「不穩定」
pairing 提示:升級或遷移配置後若突然出現「新人全啞」,優先跑 openclaw pairing list(按通道加 --channel),再決定是否批量放行或收緊策略;勿與 Cron 空輸出 混查。

表中的「可先排除」列刻意列出團隊最常誤判的方向:例如端口 18789若真的不可達,通常私聊也會掛;若只有新成員異常,先不要花時間改防火牆。同理,模型 temperature 隻影響生成風格,不會讓 Bot 在 Discord 頻道里完全收不到事件——把力氣花在 intents 上回報更高。

3. 六步排查:probe、pairing、doctor、logs

以下順序儘量「由外到內」:先證明通道握手與權限,再看策略與模型。每一步只解決一類假設,避免同時改三處導致無法迴歸。

  1. 通道探測:執行 openclaw channels status --probe,記錄各通道 OK/失敗與延遲;失敗項對照平臺側 App 配置與回調 URL。若 probe 間歇性失敗,優先查反代超時、TLS 證書鏈與防火牆僅放行 443 但未放行健康檢查路徑等基礎設施問題,而不是先懷疑 Discord intent。
  2. pairing 隊列:對 Slack/Discord/Telegram 等執行 openclaw pairing list --channel <name>,按 Runbook 審批或拒絕;確認無積壓後再測羣聊。批量導入成員或開放邀請鏈接後,最容易出現「一夜之間全員 pending」。
  3. mention 策略:在配置中查找 requireMention(或等價鍵),對測試羣暫時關閉或僅對白名單房間開啓;複測「無 @」與「有 @」兩種輸入。驗收時務必用真實最終用戶賬號發消息,管理員賬號有時會被列入例外名單,造成「我測可以、用戶不行」。
  4. doctor 與健康openclaw doctor 修常見配置漂移;與 Docker 環境 聯查時確認容器內與宿主配置一致。doctor 通過僅表示配置語法與常見項合理,不代替平臺側 Bot 權限矩陣。
  5. 日誌跟讀openclaw logs --follow 同時在羣內發探針消息,看是否有「policy drop」「mention required」「pairing pending」類關鍵字;無則再懷疑模型路由。建議給探針消息加固定前綴(如 [OC-PROBE]),便於在日誌裏 grep。
  6. Mac 雲持久化:確認 plist 或守護進程下工作目錄與配置路徑一致,重啓後仍讀同一 openclaw.json,避免「人工 SSH 下正常、launchd 下又變回舊策略」。這與 launchd 環境變量 同類:交互式 shell 與守護進程讀到的 cwd、HOME 可能不同。
openclaw channels status --probe openclaw pairing list --channel slack openclaw doctor openclaw logs --follow

4. 可引用參數與清單

Discord:生產環境常見需啓用 Message Content Intent;是否額外打開 Server Members、Presence 等取決於你是否依賴成員列表或在線狀態,最小權限原則下只開剛需。② Slack:Bot 至少具備發消息與讀頻道歷史(具體 scope 按事件 API 與 Socket 模式裁剪);頻道內需 /invite Bot,否則部分事件根本不會投遞。

回調與域名:網關對外 URL 與 Slack/Discord 填寫的回調必須 HTTPS 一致,避免混用 http 內網地址與公網域名;反代若剝離路徑前綴,要與應用內 basePath 對齊。④ 緩存與驗收節奏:羣策略或 App 重授權後,平臺側緩存可達數分鐘,驗收時等待雙週期再判失敗,減少「剛改完立刻否定」的噪聲。⑤ 運營文檔:將「羣內必須 @ 機器人」寫進用戶可見文檔,比反覆改配置更能減少誤報工單;對內則保留 pairing 審批責任人列表。

審計留痕:對每次 pairing 批量放行記錄 ticket 編號與操作者,滿足後續安全複查;與 生產加固 中的 Token 輪換記錄同理,避免「誰放的行」無從追溯。

5. 從反覆改 Token 到穩定 Mac 雲 Agent 底座

每次「不回」就輪換 Bot Token 或重裝包,會掩蓋真正的 mention/pairing 策略問題,也讓審計無法復現。把 probe、pairing、doctor、logs 四步固定進 Runbook,比堆密鑰更有效。

個人筆記本或臨時隧道上調試 IM 權限,往往受本地防火牆、睡眠策略與「合蓋斷網」影響:今天通、明天不通,很難判斷是 OpenClaw 還是操作系統省電。把網關長期放在不關蓋、不斷電的節點上,才能穩定復現 Slack/Discord 的事件流與重連行爲。

這類節點若繼續借用 Windows 或雜牌 Linux VPS,又要兼容 Apple 工具鏈與 launchd 習慣時,兼容層與遠程圖形/簽名環境往往更折騰。租賃 VPSMAC M4 Mac 雲主機作爲 7×24 網關宿主機,可與 launchd 定時任務 同機共存,通道與系統行爲更可預測,排障也更容易對齊生產;需要快速上線時仍可先讀 五分鐘極速部署 把骨架搭好,再按本文補 IM 側清單。

6. 常見問題

私聊正常、羣聊必失敗,最先查什麼?

先查 requireMention 與羣策略,再用帶 @ 的短消息對照。若加 @ 後立即正常,應在文檔中固化規則或評估是否對內部羣關閉 mention 限制。

pairing list 爲空仍無回?

回到 channels probe 與 Bot 權限矩陣;並跟讀 logs 是否 policy 丟棄。另查是否誤用測試 Workspace 的 Token 而用戶在正式 Workspace 發消息。

與 heartbeat 靜默如何區分?

heartbeat 多影響定時/空輸出;若僅羣聊且與 mention 強相關,優先本文通道側。若全通道、含私聊都無回,再並行打開 heartbeat 文 對照。

Discord 已開 intent 仍收不到頻道消息?

覈對 Bot 是否具備該頻道的 View Channel、Read Message History;部分私有頻道需單獨授權角色。開發者門戶保存後需等待數分鐘再測。

Slack 顯示 App 在線但不觸發?

檢查事件訂閱 URL 是否指向當前環境、是否完成重授權;多 Workspace 時每個空間需單獨安裝。可用平臺自帶「事件投遞日誌」與網關 access log 對齊時間戳。