メインコンテンツまでスキップ

インストール済みコーディングエージェントをチャットモデルとして使う

すでにコーディングエージェントを契約していて、Libre WebUI を実行しているマシン上でサインイン済みなら、別の API キーを追加せず通常のチャットからそのエージェントと対話できます。Libre WebUI はエージェントのコマンドラインインターフェイスを検出し、ほかのモデルと同じようにモデルセレクターへ表示します。

検出対象​

モデル一覧へのリクエストごとに、Libre WebUI はサーバーの PATH から次のコマンドを探します。

モデルコマンド提供元
Claude CodeclaudeAnthropic
CodexcodexOpenAI
OpenCodeopencodeSST
PipiMario Zechner

見つかったものは、モデルセレクターのエージェントグループに表示されます。Libre WebUI が代わりにインストールすることはなく、設定ファイルも必要ありません。サーバーのシェルでコマンドを実行できれば表示されます。

設定 → チャット → デフォルトでも、これらはエージェントとして識別され、アカウントが使える場合は Strands も含まれます。プラグインモデルは提供元名を保ち、Ollama ラベルは Ollama モデルだけに付きます。Ollama を無効にしても設定済みエージェントやプラグインは隠れません。モデル情報カードは表示名と提供元を示し、サイズ、系列、形式はカタログに情報がある場合だけ表示します。

CLI だけでなくモデルを選ぶ​

各 CLI は、エージェントグループに複数の項目を表示できます。

  • Claude Code は、サインイン済みの既定モデルに加えて Sonnet、Opus、Haiku を提供します。 明示的な Sonnet 5.5(claude-sonnet-5-5)と Opus 5.5(claude-opus-5-5)の選択肢も提供します。Sonnet 5.5 には Claude Code 2.1.284 以降、Opus 5.5 には Claude Code 2.1.280 以降が必要で、どちらもサインイン済みアカウントの利用権限が必要です。claude update を実行して CLI を更新してください。既存の Sonnet と Opus のエイリアスは、引き続き CLI の現在のモデルマッピングに従います。
  • Codex は、設定済みの既定モデルに加え、文書化された ChatGPT サインイン対応モデルファミリー、GPT-6 Astra、GPT-6.1 Sol (gpt-6.1-sol)、GPT-6 Sol、GPT-6 Luna、GPT-5.6 Sol、Terra、Luna、GPT-5.5、GPT-5.3 Codex Spark を提供します。 実際に利用できるかどうかは、CLI のサインイン状態とアカウントのモデル利用権限によって決まります。
  • Pi は、CLI 自体に設定されたモデルで実行します。
  • OpenCode は、認証済みの全プロバイダーのモデル(opencode models から取得)を一覧表示し、常に明示的な選択を求めます。CLI レベルの既定値が、Libre WebUI ホストから到達できないローカルサーバーを指している可能性があるためです。

組み込みの Strands エンジンも、アカウントが使える場合はエージェントグループに表示されます。これは CLI ではありません。バックエンド内で動作し、Ollama とプロバイダープラグインのモデルを動かします。単独の Strands 項目(strands)は既定のチャットモデルを使います。そのほかの項目(strands:<route>)は Strands · gpt-5.6-sol (Codex (ChatGPT)) のように利用可能なモデルごとに 1 つずつ表示され、その会話のモデルと提供元の両方を固定します。障害時に別の利用可能な提供元へ置き換えられることはありません。一覧の取得でエンジンが起動することはありません。

同じ Strands 項目は設定 → チャット → デフォルトの自動タイトル・推論要約のタスクモデルにも使えます。現在実行中のモデルを使用は会話に保存された Strands の選択を使います。これらの短いテキスト要求は基になるモデルを直接呼び、エージェントツールやセッションは使いません。他の CLI プロファイルでは、補助要求用に Ollama、プラグイン、Strands のタスクモデルが必要です。

Pi は各ターンをステートレス(--no-session)で実行し、ローカルツールを無効にして中立なシステムプロンプトを使います。そのため、返信がサーバーの OS ユーザー個人の Pi 設定に影響されたり、チャットがその設定に触れたりすることはありません。

使い方​

  1. 管理者としてサインインします。
  2. チャットを開始し、モデルセレクターを開きます。
  3. エージェントにある項目を選びます。
  4. 通常どおりメッセージを送信します。返信はトークン単位でストリーミングされます。

会話はほかのチャットと同じように保存されるため、いったん離れて後から再開したり、名前を変更したり、コマンドパレットから検索したりできます。各ターンでは直近の会話記録をエージェントに送り、回答をストリーミングで返します。

利用できるユーザーと到達可能な範囲​

この機能は管理者専用であり、それには重要な理由があります。エージェントは Work コンテナ内ではなく、ホスト上で Libre WebUI バックエンドと同じ OS ユーザーとして実行されます。そのため、そのユーザーのエージェント認証情報と、各エージェントが通常持つアクセス権を継承します。エージェントが必要と判断すれば、サーバー上のファイルを読んだりコマンドを実行したりする権限も含まれます。

有効化は、エージェントにマシンへのシェルアクセスを与えることと同等です。そのため既定では無効で、管理者が設定 → ユーザー管理 → アクセスとポリシー → エージェントCLIモデルで有効化する必要があります。設定は保存され、再起動なしで直ちに反映されます。

この切り替えを変更するとモデル一覧は即時更新されます。エージェントは直接 CLI 項目、プラグインモデルは Codex (ChatGPT) などのプロバイダー API 統合です。Strands も同じカテゴリーに表示されますが、この切り替えではなく独自の Strands エンジン のアクセス設定に従うため、エージェントCLIモデルがオフでも表示されることがあります。そのモデル検出が、インストール済み CLI エージェントの検出を妨げることはありません。

個別の CLI 設定を保存するまで、既存のインストールは従来保存したエージェントの有効状態を引き継ぎます。

実行時の切り替えに関係なくデプロイレベルで判断を固定するには、環境変数をどちらかの値に設定します(インターフェイス上の切り替えもロックされます)。

AGENT_CLI_MODELS_ENABLED=false # or true

ファイルを操作でき、サンドボックス内に留まるモデルが必要なら、代わりに Work を使ってください。Work はツール対応モデルを、隔離ワークスペースを備えた厳重に制限されたコンテナ内で実行します。

使用量の記録​

プロバイダー使用状況(/usage)を開き、上部近くのエージェントを確認してください。Claude Code、Codex、OpenCode、Pi、Strands に独立した項目があり、期間内に記録がなければ明示されます。

LWUI 経由の CLI 呼び出しは結果、所要時間、報告されたトークン数を記録します。呼び出しごとに 1 件のイベントを作り、重複したスナップショットやステップ報告でイベントやトークンが二重計上されることはありません。欠けた数値は未報告のままです。応答の停止はキャンセルとして記録し、一部のテキストが出ても CLI が異常終了すれば成功扱いにしません。LWUI 外の呼び出しは取り込みません。

Strands の呼び出しは Strands エージェントに集計されます。内訳と制限はエージェント使用量を参照してください。

設定​

変数既定値用途
AGENT_CLI_MODELS_ENABLED未設定機能を true/false に固定します。未設定なら管理者の切り替えに従います(既定ではオフ)。
AGENT_CLI_TIMEOUT_MS600000エージェントの 1 ターンを終了させるまで実行できる時間。

トラブルシューティング​

エージェントグループが表示されない。 設定 → ユーザー管理 → アクセスとポリシー → エージェントCLIモデルで有効化済みであること(既定では無効)、管理者としてログインしていることを確認してください。コマンドは対話シェルだけでなく、バックエンドプロセスの PATH に必要です。サービス管理機能、Docker コンテナー、デスクトップランチャーの PATH はログイン端末より狭い場合があります。

返信がすぐに失敗する。 サーバーユーザーとして同じコマンド(claude -p "hello" または codex exec "hello")を手動で実行してください。多くの場合、エージェントのログイン期限切れや、基盤となるサブスクリプションのレート制限が原因です。特に OpenCode は、プロバイダーのログイン期限切れを自身のログにしか表示しません。サーバーユーザーとして opencode auth login を再実行してください。

返信が途中で止まる。 長いターンが AGENT_CLI_TIMEOUT_MS に達した可能性があります。値を増やすか、依頼を小さな手順に分けてください。

関連ドキュメント​