Thinking レベル(/think ディレクティブ)

機能

  • 任意のインバウンドボディ内のインラインディレクティブ:/t <level>/think:<level>、または /thinking <level>
  • レベル(エイリアス):off | minimal | low | medium | high | xhigh(GPT-5.2 + Codex モデルのみ)
    • minimal → "think"
    • low → "think hard"
    • medium → "think harder"
    • high → "ultrathink"(最大バジェット)
    • xhigh → "ultrathink+"(GPT-5.2 + Codex モデルのみ)
    • highestmaxhigh にマッピングされます。
  • プロバイダーの注意点:
    • Z.AI(zai/*)はバイナリ thinking(on/off)のみをサポートします。off 以外のレベルは on として扱われます(low にマッピング)。

解決順序

  1. メッセージ上のインラインディレクティブ(そのメッセージにのみ適用)。
  2. セッション上書き(ディレクティブのみのメッセージを送信して設定)。
  3. グローバルデフォルト(設定の agents.defaults.thinkingDefault)。
  4. フォールバック:推論可能なモデルの場合は low、それ以外は off。

セッションデフォルトの設定

  • ディレクティブ のみ のメッセージを送信します(空白は許可)。例:/think:medium または /t high
  • これは現在のセッション(デフォルトでは送信者ごと)に適用されます。/think:off またはセッションアイドルリセットでクリアされます。
  • 確認返信が送信されます(Thinking level set to high. / Thinking disabled.)。レベルが無効な場合(例:/thinking big)、コマンドは却下され、ヒントが表示され、セッション状態は変更されません。
  • /think(または /think:)を引数なしで送信すると、現在の thinking レベルが表示されます。

エージェントによる適用

  • Embedded Pi: 解決されたレベルはプロセス内 Pi エージェントランタイムに渡されます。

Verbose ディレクティブ(/verbose または /v)

  • レベル:on(minimal)| full | off(デフォルト)。
  • ディレクティブのみのメッセージはセッション verbose を切り替え、Verbose logging enabled. / Verbose logging disabled. と返信します。無効なレベルは状態を変更せずにヒントを返します。
  • /verbose off は明示的なセッション上書きを保存します。セッション UI で inherit を選択してクリアします。
  • インラインディレクティブはそのメッセージにのみ影響します。それ以外の場合はセッション/グローバルデフォルトが適用されます。
  • /verbose(または /verbose:)を引数なしで送信すると、現在の verbose レベルが表示されます。
  • verbose が on の場合、構造化されたツール結果を発行するエージェント(Pi、その他の JSON エージェント)は、各ツール呼び出しをメタデータのみのメッセージとして送り返し、利用可能な場合は <emoji> <tool-name>: <arg> というプレフィックスが付きます(path/command)。これらのツールサマリーは、各ツールが開始されるとすぐに送信されます(個別のバブル)。ストリーミングデルタとしてではありません。
  • verbose が full の場合、ツール出力も完了後に転送されます(個別のバブル、安全な長さに切り詰め)。実行中に /verbose on|full|off を切り替えると、後続のツールバブルは新しい設定を尊重します。

推論の可視性(/reasoning)

  • レベル:on|off|stream
  • ディレクティブのみのメッセージは、返信に thinking ブロックを表示するかどうかを切り替えます。
  • 有効にすると、推論は Reasoning: というプレフィックスが付いた 別のメッセージ として送信されます。
  • stream(Telegram のみ):返信の生成中に推論を Telegram のドラフトバブルにストリーミングし、推論なしで最終的な回答を送信します。
  • エイリアス:/reason
  • /reasoning(または /reasoning:)を引数なしで送信すると、現在の reasoning レベルが表示されます。

関連

  • エレベーテッドモードのドキュメントは Elevated mode にあります。

ハートビート

  • ハートビートプローブボディは設定されたハートビートプロンプトです(デフォルト: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.)。ハートビートメッセージ内のインラインディレクティブは通常どおり適用されます(ただし、ハートビートからセッションデフォルトを変更することは避けてください)。
  • ハートビート配信はデフォルトで最終ペイロードのみです。別の Reasoning: メッセージ(利用可能な場合)も送信するには、agents.defaults.heartbeat.includeReasoning: true または エージェントごとに agents.list[].heartbeat.includeReasoning: true を設定します。

Web チャット UI

  • Web チャット thinking セレクターは、ページ読み込み時にインバウンドセッションストア/設定からセッションの保存されたレベルをミラーリングします。
  • 別のレベルを選択すると、次のメッセージにのみ適用されます(thinkingOnce)。送信後、セレクターは保存されたセッションレベルに戻ります。
  • セッションデフォルトを変更するには、/think:<level> ディレクティブを(以前と同様に)送信します。セレクターは次のリロード後にそれを反映します。