
ゲートウェイ経由でZedをClaudeに接続する
Zedは高速で、アシスタントも実用的ですが、Claudeのカスタムエンドポイントを設定する場所は、多くの人が最初に探す場所とは異なります。ネイティブのAnthropicプロバイダーにはベースURLを上書きする設定がないため、ゲートウェイに接続するにはZedのopenai_compatibleブロックを使うのが簡潔な方法です。
Anthropicプロバイダーを使わない理由
ZedにはネイティブのAnthropicプロバイダーが組み込まれているため、まずそれをゲートウェイに向けようと考えるのは自然です。ただし、このプロバイダーにはapi_url設定がなく、デフォルトのAnthropicホストから接続先を変更するための正式にサポートされたフィールドがありません。
多くの人がつまずく原因は、この制約です。無理に対応しようとするのではなく、汎用のopenai_compatible機構を通じてClaudeに接続します。この機構にはベースURLの設定があり、まさにサードパーティーのエンドポイント向けに設計されています。
ネイティブプロバイダーは接続先が固定されており、openai_compatibleプロバイダーは接続先を設定できる、と考えるとわかりやすくなります。複数モデルに対応するゲートウェイでは、設定可能な接続方法が適しています。同じブロックで、単一のapi_urlを通じてClaudeとゲートウェイが提供するほかのモデルを扱えるためです。これにより、異なるルールを持つ別々のプロバイダー機構に分散させず、エディターのモデル設定全体をまとめて管理できます。この選択が以降の設定を左右するため、編集を始める前に理解しておくことが大切です。openai_compatibleブロックがサポートされた接続方法だとわかれば、あとは各フィールドを埋めるだけです。
openai_compatibleブロックを追加
settings.jsonのlanguage_models.openai_compatibleの下に、名前を付けたプロバイダーを追加します。api_urlには、末尾に/v1を付けたゲートウェイのURLを設定してください。Zedはその下の/chat/completionsにリクエストを送るため、ゲートウェイのOpenAI互換インターフェースが応答します。
名前は自由に選べ、Zedのモデルメニューに表示されるラベルになります。同じブロックで複数のClaudeモデルを扱えます。各モデルは次の手順で定義します。
ここでは/v1の接尾辞が不可欠です。Zedはapi_urlに指定したURLの直下にチャット補完のパスを組み立てるため、/v1がないとリクエストが誤った場所に送られ、末尾にスラッシュがあるとパスが二重になる場合があります。ホストに/v1を付けた形で正確に設定すれば、正しくルーティングされます。編集後に設定を再読み込みすると、Zedがエラーなくブロックを解析できたか確認できます。プロバイダーが表示されない場合は、まずブロック内のJSONの構文ミスを確認してください。
available_modelsを定義
Zedはカスタムエンドポイント上のモデルを自動検出しないため、available_modelsに手動で列挙します。各エントリーには、ゲートウェイのIDと一致するname、メニュー用のdisplay_name、モデルに応じたmax_tokens値が必要です。
日常的な支援にはclaude-sonnet-4-5を使用し、特に難しいタスク向けにclaude-opus-4-8を追加のエントリーとして登録してください。明示的に列挙するため、メニューには意図したモデルだけが表示されます。
nameフィールドはゲートウェイのIDと完全に一致する必要があります。一方、display_nameは表示専用なので、メニューでは好きな名前を使えます。モデルが表示されるのに使用時にエラーになる場合、よくある原因はnameの誤りです。記憶を頼りに入力せず、ゲートウェイからIDを直接コピーしてください。実際に使用するモデルだけを列挙すると、メニューが短くなり、日々の作業で選びやすくなります。後からモデルを追加するのはわずかな編集で済むため、最初からすべて定義する必要はありません。
キーの保存場所
APIキーはsettings.jsonには記載しません。ZedはOSのキーチェーンに保存するか、AIPRIME_API_KEYなど、プロバイダー名に基づく環境変数から読み込みます。これにより、同期する設定に秘密情報を含めずに済みます。
保存したらアシスタントを開き、メニューからプロバイダーを選び、求められたらキーを入力します。以降、Zedはキーチェーンのキーで認証し、設定ファイルには認証情報が含まれません。
この分離は、Zedの設定を複数のマシン間で同期したり、dotfilesリポジトリに登録したりする場合に便利です。設定には秘密情報が含まれないため自由に共有でき、各マシンはキーチェーンや環境変数を通じてそれぞれのキーを提供します。設定ファイルにキーを埋め込むツールよりも、管理が明確になります。Zedの設定を同僚と安全に共有できるのもこのためです。同僚は自分のキーを使用し、あなたのキーが共有されることはありません。設定をdotfilesリポジトリにコミットする場合も同様です。
ACP経由のネイティブ接続
OpenAI互換インターフェースではなく、Anthropicのネイティブ動作を使いたい場合、ZedはClaude CodeとのAgent Client Protocolに対応しています。Claude Codeをエージェントとして実行し、ZedはACP経由で通信します。
この構成では、Claude Code側のANTHROPIC_BASE_URLをゲートウェイに向けるため、Zed自身にAnthropicのapi_urlを設定する必要はありません。エディター内で本来のネイティブMessagesの動作を利用する最も簡潔な方法です。
トレードオフとして、ACPではZedの軽量な組み込みアシスタントではなく、Claude Codeの完全なエージェントループを使用するため、機能は強力になる一方、使用感も重くなります。手早いインライン支援にはopenai_compatible経由を、エディター内から複数段階の編集を進める本格的なエージェントが必要な場合にはACP経由を選んでください。多くの人は軽量な方法から始め、エディター内で本格的なエージェントが必要になってからACPを導入します。両方を利用できる状態にしておき、タスクに応じて使い分けることもできます。
// Zed settings.json
{
"language_models": {
"openai_compatible": {
"aiprime": {
"api_url": "https://aiprimetech.io/v1",
"available_models": [
{ "name": "claude-sonnet-4-5",
"display_name": "Claude Sonnet",
"max_tokens": 200000 }
]
}
}
}
}
// Key goes in the keychain / AIPRIME_API_KEY env var, NOT this file.よくある質問
ZedでClaudeのベースURLを設定できないのはなぜですか?
api_urlはどこに設定しますか?
APIキーはどこに保存しますか?
Anthropicのネイティブ動作を利用するにはどうすればよいですか?
APIキーを取得 — Anthropicアカウントもウェイトリストへの登録も不要です。
APIキーを取得AI Prime Techは独立したAPIゲートウェイです。Anthropicとの提携関係はなく、同社の承認を受けておらず、同社の再販業者でもありません。Claudeおよび関連するモデル名は、それぞれの所有者の商標です。