ドキュメント · ライブラリ
ライブラリ
magpie の ライブラリ は、指示、MCP サーバー、スキル、フック、サブエージェントを一か所にまとめ、チェックしたエージェントそれぞれに、そのエージェント自身のファイルと形式で書き込みます。エージェントはいつもどおりそのファイルを読みます。magpie はエージェントと渡したものの間に層を挟みません。スキル、MCP ツール、サブエージェントをいつ使うかは、エージェント自身が決めます。
ページには 指示、MCP サーバー、スキル、フック、サブエージェント、RTK の 6 つのタブがあります。各項目にはエージェントの列があり、チェックすると渡し、外すと取り除きます。エージェントは次に起動したときに変更を読みます。
保存場所
- ライブラリ本体は magpie の設定フォルダにある
library.jsonです(~/.config/magpie。$XDG_CONFIG_HOMEがあれば$XDG_CONFIG_HOME/magpie)。指示のテキストとスキルのフォルダは隣のlibrary/にあります。 - 変更のたびにライブラリを保存し、すぐにすべてのエージェントへ書き込みます。magpie は自分が書いたものを記録するので、取り除くのは自分のエントリだけで、あなたのものには触れません。
- バックアップ。変更の前に、置き換わるファイルを同じフォルダの
backups/にコピーします。直近 30 件が残ります。各タブの上の バックアップ ボタンで開けます。 - 書き直し。エージェントを入れたあとや、そのファイルを手で編集したあとは、
magpie library syncでライブラリをすべてのエージェントに書き直します。
magpie library # 各エージェントに何を渡しているか magpie library sync # エージェントに書き直す
指示
指示は、エージェントの各セッションが最初に読むテキストです(チームのルールやコーディングスタイルなど)。magpie はエージェントの指示ファイルの 2 行のマーカーの間に自分の分を書きます。
<!-- magpie:begin · written by magpie from its Library --> …ライブラリの指示… <!-- magpie:end -->
マーカーの外はすべてあなたのもので、変更されません。名前付きのセットを複数持ち、それぞれ別のエージェントに渡せます。セットを自分のファイルに置くこともできます。
| エージェント | ファイル |
|---|---|
| Claude Code | ~/.claude/CLAUDE.md |
| Codex | ~/.codex/AGENTS.md(AGENTS.override.md を使っていればそちら) |
| Gemini CLI | ~/.gemini/GEMINI.md |
| Antigravity | ~/.gemini/config/GEMINI.md |
| OpenCode | 設定フォルダの AGENTS.md |
| Copilot CLI | ~/.copilot/copilot-instructions.md |
| Goose、Crush、Qwen Code、CodeBuddy | .goosehints、CRUSH.md、QWEN.md、CODEBUDDY.md |
| Droid、Grok、dsh、omp | それぞれのフォルダの AGENTS.md |
| Pi、OmO | AGENTS.md と CLAUDE.md のうち先にあるもの |
フォルダはエージェント自身の設定に従います。CLAUDE_CONFIG_DIR や CODEX_HOME を設定していれば、既定の場所の代わりにそれを使います。
MCP サーバー
MCP サーバーはコマンド(npx … のようにエージェントが起動するプログラム)か URL(HTTP または SSE)です。magpie はチェックした各エージェントの MCP 設定にサーバーごとに 1 つのエントリを、そのエージェントの形式で書きます。エントリにあなたが足したフィールドは残ります。
| エージェント | ファイル |
|---|---|
| Claude Code | ~/.claude.json |
| Codex | ~/.codex/config.toml |
| Gemini CLI | ~/.gemini/settings.json |
| Antigravity | ~/.gemini/config/mcp_config.json |
| OpenCode | opencode.json |
| Cursor | ~/.cursor/mcp.json |
| Copilot CLI | ~/.copilot/mcp-config.json |
| Zed | settings.json の context_servers |
- 変数。ヘッダーや環境変数の値にある
${NAME}は、各エージェントの書き方で書き込まれます。その書き方を持たないエージェントにはそのサーバーを渡さず、ページに理由が出ます。 - SSE。Codex、Goose、dsh、Grok、Command Code、Zed は SSE のサーバーを使えません。Claude Desktop はリモートのサーバーを一切受け付けません。
- ツールごとのオフ。Codex、Gemini CLI、Crush、Hermes Agent、Claude Code、OpenCode では、ツールを 1 つずつオフにでき、それぞれの設定に書かれます。ほかのエージェントにはサーバー全体が渡ります。
- サインイン。OAuth が必要なサーバーは magpie で一度だけサインインします。エージェントは magpie のゲートウェイの
/mcp/<name>経由で使います。 - このコンピュータだけ。ここに置いておくサーバーは ほかのコンピュータと同期 をオフにします(
magpie library mcp local <name> on)。
MCP ルーター をオンにすると、各エージェントにはこれらのエントリの代わりに magpie という 1 つのサーバーが渡り、コマンドのサーバーは magpie がすべてのエージェントのために 1 回だけ動かします。既定ではオフです。
スキル
スキルは SKILL.md の入ったフォルダです。エージェントは各スキルの名前と説明を読み、作業に必要になったときに残りを読みます。GitHub、任意の git リポジトリ、このコンピュータのフォルダ、または スキル タブのマーケットから追加できます。
| エージェント | フォルダ |
|---|---|
| Claude Code | ~/.claude/skills |
| Codex | ~/.codex/skills |
| Gemini CLI | ~/.gemini/skills |
| OpenCode | 設定フォルダの skills |
| Cursor | ~/.cursor/skills |
| Copilot CLI | ~/.copilot/skills |
| Goose | ~/.agents/skills |
リンクかコピーか
スキルの渡し方 で、スキルをエージェントにどう渡すかを、すべてのエージェントに、または エージェント別 で 1 つずつ決めます。
- リンク(既定)。エージェントのフォルダはライブラリのものへのリンクなので、更新はすぐにすべてのエージェントに届きます。Windows でリンクを作る権限がなければジャンクションを使います。
- コピー。エージェントごとに自分のフォルダを持ちます。リンクをたどらないツール向けです。ライブラリのスキルが変わるとコピーを作り直します。エージェントやあなたがコピーを編集すると、次の同期でいちばん新しい編集をライブラリに取り込み、ほかのエージェントに渡します。より新しい編集に負けた編集はバックアップに残ります。
同じ名前のあなたのスキルフォルダは上書きしません。ページでライブラリのものを使うか、自分のものを残すかを尋ねます。
編集と更新
- 編集でスキルのファイルをページ上で開き、保存(または ⌘S)で書き込みます。コマンドラインにはエディタがありません。
- 更新。スキルタブを開いたとき、前回の確認から 12 時間たっていれば、GitHub から入れたスキルの更新を確認します(
magpie library skill updateですぐ確認)。あなたが変更したスキルは、尋ねずに置き換えません。 - スキルの置き場所。チェックした各エージェントのフォルダ(既定)か、加えて
~/.agents/skillsにも置きます。ここは Codex、Gemini CLI、OpenCode、Crush、Droid、Kimi Code などのツールが読みます。 - このコンピュータだけオフ。スキルはこのコンピュータでだけオフにできます。ほかのコンピュータからの同期でオンに戻ることはありません。
サブエージェント
サブエージェントは、メインのエージェントが作業を任せられる助手です。名前、説明、プロンプトを持ちます。magpie はそれをファイルとして、チェックした各エージェントのサブエージェントフォルダに書きます。メインのエージェントは各サブエージェントの 説明 を読み、いつ呼ぶかを自分で決めます。説明には何のためのものか、いつ使うかをはっきり書いてください。
- 名前:小文字の英字、数字、
-で 2〜50 文字。defaultやmainなどいくつかの名前は予約されています。 - 説明:必須。1,000 文字まで。
- プロンプト:必須。サブエージェントの指示になります。
- モデル:任意。サブエージェントのモデル を参照。
| エージェント | ファイル | スキル、MCP サーバー |
|---|---|---|
| Claude Code | ~/.claude/agents/<name>.md | 選んだもの |
| Codex | ~/.codex/agents/<name>.toml | エージェントのすべて |
| OpenCode | 設定フォルダの agents/<name>.md | エージェントのすべて |
| Gemini CLI | ~/.gemini/agents/<name>.md | エージェントのすべて |
| Qwen Code | そのフォルダの agents/<name>.md | エージェントのすべて |
| Droid | ~/.factory/droids/<name>.md | 選んだ MCP サーバー、すべてのスキル |
| Grok | そのフォルダの agents/<name>.md | エージェントのすべて |
| Cursor | ~/.cursor/agents/<name>.md | エージェントのすべて |
| Copilot CLI | ~/.copilot/agents/<name>.agent.md | エージェントのすべて |
- サブエージェントを選んだスキルに限れるのは Claude Code だけ、選んだ MCP サーバーに限れるのは Claude Code と Droid だけです。ほかではサブエージェントはエージェントの持つものをすべて使えます。
- Cursor:
~/.cursor/agentsを読むのは Cursor アプリだけです。cursor-agentはプロジェクトの.cursor/agentsしか読みません。 - Kimi Code、Goose、Crush、Qoder、CodeBuddy、iFlow、Kiro にはユーザー全体のサブエージェントフォルダがないので、渡りません。WSL のエージェントにも渡りません。
- magpie が書いたファイルを編集すると、それはあなたのものになり、magpie は変更しなくなります。同じ名前のあなたのファイルは上書きせず、ページに問題として出します。
サブエージェントのモデル
サブエージェントの モデル は Codex にだけ書かれます。ほかのエージェントのサブエージェントは、エージェント自身が選ぶモデルで動き、ページにもそう出ます。空のときは エージェントが選ぶ と表示されます。
Codex では、モデルはサブエージェントの .toml ファイルに入ります。Codex は起動時にこのファイルを重ねるので、リクエストはそのモデルを運び、magpie のゲートウェイはほかのリクエストと同じようにルーティングします。Codex の一覧にある任意のモデル、magpie の provider/model、ルーティンググループ(group/<id>)を選べます。
エージェントページの Codex のサブエージェントモデル
エージェント ページの Codex の行には、Codex が起動するすべてのサブエージェントに効く、独自のサブエージェントモデルがあります。
- リードが選ぶ(既定)。メインのエージェントが各サブエージェントのモデルを選びます(Codex 自身のモデルも含みます)。指定がなければメインのエージェントのモデルで動きます。再開したサブエージェントは最初のモデルのままです。
- リードと同じ。すべてのサブエージェントがメインのエージェントのモデルで動きます。
- モデルかグループ。メインのエージェントが別のモデルを指定しても、すべてのサブエージェントがそれで動きます。
default_subagent_model も取り除きます。Codex 自身の config.toml にある [agents] default_subagent_model は別物で、メインのエージェントがモデルを指定しなかったときにサブエージェントが始めるモデルにすぎません。ここまでの話には例外が 1 つあります。ChatGPT のバックエンドが封じたタスクは、この設定が ChatGPT アカウントのモデルでない限り、要求したモデルのままです。
Claude Code には独自の順序があります。メインのエージェントが呼び出しで指定したモデル、次にサブエージェントファイルの model:、次に CLAUDE_CODE_SUBAGENT_MODEL(エージェントページの Claude Code の行で設定可能)、最後にセッションのモデルです。
フック
フックは、エージェントがターンのある時点で実行するコマンドです。終わったときの通知、ファイル編集後のフォーマッタなど。共通のイベント(ターン終了、ツールの後、ツールの前、プロンプト受信時、セッション開始時)を選ぶと、magpie は各エージェントでのそのイベントの名前で書き込みます。フックを受け付けるのは Claude Code、Codex、Gemini CLI、Cursor、Grok Build、Grok App だけです。あなたが変更したフックのエントリはあなたのものになります。
RTK
RTK タブでは RTK をエージェントごとにオンにします。エージェントのシェルコマンドが RTK を通り、出力が短くなってトークンを節約します。magpie は RTK をインストールでき、RTK がなくてもオフにできます。
magpie が触るもの
- 自分が書いたものだけ:マーカーの間のテキスト、記録したエントリ、自分のものと印を付けたファイル。
- 同じ名前のあなたのファイル、エントリ、スキルには触れません。ページに衝突を出し、選ばせます。
- 置き換えるものは先にバックアップに入ります。
プロジェクトにもスキルと MCP サーバーを渡せます。プロジェクト自身のフォルダ(.claude/skills、.agents/skills、.mcp.json、.codex/config.toml など)に置かれます。