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