Skip to main content
ACPを使用すると、外部ツールが Agent Client Protocol を介してCTORエージェントと対話できます。acpxOpenClawAgmente などのツールを使用してプロンプトを送信し、セッションを管理し、エージェントを調整できます — デスクトップGUIと同じエージェント、設定、MCPツールで動作します。
このページは外部ツールが CTOR の組み込みエージェントに接続する方向を扱います。逆方向 — CTOR が Claude Code、Codex、Pi、Cursor Agent をチャットのエージェントとして駆動する場合 — については CLI エージェント を参照してください。CLI エージェントで駆動されているチャットは、このブリッジ経由では操作できません。両方の ACP 機能を併用するを参照してください。

仕組み

デスクトップアプリはElectronメインプロセス内でUnixソケットサーバーを実行します。ブリッジCLI(bricks desktop-acp-bridge)は標準入出力とソケット間でACP JSON-RPCメッセージを転送し、任意のACPクライアントが接続できます。
ソケットサーバーはアプリ内で実行されるため、ACPセッションはGUIとすべてを共有します:
  • セッション — ACP経由で作成された会話はサイドバーに表示され、その逆も同様
  • 設定 — APIキー、デフォルトモデル、プロバイダー設定はアプリから取得
  • MCPツール — プロジェクト内の .mcp.json で設定されたツールが利用可能
  • スキル — グローバルとプロジェクトのスキルが読み込まれます

Session APIs

session/newsession/prompt に加えて、ブリッジは以下をサポートします:
  • session/list — ディスク上のセッションを列挙し、プロジェクトの cwd でフィルタリング可能
  • session/loadsession/resume — 既存セッションを再オープンし、ツール呼び出しとメッセージのタイムライン全体をストリーミングして、リフレッシュや再起動後もクライアントが状態を再構築できるようにします
  • session/set_mode — 思考レベルを切り替え(offminimallowmediumhighxhighmax
  • session/set_modelsession/set_config_option — デスクトップGUIが公開するのと同じ provider::name 識別子を使用して、セッション中にモデルを変更
セッションがアクティブな間、接続中のすべてのクライアントは同じイベントストリームを受信します — GUIから開始されたプロンプトはACPクライアントにリアルタイムでミラーリングされ、ACPプロンプトもストリーミング中にGUIに表示されます。

ACPを有効にする

ACPはデフォルトで無効です。有効にするには:
  1. 設定を開きます(サイドバーのギアアイコン)
  2. エージェントに移動します
  3. ACPを有効にするをトグルします
ソケットサーバーはすぐに起動します — アプリの再起動は不要です。ACPがアクティブな場合、サイドバーのフッターに緑の ACP インジケーターが表示されます。クリックすると設定が開きます。
ACPモード(ヘッドレス)では、bashコマンドは承認なしに実行されます。必要に応じて acpx --deny-all でこれを上書きしてください。

前提条件

  • CTOR がACPを有効にして実行中であること
  • BRICKS CLI がインストール済みであること(bun add -g @fugood/bricks-cli
  • 作業ディレクトリがBRICKSプロジェクト(application.json を含む)であること

接続を確認する

ブリッジがデスクトップアプリに接続できるかテストします:
Cannot connect to CTOR が表示された場合、アプリが実行中で設定でACPが有効になっていることを確認してください。

acpxとの使用

acpx はAgent Client Protocolのヘッドレス CLIクライアントです。セッションの管理、プロンプトのキュー、エージェント出力のストリーミングを行います。

acpxのインストール

基本的な使い方

永続的な設定

--agent の繰り返しを避けるためにエージェントを ~/.acpx/config.json に追加します:
短縮形で使用します:

OpenClawとの使用

OpenClaw はacpx経由でACPをサポートします。bricks エージェントが ~/.acpx/config.json に設定されている場合(上記参照)、OpenClawはマルチエージェントオーケストレーションのためにデスクトップアプリのエージェントに接続できます。

WebSocket ブリッジ

stdio ではなく WebSocket を話す ACP クライアント — ブラウザベースのクライアントや Agmente iOS アプリを含む — の場合は、ブリッジを --ws モードで実行します。各 WebSocket クライアントは ACP Unix ソケットへの専用接続を持ち、WebSocket テキストフレーム 1 つが JSON-RPC メッセージ 1 つに対応します。
デフォルトのバインドホストは 0.0.0.0 です — --ws は LAN への公開を想定しています。必ず --auth-token を設定し、信頼できるネットワーク上でのみ実行してください。トークンを設定しない場合、バインドされたインターフェースに到達できる任意のクライアントが接続でき、起動時に警告が表示されます。
ブラウザスタイルのクライアントから接続するときは、アップグレードリクエストにトークンを添えてください:

Agmenteとの使用

Agmente は iOS の ACP クライアントで、iPhone や iPad から CTOR エージェントと対話できます。WebSocket で接続するため、上記の WebSocket ブリッジを使って ACP ソケットを LAN に公開してください:
Agmente でエージェント接続を ws://<your-mac-ip>:8765 に向け、トークンを設定してください。スマートフォンと CTOR を実行している Mac は同じネットワーク上にあるか、VPN や Tailscale のようなトンネル経由で到達可能である必要があります。 接続後、Agmente は上記の Session APIs を使って過去のセッションを一覧表示・再開し、実行中にモデルや思考レベルを切り替えます。Agmente から送信したプロンプトはデスクトップ GUI にもストリーミングされ、その逆も同様です。

プロジェクトパスのコピー

アクション(右上のドロップダウン)> プロジェクトパスをコピーを使用して、外部ツールで使用するために現在のプロジェクトのパスをすばやくコピーします。

データ

BRICKS_PROJECT_DESKTOP_DATA_DIR 環境変数を設定すると、ソケットの場所とその他すべてのアプリデータの場所を変更できます。