Discord は Sentō で最も一般的なチャンネルです。新しいエージェントの推奨スタート地点。
Bot を作成
- discord.com/developers/applications へ
- New Application → 名前を付ける(任意 — 実際のエージェント名は
sento initで後から設定) - Bot タブ → Reset Token → コピー。パスワードマネージャに保存。
- Privileged Gateway Intents:Message Content Intent と Server Members Intent を有効化。
- OAuth2 → URL Generator:scope
bot、権限:View Channels、Send Messages、Send Messages in Threads、Read Message History、Attach Files、Add Reactions。生成された URL をコピー、ブラウザで開き、サーバーに bot を追加。
Server ID を見つける
- Discord → Settings → Advanced → Developer Mode ON
- サーバー名を右クリック → Copy Server ID
sento init でトークンと server ID の両方を貼り付けます。
アクセス制御
Discord プラグインは ~/.claude/channels/discord/access.json の設定を尊重します:
{
"dmPolicy": "allowlist",
"allowFrom": [],
"groups": {
"<server-idまたはchannel-id>": { "requireMention": false, "allowFrom": [] }
}
}
- dmPolicy:
pairing(デフォルト — 未知の送信者に 5 文字コードで返信、オーナー承認待ち)、allowlist(リストのユーザー ID にのみ返信)、open、disabled。 - groups:サーバー単位またはチャンネル単位のポリシー。
requireMention: trueで bot は @ メンションされた時のみ応答。
詳細:アクセス制御のコンセプト。
よくある落とし穴
- Bot がオフライン表示:
sento restart、30 秒待つ。まだオフラインなら、sento logs -n 50で認証エラーを確認。 - 「Message Content Intent」エラー:Developer Portal で intent を有効化していない。戻って ON に。
- エージェントが応答しない:bot がその特定のチャンネルで View Channel + Send Messages 権限を持っていない。チャンネル右クリック → Edit Channel → Permissions → bot のロールを追加。
マルチサーバー + マルチチャンネル
Discord プラグインは複数のサーバーとチャンネルごとのルールをサポート。access.json の groups にエントリを追加 — sento コマンドは不要、プラグインが受信メッセージごとにファイルを読み直します。