メインコンテンツへスキップ

セットアップ

ZedをFactory Droidに接続する前に、Zedがインストールされていることを確認してください。その後:
  1. Install the Factory Droid extension.
  2. Agent Panelを開きます。
  3. 右上角の**+**ボタンをクリックします。
  4. agentドロップダウンで、Factory Droidを選択します。
  5. 未認証の場合、認証が必要であることを示すメッセージが表示されます。
    1. 表示されるデバイスコードを控え、「Login」ボタンをクリックします。 Zed authentication screen showing a device code and Login button
    2. これによりWebブラウザが開き、Factoryへのログイン/サインアップを求められ、続いてデバイスコードを確認する画面が表示されます。 Factory web authentication screen prompting for device code confirmation

(代替)手動セットアップ

Zed内でDroidを手動で設定したい場合は、以下の手順に従ってください。
  1. Factory CLIがインストール済み(Windows ARMマシンを除くすべてのオペレーティングシステムでサポート)
    • 以下でインストール:
      curl -fsSL https://app.factory.ai/cli | sh
      
    • droidがPATHにあることを確認するか、フルパスをメモしてください。
  2. Zedがインストール済み
    • macOS、Linux、またはx86_64 WindowsのZed。
    • ~/.config/zed/settings.jsonへのアクセス。
  3. (オプション)Factory APIキー - ログインフローの代わりに、APIキーを設定できます:
You cannot create a Factory account or manage billing from inside Zed. All account setup happens in the Factory web app.

Factory Droidをエージェントとして設定(agent_servers

~/.config/zed/settings.jsonを編集し、agent_serversの下にFactory Droidエントリを追加します:
"agent_servers": {
  "Factory Droid": {
    "type": "custom",
    "command": "*path/to/droid/cli*",
    "args": ["exec", "--output-format", "acp"]
  }
}
  • type: "custom" – これがユーザー定義エージェントであることをZedに通知
  • commanddroidバイナリへのフルパス
  • args – Droidをexecモードで実行し、ZedにACPで通信
ログインフローの代わりにAPIキーを使用したい場合は、envブロックを追加します:
"agent_servers": {
  "Factory Droid": {
    "type": "custom",
    "command": "*path/to/droid/cli*",
    "args": ["exec", "--output-format", "acp"],
    "env": {
      "FACTORY_API_KEY": "$FACTORY_API_KEY"
    }
  }
}

ZedでDroidセッションを開始

agent_serverscontext_serversが設定されたら、Agent PanelからDroidとチャットを開始できます。

Agent Panelを開く

  • macOS:Cmd + ?
  • Linux/Windows:Ctrl + ?

Factory Droidで新しいチャットを開始

  1. Agent Panelを開きます。
  2. 右上角の**+**ボタンをクリックします。
  3. agentドロップダウンで、Factory Droidを選択します。
  4. チャットを開始します。
Zed Agent Panel with + button highlighted and Factory Droid selected in the agent dropdown

既存セッションの再開

Zedは現在、Agent PanelからFactory Droidの過去のセッションを再読み込みまたは復元する方法を提供していません。
  • 各Agent Panelの会話は実質的に新しいセッションです。
  • 長期間の作業では、パネルを開いたままにするか、簡潔な要約で新しいチャットを開始して、Droidが迅速に状況を把握できるようにします。

エディタコンテキストと制限事項

Zed用の専用Factory Droidプラグインはまだありませんが、Zedはエージェントチャット内での**@によるファイルタグ付け**をサポートしています。
  • Droidにコードの検査や変更を依頼する際は、@を使用して関連ファイルを参照します。
  • @タグを自然言語の指示と組み合わせて、CLIでの場合と同様に使用します。
例:
Refactor the state management in @src/components/TodoList.tsx to use a reducer instead of multiple useState hooks.
Zed Agent Panel showing a message with an @-tagged file reference

モデルと自動化

Zed内でのモデル選択と自動化動作は、Droid CLIと同じルールに従います。
  • Choosing Your Modelで説明されているのと同じパターンを使用して、モデルと推論レベルを選択します。
  • 計画時は低い自動化を使用し、計画を信頼できるようになったら高い自動化を使用します。
  • ZedはDroid CLIのデフォルトショートカットと同じ**自動化モードを切り替えるShift+Tab**をサポートしています。

(オプション)MCPサーバーの設定(context_servers

Zedのcontext_serversセクションは、MCPサーバーを設定する場所です。各エントリは実際のMCPサーバーで、ツールとコンテキストを公開し、チャット中にFactory Droidが呼び出すことができます。 例えば、Chrome DevTools MCPサーバーを追加するには:
"context_servers": {
  "chrome-devtools": {
    "command": "npx",
    "args": ["-y", "chrome-devtools@latest"]
  }
}
  • chrome-devtools – Zed内で使用されるサーバー名
  • command – 実行する実行可能ファイル(ここではnpx
  • args – MCPサーバーの起動方法;使用したい実際のサーバーにパッケージ名を更新
内部ツール、データソース、その他のサービス用にcontext_serversの下で複数のMCPサーバーを定義できます。 ZedでFactory Droidとチャットする際、これらのMCPサーバーをツールとして呼び出すことができます。

トラブルシューティング

Factory DroidがZedで表示されない、または応答しない場合:
  • CLIを確認:
    • 通常のターミナルでdroid exec --output-format acpを実行して、CLIとAPIキーが機能することを確認します。
  • settings.jsonを確認:
    • agent_serverscontext_serversブロックが有効なJSON(カンマと引用符を含む)であることを確認します。
    • DroidとMCPサーバー両方のcommandargsがZed外で正常に実行されることを確認します。
  • OSを確認:
    • Windows on ARMで実行していないことを確認します。
MCPサーバーが失敗している場合は、context_serversで使用されているのと同じcommandargsで手動で起動し、設定や依存関係の問題をデバッグしてみてください。