メインコンテンツへスキップ
Gateway は、/ で始まる単独メッセージとして送信されたコマンドを処理します。 ホスト専用の bash コマンドは ! <cmd> を使用します(/bash <cmd> はエイリアスです)。 会話が ACP セッションにバインドされている場合、通常のテキストは ACP ハーネスにルーティングされます。Gateway 管理コマンドはローカルのままです。/acp ... は常に OpenClaw コマンドハンドラーに届き、サーフェスでコマンド処理が有効な場合は /status/unfocus もローカルのままです。

3 種類のコマンド

Commands

Gateway によって処理される単独の /... メッセージです。メッセージ内の 唯一の内容として送信する必要があります。

Directives

/think/fast/verbose/trace/reasoning/elevated/exec/model/queue — モデルが見る前にメッセージから取り除かれます。 単独で送信された場合はセッション設定を保持し、他のテキストと一緒に送信された場合は インラインのヒントとして動作します。

Inline shortcuts

/help/commands/status/whoami — 即座に実行され、 モデルが残りのテキストを見る前に取り除かれます。許可された送信者のみ。
  • ディレクティブは、モデルが見る前にメッセージから取り除かれます。
  • ディレクティブのみのメッセージ(メッセージがディレクティブのみ)の場合、 セッションに保持され、確認応答を返します。
  • 他のテキストを含む通常のチャットメッセージでは、インラインのヒントとして動作し、 セッション設定は保持されません
  • ディレクティブは許可された送信者にのみ適用されます。commands.allowFrom が設定されている場合、それが使用される唯一の許可リストです。それ以外の場合、認可は チャンネルの許可リスト/ペアリングと commands.useAccessGroups から行われます。許可されていない 送信者の場合、ディレクティブはプレーンテキストとして扱われます。

設定

{
  commands: {
    native: "auto",
    nativeSkills: "auto",
    text: true,
    bash: false,
    bashForegroundMs: 2000,
    config: false,
    mcp: false,
    plugins: false,
    debug: false,
    restart: true,
    ownerAllowFrom: ["discord:123456789012345678"],
    ownerDisplay: "raw",
    ownerDisplaySecret: "${OWNER_ID_HASH_SECRET}",
    allowFrom: {
      "*": ["user1"],
      discord: ["user:123"],
    },
    useAccessGroups: true,
  },
}
commands.text
boolean
デフォルト:"true"
チャットメッセージ内の /... の解析を有効にします。ネイティブコマンドのないサーフェス (WhatsApp、WebChat、Signal、iMessage、Google Chat、Microsoft Teams)では、false に設定されていてもテキストコマンドは動作します。
commands.native
boolean | "auto"
デフォルト:"\"auto\""
ネイティブコマンドを登録します。自動: Discord/Telegram ではオン、Slack ではオフ。 ネイティブサポートのないプロバイダーでは無視されます。 channels.<provider>.commands.native でチャンネルごとに上書きします。Discord では、false にするとスラッシュコマンドの 登録をスキップします。以前に登録されたコマンドは、削除されるまで表示されたままになる場合があります。
commands.nativeSkills
boolean | "auto"
デフォルト:"\"auto\""
サポートされている場合、Skills コマンドをネイティブに登録します。自動: Discord/Telegram ではオン、Slack ではオフ。 channels.<provider>.commands.nativeSkills で上書きします。
commands.bash
boolean
デフォルト:"false"
! <cmd> でホストシェルコマンドを実行できるようにします(/bash <cmd> エイリアス)。 tools.elevated 許可リストが必要です。
commands.bashForegroundMs
number
デフォルト:"2000"
バックグラウンドモードに切り替えるまで bash が待機する時間です(0 は 即座にバックグラウンド化します)。
commands.config
boolean
デフォルト:"false"
/config を有効にします(openclaw.json の読み取り/書き込み)。オーナーのみ。
commands.mcp
boolean
デフォルト:"false"
/mcp を有効にします(mcp.servers 配下の OpenClaw 管理 MCP 設定の読み取り/書き込み)。オーナーのみ。
commands.plugins
boolean
デフォルト:"false"
/plugins を有効にします(Plugin の検出/ステータスに加え、インストールと有効化/無効化)。書き込みはオーナーのみ。
commands.debug
boolean
デフォルト:"false"
/debug を有効にします(ランタイム専用の設定上書き)。オーナーのみ。
commands.restart
boolean
デフォルト:"true"
/restart と Gateway 再起動ツールアクションを有効にします。
commands.ownerAllowFrom
string[]
オーナー専用コマンドサーフェス向けの明示的なオーナー許可リストです。 commands.allowFrom および DM ペアリングアクセスとは別です。
channels.<channel>.commands.enforceOwnerForCommands
boolean
デフォルト:"false"
チャンネルごとの設定: オーナー専用コマンドにオーナー ID を要求します。true の場合、 送信者は commands.ownerAllowFrom に一致するか、内部の operator.admin スコープを保持している必要があります。ワイルドカードの allowFrom エントリだけでは不十分です。
commands.ownerDisplay
"raw" | "hash"
システムプロンプト内で owner id をどのように表示するかを制御します。
commands.ownerDisplaySecret
string
commands.ownerDisplay: "hash" のときに使用される HMAC シークレットです。
commands.allowFrom
object
コマンド認可用のプロバイダーごとの allowlist です。設定すると、これはコマンドとディレクティブの 唯一の認可ソースになります。グローバルデフォルトには "*" を使用します。プロバイダー固有のキーはそれを上書きします。
commands.useAccessGroups
boolean
デフォルト:"true"
commands.allowFrom が設定されていない場合に、コマンドの allowlist/ポリシーを適用します。

コマンド一覧

コマンドは 3 つのソースから来ます。
  • Core 組み込み: src/auto-reply/commands-registry.shared.ts
  • 生成された dock コマンド: src/auto-reply/commands-registry.data.ts
  • Plugin コマンド: plugin registerCommand() 呼び出し
利用可否は、config フラグ、チャネルサーフェス、インストール済み/有効化済みの plugins によって決まります。

Core コマンド

コマンド説明
/new [model]現在のセッションをアーカイブし、新しいセッションを開始します
/reset [soft [message]]現在のセッションをその場でリセットします。soft はトランスクリプトを保持し、再利用された CLI バックエンドセッション id を破棄し、起動処理を再実行します
/name <title>現在のセッションに名前を付ける、または名前を変更します。タイトルを省略すると、現在の名前と提案が表示されます
/compact [instructions]セッションコンテキストをコンパクト化します。Compaction を参照してください
/stop現在の実行を中止します
/session idle <duration|off>スレッドバインディングのアイドル期限切れを管理します
/session max-age <duration|off>スレッドバインディングの最大経過時間による期限切れを管理します
/export-session [path]現在のセッションを HTML にエクスポートします。エイリアス: /export
/export-trajectory [path]現在のセッションの JSONL trajectory バンドルをエクスポートします。エイリアス: /trajectory
Control UI は入力された /new をインターセプトして、新しい dashboard セッションを作成して切り替えます。ただし、session.dmScope: "main" が設定されていて 現在の親が agent のメインセッションである場合は例外で、その場合 /new は メインセッションをその場でリセットします。入力された /reset は引き続き Gateway の その場でのリセットを実行します。固定されたセッションモデル選択をクリアしたい場合は /model default を使用してください。
コマンド説明
/think <level|default>thinking レベルを設定するか、セッションの上書きをクリアします。エイリアス: /thinking, /t
/verbose on|off|fullverbose 出力を切り替えます。エイリアス: /v
/trace on|off現在のセッションの plugin trace 出力を切り替えます
/fast [status|auto|on|off|default]fast モードを表示、設定、またはクリアします
/reasoning [on|off|stream]reasoning の表示を切り替えます。エイリアス: /reason
/elevated [on|off|ask|full]elevated モードを切り替えます。エイリアス: /elev
/exec host=<auto|sandbox|gateway|node> security=<deny|allowlist|full> ask=<off|on-miss|always> node=<id>exec デフォルトを表示または設定します
/login [codex|openai|openai-codex]プライベートチャットまたは Web UI セッションから Codex/OpenAI ログインをペアリングします。owner/admin のみ
/model [name|#|status]モデルを表示または設定します
/models [provider] [page] [limit=<n>|all]設定済み/認証利用可能なプロバイダーまたはモデルを一覧表示します
/queue <mode>active-run queue の動作を管理します。QueueQueue steering を参照してください
/steer <message>active run にガイダンスを注入します。エイリアス: /tellSteer を参照してください
  • /verbose はデバッグ用です。通常使用では off のままにしてください。
  • /trace は plugin 所有の trace/debug 行のみを表示します。通常の verbose な雑多な出力は off のままです。
  • /fast auto|on|off はセッションの上書きを永続化します。クリアするには Sessions UI の inherit オプションを使用してください。
  • /fast はプロバイダー固有です。OpenAI/Codex では service_tier=priority に対応し、直接の Anthropic リクエストでは service_tier=auto または standard_only に対応します。
  • /reasoning/verbose/trace はグループ設定ではリスクがあります。内部 reasoning や plugin diagnostics が表示される可能性があります。グループチャットでは off のままにしてください。
  • /model は新しいモデルを即座にセッションへ永続化します。
  • agent がアイドル状態の場合、次の実行ですぐに使用されます。
  • 実行中の場合、切り替えは保留としてマークされ、次のクリーンな再試行ポイントで適用されます。
コマンド説明
/skill <name> [input]名前で skill を実行します
/learn [request]現在の会話または名前付きソースから Skill Workshop を通じてレビュー可能な skill を 1 つ下書きします
/allowlist [list|add|remove] ...allowlist エントリを管理します。テキストのみ
/approve <id> <decision>exec または plugin approval prompts を解決します
/btw <question>セッションコンテキストを変更せずに副次的な質問をします。エイリアス: /sideBTW を参照してください
コマンド説明
/subagents list|log|info現在のセッションのサブエージェント実行を検査する
/acp spawn|cancel|steer|close|sessions|status|set-mode|set|cwd|permissions|timeout|model|reset-options|doctor|install|helpACP セッションとランタイムオプションを管理する。ランタイム制御には外部オーナーまたは内部 Gateway 管理者 ID が必要
/focus <target>現在の Discord スレッドまたは Telegram トピックをセッションターゲットにバインドする
/unfocus現在のスレッドバインドを削除する
/agents現在のセッションのスレッドバインド済みエージェントを一覧表示する
コマンド必要条件説明
/config show|get|set|unsetcommands.config: trueopenclaw.json を読み書きする。オーナー限定
/mcp show|get|set|unsetcommands.mcp: trueOpenClaw 管理の MCP サーバー設定を読み書きする。オーナー限定
/plugins list|inspect|show|get|install|enable|disablecommands.plugins: truePlugin 状態を検査または変更する。書き込みはオーナー限定。エイリアス: /plugin
/debug show|set|unset|resetcommands.debug: trueランタイム限定の設定オーバーライド。オーナー限定
/restartcommands.restart: true (デフォルト)OpenClaw を再起動する
/send on|off|inheritオーナー送信ポリシーを設定する
コマンド説明
/tts on|off|status|chat|latest|provider|limit|summary|audio|helpTTS を制御する。TTS を参照
/activation mention|alwaysグループの起動モードを設定する
/bash <command>ホストシェルコマンドを実行する。エイリアス: ! <command>commands.bash: true が必要
!poll [sessionId]バックグラウンドの bash ジョブを確認する
!stop [sessionId]バックグラウンドの bash ジョブを停止する

Dock コマンド

Dock コマンドは、アクティブなセッションの返信ルートを別のリンク済みチャンネルへ切り替えます。 セットアップとトラブルシューティングについては、チャンネルドッキング を参照してください。 ネイティブコマンド対応のチャンネル Plugin から生成されます:
  • /dock-discord (エイリアス: /dock_discord)
  • /dock-mattermost (エイリアス: /dock_mattermost)
  • /dock-slack (エイリアス: /dock_slack)
  • /dock-telegram (エイリアス: /dock_telegram)
Dock コマンドには session.identityLinks が必要です。送信元の送信者とターゲットピアは、 同じ ID グループに属している必要があります。

バンドル済み Plugin コマンド

コマンド説明
/dreaming [on|off|status|help]メモリ Dreaming を切り替える (オーナーまたは Gateway 管理者)。Dreaming を参照
/pair [qr|status|pending|approve|cleanup|notify]デバイスペアリングを管理する。ペアリング を参照
/phone status|arm ...|disarm高リスクの電話ノードコマンドを一時的に有効化する
/voice status|list|set <voiceId>Talk 音声設定を管理する。Discord ネイティブ名: /talkvoice
/card ...LINE リッチカードプリセットを送信する。LINE を参照
/codex <action> ...Codex アプリサーバーハーネスをバインド、誘導、検査する (status、threads、resume、model、fast、permissions、compact、review、mcp、skills など)。Codex ハーネス を参照
QQBot 限定: /bot-ping/bot-version/bot-help/bot-upgrade/bot-logs

スキルコマンド

ユーザーが呼び出せるスキルはスラッシュコマンドとして公開されます:
  • /skill <name> [input] は汎用エントリポイントとして常に動作します。
  • スキルは直接コマンドとして登録できます (例: OpenProse の /prose)。
  • ネイティブスキルコマンド登録は commands.nativeSkillschannels.<provider>.commands.nativeSkills で制御されます。
  • 名前は a-z0-9_ にサニタイズされます (最大 32 文字)。衝突した場合は数値サフィックスが付きます。
デフォルトでは、スキルコマンドは通常のリクエストとしてモデルにルーティングされます。Skills は command-dispatch: tool を宣言して、ツールへ直接ルーティングできます (決定的で、モデルは関与しません)。例: /prose (OpenProse Plugin) — OpenProse を参照してください。
Discord は、動的オプションと、必須引数が省略された場合のボタンメニューにオートコンプリートを使用します。 Telegram と Slack は、選択肢のあるコマンドにボタンメニューを表示します。 動的な選択肢はターゲットセッションのモデルに対して解決されるため、/think レベルのようなモデル 固有のオプションはセッションの /model オーバーライドに従います。

/tools: エージェントが現在使用できるもの

/tools はランタイム上の質問、つまりこのエージェントがこの 会話内で今すぐ使用できるものに答えます。静的な設定カタログではありません。
/tools         # compact view
/tools verbose # with short descriptions
結果はセッションスコープです。エージェント、チャンネル、スレッド、送信者の 認可、またはモデルを変更すると、出力が変わる場合があります。プロファイルとオーバーライドの編集には、 Control UI の Tools パネルまたは設定サーフェスを使用してください。

/model: モデル選択

/model             # show model picker
/model list        # same
/model 3           # select by number from picker
/model openai/gpt-5.4
/model opus@anthropic:default
/model default     # clear the session model selection
/model status      # detailed view with endpoint and API mode
Discord では、/model/models がプロバイダーとモデルのドロップダウンを備えた インタラクティブなピッカーを開きます。ピッカーは agents.defaults.models を尊重し、 provider/* エントリも含みます。

/config: ディスク上の設定書き込み

オーナー限定。デフォルトでは無効です — commands.config: true で有効化します。
/config show
/config show messages.responsePrefix
/config get messages.responsePrefix
/config set messages.responsePrefix="[openclaw]"
/config unset messages.responsePrefix
設定は書き込み前に検証されます。無効な変更は拒否されます。/config の更新は再起動後も保持されます。

/mcp: MCP サーバー設定

オーナー限定。デフォルトでは無効です — commands.mcp: true で有効化します。
/mcp show
/mcp show context7
/mcp set context7={"command":"uvx","args":["context7-mcp"]}
/mcp unset context7
/mcp は、埋め込みエージェントのプロジェクト設定ではなく、OpenClaw 設定に設定を保存します。

/debug: ランタイム限定のオーバーライド

オーナー限定。デフォルトでは無効です — commands.debug: true で有効化します。 オーバーライドは新しい設定読み取りに即時適用されますが、ディスクには書き込まれません
/debug show
/debug set messages.responsePrefix="[openclaw]"
/debug set channels.whatsapp.allowFrom=["+1555","+4477"]
/debug unset messages.responsePrefix
/debug reset

/plugins: Plugin 管理

書き込みはオーナー限定。デフォルトでは無効です — commands.plugins: true で有効化します。
/plugins
/plugins list
/plugin show context7
/plugins enable context7
/plugins disable context7
/plugins install ./path/to/plugin
/plugins enable|disable は Plugin 設定を更新し、新しいエージェントターン向けに Gateway Plugin ランタイムをホットリロードします。/plugins install は Plugin ソースモジュールが変更されたため、 管理対象 Gateway を自動的に再起動します。

/trace: Plugin トレース出力

/trace          # show current trace state
/trace on
/trace off
/trace は、完全な詳細モードなしで、セッションスコープの Plugin トレース/デバッグ行を表示します。 これは /debug (ランタイムオーバーライド) や /verbose (通常の ツール出力) を置き換えるものではありません。

/btw: 横道の質問

/btw は現在のセッションコンテキストに関する短い横道の質問です。エイリアス: /side
/btw what are we doing right now?
/side what changed while the main run continued?
通常のメッセージとは異なります:
  • 現在のセッションを背景コンテキストとして使用します。
  • Codex ハーネスセッションでは、一時的な Codex サイドスレッドとして実行されます。
  • 将来のセッションコンテキストを変更しません
  • トランスクリプト履歴には書き込まれません。
完全な挙動については、BTW 横道の質問 を参照してください。

サーフェスの注記

  • テキストコマンド: 通常のチャットセッションで実行されます (DM は main を共有し、グループは独自のセッションを持ちます)。
  • ネイティブ Discord コマンド: agent:<agentId>:discord:slash:<userId>
  • ネイティブ Slack コマンド: agent:<agentId>:slack:slash:<userId> (channels.slack.slashCommand.sessionPrefix でプレフィックスを設定可能)
  • ネイティブ Telegram コマンド: telegram:slash:<userId> (CommandTargetSessionKey 経由でチャットセッションをターゲットにします)
  • /login codex は、プライベートチャットまたは Web UI レスポンスパス経由でのみデバイスペアリングコードを送信します。Telegram グループ/トピックからの呼び出しでは、代わりにオーナーへボットに DM するよう求めます。
  • /stop は現在の実行を中止するためにアクティブなチャットセッションをターゲットにします。
channels.slack.slashCommand は単一の /openclaw 形式のコマンドをサポートします。 commands.native: true の場合、組み込みコマンドごとに Slack スラッシュコマンドを 1 つ作成します。 Slack は /status を予約しているため、/agentstatus (/status ではない) を登録します。 テキストの /status は Slack メッセージ内でも引き続き動作します。
  • 許可リストに含まれる送信者からのコマンドのみのメッセージは、即時処理されます (キュー + モデルをバイパス)。
  • インラインショートカット (/help/commands/status/whoami) は通常のメッセージに埋め込まれていても動作し、残りのテキストをモデルが見る前に取り除かれます。
  • 認可されていないコマンドのみのメッセージは黙って無視されます。インラインの /... トークンは通常のテキストとして扱われます。
  • コマンドは、コマンドと引数の間に任意の : を受け付けます (/think: high/send: on)。
  • /new <model> は、モデルエイリアス、provider/model、またはプロバイダー名 (あいまい一致) を受け付けます。一致しない場合、そのテキストはメッセージ本文として扱われます。
  • /allowlist add|remove には commands.config: true が必要で、チャンネルの configWrites を尊重します。

プロバイダー使用量とステータス

  • プロバイダー使用量/クォータ (例: 「Claude 80% left」) は、使用量追跡が有効な場合、現在のモデルプロバイダーについて /status に表示されます。
  • /statusトークン/キャッシュ行は、ライブセッションスナップショットが少ない場合、最新のトランスクリプト使用量エントリへフォールバックできます。
  • 実行とランタイム: /status は有効なサンドボックスパスを Execution として、セッションを実行している主体を Runtime として報告します: OpenClaw DefaultOpenAI Codex、CLI バックエンド、または ACP バックエンド。
  • レスポンスごとのトークン/コスト: /usage off|tokens|full で制御されます。
  • /model status はモデル/認証/エンドポイントに関するもので、使用量に関するものではありません。

関連

Skills

skill のスラッシュコマンドがどのように登録され、ゲートされるか。

スキルの作成

独自のスラッシュコマンドを登録する skill を構築します。

BTW

セッションコンテキストを変更せずに横道の質問をする。

Steer

/steer で実行中の agent を誘導します。