Tools
思考レベル
機能
- 任意の受信本文内のインラインディレクティブ:
/t <level>、/think:<level>、または/thinking <level>。 - レベル(エイリアス):
off | minimal | low | medium | high | xhigh | adaptive | max- minimal → "think"
- low → "think hard"
- medium → "think harder"
- high → "ultrathink"(最大バジェット)
- xhigh → "ultrathink+"(GPT-5.2+ と Codex モデル、さらに Anthropic Claude Opus 4.7 effort)
- adaptive → プロバイダー管理の適応的思考(Anthropic/Bedrock 上の Claude 4.6、Anthropic Claude Opus 4.7、Google Gemini の動的思考でサポート)
- max → プロバイダー最大推論(Anthropic Claude Opus 4.7。Ollama はこれをネイティブの最高
thinkeffort にマップ) x-high、x_high、extra-high、extra high、extra_highはxhighにマップされます。highestはhighにマップされます。
- プロバイダーメモ:
- 思考メニューとピッカーはプロバイダープロファイル駆動です。Provider plugins は、バイナリの
onなどのラベルを含め、選択されたモデルの正確なレベルセットを宣言します。 adaptive、xhigh、maxは、それらをサポートするプロバイダー/モデルプロファイルでのみ提示されます。サポートされていないレベルの型付きディレクティブは、そのモデルの有効な選択肢とともに拒否されます。- 既存の保存済みの非サポートレベルは、プロバイダープロファイルのランクで再マップされます。
adaptiveは非適応モデルではmediumにフォールバックし、xhighとmaxは選択されたモデルでサポートされる最大の非offレベルにフォールバックします。 - Anthropic Claude 4.6 モデルは、明示的な思考レベルが設定されていない場合、デフォルトで
adaptiveになります。 - Anthropic Claude Opus 4.7 は適応的思考をデフォルトにしません。その API effort のデフォルトは、思考レベルを明示的に設定しない限り、引き続きプロバイダー所有です。
- Anthropic Claude Opus 4.7 は
/think xhighを適応的思考とoutput_config.effort: "xhigh"にマップします。これは、/thinkが思考ディレクティブであり、xhighが Opus 4.7 の effort 設定であるためです。 - Anthropic Claude Opus 4.7 は
/think maxも公開します。これは同じプロバイダー所有の最大 effort パスにマップされます。 - 直接 DeepSeek V4 モデルは
/think xhigh|maxを公開します。どちらも DeepSeek のreasoning_effort: "max"にマップされ、低い非offレベルはhighにマップされます。 - OpenRouter 経由の DeepSeek V4 モデルは
/think xhighを公開し、OpenRouter がサポートするreasoning_effort値を送信します。保存済みのmaxオーバーライドはxhighにフォールバックします。 - Ollama の思考対応モデルは
/think low|medium|high|maxを公開します。maxはネイティブのthink: "high"にマップされます。Ollama のネイティブ API はlow、medium、highの effort 文字列を受け付けるためです。 - OpenAI GPT モデルは、モデル固有の Responses API effort サポートを通じて
/thinkをマップします。/think offは、ターゲットモデルがサポートする場合にのみreasoning.effort: "none"を送信します。それ以外の場合、OpenClaw はサポートされない値を送るのではなく、無効化された推論ペイロードを省略します。 - カスタム OpenAI 互換カタログエントリは、
models.providers.<provider>.models[].compat.supportedReasoningEffortsに"xhigh"を含めることで/think xhighを有効にできます。これは送信時の OpenAI 推論 effort ペイロードをマップするものと同じ compat メタデータを使うため、メニュー、セッション検証、エージェント CLI、llm-taskがトランスポート動作と一致します。 - 古い設定済み OpenRouter Hunter Alpha 参照は、プロキシ推論注入をスキップします。その廃止されたルートは、推論フィールド経由で最終回答テキストを返す可能性があったためです。
- Google Gemini は
/think adaptiveを Gemini のプロバイダー所有の動的思考にマップします。Gemini 3 リクエストは固定のthinkingLevelを省略し、Gemini 2.5 リクエストはthinkingBudget: -1を送信します。固定レベルは引き続き、そのモデルファミリーに最も近い Gemini のthinkingLevelまたはバジェットにマップされます。 - Anthropic 互換ストリーミングパス上の MiniMax(
minimax/*)は、モデルパラメーターまたはリクエストパラメーターで思考を明示的に設定しない限り、デフォルトでthinking: { type: "disabled" }になります。これにより、MiniMax の非ネイティブ Anthropic ストリーム形式からreasoning_contentデルタが漏れるのを避けます。 - Z.AI(
zai/*)はバイナリ思考(on/off)のみをサポートします。任意の非offレベルはonとして扱われます(lowにマップ)。 - Moonshot(
moonshot/*)は/think offをthinking: { type: "disabled" }に、任意の非offレベルをthinking: { type: "enabled" }にマップします。思考が有効な場合、Moonshot はtool_choiceのauto|noneのみを受け付けます。OpenClaw は互換性のない値をautoに正規化します。
- 思考メニューとピッカーはプロバイダープロファイル駆動です。Provider plugins は、バイナリの
解決順序
- メッセージ上のインラインディレクティブ(そのメッセージにのみ適用)。
- セッションオーバーライド(ディレクティブのみのメッセージを送信して設定)。
- エージェントごとのデフォルト(設定内の
agents.list[].thinkingDefault)。 - グローバルデフォルト(設定内の
agents.defaults.thinkingDefault)。 - フォールバック: 利用可能な場合はプロバイダー宣言のデフォルト。それ以外の場合、推論対応モデルは
mediumまたはそのモデルで最も近いサポート済みの非offレベルに解決され、非推論モデルはoffのままです。
セッションデフォルトの設定
- ディレクティブのみのメッセージを送信します(空白は許可)。例:
/think:mediumまたは/t high。 - これは現在のセッションに固定されます(デフォルトでは送信者ごと)。
/think:offまたはセッションアイドルリセットでクリアされます。 - 確認返信が送信されます(
Thinking level set to high./Thinking disabled.)。レベルが無効な場合(例:/thinking big)、コマンドはヒントとともに拒否され、セッション状態は変更されません。 - 現在の思考レベルを確認するには、引数なしで
/think(または/think:)を送信します。
エージェントごとの適用
- 組み込み Pi: 解決されたレベルはインプロセス Pi エージェントランタイムに渡されます。
- Claude CLI バックエンド:
claude-cliを使用している場合、非 off レベルは--effortとして Claude Code に渡されます。CLI バックエンドを参照してください。
高速モード(/fast)
- レベル:
on|off。 - ディレクティブのみのメッセージはセッションの高速モードオーバーライドを切り替え、
Fast mode enabled./Fast mode disabled.と返信します。 - 現在有効な高速モード状態を確認するには、モードなしで
/fast(または/fast status)を送信します。 - OpenClaw は高速モードを次の順序で解決します:
- インライン/ディレクティブのみの
/fast on|off - セッションオーバーライド
- エージェントごとのデフォルト(
agents.list[].fastModeDefault) - モデルごとの設定:
agents.defaults.models["<provider>/<model>"].params.fastMode - フォールバック:
off
- インライン/ディレクティブのみの
openai/*では、高速モードはサポートされる Responses リクエストでservice_tier=priorityを送信することで OpenAI の優先処理にマップされます。openai-codex/*では、高速モードは Codex Responses で同じservice_tier=priorityフラグを送信します。OpenClaw は両方の認証パスで共有される 1 つの/fastトグルを維持します。- OAuth 認証済みで
api.anthropic.comに送信されるトラフィックを含む、直接公開のanthropic/*リクエストでは、高速モードは Anthropic サービスティアにマップされます。/fast onはservice_tier=autoを設定し、/fast offはservice_tier=standard_onlyを設定します。 - Anthropic 互換パス上の
minimax/*では、/fast on(またはparams.fastMode: true)はMiniMax-M2.7をMiniMax-M2.7-highspeedに書き換えます。 - 明示的な Anthropic の
serviceTier/service_tierモデルパラメーターは、両方が設定されている場合に高速モードのデフォルトを上書きします。OpenClaw は引き続き、非 Anthropic プロキシベース URL では Anthropic サービスティア注入をスキップします。 /statusは高速モードが有効な場合にのみFastを表示します。
詳細ディレクティブ(/verbose または /v)
- レベル:
on(最小) |full|off(デフォルト)。 - ディレクティブのみのメッセージはセッション詳細を切り替え、
Verbose logging enabled./Verbose logging disabled.と返信します。無効なレベルは状態を変更せずにヒントを返します。 /verbose offは明示的なセッションオーバーライドを保存します。Sessions UI でinheritを選択してクリアします。- インラインディレクティブはそのメッセージにのみ影響します。それ以外の場合はセッション/グローバルデフォルトが適用されます。
- 現在の詳細レベルを確認するには、引数なしで
/verbose(または/verbose:)を送信します。 - 詳細がオンの場合、構造化ツール結果を発行するエージェント(Pi、その他の JSON エージェント)は、各ツール呼び出しを独自のメタデータのみメッセージとして返し、利用可能な場合は
<emoji> <tool-name>: <arg>が先頭に付きます。これらのツール要約は、各ツールが開始されるとすぐに送信されます(別々のバブル)。ストリーミングデルタとしてではありません。 - ツール失敗要約は通常モードでも表示されたままですが、生のエラー詳細サフィックスは詳細が
onまたはfullでない限り非表示になります。 - 詳細が
fullの場合、ツール出力も完了後に転送されます(別バブル、安全な長さに切り詰め)。実行中に/verbose on|full|offを切り替えると、以降のツールバブルは新しい設定に従います。 agents.defaults.toolProgressDetailは/verboseツール要約と進行状況ドラフトのツール行の形を制御します。🛠️ Exec: checking JS syntaxのようなコンパクトな人間向けラベルには"explain"(デフォルト)を使用します。デバッグのために生のコマンド/詳細も追加したい場合は"raw"を使用します。エージェントごとのagents.list[].toolProgressDetailはデフォルトを上書きします。explain:🛠️ Exec: check JS syntax for /tmp/app.jsraw:🛠️ Exec: check JS syntax for /tmp/app.js, node --check /tmp/app.js
Plugin トレースディレクティブ(/trace)
- レベル:
on|off(デフォルト)。 - ディレクティブのみのメッセージはセッション Plugin トレース出力を切り替え、
Plugin trace enabled./Plugin trace disabled.と返信します。 - インラインディレクティブはそのメッセージにのみ影響します。それ以外の場合はセッション/グローバルデフォルトが適用されます。
- 現在のトレースレベルを確認するには、引数なしで
/trace(または/trace:)を送信します。 /traceは/verboseより範囲が狭く、Active Memory デバッグ要約など Plugin 所有のトレース/デバッグ行のみを公開します。- トレース行は
/status内、および通常のアシスタント返信後のフォローアップ診断メッセージとして表示されることがあります。
推論の可視性(/reasoning)
- レベル:
on|off|stream。 - ディレクティブのみのメッセージは、思考ブロックを返信に表示するかどうかを切り替えます。
- 有効な場合、推論は
Reasoning:が先頭に付いた別メッセージとして送信されます。 stream(Telegram のみ): 返信生成中に推論を Telegram のドラフトバブルへストリーミングし、その後、推論なしで最終回答を送信します。- エイリアス:
/reason。 - 現在の推論レベルを確認するには、引数なしで
/reasoning(または/reasoning:)を送信します。 - 解決順序: インラインディレクティブ、次にセッションオーバーライド、次にエージェントごとのデフォルト(
agents.list[].reasoningDefault)、次にフォールバック(off)。
不正なローカルモデル推論タグは保守的に処理されます。閉じられた <think>...</think> ブロックは通常の返信では非表示のままであり、すでに表示されたテキストの後の閉じられていない推論も非表示になります。返信全体が単一の閉じられていない開始タグで囲まれており、そのままでは空テキストとして配信される場合、OpenClaw は不正な開始タグを削除し、残りのテキストを配信します。
関連
- 昇格モードのドキュメントは昇格モードにあります。
Heartbeats
- Heartbeat プローブ本文は設定済みの Heartbeat プロンプトです(デフォルト:
Read HEARTBEAT.md if it exists (workspace context). Follow it strictly. Do not infer or repeat old tasks from prior chats. If nothing needs attention, reply HEARTBEAT_OK.)。Heartbeat メッセージ内のインラインディレクティブは通常どおり適用されます(ただし Heartbeat からセッションデフォルトを変更することは避けてください)。 - Heartbeat 配信はデフォルトで最終ペイロードのみです。別の
Reasoning:メッセージも送信するには(利用可能な場合)、agents.defaults.heartbeat.includeReasoning: trueまたはエージェントごとのagents.list[].heartbeat.includeReasoning: trueを設定します。
Web チャット UI
- Web チャットの思考セレクターは、ページ読み込み時に受信セッションストア/設定からセッションの保存済みレベルを反映します。
- 別のレベルを選択すると、
sessions.patch経由でセッションオーバーライドが即座に書き込まれます。次の送信を待たず、1 回限りのthinkingOnceオーバーライドでもありません。 - 最初の選択肢は常に
Default (<resolved level>)です。解決済みデフォルトは、アクティブなセッションモデルのプロバイダー思考プロファイルと、/statusおよびsession_statusが使用するものと同じフォールバックロジックから得られます。 - ピッカーは Gateway セッション行/デフォルトから返される
thinkingLevelsを使用し、thinkingOptionsはレガシーラベルリストとして保持されます。ブラウザー UI は独自のプロバイダー正規表現リストを保持しません。モデル固有のレベルセットは plugins が所有します。 /think:<level>は引き続き機能し、同じ保存済みセッションレベルを更新するため、チャットディレクティブとピッカーは同期されたままです。
プロバイダープロファイル
- プロバイダーPluginは、モデルがサポートするレベルとデフォルトを定義するために
resolveThinkingProfile(ctx)を公開できます。 - Claude モデルをプロキシするプロバイダーPluginは、直接 Anthropic とプロキシのカタログの整合性を保つため、
openclaw/plugin-sdk/provider-model-sharedのresolveClaudeThinkingProfile(modelId)を再利用する必要があります。 - 各プロファイルレベルには、保存される正規の
id(off、minimal、low、medium、high、xhigh、adaptive、またはmax)があり、表示用のlabelを含めることができます。バイナリープロバイダーは{ id: "low", label: "on" }を使用します。 - 明示的な thinking オーバーライドを検証する必要があるツールPluginは、
api.runtime.agent.resolveThinkingPolicy({ provider, model })とapi.runtime.agent.normalizeThinkingLevel(...)を使用する必要があります。独自のプロバイダー/モデルのレベル一覧を保持するべきではありません。 - 構成済みのカスタムモデルメタデータにアクセスできるツールPluginは、
resolveThinkingPolicyにcatalogを渡すことで、compat.supportedReasoningEffortsのオプトインをPlugin側の検証に反映できます。 - 公開済みのレガシーフック(
supportsXHighThinking、isBinaryThinking、およびresolveDefaultThinkingLevel)は互換アダプターとして残りますが、新しいカスタムレベルセットではresolveThinkingProfileを使用する必要があります。 - Gateway 行/デフォルトは
thinkingLevels、thinkingOptions、およびthinkingDefaultを公開するため、ACP/チャットクライアントはランタイム検証で使用されるものと同じプロファイル ID とラベルを表示します。