[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"blog-筆記-claude-code-discord-串接設定紀錄":3},{"id":4,"slug":5,"title":6,"description":7,"content":8,"date":9,"image":10,"imageAlt":6,"author":11,"categories":13,"path":17,"minRead":18},3903,"筆記-claude-code-discord-串接設定紀錄","[筆記] Claude Code Discord 串接設定紀錄","記錄 Claude Code 透過 Discord 插件與 Discord 頻道串接的完整流程。設定日期：20 […]","\u003Cblockquote>\n\u003Cp>記錄 Claude Code 透過 Discord 插件與 Discord 頻道串接的完整流程。\u003Cbr \u002F>設定日期：2026-04-02\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch2>概述\u003C\u002Fh2>\n\u003Cp>Claude Code 支援透過 Discord 插件（需要 \u003Cstrong>Bun\u003C\u002Fstrong> 環境），讓使用者在 Discord 頻道中直接與 Claude Code session 對話。Bot 收到訊息後會轉發到 Claude Code，回覆也會透過 Bot 發送回 Discord。\u003C\u002Fp>\n\u003Cp>\u003Cstrong>限制：\u003C\u002Fstrong>一個 Bot Token 同時只能有一個活躍的 Claude Code session 連線。\u003C\u002Fp>\n\u003Ch2>前置準備\u003C\u002Fh2>\n\u003Col>\n\u003Cli>前往 \u003Ca href=\"https:\u002F\u002Fdiscord.com\u002Fdevelopers\u002Fapplications\">Discord Developer Portal\u003C\u002Fa> 點選 \u003Cstrong>New Application\u003C\u002Fstrong> 並命名\u003C\u002Fli>\n\u003Cli>在 Bot 頁面建立 username，點選 \u003Cstrong>Reset Token\u003C\u002Fstrong> 並複製 Token\u003C\u002Fli>\n\u003Cli>開啟以下 Privileged Gateway Intents：\n\u003Cul>\n\u003Cli>\u003Cstrong>Message Content Intent\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>使用 OAuth2 &gt; URL Generator 產生邀請連結，勾選 \u003Ccode>bot\u003C\u002Fcode> scope，並給予以下權限：\n\u003Cul>\n\u003Cli>View Channels\u003C\u002Fli>\n\u003Cli>Send Messages\u003C\u002Fli>\n\u003Cli>Send Messages in Threads\u003C\u002Fli>\n\u003Cli>Read Message History\u003C\u002Fli>\n\u003Cli>Attach Files\u003C\u002Fli>\n\u003Cli>Add Reactions\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>開啟產生的 URL，將 Bot 邀請到你的 Discord 伺服器\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch2>設定步驟\u003C\u002Fh2>\n\u003Ch3>Step 1：安裝插件\u003C\u002Fh3>\n\u003Cp>在 Claude Code 中執行：\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002Fplugin install discord@claude-plugins-official\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cblockquote>\n\u003Cp>若提示找不到插件，先執行：\u003Cbr \u002F>\u003Ccode>\u002Fplugin marketplace update claude-plugins-official\u003C\u002Fcode>\u003Cbr \u002F>或若尚未新增：\u003Ccode>\u002Fplugin marketplace add anthropics\u002Fclaude-plugins-official\u003C\u002Fcode>\u003Cbr \u002F>再重新安裝。\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>安裝後執行 \u003Ccode>\u002Freload-plugins\u003C\u002Fcode> 啟用插件的 configure 指令。\u003C\u002Fp>\n\u003Ch3>Step 2：設定 Bot Token\u003C\u002Fh3>\n\u003Cp>執行 configure 指令並帶入先前複製的 Token：\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002Fdiscord:configure &lt;token&gt;\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Token 會被儲存到 \u003Ccode>~\u002F.claude\u002Fchannels\u002Fdiscord\u002F.env\u003C\u002Fcode>。也可以在啟動 Claude Code 前，在 shell 環境中設定 \u003Ccode>DISCORD_BOT_TOKEN\u003C\u002Fcode> 變數。\u003C\u002Fp>\n\u003Ch3>Step 3：以 channels 模式重新啟動\u003C\u002Fh3>\n\u003Cp>退出 Claude Code，並以 \u003Ccode>--channels\u003C\u002Fcode> 參數重新啟動，讓 Discord 插件建立連線：\u003C\u002Fp>\n\u003Cpre>\u003Ccode>claude --channels plugin:discord@claude-plugins-official\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Step 4：配對帳號（DM Pairing）\u003C\u002Fh3>\n\u003Cp>在 Discord 上傳送 DM（私訊）給你的 Bot，Bot 會回傳一組配對碼。\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>若 Bot 沒有回應，請確認 Claude Code 是否有以 \u003Ccode>--channels\u003C\u002Fcode> 啟動。\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>回到 Claude Code，執行：\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002Fdiscord:access pair &lt;code&gt;\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>鎖定存取權限，讓只有你的帳號可以觸發：\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002Fdiscord:access policy allowlist\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Step 5：設定伺服器頻道（可選）\u003C\u002Fh3>\n\u003Cp>若要使用伺服器頻道而非 DM：\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002Fdiscord:access group add &lt;頻道ID&gt;\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>預設 \u003Ccode>requireMention: true\u003C\u002Fcode>（需要 @Bot 才觸發），加 \u003Ccode>--no-mention\u003C\u002Fcode> 可關閉：\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002Fdiscord:access group add &lt;頻道ID&gt; --no-mention\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>取得頻道 ID：\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>Discord 設定 → 進階 → 開啟「開發者模式」\u003C\u002Fli>\n\u003Cli>對文字頻道右鍵 → 「複製頻道 ID」\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch2>access.json 結構說明\u003C\u002Fh2>\n\u003Cp>檔案位置：\u003Ccode>~\u002F.claude\u002Fchannels\u002Fdiscord\u002Faccess.json\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cpre>\u003Ccode>{\n  \"dmPolicy\": \"allowlist\",\n  \"allowFrom\": [\"使用者ID\"],\n  \"groups\": {\n    \"頻道ID\": {\n      \"requireMention\": false,\n      \"allowFrom\": []\n    }\n  },\n  \"pending\": {}\n}\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>欄位\u003C\u002Fth>\n\u003Cth>說明\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>\u003Ccode>dmPolicy\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>DM 政策：\u003Ccode>pairing\u003C\u002Fcode>（配對碼）\u002F \u003Ccode>allowlist\u003C\u002Fcode>（白名單）\u002F \u003Ccode>disabled\u003C\u002Fcode>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>allowFrom\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>允許 DM 的使用者 ID 列表\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>groups\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>伺服器頻道設定，key 為頻道 ID\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>groups.requireMention\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>\u003Ccode>true\u003C\u002Fcode>=需要 @Bot 才回應，\u003Ccode>false\u003C\u002Fcode>=所有訊息都回應\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>groups.allowFrom\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>該頻道允許觸發的使用者 ID，空陣列=所有人都可以\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>pending\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>等待配對確認的請求\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Ch2>已知問題\u003C\u002Fh2>\n\u003Ch3>DM 頻道無法回覆\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>現象：\u003C\u002Fstrong>Bot 可以收到 DM 訊息，但無法回覆，錯誤訊息為 \u003Ccode>channel is not allowlisted\u003C\u002Fcode>。\u003C\u002Fp>\n\u003Cp>\u003Cstrong>原因：\u003C\u002Fstrong>Discord 插件的 outbound gate 使用 \u003Ccode>ch.recipientId\u003C\u002Fcode> 檢查 DM 頻道權限，但 Discord.js 的 partial channel 機制可能導致此值為 \u003Ccode>undefined\u003C\u002Fcode>，使得權限檢查失敗。Inbound gate 則使用 \u003Ccode>msg.author.id\u003C\u002Fcode>，所以收訊正常。\u003C\u002Fp>\n\u003Cp>\u003Cstrong>解法：\u003C\u002Fstrong>使用伺服器（Guild）頻道而非 DM 頻道。伺服器頻道透過 \u003Ccode>groups\u003C\u002Fcode> 設定檢查，不受此問題影響。\u003C\u002Fp>\n\u003Ch2>常用指令參考\u003C\u002Fh2>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>指令\u003C\u002Fth>\n\u003Cth>說明\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>\u003Ccode>\u002Fplugin install discord@claude-plugins-official\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>安裝 Discord 插件\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>\u002Fdiscord:configure &lt;token&gt;\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>設定 Bot Token\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>\u002Fdiscord:access\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>查看目前存取狀態\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>\u002Fdiscord:access pair &lt;code&gt;\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>確認配對碼\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>\u002Fdiscord:access policy &lt;mode&gt;\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>設定 DM 政策（pairing\u002Fallowlist\u002Fdisabled）\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>\u002Fdiscord:access group add &lt;頻道ID&gt;\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>新增伺服器頻道\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>\u002Fdiscord:access group add &lt;頻道ID&gt; --no-mention\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>新增頻道（不需 @Bot）\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>\u002Fdiscord:access group rm &lt;頻道ID&gt;\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>移除頻道\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>\u002Fdiscord:access allow &lt;使用者ID&gt;\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>新增 DM 白名單\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>\u002Fdiscord:access remove &lt;使用者ID&gt;\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>移除 DM 白名單\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>\u002Fdiscord:access set requireMention false\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>關閉 @Bot 需求\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n","2026-08-12T00:15:24","",{"name":12,"link":10},"橫隔膜",[14],{"name":15,"slug":16},"AI","ai","\u002Fblog\u002F筆記-claude-code-discord-串接設定紀錄",2]