コマンド権限設定の使い方(全機能共通)
BotShade のほとんどの機能ページには、「コマンド権限設定」というセクションが用意されています。ここでは、その機能に含まれる コマンド(スラッシュコマンドやコンテキストメニュー)を 1 つずつ個別に管理 できます。
操作手順はどの機能でも同じで、機能ごとに「コマンドの名前」や「もともと必要な Discord 権限」が違うだけです。ベータ期間中は全ユーザーにプレミアムが付与されるため、コマンド権限設定はすべての機能で制限なく利用できます。
コマンド権限設定セクションとは
「コマンド権限設定」は、機能に含まれるコマンドの一覧を表示するセクションです。1 行が 1 つのコマンドに対応しており、行をクリックすると詳細設定が開きます。
各コマンドで設定できる項目:
- コマンド自体を使えるようにするか(有効 / 無効)
- BotShade 独自のきめ細かい権限判定を使うか(個別権限設定)
- 許可するロール・拒否するロール(ホワイト / ブラックロールリスト)
- 必要な Discord 権限の条件(ホワイト / ブラック権限リスト)
- Discord 標準の権限判定を無視して独自設定を強制するか(強制上書き)
各コマンドの行には、現在の状態を示すバッジ(「有効」「無効」「強制上書き」)が表示されます。
個別設定しない場合の最低 Discord 権限
詳細設定の上部には、コマンドによってこの枠が表示されます(表示されないコマンドもあります)。
これは、個別権限設定を使わなかった場合に、そのコマンドを実行するために最低限必要となる Discord の権限 を示しています。
- 権限が必要なコマンドでは、必要な権限の名前が並びます(複数ある場合は「 / 」で区切って表示されます)。
- 特別な権限が不要なコマンドでは「特別なDiscord権限は不要」と表示されます。
たとえばモデレーション機能の「キック」コマンドでは「Kick Members」、サーバー保護や認証など管理者向けのコマンドでは「Administrator」と表示されます。表示される権限名は Discord の権限名です。
コマンドを有効化する
詳細設定を開いて最初にある「コマンドを有効化」トグルで、そのコマンド自体を使えるようにするかどうかを切り替えます。
オフにするとサーバーの誰も(管理者を含めて)そのコマンドを使えなくなります。「特定のロールだけに使わせたい」「特定のロールだけ禁止したい」といった制御をしたい場合は、コマンドはオンのままにして「個別権限設定を有効化」を使ってください。
個別権限設定を有効化する
「個別権限設定を有効化」トグルは、権限判定の方式を切り替えるためのスイッチです。
- オフのとき: 通常どおり Discord の権限で判定されます(上で説明した「最低Discord権限」が使われます)。「詳細権限設定」の枠は表示されません。
- オンのとき: BotShade 独自の権限判定に切り替わり、下に「詳細権限設定」が表示されます。コマンドにもともと必要な Discord 権限(ベースライン)がある場合、それを満たさないメンバーはホワイトリストを確認する前に拒否されます。
詳細権限設定
「個別権限設定を有効化」をオンにすると、「詳細権限設定」という枠が表示されます。ここでは 4 種類のリストを使って、誰がコマンドを使えるかを細かく決められます。
| リスト | 役割 |
|---|---|
| 「ホワイトロールリスト」 | 許可するロールを指定します。リストに含まれるロールは常にアクセスが許可されます。 |
| 「ブラックロールリスト」 | 拒否するロールを指定します。リストに含まれるロールはアクセスが拒否されます。 |
| 「ホワイト権限リスト」 | 許可する権限条件を設定します。条件に一致するメンバーはアクセスが許可されます。 |
| 「ブラック権限リスト」 | 拒否する権限条件を設定します。条件に一致するメンバーはアクセスが拒否されます。 |
ホワイトロールリスト / ブラックロールリスト
ロールリストでは、ロールを選んでリストに追加していきます。
ロールを選ぶ
「ロールを追加...」と表示された選択欄から、追加したいロールを選びます。
「追加」ボタンをクリックする
選んだロールがリストに追加されます。
追加したロールを取り消す
追加済みロールのゴミ箱アイコンをクリックすると、リストから削除できます。
ホワイト権限リスト / ブラック権限リスト
権限リストでは、Discord の権限を組み合わせた「条件」を作成して、より細かく公開範囲を絞り込めます。1 つのリストに複数の条件を追加できます。
「条件を追加」をクリックする
リストの下にある「条件を追加」ボタンをクリックすると、新しい条件(「条件 #1」「条件 #2」…)が作られます。
モード(判定方法)を選ぶ
条件の中にある選択欄から、権限の判定方法を選びます。選べるモードは下の表を参照してください(AND / OR / STRICT / CONTAINS の 4 種類)。
各権限の許可・拒否を切り替える
条件には Discord の権限が一覧で並んでいます。使いたい権限のチェックボックスをオンにすると、その権限が条件に含まれます。さらに、権限名の横にあるバッジをクリックすると「許可」と「拒否」を切り替えられます。
不要な条件を削除する
条件のゴミ箱アイコンをクリックすると、その条件を丸ごと削除できます。
選べるモードは次の 4 種類です。
| モード | 意味 |
|---|---|
| 「AND (すべて必要)」 | 条件に含めたすべての権限を満たす場合に一致します。 |
| 「OR (いずれか1つ)」 | 条件に含めた権限のうち、いずれか 1 つを満たせば一致します。 |
| 「STRICT (完全一致)」 | 条件に指定した権限の状態と完全に一致する場合に一致します。 |
| 「CONTAINS (含む)」 | 条件に指定した権限を含んでいる場合に一致します。 |
各権限のバッジで「許可」「拒否」を切り替えます。
- 「許可」: その権限を「持っていること」を条件にします。
- 「拒否」: その権限を「持っていないこと」を条件にします。
指定できる Discord 権限の一覧
条件では次の Discord 権限を選べます。招待を作成 / メンバーをキック / メンバーをBAN / 管理者 / チャンネルの管理 / サーバーの管理 / リアクションの追加 / 監査ログの表示 / 優先スピーカー / 配信 / チャンネルの閲覧 / メッセージの送信 / TTS メッセージの送信 / メッセージの管理 / 埋め込みリンク / ファイルの添付 / メッセージ履歴の閲覧 / @everyone のメンション / 外部の絵文字の使用 / 接続 / 発言 / メンバーをミュート / メンバーのスピーカーをミュート / メンバーを移動 / ニックネームの変更 / ニックネームの管理 / ロールの管理 / Webhook の管理 / 絵文字・スタンプの管理 / メンバーをタイムアウト
Discord 権限より個別設定を優先(強制上書き)
詳細設定の一番下にある「Discord権限より個別設定を優先」トグルをオンにすると、ベースラインの Discord 権限や管理者バイパスを無視して、BotShade 独自の個別権限設定だけを強制的に適用 します。オンにしているコマンドには、行のバッジに「強制上書き」が表示されます。
強制上書きをオンにすると、管理者でもホワイトリストに含まれていなければ拒否され、逆に本来は強い Discord 権限が必要なコマンド(サーバー保護・認証・バックアップなど)でもホワイトリストのメンバーには許可されます。ホワイト/ブラックの設定内容を十分に確認してから使ってください。
強制上書きの確認ダイアログ
「Discord権限より個別設定を優先」を切り替えようとすると、「危険な権限上書きの確認」ダイアログが表示されます。設定はこのダイアログで確定するまで反映されません。
「個別権限設定を有効化」をオンにする
強制上書きトグルは、個別権限設定がオンのときだけ操作できます。まだオフの場合は先にオンにします。
「Discord権限より個別設定を優先」を切り替える
トグルを操作すると、「危険な権限上書きの確認」ダイアログが開きます。ダイアログには対象のコマンド名と、設定の影響に関する説明が表示されます。
「確定する」をクリックする
内容を確認し、問題なければ「確定する」ボタンをクリックします。これで強制上書きの設定が反映されます。
設定を保存する
コマンド権限設定で変更した内容は、機能ページ全体の保存操作で反映されます。変更後は、ページの保存ボタンから設定を保存してください。
実際の権限判定の流れ(優先順位)
メンバーがコマンドやコンテキストメニューを実行しようとすると、Bot は実行のたびに権限を判定します。判定は次の順序で行われ、先に一致したものが優先されます。
コマンドが有効かを確認する
「コマンドを有効化」がオフのコマンドは、ここで判定を打ち切り、誰が実行しても必ず拒否されます。以降のロール・権限判定は一切行われません。
管理者かどうかを確認する(管理者バイパス)
「Discord権限より個別設定を優先」がオフのコマンドでは、Discord の管理者権限を持つメンバーはこの時点で許可され、個別権限設定の内容に関わらずコマンドを実行できます。「Discord権限より個別設定を優先」がオンのコマンドでは、管理者も一般メンバーと同じ扱いになり、このバイパスは働きません。
ブラックリストを確認する(拒否が最優先)
ブラックロールリスト・ブラック権限リストに一致したメンバーは、この時点で拒否されます。判定はホワイトリストより先に行われるため、ホワイトとブラックの両方に該当するメンバーは拒否されます。
ホワイトリストを確認する
ホワイトロールリスト・ホワイト権限リストに一致したメンバーは許可されます。
既定(デフォルト)の判定にフォールバックする
どのリストにも一致しなかった場合は、そのコマンドの既定設定に従って許可・拒否が決まります。
常に実行できるコマンド(権限判定の対象外)
ごく一部のコマンドは、権限設定の内容に関わらず誰でも実行できるよう Bot 側で固定されています。次の 2 つが該当します。
/about— Bot の情報を表示するコマンド/reminder edit— リマインダーを編集するコマンド
これらのコマンドは、ホワイト/ブラックリストや既定設定に関わらず常に実行できます。
コンテキストメニューの既定の挙動
メッセージやユーザーを右クリックして使うコンテキストメニュー(例: 抽選を終了する、抽選をリロールする、投票を終了する)は、スラッシュコマンドと同じ権限判定の仕組みで制御されますが、既定では拒否寄り に設定されています。
- コンテキストメニューの既定はアクセスを拒否する設定です。ホワイトリストや必要な Discord 権限を満たさないメンバーは利用できません。
- 多くのコンテキストメニューには、もともと必要な Discord 権限(ベースライン)が決められています。たとえば抽選系の
抽選を終了するなどはサーバーの管理(Manage Server)、投票系の投票を終了するはメッセージの管理(Manage Messages)が必要です。「Discord権限より個別設定を優先」がオフの場合、これらの権限を満たさないメンバーはホワイトリストの確認前に拒否されます。
既定で有効・無効なコマンド
機能(コマンド)ごとに、最初から有効になっているか無効になっているかが異なります。
| 機能・コマンド | 既定の状態 |
|---|---|
モデレーション、ロールパネル、埋め込み、抽選、投票、リマインダー、情報、バックアップ、Economy、ミニゲーム、レベリング、ゲーミング系、/about | 有効 |
| チケット | 無効 |
| ウェルカムメッセージ | 無効 |
| MIQ(画像生成系)のコンテキストメニュー | 無効 |
チケットのコマンドは、仮に有効化しても既定はアクセスを拒否する設定になっており、加えてチャンネルの管理(Manage Channels)が必要です。利用するには有効化したうえで、ホワイトリストなどで使えるメンバーを明示的に許可してください。
表示されるメッセージ
権限が足りずに拒否された場合や、カスタムコマンドのクールダウン中には、本人にだけ見える(エフェメラルな)メッセージが表示されます。
| 状況 | 表示されるメッセージ |
|---|---|
| スラッシュコマンドの権限がないとき | Botの権限設定により、このコマンドを実行する権限がありません。 |
| コンテキストメニューの権限がないとき | Botの権限設定により、このコンテキストメニューを実行する権限がありません。 |
| カスタムコマンドの権限がないとき | Botの権限設定により、このコマンドを実行する権限がありません。 |
| カスタムコマンドがクールダウン中のとき | クールダウン中です。あと {remaining:.0f}秒 お待ちください。 |
クールダウンの判定は権限の判定より後に行われます。そのため、権限がなくて拒否されたメンバーにクールダウンのメッセージが表示されることはありません。
注意点・うまくいかないとき
- 許可したはずなのに使えない: ブラックリストはホワイトリストより先に判定されます。両方に該当するロール・権限がないか確認してください。
- コマンドが一切実行できない: 「コマンドを有効化」がオフになっていないか確認してください。オフのコマンドは管理者でも実行できません。
- 管理者なのに拒否される: そのコマンドで「Discord権限より個別設定を優先」がオンになっていると、管理者バイパスは働きません。
- コンテキストメニューが使えない: 既定は拒否寄りです。必要な Discord 権限(抽選系はサーバーの管理、投票系はメッセージの管理)を満たすか、ホワイトリストで許可してください。
- 権限リストの条件が効かない: AND モードは条件に含めたすべての権限を満たす必要があります。OR モードにすべきでないか確認してください。
カスタムコマンドの権限
ユーザーが作成したカスタムコマンドにも、コマンドごとに権限設定を持たせられます。実行時には、まずそのコマンド個別の権限設定が確認され、設定されていない場合はカスタムコマンド全体の共通設定にフォールバックします。どちらの設定も存在しない場合は、初期状態では実行が許可されます。
カスタムコマンドでも個別に「Discord権限より個別設定を優先」を有効にでき、その場合はそのコマンドに限って管理者バイパスが無効になります。
次のステップ / 関連ページ
最終更新: