Discord Bot Portal JP
逆引き 読了目安 約9分 更新 2026.07.03

discord.js 機能別逆引きガイド

discord.js v14 系で実装したいことから、使うクラスや考え方、公式ガイド、本サイトのトラブルシューティング記事を探せるように整理します。

この記事で分かること

  • やりたいことから discord.js の機能を探す方法
  • Interaction、メッセージ、サーバー操作の分け方
  • GatewayIntentBits、partials、権限で詰まりやすい箇所
  • 公式ガイドと本サイト記事の参照先

このページは、discord.js で「何を作りたいか」から参照先を探す逆引きです。使う機能と詰まりやすい点を整理します。

discord.js は、版によって import 名やクラス名、Intent 指定が変わります。古い記事の前に、利用中の版と公式ガイドを照らし合わせます。

Interaction と操作UI

スラッシュコマンド、ボタン、セレクトメニュー、モーダルは Interaction として扱います。登録処理、interactionCreate、応答方法、custom id を分けます。

やりたいこと使う機能・考え方参照先
スラッシュコマンドを作りたいSlashCommandBuilder、REST登録、guild/global の登録範囲discord.js guide: Slash Commands、Discord Application Commands、Interaction 逆引き
ボタンを押したら処理したいButtonBuilder、Action Row、custom id、interactionCreatediscord.js guide: Buttons、Discord Components、Interaction 逆引き
選択・入力を受けたいSelect menu、ModalBuilder、入力値検証、操作ユーザーの限定discord.js guide: Select menus/Modals、Discord Components & Modals、データとセキュリティ

Interaction は、処理に時間がかかる場合の応答方法と、結果を誰に見せるかが重要です。公開返信、本人だけに見せる返信、管理ログを機能ごとに分けます。

メッセージとチャンネル

メッセージ関連は、送信先、メンション、Embed、添付ファイル、削除権限で問題が分かれます。外部入力をそのまま本文やメンションに混ぜない設計が必要です。

やりたいこと使う機能・考え方参照先
送信・Embed・添付を扱いたいchannel send、EmbedBuilder、Allowed MentionsDiscord Message Resource、メッセージ逆引き
削除・編集したいManage Messages 権限、対象メッセージ、監査ログDiscord Permissions、メッセージ逆引き
リアクションを扱いたいreaction event、partials、cache、emoji の比較discord.js guide: Reactions/Partials、メッセージ逆引き

⚠️ @everyone、ロールメンション、ユーザー入力を含む通知は慎重に扱います。Allowed Mentions や入力検証を使い、意図しない大量通知を防ぎます。

サーバー管理

ロール付与、チャンネル作成、メンバー管理は、Bot の権限とロール階層に左右されます。型が合っていても、対象ロールや対象チャンネルに届かなければ失敗します。

やりたいこと使う機能・考え方参照先
ロールを付与・削除したいGuildMember、Role、Manage Roles、ロール階層Discord Permissions、サーバー管理逆引き
チャンネルを作りたいguild channel create、権限上書き、カテゴリDiscord Channel Resource、サーバー管理逆引き
参加案内やBAN/Kickを扱いたいguild member event、対象確認、理由、監査ログ、権限チェックDiscord Gateway/Guild、ライブラリ別トラブル

サーバー管理機能では、実行者、対象者、理由、結果をログへ残します。利用者へ詳細な内部情報を見せすぎないようにします。

運用補助と外部連携

定期実行、外部API、DB、Webhook は、Discord 以外の失敗要因も含みます。timeout、retry、再起動、秘密情報の扱いを先に決めます。

やりたいこと使う機能・考え方参照先
定期実行したいsetInterval、cron、重複防止、再起動時の扱いNode.js documentation、ホスティング逆引き
エラーを記録したいtry/catch、Promise rejection、利用者向け返信と管理ログエラー逆引き
DB・外部APIと連携したいfetch、timeout、retry、APIキー管理、個人情報の最小化データとセキュリティ

外部連携は失敗時の設計が重要です。重い処理は応答を保留するか処理を分け、二重実行を防ぎます。

確認ポイント

  • Intent と partials を説明できる
  • コマンド登録と Interaction 応答を別問題として見ている
  • 権限とロール階層をテストサーバーで試した
  • Token、Webhook URL、APIキーを公開していない

一次情報(公式ドキュメント)