LLMプラグイン
ミニオンは「LLMを内包したハーネス」であり、どのLLMを頭脳として使うかをユーザが選べます。プラグイン方式で Claude / Gemini / Codex を切り替え可能で、Primary LLM が必要に応じて他のLLM (子セッション) にタスクを委譲することもできます。
| 概念 | 役割 |
|---|---|
| Primary LLM | ミニオンの頭脳。ユーザのチャット、ワークフロー、ルーティンをすべて処理する |
| Child LLM | 専門タスクのために Primary が dispatch する子セッション。並列実行可能 |
| プラグイン | 各LLM CLI のアダプタ。Claude / Gemini / Codex がビルトイン |
| Dispatch MCP サーバ | Primary が子LLMを呼ぶための MCP サーバ。Primary 設定時に自動登録される |
クイックスタート
Section titled “クイックスタート”1. LLM CLI をインストール・認証する
Section titled “1. LLM CLI をインストール・認証する”ミニオン上で使いたい LLM CLI をインストール&ログインします。
| LLM | インストール | 認証 |
|---|---|---|
| Claude Code | npm i -g @anthropic-ai/claude-code | claude login |
| Gemini CLI | npm i -g @google/gemini-cli | gemini 起動後ブラウザでOAuth |
| Codex CLI | npm i -g @openai/codex | codex login |
2. ミニオン詳細ページの「LLM」タブを開く
Section titled “2. ミニオン詳細ページの「LLM」タブを開く”HQ ダッシュボードでミニオンを選び、サイドバーの LLM タブを開きます。
- 各プラグインの 認証状態 (緑 = OK / 黄 = 未認証) と capabilities (tool use / streaming / vision など) が一覧表示されます
- 使いたいプラグインの enabled にチェック
- 頭脳にしたいプラグインの primary を選択
設定はミニオン上の ~/minion/llm/config.json に永続化されます。
3. 自動的に dispatch MCP サーバが登録される
Section titled “3. 自動的に dispatch MCP サーバが登録される”Primary を選ぶと、ミニオン側で自動的に minion-llm-dispatch という MCP サーバが Primary プラグインの MCP 設定ファイルに追記されます (Claude なら ~/.mcp.json、Gemini なら ~/.gemini/settings.json)。
これにより Primary は dispatch_to_gemini(prompt, opts) や dispatch_to_codex(prompt, opts) のような MCP ツールを使って、有効化されている他のLLMにタスクを委譲できるようになります。
プラグインごとの特性
Section titled “プラグインごとの特性”Claude Code
Section titled “Claude Code”- streaming: ✅ チャットがリアルタイム表示される
- vision: ✅ 画像入力可能
- session resume: ✅ 子セッションを継続できる (差し戻しレビュー等で有効)
- image generation: ❌
- スキル:
~/.claude/skills/から SKILL.md を読み込み、/skill-nameで明示呼び出し
Gemini CLI
Section titled “Gemini CLI”- streaming: ❌ 完了まで待って一括返答
- vision: ✅
- image generation: ✅ ただし
gemini-cli-extensions/nanobanana拡張のインストールが必要 - session resume: ❌ 毎回新規セッション
- スキル:
~/.gemini/skills/から SKILL.md を読み込み、システムプロンプトに自動注入 (自然言語で指示)
- OAuth 認証時のキーチェーンエラー: Docker などヘッドレス Linux 環境では
Keychain is not availableエラーが出ることがあります。export GEMINI_FORCE_FILE_STORAGE=trueを設定してフォールバック - 画像生成: 標準コマンドではコード生成 (Python/Pillow) として解釈されます。Nano banana を使うには
gemini extensions install https://github.com/gemini-cli-extensions/nanobananaで公式拡張を導入し、NANOBANANA_API_KEYを設定してください
Codex CLI
Section titled “Codex CLI”- streaming: ❌
- session resume: ❌
- vision / image generation: ❌
- スキル:
~/.codex/skills/から読み込み、/skill-nameまたは$skill-nameで呼び出し
Primary 切り替え時の影響
Section titled “Primary 切り替え時の影響”| 経路 | 挙動 |
|---|---|
| チャット | Primary プラグインが stream() 実装ならストリーミング、なければ完了後一括返答 |
| ワークフロー / ルーティン | プロンプトを一時ファイルに書き出し、<binary> < tmpfile の形で tmux 実行 (シェルクォート問題を根本回避) |
| dispatch (子LLM呼び出し) | Primary が tool use 対応なら自動登録された MCP ツール経由で利用可能 |
親子セッションの寿命
Section titled “親子セッションの寿命”- 子セッションは
(parentSessionId, pluginName)をキーにプールされ、親セッション存続中は再利用される - 並列 dispatch (例: 画像を 2 枚同時生成) のときは別 slot として独立した子セッションが起こされる
- 親セッション (チャット / ワークフロー) が終了すると、紐づく子セッションは全て破棄される
レガシー: LLM_COMMAND
Section titled “レガシー: LLM_COMMAND”Primary が未設定の場合、従来の LLM_COMMAND 環境変数によるテンプレート方式で動作します (後方互換)。LLM_COMMAND は将来廃止予定のため、新規利用はプラグイン方式を推奨します。
トラブルシューティング
Section titled “トラブルシューティング”Primary を切り替えてもチャットが旧 LLM のまま
Section titled “Primary を切り替えてもチャットが旧 LLM のまま”ミニオンの再起動が必要な場合があります。minion-cli restart または HQ ダッシュボードの再起動ボタンを使用してください。
dispatch_to_* ツールが Primary から見えない
Section titled “dispatch_to_* ツールが Primary から見えない”- Primary プラグインに MCP クライアント機能があるか確認 (Claude / Codex / Gemini はサポート)
~/.mcp.jsonまたは~/.gemini/settings.jsonにminion-llm-dispatchエントリが追加されているか確認- Primary の CLI を再起動して MCP 設定を読み直す
スキルが実行できない
Section titled “スキルが実行できない”現状、スキルは Primary プラグインのスキルディレクトリ (例: ~/.claude/skills/) に配置されたものだけが認識されます。複数プラグイン横断のスキル配布は今後対応予定です。