← 所有文章
tutorialClaude CodeDiscord

複製這段給你的 AI,它會幫你建好 5 個 Claude Code Discord 協作 Bot

上一篇教你原理,這篇讓你直接複製貼上。
如果你已經有 Claude Code 和 Discord 帳號,把下面的指令貼給你的 Claude Code,它會一步步帶你完成設定。

前置作業:你自己要做的事

這些步驟 AI 沒辦法幫你,需要你手動完成:

  1. 到 Discord Developer Portal 建立 5 個 Application,每個拿到 Bot Token
  2. 每個 Application 開啟 Message Content Intent(Bot → Privileged Gateway Intents)
  3. 用 OAuth2 URL 把 5 個 bot 都邀請到同一個 Discord server
  4. 安裝 Discord plugin:在 Claude Code 裡輸入 /plugin install discord@claude-plugins-official
  5. 準備 5 個終端機(Replit 多 shell、tmux、或多個 terminal tab)
    拿到 5 個 token 和頻道 ID 後,就可以開始了。

第一段:貼給 Claude Code 建立目錄和設定

複製以下內容,把 token 和 ID 換成你自己的,貼到 Claude Code:

幫我建立 5 個 Discord bot 的設定目錄。以下是每個 bot 的 token 和共用的頻道 ID:

Bot 1 token: 「你的 bot1 token」
Bot 2 token: 「你的 bot2 token」
Bot 3 token: 「你的 bot3 token」
Bot 4 token: 「你的 bot4 token」
Bot 5 token: 「你的 bot5 token」

Discord 頻道 ID: 「你的頻道ID」
我的 Discord user ID: 「你的userID」

請執行以下任務:

  1. 建立 ~/.claude/channels/discord-bot-1 到 discord-bot-5 五個目錄
  2. 每個目錄放對應的 .env 檔(格式:DISCORD_BOT_TOKEN=xxx)
  3. 每個目錄建 access.json,內容包含:
    • dmPolicy: "pairing"
    • allowFrom: 所有 bot 的 user ID + 我的 user ID
    • groups: 頻道 ID,requireMention: false,allowFrom 同上

第二段:貼給 Claude Code 建立啟動腳本

幫我建立 5 個啟動腳本在 ~/bin/ 下,分別叫 bot1 到 bot5。

每個腳本的格式:

#!/bin/bash
export DISCORD_STATE_DIR=~/.claude/channels/discord-bot-N
exec claude --channels plugin:discord@claude-plugins-official --append-system-prompt "角色描述"

角色分配:

  • bot1:「開發」— 負責寫程式碼、修 bug、新功能
  • bot2:「審查」— 負責 code review,只找問題不修
  • bot3:「維護」— 系統健康度、清理、更新
  • bot4:「優化」— 流程、設定、結構精簡
  • bot5:「思考」— 決策、方向評估、反思

每個角色的 system prompt 要包含以下協作規則:

  • 沒有人 @ 你時,你可以回覆頻道訊息
  • 有人 @ 特定 bot 時,只有被 @ 的 bot 回覆,你不要插話
  • 你要跟其他 bot 對話時,一律用 @ 指定對象

建好後 chmod +x。


第三段:貼給 Claude Code 開啟 bot-to-bot 對話

Discord plugin 預設會過濾 bot 訊息,請修改:

檔案:~/.claude/plugins/marketplaces/claude-plugins-official/external_plugins/discord/server.ts

找到 if (msg.author.bot) return 這行,改成:
if (msg.author.id === client.user?.id) return

這樣 bot 之間可以互相對話,但不會回覆自己的訊息。


第四段:啟動

在 5 個終端機裡分別輸入:

Terminal 1: bot1
Terminal 2: bot2
Terminal 3: bot3
Terminal 4: bot4
Terminal 5: bot5
每個都應該看到 Listening for channel messages from: plugin:discord@claude-plugins-official
然後到 Discord 頻道裡試試 @ 其中一個 bot,它應該會回話。


常見問題

Q: 啟動後沒看到 Listening 文字?
確認你用的是 --channels plugin:discord@claude-plugins-official 而不是 --mcp-config。只有 --channels 才會啟用 channel 監聽。
Q: Bot 在 Discord 顯示在線但不回話?
檢查 Message Content Intent 是否開啟,以及 access.json 的 allowFrom 是否包含發訊息的人的 ID。
Q: Bot 之間互相 @ 但沒反應?
確認已經修改 server.ts 的 msg.author.bot 過濾,而且修改後有重啟 bot。
Q: 所有 bot 都搶著回話?
在 system prompt 裡加入「有人 @ 特定 bot 時只有被 @ 的回覆」的規則。

延伸閱讀

如果想知道背後的原理和踩坑經驗,看這篇:5 個 Claude Code 在 Discord 群組協作:多 Bot 團隊設定完整教學

← 所有文章OctoDock 首頁 →