AI エージェント連携
Calyx には、複数の CLI AI エージェント(Claude Code、Codex CLI、OpenCode、Hermes、Grok、pi)を統合するための MCP サーバーが組み込まれています。 タブやペインをまたいだエージェント同士の通信、LSP のシンボル解析、Calyx 自体を操作するコックピットツール、ターミナルのコマンドログ、Claude Code のトークン使用量のレポートの五つを提供します。 同じサーバーは、Settings で追加した MCP サーバーの公開とそのビューの表示も担います。 その部分は MCP Apps で説明します。
AI Agent IPC
Section titled “AI Agent IPC”異なるタブ・ペインで動いている AI エージェントが、お互いにメッセージをやり取りできます。
有効化の手順
Section titled “有効化の手順”- Settings (
Cmd+,) の Agents ペインを開き、先頭の AI Agent IPC セクションで Enable AI Agent IPC をオンにする - 二つ以上のターミナルペインでエージェントを起動(Claude Code / Codex / OpenCode / Hermes / Grok / pi のいずれか)
- 各インスタンスは自動的にピアとして登録され、メッセージの送受信が可能になる
スイッチをオンにすると MCP サーバーが起動し、インストールされているエージェントに応じて設定ファイルが書き込まれます。
| エージェント | 設定ファイル |
|---|---|
| Claude Code | ~/.claude.json |
| Codex CLI | ~/.codex/config.toml |
| OpenCode | ~/.config/opencode/opencode.json、AGENTS.md |
| Hermes | ~/.hermes/config.yaml |
| Grok | ~/.grok/config.toml、~/.grok/hooks/calyx.json |
| pi | ~/.pi/agent/extensions/calyx.ts |
各エージェントには二つのエントリが書き込まれます。
このページのツールのための calyx-ipc と、MCP Apps ペインで設定したサーバーのための calyx-mcp です(MCP Apps を参照)。
設定の書き込み後、すでに起動しているエージェントは再起動して新しい MCP サーバーを読み込ませてください。
スイッチを切り替えると、その下の状態表示に結果が出ます。
すべて書き込めた場合は Running on port <port> · all agents configured と表示されます。
一部だけの場合は Running on port <port> · <n> of <total> configured と表示され、その下に失敗した設定やフック(✗)と、エージェントが未インストールのため飛ばしたもの(–)が一行ずつ並びます。
一つも書き込めなかった場合は Running on port <port> · no agents configured と表示され、同じく失敗や未インストールの行が並びます。
サーバーを起動できなかった場合は Could not start: に続けて理由が表示され、エージェントサイドバーにも同じ失敗が表示されます。
あとから別の対応エージェントをインストールしたときは、スイッチの下の Refresh をクリックしてください。 すでに動いているサーバーに対してそのエージェントの設定とフックを書き込むため、接続済みのエージェントはそのまま動き続けます。
pi は、対応するエージェントのなかで唯一、MCP クライアントの設定ファイルを持ちません。
そのため Calyx は、pi が起動時に読み込む TypeScript の拡張を一つ書き込むことで連携します。
この一ファイルが連携のすべてを担います。
サイドバーの行、承認のゲート、下記の MCP ツールへ中継する calyx ツール({"tool": "list"} を渡すと一覧を返します)、そして MCP Apps のサーバーに対して同じ役割を持つ calyx_mcp ツールです。
Calyx の外で起動した pi や、herdr のペインの中で起動した pi は、calyx_mcp だけを登録します。
起動時と Calyx の更新後
Section titled “起動時と Calyx の更新後”Calyx はスイッチの状態を記憶します。 オンのあいだは、起動のたびにサーバーを起動し、上記の設定とフックを書き直します。 そのため、更新で設定の中身が変わっても、利用者が何かを実行し直す必要はありません。 ポートとトークンは可能なかぎり前回のものを再利用するため、Calyx を再起動しても、永続セッションで動き続けているエージェントはそのまま接続できます。 新しいトークンを発行するのは、再起動時に前回のポートを別のプロセスが使っていたときだけです。 そのときは Agents ペインにトークンを更新した旨が表示されます。 その起動より前に始めたエージェントのセッションは古いポートを使い続けるため再起動が必要ですが、新しいセッションには何も要りません。
Calyx 0.41.0 以前はこの設定を記憶しなかったため、そこから更新するとスイッチはオフの状態で始まります。 以前 AI Agent IPC を使っていた場合は、Settings で一度オンにしてください。
起動時に書き直しても、利用者自身が管理している設定は保たれます。
Calyx が書き換えるのは自分の項目だけで、キーの順序、インデント、改行コードを含め、ファイルのほかの部分は1バイトも変えません。
~/.codex/config.toml の Codex フックのブロックと、~/.hermes/config.yaml の Calyx ブロックは、いまある位置のまま書き直します。
この二つのブロックの中に Calyx のものではない記述があれば、置き換えずにブロックの直前へ移します。
書き換える必要がなければ、ファイルには一切触れません。
エージェントがトークンを受け取る仕組み
Section titled “エージェントがトークンを受け取る仕組み”Calyx はサーバーのポートとベアラートークンを、利用者本人だけが読める ~/Library/Application Support/Calyx/agent-endpoint.json に書き込みます。
このファイルには、書き込んだ Calyx のプロセス ID と起動時刻も記録します。
フックスクリプト、シェル統合、OpenCode プラグイン、pi 拡張は毎回このファイルを読み、その Calyx が動いているときだけトークンを送ります。
Claude Code と Codex の設定ファイルには、トークンを書き込みません。
設定には補助スクリプト calyx-mcp-headers を記述し、このスクリプトは、エンドポイントファイルを書いた Calyx が設定時のポートで動いている間だけトークンを出力します。
Grok 1.0.52 以降は、エンドポイントファイルの隣にあるトークンだけを収めたファイル calyx-bearer-token-<ポート> を、リクエストのたびに読みます。
それより古い Grok、OpenCode、Hermes では、これまでどおり設定ファイルにトークンを書き込みます。
承認フックとウェイクフックは、動作中の Calyx が起動ごとに作る鍵で署名した応答だけを受け付けます。 そのため、同じポートで待ち受ける別のプロセスがツール実行を許可したり、ペインを起こしたりすることはできません。
利用可能な MCP ツール
Section titled “利用可能な MCP ツール”register_peerlist_peerssend_messagebroadcastreceive_messages— 返却したメッセージを受信箱から自動的に削除するため、同じメッセージが二度届くことはありませんget_peer_status
デモ動画 で動作を確認できます。
メッセージで Claude Code を起こす
Section titled “メッセージで Claude Code を起こす”Settings の Agents ペインの AI Agent IPC にある Wake Claude Code on IPC messages は、標準ではオフです。
オンにすると、プロンプトで待機中の Claude Code のペインにメッセージが届いたときにそのペインが起こされ、エージェントが自分からターンを始めます。
対象は Claude Code だけで、asyncRewake フックに対応したバージョンが必要です。
ほかの準備は要りません。
ウェイクフックは AI Agent IPC がオンの間、Calyx のほかの Claude Code フックと一緒に配置され、ペインは Claude Code がそのペインから calyx-ipc に接続するか register_peer を呼んだ時点でピアに結び付きます。
起こすときにエージェントへ渡すのは、待っているメッセージの件数と、読み出しに使うピア ID を記した短いメモだけです。
メッセージ自体はエージェントが receive_messages で読みます。
Calyx がエージェントの代わりにメッセージを読むことはなく、メモにほかのエージェントが書いた文章は含まれません。
一つのメッセージがペインを起こすのは一度だけです。
ペインを起こせるのは、ウェイクフックが待機している間だけです。 フックは、ターンが終わったときとセッションが始まったとき(再開、クリア、コンパクトを含む)に待機を始め、約 10 分間待ちます。 Esc で中断したターンでは新しい待機は始まりませんが、前のターンの終わりに始まった待機が残っていれば、それでペインを起こせます。 ターンの最中に届いたウェイクは、実行中のツールが終わった時点でそのターンに取り込まれます。 したがって、次の場合にはペインは起きません。
- 最後の待機(最後に完了したターンまたはセッション開始)から約 10 分が過ぎたあと
- Calyx またはその IPC サーバーが再起動してから、次の待機が始まるまで
- スイッチをオンにした直後から、次の待機が始まるまで
- 永続セッションを別のペインに再接続したあと
- 同じペインの中で起動した別の
claudeがフックを引き継いでいる間(ウェイクはそちらに届きます)
スイッチをオフにすると、すぐに起こさなくなります。
これまでどおり、期限切れのピアへの send_message は失敗します。
ピアが期限切れになるのは、最後の IPC 呼び出しから 10 分が過ぎ、かつ未配達のメッセージの送信者でも受信者でもないときだけです。
Settings の Agents ペインで Enable AI Agent IPC をオフにします。
Calyx はサーバーを止め、自分の項目とフックを取り除きます。
Calyx 専用のファイル(~/.grok/hooks/calyx.json と ~/.pi/agent/extensions/calyx.ts)は削除します。
ほかのツールと共有するファイルは、空になっても空のファイルとして残します。
もともと存在しなかったファイルを新たに作ることはありません。
~/Library/Application Support/Calyx/bin/ にあるフックと補助スクリプトは残ります。
エージェントサイドバー
Section titled “エージェントサイドバー”サイドバーの Agents タブには、現在のウィンドウで動いている AI エージェントとそのステータスが一覧で並びます。
各行はそのエージェントが動いているペインの名前で表示され、三行の構成になっています。
- ペインのタイトル
- 作業ディレクトリ(末尾の一階層だけを表示)
- エージェントの種別(「Claude Code」「Grok」など)
Calyx が解決できなかった項目は N/A と表示されます。
リポジトリ名ではなくペインの名前を使うのは、同じチェックアウトで複数のエージェントを動かしても区別できるようにするためです。
名前とあわせて、各行に次の情報が表示されます。
- ステータスドット。赤 (ユーザー入力待ち)、黄 (処理中)、緑 (待機)、青 (完了) の四色。
- 未読メッセージバッジ。エージェントの新しい出力をユーザーがまだ確認していないときに出ます。
- 最終確認時刻。
行をクリックすると、そのエージェントが動いているペインにフォーカスが移ります。
対応するのは Claude Code、Codex CLI、OpenCode、Hermes、Grok、pi の六つです。 Enable AI Agent IPC をオンにしてからペインでエージェントを起動すれば、自動的にサイドバーに並びます。 スイッチがオフのあいだ、サイドバーには AI Agent IPC is disabled と表示され、Settings の Agents を開くよう案内が出ます。
ウィンドウ内のすべてのペインと、エージェント同士のメッセージを一度に見るには、Mission Map を開きます。
サブエージェントの行
Section titled “サブエージェントの行”サブエージェントを動かしているエージェントは、その子をペインの行の下に並べます。 子を持つペインの行には、右端に子の数を示すバッジと、その隣に開閉用のシェブロンが出ます。 サブエージェントを報告しないエージェントのペインの行は、これまでと変わりません。
子の行は最初は畳まれています。 シェブロンをクリックすると開きます。 シェブロンは行の本体とは別のクリック領域なので、開いてもペインにフォーカスは移りません。 開閉の状態はサイドバーを開いているあいだだけ保たれ、サイドバーを閉じるか Calyx を起動し直すと畳まれた状態に戻ります。
子の行は親の行の下に字下げして並び、親と同じ四色のステータスドット、サブエージェントの種別、実行中のツール名、最後に報告があった時刻を持ちます。 ライフサイクルだけを報告する CLI では、種別とツール名の行は代替文字で埋めずに省かれるため、その行はドットと時刻だけになります。 子の行をクリックすると、親のペインにフォーカスが移ります。 サブエージェント自身はペインを持たないためです。
ツールの行には、ツール名と、その呼び出しが何を対象にしているかが並びます。
たとえば Bash: git status --short のように表示されます。
CLI が報告した引数をそのまま読み取り、シェルのツールならコマンド、読み書きならパス、取得なら URL、それ以外は key: value の組を並べます。
連続する空白は 1 つにまとめられるため、ヒアドキュメントも 1 行として読めます。
長い行は 500 文字で打ち切られます。
サイドバーを狭めると行は末尾から削られ、ツール名とコマンドの先頭が残ります。
右側の経過時間は幅を保ちます。
行にカーソルを合わせると、ツールチップで全体を読めます。
要約する内容のないツールは、名前だけが表示されます。
| エージェント | 子の行 | 実行中のツール |
|---|---|---|
| Claude Code | 表示する | 表示する |
| Grok | 表示する | 表示する |
| Codex | 表示する | 表示しない |
| OpenCode | 表示する | 表示しない |
| Hermes、pi、herdr のペイン | 表示しない | 表示しない |
子の行は、CLI がそのサブエージェントを報告しているあいだだけ存在します。 サブエージェントが終了したとき、親のセッションが終わったとき、ペインが閉じたときに消えます。 Calyx 自身は履歴を持たないため、CLI が報告をやめたあとに行が残ることはありません。
エージェントの CLI がフックの設定を読むのは、セッションの開始時の一度だけです。 そのため子の行が出るのは、Calyx がフックを書き込んだあとに開始したセッションで、すでに動いているセッションには出ません。
行が完了に変わるとき
Section titled “行が完了に変わるとき”行が青(完了)に変わるのは、そのエージェントのセッションが終わったときです。 対応 CLI の多くは、自分でセッションの終了を報告します。 報告しない CLI や、強制終了やクラッシュで消えたエージェントについては、ペインのシェルがプロンプトに戻った時点で Calyx が行を完了にします。
このフォールバックには二つの経路があります。 一つは Ghostty 自身のコマンド終了通知で、bash、elvish、nushell を含むすべてのシェルで働き、設定は要りません。 もう一つは Calyx のシェル統合で、Track shell commands が有効なあいだ zsh と fish で働きます。 こちらはそのペインに残っている承認待ちのリクエストもあわせて期限切れにするため、承認の要求が元のプロセスより長く残ることはありません。
Ctrl-Z で中断したコマンドでは、行は完了になりません。
herdr のエージェント
Section titled “herdr のエージェント”herdr 自身のペインで動いているエージェントも、ここに表示されます。 サブタイトルに「via herdr」と付き、ネイティブな行と区別できます。 ネイティブな行に必要な設定は要りません。 Enable AI Agent IPC のスイッチも、設定ファイルの書き込みも不要です。 herdr 自身のステータスストリームから直接読み取るため、herdr がインストールされて動いていれば自動的に表示されます。
Calyx は herdr の起動を定期的に問い合わせるのではなく、監視して検知します。
そのため、どちらを先に起動しても構いません。
Calyx を前面にしてサイドバーを開いたまま herdr を起動しても、行はそのまま埋まります。
Calyx の起動後に herdr をインストールしたり PATH に通したりした場合も、起動し直す必要はありません。
同じソケットのパスで herdr のサーバーが再起動した場合は、別のセッションとして認識し、接続し直します。
herdr のソケットが現れてから数秒のあいだ、Calyx は何度か接続を試します。 ファイルがあるだけでは、サーバーが待ち受けを始めたことにならないためです。 待ち受けの開始がこれより遅いサーバーは、そのディレクトリで別の変更が起きるまで検知されません。
すでに Calyx のタブとして開いている herdr の行は、ほかの行と同じようにクリックでそのペインにフォーカスできます。 まだ Calyx で開いていない herdr のペインの行には、フォーカスする先がありません。 そのため、ホバーしても反応しないただの文字列として表示されます。 先に Session Browserからそのワークスペースを開いてください。
herdr がシェルのペインを残したままエージェント CLI だけが終了した場合、その行は最後の状態のままにならず、完了(青)に変わります。
AI Agent IPC がオフのときも herdr の行は表示され続けます。 その下に、Calyx 自身のエージェントが監視されていない旨の注記が付きます。
永続セッションでのエージェント再開
Section titled “永続セッションでのエージェント再開”永続セッションを有効にしている場合、再接続時にそのセッションで動いていたエージェント CLI の会話再開を提案できます。 設定項目は永続セッションを参照してください。
コックピットツール
Section titled “コックピットツール”同じ MCP サーバーを通じて、エージェントが Calyx 自体を操作できます。
次の四つのツールは確認なしで即座に実行されます。
pane_list— 現在のウィンドウのターミナルペインを一覧するpane_split— ペインを右または下に分割するtab_create— 新しいタブを開く(グループと作業ディレクトリを指定可能)agent_status— すべてのペイン、またはsurface_idで指定した一つのペインについて、エージェントの状態と実行中のツール、サブエージェント、未読の IPC メッセージ数、保留中の承認、Git のブランチと変更ファイル数と Worktree タスク(include_git: falseでまとめて省略可能)、Usage Tracking がオンならトークン使用量を報告する。未読数は変化しない
次の三つはターミナルへの入力やアプリ操作を伴うため、呼び出しごとに利用者の承認が必要です。
pane_run— ペインでコマンドを実行するpane_send_keys— ペインへキー入力を送るpalette_execute— コマンドパレットの項目を実行する
承認が必要なツールが呼ばれると、承認パネルにツール名と、対象ペインを持つタブの名前(対象ペインを持たない palette_execute では、現在のウィンドウのアクティブなタブの名前)が表示されます。
Allow はその一件だけを実行し、判断は記憶されません。
Options メニューには Deny と Always Allow があります。
Always Allow は以後の呼び出しの自動承認を有効にし、保留中のコックピットツールの要求をすべて許可します。
同じキューに並んでいるエージェントのツール実行の要求は、許可されずに残ります。
拒否したリクエストはエージェントに {"status": "denied"} を返します。
閉じたリクエストは {"status": "dismissed"} を、55 秒以内に応答がなかったリクエストは {"status": "approval_timeout"} を返します。
いずれもエラーではなく通常の結果として返り、ツールは実行されません。
この自動承認は、Settings の Agents ペインにある Auto-approve agent commands と同じ設定です。 標準ではオフのため、承認が必要なツールは毎回確認を求めます。
エージェントのツール実行承認
Section titled “エージェントのツール実行承認”複数のペインでエージェントを並列に動かすと、許可プロンプトが各ペインに散らばり、どこが承認待ちなのか分からなくなります。 この機能を有効にすると、対応するエージェントはツールを実行する前に許可要求を Calyx へ送り、コックピットツールと同じ承認パネルで一括して判断できます。
どの呼び出しがパネルに出るかは、エージェントによって異なります。
- Claude Code と Codex: その CLI が本来ユーザーに尋ねていた呼び出しだけです。Plan モードでの読み取りや、すでに許可リストに入れたツールなど、CLI 自身の許可機構で決着する呼び出しはパネルに出ません。
- Grok: 常時承認モード(
bypassPermissions)のときだけです。それ以外のモードでは Grok が自分のペインで確認するため、同じことを二度尋ねられることはありません。 - pi: すべてのツール呼び出しが対象です。pi は自前の許可プロンプトを持たないため、このパネルが唯一のゲートになります。この機能をオフにすると、pi のツール呼び出しは確認なしで実行されます。
- OpenCode と Hermes: 対象外です。従来どおり自分のペインで確認します。
- Settings の Agents ペインで Enable AI Agent IPC をオンにします(オンのあいだは起動のたびに承認用フックを配置し直すため、Calyx を更新しても追加の操作は要りません)。
- Settings の Agents ペインで Show agent tool prompts in the approval banner をオンにします(標準ではオフです)。
- 起動中のエージェント CLI を再起動します。
承認パネルの操作
Section titled “承認パネルの操作”要求は、macOS の通知に似た見た目のフローティングパネルに表示されます。 表示位置は、いま使っている Calyx のウィンドウがある画面の右上です。 パネルはフルスクリーンを含むすべての操作スペースに表示され、Calyx が背面にあっても他のアプリのウィンドウより前に出ます。 ボタンやメニューを操作してもフォーカスは移らないため、入力中の作業を中断せずに判断できます。 質問に自由記述やメモを入力するときだけパネルにフォーカスが移り、そのあとはペインに戻ります。 保留中の要求がなくなると、パネルは自動で隠れます。
タイトルには、エージェントとツール名(例: Claude Code · Bash)と、対象ペインを持つタブの名前が表示されます。 その下には、実行内容の要約が二行で表示されます。 要約にポインタを置くと全文がツールチップで表示され、クリックするとパネル内に全文が展開されます。
Yes はその一件だけを許可します。 それ以外の選択肢は、すべて Options メニューにあります。
- CLI 自身が提示する常時許可の候補(例: Yes, and don’t ask again for Bash: npm test for this session)。記憶される範囲は、CLI が示すとおり(セッション、プロジェクト、ユーザー)です。
- Always Allow <ツール名> in This Pane。CLI が候補を提示しなかったときだけ表示されます。そのペインの同じツールを、ペインを閉じるかサーバーを停止するまで自動許可します。
- No。その要求を拒否します。
パネルにポインタを置くと、左上の角に閉じるボタンが現れます。 閉じると、Calyx は回答せずにその要求をエージェントへ返します。 Claude Code と Codex はペイン内に自身のプロンプトを表示するので、そこで回答します。 Grok と pi には返す先のプロンプトがないため、このボタンは無効になり、判断はパネルで行います。
Claude Code の質問(AskUserQuestion)も同じパネルに表示されます。 回答は Options から選びます。 複数回答を許す質問や、プレビュー付きの選択肢を持つ質問では、パネル内の一覧から選びます。 Other… では自由記述で回答でき、Add notes ではメモを添えられます。 質問が複数あるときは、Back で前の質問に戻れます。 Chat about this を選ぶと、会話を CLI 側に戻します。
要求が 2 件以上たまると、タイトル行の右端に前後の矢印と「1 / 2」のような位置表示が現れます。
矢印でキューの中身を見比べて、任意の要求から順不同で判断できます。
位置表示をクリックすると、すべてのウィンドウで保留中の要求が古い順に一覧で並びます。
各行は 3. Claude Code · Bash: npm test のように表示され、いま表示している要求には ▸ が付きます。
行を選ぶとその要求へ直接移動するので、目的の 1 件にたどり着くために矢印で送り続ける必要がありません。
表示中の要求を処理すると、残っている要求のうち最も近いものへ自動で進みます。
コックピットツールの要求も同じキューに並びます。
MCP App がリンクを開こうとするときやエージェントへメッセージを送ろうとするときの同意のプロンプトも、同じキューに並びます。
要求が 1 件だけのときは、矢印と位置表示が消えます。
新しい要求ごとに macOS 通知が届きます。 通知内の要約はトークンやパスワードをマスクして表示しますが、パネル本体は承認対象を正確に判断できるよう原文のまま表示します。
フォールバック
Section titled “フォールバック”障害時に自動許可されることはありません。 Calyx に接続できない場合や、約 10 分以内に応答しなかった場合、その要求は期限切れになります。 そのあとどうなるかはエージェントによって異なります。 Claude Code と Codex は自身のペイン内プロンプトに切り戻るため、判断はそちらに戻ってきます。 常時承認モードの Grok と pi には切り戻す先のプロンプトがないため、期限切れの要求は拒否されます。 エージェント側でツール実行をキャンセルしたときも、エージェント自身のペインで同じプロンプトに答えたときも、その要求は即座にパネルから消えます。 エージェントがターンを終えた時点で保留のまま残っている要求も、そこでパネルから消えます。
ターミナルコマンドログ
Section titled “ターミナルコマンドログ”各ターミナルで実行したコマンドの記録(コマンド行、終了ステータス、キャプチャした出力)を、エージェントから参照できます。 エージェントは画面の読み取りに頼らずに、ビルドの出力を確認したり長時間のコマンドの完了を待ったりできます。
terminal_list_commands— ペインの記録済みコマンドを古い順に一覧するterminal_read_output— 特定のコマンドのキャプチャ済み出力を取得するterminal_await_command— 実行中のコマンドの完了を待つ(タイムアウトは標準 30 秒、最大 55 秒。タイムアウト時は{"status": "timeout"}が返り、再度呼び出せば待機を続けられる)
コマンドログはシェル統合によって記録され、現在対応しているのは zsh と fish だけです。 Settings の Agents ペインで Track shell commands がオンの間、Calyx がシェル統合を自動的にインストールします。 このトグルは標準でオンで、オンにしたあとに開いたターミナルにだけ適用されます。
保存される内容
Section titled “保存される内容”記録はメモリ上にだけ保持されます。
ペインごとに最大 200 件のコマンドと、256 KB までの出力を保持します。
ディスクには書き込まれず、Calyx を終了するとログは破棄されます。
全画面 TUI(代替スクリーン)で実行されたコマンドや、出力をキャプチャできなかったコマンドは、output_unavailable: true として報告されます。
コマンド行とキャプチャした出力は、保存前に既知のシークレットのパターン(API トークン、パスワード、Authorization ヘッダー、クラウドプロバイダーのキー、JWT)と照合され、一致した箇所は [redacted] に置き換えられます。
この処理は自動的に実行され、無効化はできません。
大きな出力の redaction はバックグラウンドで行われるため、ターミナルが処理待ちでブロックされることはありません。
処理が完了するまでの間、コマンドは実行中として報告されます。
terminal_read_output は出力の代わりに {"output_pending": true} を返すので(しばらくしてから再度呼び出します)、terminal_list_commands は redaction が終わるまで終了コードと実行時間を伏せます。
トークン使用量のレポート
Section titled “トークン使用量のレポート”Usage Tracking がオンの間、エージェントは usage_report を呼び出して、Claude Code のトークン使用量を取得できます。
分類には、モデル、effort、スレッド、エージェントの種類、日、プロジェクト、セッションを使えます。
このツールは常に一覧に出ますが、Usage Tracking がオフの間に呼び出すと、オンにするよう促すエラーを返します。
引数はエージェントから問い合わせるにまとめています。
LSP Proxy MCP
Section titled “LSP Proxy MCP”AI Agent IPC と同じ MCP サーバー上に、言語サーバー(LSP)の機能を公開します。
エージェントは grep の代わりに、シンボルを理解した結果を取得できます。
提供されるツール
Section titled “提供されるツール”lsp_hover— シンボル上のホバー情報lsp_definition— 定義へジャンプlsp_references— 参照箇所の列挙lsp_rename— シンボルのリネームlsp_diagnostics— 診断(エラー・警告)の取得
ほかにも複数のツールが提供されます。
セットアップ
Section titled “セットアップ”- Settings の Agents ペインで Enable AI Agent IPC をオンにする(同じ MCP サーバーを共有するため)
- AI エージェントを再起動するか、
calyx-ipcMCP サーバーを再接続 - (任意)Settings の LSP ペインから、不足している言語サーバーの自動インストールを有効化
Calyx は言語サーバーをバックグラウンドで常駐させ、ディスク上のファイル変更を取り込みつつ、最初の lsp_* 呼び出し時に該当ワークスペース向けの言語サーバーを立ち上げます。
対応する言語サーバー
Section titled “対応する言語サーバー”TypeScript、Python、Rust、Go、Swift などをサポートします。 個別の言語の自動インストール対応状況は Settings の LSP ペインで確認できます。
