Discord は Sentō で最も一般的なチャンネルです。新しいエージェントの推奨スタート地点。

Bot を作成

  1. discord.com/developers/applications
  2. New Application → 名前を付ける(任意 — 実際のエージェント名は sento init で後から設定)
  3. Bot タブ → Reset Token → コピー。パスワードマネージャに保存。
  4. Privileged Gateway Intents:Message Content IntentServer Members Intent を有効化。
  5. OAuth2 → URL Generator:scope bot、権限:View Channels、Send Messages、Send Messages in Threads、Read Message History、Attach Files、Add Reactions。生成された URL をコピー、ブラウザで開き、サーバーに bot を追加。

Server ID を見つける

  1. Discord → Settings → Advanced → Developer Mode ON
  2. サーバー名を右クリック → 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 にのみ返信)、opendisabled
  • 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.jsongroups にエントリを追加 — sento コマンドは不要、プラグインが受信メッセージごとにファイルを読み直します。