日本語
ドキュメント
プロバイダー

プロバイダー

OpenCode で任意の LLM プロバイダーを使用します。

OpenCode は AI SDK (opens in a new tab) と Models.dev (opens in a new tab) を使用して 75 以上の LLM プロバイダーをサポートし、ローカルモデルの実行もサポートしています。

プロバイダーを追加するには、次のことを行う必要があります:

  1. /connect コマンドを使ってプロバイダーの API キーを追加します。
  2. OpenCode 設定でプロバイダーを構成します。

認証情報

/connect コマンドでプロバイダーの API キーを追加すると、それらは ~/.local/share/opencode/auth.json に保存されます。


設定

OpenCode 設定の provider セクションを通じて、プロバイダーをカスタマイズできます。


ベース URL

baseURL オプションを設定して、任意のプロバイダーのベース URL をカスタマイズできます。これは、プロキシサービスやカスタムエンドポイントを使う場合に便利です。

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "anthropic": {
      "options": {
        "baseURL": "https://api.anthropic.com/v1"
      }
    }
  }
}

モデルを非表示にする

blacklist オプションを使って、特定のモデルをプロバイダーの /models ピッカーから隠すことができます。プロバイダーが、使いたくない、または選びたくないモデルを公開している場合に便利です。

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "anthropic": {
      "blacklist": ["claude-opus-4-20250514"]
    }
  }
}

逆の whitelist オプションは、リストにあるモデル以外のすべてを隠します。

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "anthropic": {
      "whitelist": ["claude-sonnet-4-20250514"]
    }
  }
}

どちらのオプションも、モデル ID の配列を取ります — /models ピッカーに表示されるのと同じ ID です。

  • blacklist はリストにあるモデルをピッカーから除去します。
  • whitelist はリストにあるモデルのみを残し、それ以外を隠します。
  • 両者は組み合わせられます: whitelist でセットを絞り込んでから、blacklist でその中からエントリを除去します。

OpenCode Zen

OpenCode Zen は、OpenCode チームが提供する、OpenCode とうまく機能することがテスト・検証されたモデルのリストです。詳しくはこちら。

ヒント: 初めての方には、OpenCode Zen から始めることをおすすめします。

  1. TUI で /connect コマンドを実行し、OpenCode Zen を選択して、opencode.ai/auth (opens in a new tab) にアクセスします。

    /connect
  2. サインインし、請求情報を追加して、API キーをコピーします。

  3. API キーを貼り付けます。

    ┌ API key
    │
    │
    └ enter
  4. TUI で /models を実行して、おすすめのモデルのリストを確認します。

    /models

これは OpenCode の他のプロバイダーと同じように動作し、使用は完全に任意です。


プロバイダー一覧

いくつかのプロバイダーを詳しく見てみましょう。リストにプロバイダーを追加したい場合は、お気軽に PR を開いてください。

注記: ここに見当たらないプロバイダーがありますか?PR を提出してください。


302.AI

  1. 302.AI コンソール (opens in a new tab)にアクセスし、アカウントを作成して、API キーを生成します。

  2. /connect コマンドを実行し、302.AI を検索します。

    /connect
  3. 302.AI の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行してモデルを選択します。

    /models

Amazon Bedrock

OpenCode で Amazon Bedrock を使うには:

  1. Amazon Bedrock コンソールの Model catalog にアクセスし、使いたいモデルへのアクセスをリクエストします。

    ヒント: Amazon Bedrock で使いたいモデルへのアクセス権を持っている必要があります。

  2. 次のいずれかの方法を使って認証を構成します:

    環境変数(クイックスタート)

    opencode の実行時に、次の環境変数のいずれかを設定します:

    # Option 1: Using AWS access keys
    AWS_ACCESS_KEY_ID=XXX AWS_SECRET_ACCESS_KEY=YYY opencode
     
    # Option 2: Using named AWS profile
    AWS_PROFILE=my-profile opencode
     
    # Option 3: Using Bedrock bearer token
    AWS_BEARER_TOKEN_BEDROCK=XXX opencode

    または、bash プロファイルに追加します:

    ~/.bash_profile
    export AWS_PROFILE=my-dev-profile
    export AWS_REGION=us-east-1

    設定ファイル(推奨)

    プロジェクト固有または永続的な設定には、opencode.json を使用します:

    opencode.json
    {
      "$schema": "https://opencode.ai/config.json",
      "provider": {
        "amazon-bedrock": {
          "options": {
            "region": "us-east-1",
            "profile": "my-aws-profile"
          }
        }
      }
    }

    利用可能なオプション:

    • region - AWS リージョン(例: us-east-1 、eu-west-1 )

    • profile - ~/.aws/credentials の AWS 名前付きプロファイル

    • endpoint - VPC エンドポイント用のカスタムエンドポイント URL(汎用 baseURL オプションのエイリアス)

    ヒント: 設定ファイルのオプションは環境変数よりも優先されます。

    高度: VPC エンドポイント

    Bedrock に VPC エンドポイントを使っている場合:

    opencode.json
    {
      "$schema": "https://opencode.ai/config.json",
      "provider": {
        "amazon-bedrock": {
          "options": {
            "region": "us-east-1",
            "profile": "production",
            "endpoint": "https://bedrock-runtime.us-east-1.vpce-xxxxx.amazonaws.com"
          }
        }
      }
    }

    注記: endpoint オプションは、AWS 固有の用語を使った汎用 baseURL オプションのエイリアスです。endpoint と baseURL の両方が指定された場合、endpoint が優先されます。

    認証方法

    • AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY : AWS コンソールで IAM ユーザーを作成し、アクセスキーを生成します
    • AWS_PROFILE : ~/.aws/credentials の名前付きプロファイルを使用します。まず aws configure --profile my-profile または aws sso login で構成します
    • AWS_BEARER_TOKEN_BEDROCK : Amazon Bedrock コンソールから長期 API キーを生成します
    • AWS_WEB_IDENTITY_TOKEN_FILE / AWS_ROLE_ARN : EKS IRSA(サービスアカウント用 IAM ロール)や、OIDC フェデレーションを使う他の Kubernetes 環境向け。これらの環境変数は、サービスアカウントのアノテーションを使うときに Kubernetes によって自動的に注入されます。

    認証の優先順位

    Amazon Bedrock は、次の認証の優先順位を使用します:

    1. ベアラートークン - AWS_BEARER_TOKEN_BEDROCK 環境変数または /connect コマンドからのトークン

    2. AWS 認証情報チェーン - プロファイル、アクセスキー、共有認証情報、IAM ロール、Web Identity トークン(EKS IRSA)、インスタンスメタデータ

    注記: ベアラートークンが設定されている場合(/connect または AWS_BEARER_TOKEN_BEDROCK 経由)、構成されたプロファイルを含むすべての AWS 認証情報メソッドよりも優先されます。

  3. /models コマンドを実行して、使いたいモデルを選択します。

    /models

注記: カスタム推論プロファイルの場合は、キーにモデルとプロバイダーの名前を使い、id プロパティに arn を設定します。これにより正しいキャッシュが保証されます。

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "amazon-bedrock": {
      // ...
      "models": {
        "anthropic-claude-sonnet-4.5": {
          "id": "arn:aws:bedrock:us-east-1:xxx:application-inference-profile/yyy"
        }
      }
    }
  }
}

Anthropic

  1. サインアップしたら、/connect コマンドを実行して Anthropic を選択します。

    /connect
  2. ここで Claude Pro/Max オプションを選択でき、ブラウザが開いて認証を求められます。

    ┌ Select auth method
    │
    │ Manually enter API Key
    └
  3. これで、/models コマンドを使うと、すべての Anthropic モデルが利用できるようになります。

    /models

Claude Pro/Max モデルを OpenCode で使えるようにするプラグインがあります。Anthropic はこれを明示的に禁止しています。

以前のバージョンの OpenCode にはこれらのプラグインがバンドルされていましたが、1.3.0 以降はそうではなくなりました。

他の企業は開発者ツールでの選択の自由をサポートしており、次のサブスクリプションをセットアップなしで OpenCode で使えます:

  • ChatGPT Plus
  • Github Copilot
  • Gitlab Duo

Atomic Chat

OpenAI 互換の API サーバー(デフォルトのエンドポイントは http://127.0.0.1:1337/v1)の背後でローカル LLM を実行するデスクトップアプリケーションである Atomic Chat (opens in a new tab) を通じて、ローカルモデルを使うように opencode を構成できます。

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "atomic-chat": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Atomic Chat (local)",
      "options": {
        "baseURL": "http://127.0.0.1:1337/v1"
      },
      "models": {
        "<your-model-id>": {
          "name": "<your-model-name>"
        }
      }
    }
  }
}

この例では:

  • atomic-chat はカスタムプロバイダー ID です。これは任意の文字列にできます。
  • npm は、このプロバイダーに使うパッケージを指定します。ここでは、あらゆる OpenAI 互換 API に @ai-sdk/openai-compatible を使用しています。
  • name は、UI でのプロバイダーの表示名です。
  • options.baseURL は、ローカルサーバーのエンドポイントです。Atomic Chat のセットアップに合わせてホストとポートを変更してください。
  • models は、モデル ID とその表示名のマップです。各 ID は GET /v1/models が返す id と一致する必要があります。Atomic Chat に現在読み込まれている id を一覧表示するには、curl http://127.0.0.1:1337/v1/models を実行します。

ヒント: ツール呼び出しがうまく機能しない場合は、ツール呼び出しのサポートが強力な読み込み済みモデル(例えば Qwen-Coder や DeepSeek-Coder のバリアント)を選んでください。


Azure OpenAI

注記: 「I'm sorry, but I cannot assist with that request」エラーが発生する場合は、Azure リソースのコンテンツフィルターを DefaultV2 から Default に変更してみてください。

  1. Azure ポータル (opens in a new tab)にアクセスし、Azure OpenAI リソースを作成します。次のものが必要です:

    • Resource name : これは API エンドポイントの一部になります( https://RESOURCE_NAME.openai.azure.com/ )
    • API key : リソースの KEY 1 または KEY 2 のいずれか
  2. Azure AI Foundry (opens in a new tab) にアクセスし、モデルをデプロイします。

    注記: opencode が正しく動作するには、デプロイ名がモデル名と一致する必要があります。

  3. /connect コマンドを実行し、Azure を検索します。

    /connect
  4. API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  5. リソース名を環境変数として設定します:

    AZURE_RESOURCE_NAME=XXX opencode

    または、bash プロファイルに追加します:

    ~/.bash_profile
    export AZURE_RESOURCE_NAME=XXX
  6. /models コマンドを実行して、デプロイしたモデルを選択します。

    /models

Microsoft Entra ID (Azure CLI)

API キーの代わりに Azure CLI セッションを使用できます。Azure CLI をインストール (opens in a new tab)して az login を実行し、/connect で Azure、Microsoft Entra ID (Azure CLI) の順に選択します。プロンプトに従って Azure リソース名を入力してください。別テナントのリソースには az login --tenant TENANT_ID を使用します。

Azure portal (opens in a new tab) または Microsoft Foundry (opens in a new tab) で Azure OpenAI / Foundry リソースを開くとリソース名を確認できます。これは endpoint の先頭部分でもあり、https://my-models.openai.azure.com/ や https://my-models.services.ai.azure.com/ の my-models に相当します。リソースを一覧できる場合は、次のコマンドでも名前とリソースグループを確認できます。

az cognitiveservices account list \
  --query "[].{name:name,resourceGroup:resourceGroup}" \
  --output table

OpenCode は Azure 管理 API に問い合わせたり、デプロイを自動検出したりしません。カタログ内の名前がデプロイ名と一致するモデルを選ぶか、デプロイ名を明示的に設定してください。

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "azure": {
      "models": {
        "gpt-5-mini": {
          "id": "gpt-production"
        }
      }
    }
  }
}

Azure OpenAI モデルには Cognitive Services OpenAI User、その他の Foundry モデルには Cognitive Services User の推論ロールを割り当てます。OpenCode は 2.54.0 より前のバージョンを含む Azure CLI 経由で access token を更新するため、CLI セッションが期限切れになったときだけ再ログインが必要です。


Azure Cognitive Services

  1. Azure ポータル (opens in a new tab)にアクセスし、Azure OpenAI リソースを作成します。次のものが必要です:

    • Resource name : これは API エンドポイントの一部になります( https://AZURE_COGNITIVE_SERVICES_RESOURCE_NAME.cognitiveservices.azure.com/ )
    • API key : リソースの KEY 1 または KEY 2 のいずれか
  2. Azure AI Foundry (opens in a new tab) にアクセスし、モデルをデプロイします。

    注記: opencode が正しく動作するには、デプロイ名がモデル名と一致する必要があります。

  3. /connect コマンドを実行し、Azure Cognitive Services を検索します。

    /connect
  4. API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  5. リソース名を環境変数として設定します:

    AZURE_COGNITIVE_SERVICES_RESOURCE_NAME=XXX opencode

    または、bash プロファイルに追加します:

    ~/.bash_profile
    export AZURE_COGNITIVE_SERVICES_RESOURCE_NAME=XXX
  6. /models コマンドを実行して、デプロイしたモデルを選択します。

    /models

Baseten

  1. Baseten (opens in a new tab) にアクセスし、アカウントを作成して、API キーを生成します。

  2. /connect コマンドを実行し、Baseten を検索します。

    /connect
  3. Baseten の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行してモデルを選択します。

    /models

Cerebras

  1. Cerebras コンソール (opens in a new tab)にアクセスし、アカウントを作成して、API キーを生成します。

  2. /connect コマンドを実行し、Cerebras を検索します。

    /connect
  3. Cerebras の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して、Qwen 3 Coder 480B のようなモデルを選択します。

    /models

Cloudflare AI Gateway

Cloudflare AI Gateway を使うと、統一されたエンドポイントを通じて OpenAI、Anthropic、Workers AI などのモデルにアクセスできます。統一請求 (opens in a new tab)により、各プロバイダーに個別の API キーは不要です。

  1. Cloudflare ダッシュボード (opens in a new tab)にアクセスし、AI > AI Gateway に移動して、新しいゲートウェイを作成します。Account ID と Gateway ID をメモしておきます。

  2. /connect コマンドを実行し、Cloudflare AI Gateway を検索します。

    /connect
  3. 求められたら Account ID を入力します。

    ┌ Enter your Cloudflare Account ID
    │
    │
    └ enter
  4. 求められたら Gateway ID を入力します。

    ┌ Enter your Cloudflare AI Gateway ID
    │
    │
    └ enter
  5. Cloudflare API token を入力します。

    ┌ Gateway API token
    │
    │
    └ enter
  6. /models コマンドを実行してモデルを選択します。

    /models

    opencode 設定を通じてモデルを追加することもできます。

    opencode.json
    {
      "$schema": "https://opencode.ai/config.json",
      "provider": {
        "cloudflare-ai-gateway": {
          "models": {
            "openai/gpt-4o": {},
            "anthropic/claude-sonnet-4": {}
          }
        }
      }
    }

    あるいは、/connect を使う代わりに環境変数を設定することもできます。

    ~/.bash_profile
    export CLOUDFLARE_ACCOUNT_ID=your-32-character-account-id
    export CLOUDFLARE_GATEWAY_ID=your-gateway-id
    export CLOUDFLARE_API_TOKEN=your-api-token

Cloudflare Workers AI

Cloudflare Workers AI を使うと、REST API を介して Cloudflare のグローバルネットワーク上で直接 AI モデルを実行でき、サポートされているモデルには個別のプロバイダーアカウントは不要です。

  1. Cloudflare ダッシュボード (opens in a new tab)にアクセスし、Workers AI に移動して Use REST API を選択し、Account ID を取得して API トークンを作成します。

  2. /connect コマンドを実行し、Cloudflare Workers AI を検索します。

    /connect
  3. 求められたら Account ID を入力します。

    ┌ Enter your Cloudflare Account ID
    │
    │
    └ enter
  4. Cloudflare API key を入力します。

    ┌ API key
    │
    │
    └ enter
  5. /models コマンドを実行してモデルを選択します。

    /models

    あるいは、/connect を使う代わりに環境変数を設定することもできます。

    ~/.bash_profile
    export CLOUDFLARE_ACCOUNT_ID=your-32-character-account-id
    export CLOUDFLARE_API_KEY=your-api-token

Cortecs

  1. Cortecs コンソール (opens in a new tab)にアクセスし、アカウントを作成して、API キーを生成します。

  2. /connect コマンドを実行し、Cortecs を検索します。

    /connect
  3. Cortecs の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して、Kimi K2 Instruct のようなモデルを選択します。

    /models

DeepSeek

  1. DeepSeek コンソール (opens in a new tab)にアクセスし、アカウントを作成して、Create new API key をクリックします。

  2. /connect コマンドを実行し、DeepSeek を検索します。

    /connect
  3. DeepSeek の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して、DeepSeek V4 Pro のような DeepSeek モデルを選択します。

    /models

Deep Infra

  1. Deep Infra ダッシュボード (opens in a new tab)にアクセスし、アカウントを作成して、API キーを生成します。

  2. /connect コマンドを実行し、Deep Infra を検索します。

    /connect
  3. Deep Infra の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行してモデルを選択します。

    /models

DigitalOcean

DigitalOcean の Inference Engine (opens in a new tab) は、GPT-OSS、Llama、Qwen、DeepSeek などのオープンモデルへのアクセスに加え、各リクエストをタスクに最も安価、最速、または最適なモデルにルーティングするカスタム Inference Routers (opens in a new tab) を提供します。

OpenCode は 2 つの認証方法をサポートしています:

  • OAuth(推奨) — DigitalOcean アカウントにサインインします。OpenCode はあなたの DigitalOcean API トークンを推論に直接使用し、Inference Routers を検出します。
  • Model Access Key — DigitalOcean コンソールから既存のキーを貼り付けます。

OAuth(推奨)

  1. /connect コマンドを実行し、DigitalOcean を検索します。

    /connect
  2. Login with DigitalOcean を選択します。

    ┌ Select auth method
    │
    │ Login with DigitalOcean
    │ Paste Model Access Key
    └
  3. ブラウザが開いて OpenCode を認可します。サインインして承認します。

    注記: OpenCode は genai:read と inference:query の OAuth スコープをリクエストします。あなたの DigitalOcean API トークンは推論に直接使用され、別途 Model Access Key が作成されることはありません。

    注記: Inference Routers は OAuth 後にのみモデルピッカーに表示されます。Model Access Key を手動で貼り付けても、ルーターは検出されません。

  4. /models コマンドを実行します。Inference Routers は、モデル選択で router: の形式で表示されます。

    /models
  5. 新しく作成された Inference Routers を取り込むには、/connect を再実行して DigitalOcean を再度選択します。

モデルアクセスキーの使用

キーを直接貼り付けたい場合:

  1. DigitalOcean コンソール (opens in a new tab)の Inference セクションの Manage ページにアクセスし、新しいキーを作成します。

  2. /connect コマンドを実行し、DigitalOcean を選択して、Paste Model Access Key を選択します。

    ┌ Enter your DigitalOcean Model Access Key
    │
    │
    └ enter

    注記: この方法では Inference Routers は自動検出されません。モデルピッカーに表示するには、代わりに OAuth でサインインしてください。

  3. /models コマンドを実行してモデルを選択します。

    /models

環境変数

あるいは、Model Access Key を環境変数として設定します。

export DIGITALOCEAN_ACCESS_TOKEN=your-model-access-key

推論ルーター

Inference Routers を使うと、複数のモデルにわたるルーティングポリシーを定義できます — タスクに基づいて、リクエストごとに最も安価、最速、または最も適切なモデルを選びます。OAuth の後、OpenCode は各ルーターをモデルピッカーに router:<router-name> として表示します。

ルーターモデルの選択は、他の任意のモデルのドロップイン代替です — OpenCode はリクエストを転送し、DigitalOcean がルーターのポリシーに基づいて基盤となるモデルを選びます。Inference Routers (opens in a new tab) について詳しくはこちら。


Eden AI

Eden AI (opens in a new tab) は EU を拠点とするゲートウェイで、単一の OpenAI 互換 API を通じて複数ベンダーのモデルを提供します。EU 内での推論が必要なチーム向けに、専用の EU エンドポイントもあります。

  1. Eden AI プラットフォーム (opens in a new tab)でアカウントを作成し、API キーを生成します。

  2. /connect コマンドを実行し、Eden AI を検索します。

    /connect
  3. Eden AI の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行し、Mistral Large 3 や Claude Sonnet 5 などのモデルを選択します。

    /models

    Eden AI のモデル ID 自体が vendor/model 形式なので、完全な参照は edenai/anthropic/claude-sonnet-5 のように 3 つの部分で構成されます。

  5. Eden AI の EU ゲートウェイを使用するには、ベース URL を設定します。

    opencode.json
    {
      "$schema": "https://opencode.ai/config.json",
      "provider": {
        "edenai": {
          "options": {
            "baseURL": "https://api.eu.edenai.run/v3"
          }
        }
      }
    }

    デフォルトは https://api.edenai.run/v3 です。この設定でグローバルエンドポイントを EU エンドポイントに切り替えます。EU エンドポイントではカタログのうち EU で利用可能なモデルのみが提供されるため、手順 4 で選んだモデルにアクセスできない場合があります。


FrogBot

  1. FrogBot ダッシュボード (opens in a new tab)にアクセスし、アカウントを作成して、API キーを生成します。

  2. /connect コマンドを実行し、FrogBot を検索します。

    /connect
  3. FrogBot の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行してモデルを選択します。

    /models

Fireworks AI

  1. Fireworks AI コンソール (opens in a new tab)にアクセスし、アカウントを作成して、Create API Key をクリックします。

  2. /connect コマンドを実行し、Fireworks AI を検索します。

    /connect
  3. Fireworks AI の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して、Kimi K2 Instruct のようなモデルを選択します。

    /models

GitLab Duo

注意: OpenCode の GitLab Duo サポートは実験的です。機能、設定、 動作は今後のリリースで変更される可能性があります。

OpenCode は GitLab Duo Agent Platform (opens in a new tab) と連携し、 ネイティブのツール呼び出し機能を備えた AI 駆動のエージェントチャットを提供します。

注記: GitLab Duo Agent Platform には Premium または Ultimate の GitLab サブスクリプションが必要です。GitLab.com および GitLab Self-Managed で利用できます。 完全な要件については GitLab Duo Agent Platform の前提条件 (opens in a new tab) を参照してください。

  1. /connect コマンドを実行して GitLab を選択します。

    /connect
  2. 認証方法を選択します:

    ┌ Select auth method
    │
    │ OAuth (Recommended)
    │ Personal Access Token
    └

    OAuth を使う(推奨)

    OAuth を選択すると、ブラウザが開いて認可します。

    Personal Access Token を使う

    1. GitLab User Settings > Access Tokens (opens in a new tab) にアクセスします
    2. Add new token をクリックします
    3. Name: OpenCode 、Scopes: api
    4. トークン(glpat- で始まる)をコピーします
    5. ターミナルに入力します
  3. /models コマンドを実行して、利用可能なモデルを確認します。

    /models

    3 つの Claude ベースのモデルが利用できます:

    • duo-chat-haiku-4-5 (デフォルト)- 素早いタスク向けの高速な応答
    • duo-chat-sonnet-4-5 - ほとんどのワークフロー向けのバランスの取れたパフォーマンス
    • duo-chat-opus-4-5 - 複雑な分析に最も優れた能力

注記: トークンを opencode の認証ストレージに保存したくない場合は、'GITLAB_TOKEN' 環境変数を指定することもできます。

セルフホスト GitLab

注記: OpenCode は、セッションタイトルの生成のような一部の AI タスクに小さなモデルを使用します。 デフォルトでは Zen がホストする gpt-5-nano を使うように構成されています。OpenCode を 自分の GitLab ホスト型インスタンスのみを使うようにロックするには、 opencode.json ファイルに次を追加します。セッション共有も無効にすることをおすすめします。

{
  "$schema": "https://opencode.ai/config.json",
  "small_model": "gitlab/duo-chat-haiku-4-5",
  "share": "disabled"
}

セルフホスト型の GitLab インスタンスの場合:

export GITLAB_INSTANCE_URL=https://gitlab.company.com
export GITLAB_TOKEN=glpat-...

インスタンスがカスタムの AI Gateway を実行している場合:

GITLAB_AI_GATEWAY_URL=https://ai-gateway.company.com

または、bash プロファイルに追加します:

~/.bash_profile
export GITLAB_INSTANCE_URL=https://gitlab.company.com
export GITLAB_AI_GATEWAY_URL=https://ai-gateway.company.com
export GITLAB_TOKEN=glpat-...

注記: GitLab 管理者は次のことを行う必要があります:

  1. ユーザー、グループ、またはインスタンスに対して GitLab Duo を有効にする (opens in a new tab)
  2. Agent Platform を有効にする (opens in a new tab)(GitLab 18.8+)か、ベータおよび実験的な機能を有効にする (opens in a new tab)(GitLab 18.7 以前)
  3. Self-Managed の場合はインスタンスを構成する (opens in a new tab)
セルフホストインスタンスの OAuth

セルフホスト型インスタンスで OAuth を機能させるには、コールバック URL http://127.0.0.1:8080/callback と次のスコープを持つ 新しいアプリケーション(Settings → Applications)を作成する必要があります:

  • api(あなたに代わって API にアクセス)
  • read_user(あなたの個人情報を読み取る)
  • read_repository(リポジトリへの読み取り専用アクセスを許可)

その後、アプリケーション ID を環境変数として公開します:

export GITLAB_OAUTH_CLIENT_ID=your_application_id_here

詳しいドキュメントは opencode-gitlab-auth (opens in a new tab) のホームページにあります。

設定

opencode.json を通じてカスタマイズします:

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "gitlab": {
      "options": {
        "instanceUrl": "https://gitlab.com"
      }
    }
  }
}
GitLab Duo Agent Platform(DAP)のワークフローモデル

DAP ワークフローモデルは、標準のエージェントチャットの代わりに、GitLab の Duo Workflow Service (DWS) を通じてツール呼び出しをルーティングする、 代替の実行パスを提供します。 duo-workflow-* モデルが選択されると、OpenCode は次のことを行います:

  1. GitLab の名前空間から利用可能なモデルを検出します
  2. 複数のモデルが利用可能な場合、選択ピッカーを表示します
  3. 後続の起動を高速にするために、選択したモデルをディスクにキャッシュします
  4. ツール実行リクエストを、OpenCode の権限ゲート付きツールシステムを通じてルーティングします

利用可能な DAP ワークフローモデルは duo-workflow-* の命名規則に従い、 GitLab インスタンスから動的に検出されます。

GitLab API ツール(任意ですが強く推奨)

GitLab ツール(マージリクエスト、issue、パイプライン、CI/CD など)にアクセスするには:

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "plugin": ["opencode-gitlab-plugin"]
}

このプラグインは、MR レビュー、issue 追跡、パイプライン監視などを含む、包括的な GitLab リポジトリ管理機能を提供します。


GitHub Copilot

GitHub Copilot サブスクリプションを opencode で使うには:

注記: 一部のモデルは、使うために Pro+ サブスクリプション (opens in a new tab)が必要な場合があります。

  1. /connect コマンドを実行し、GitHub Copilot を検索します。

    /connect
  2. github.com/login/device (opens in a new tab) に移動してコードを入力します。

    ┌ Login with GitHub Copilot
    │
    │ https://github.com/login/device
    │
    │ Enter code: 8F43-6FCF
    │
    └ Waiting for authorization...
  3. これで /models コマンドを実行して、使いたいモデルを選択します。

    /models

GMI Cloud

OpenCode で GMI Cloud を使うには:

  1. GMI Cloud コンソール (opens in a new tab)にアクセスして API キーを作成します。エンドポイントの詳細については、API リファレンス (opens in a new tab)も参照できます。

  2. /connect コマンドを実行し、GMI Cloud を検索します。

    /connect
  3. GMI Cloud の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して、使いたいモデルを選択します。

    /models

Google Vertex AI

OpenCode で Google Vertex AI を使うには:

  1. Google Cloud Console の Model Garden にアクセスし、お使いのリージョンで利用可能なモデルを確認します。

    注記: Vertex AI API が有効になっている Google Cloud プロジェクトが必要です。

  2. 必要な環境変数を設定します:

    • GOOGLE_CLOUD_PROJECT : あなたの Google Cloud プロジェクト ID

    • VERTEX_LOCATION (任意): Vertex AI のリージョン(デフォルトは global )

    • 認証(いずれかを選択):

      • GOOGLE_APPLICATION_CREDENTIALS : サービスアカウントの JSON キーファイルへのパス
      • gcloud CLI を使って認証: gcloud auth application-default login

    opencode の実行時に設定します。

    GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json GOOGLE_CLOUD_PROJECT=your-project-id opencode

    または、bash プロファイルに追加します。

    ~/.bash_profile
    export GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json
    export GOOGLE_CLOUD_PROJECT=your-project-id
    export VERTEX_LOCATION=global

ヒント: global リージョンは、追加費用なしで可用性を向上させ、エラーを減らします。データレジデンシーの要件にはリージョナルエンドポイント(例: us-central1)を使用してください。詳しくはこちら (opens in a new tab)

  1. /models コマンドを実行して、使いたいモデルを選択します。

    /models

Groq

  1. Groq コンソール (opens in a new tab)にアクセスし、Create API Key をクリックして、キーをコピーします。

  2. /connect コマンドを実行し、Groq を検索します。

    /connect
  3. プロバイダーの API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して、使いたいものを選択します。

    /models

Hugging Face

Hugging Face Inference Providers (opens in a new tab) は、17 以上のプロバイダーがサポートするオープンモデルへのアクセスを提供します。

  1. Hugging Face の設定 (opens in a new tab)にアクセスし、Inference Providers への呼び出しを行う権限を持つトークンを作成します。

  2. /connect コマンドを実行し、Hugging Face を検索します。

    /connect
  3. Hugging Face のトークンを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して、Kimi-K2-Instruct や GLM-4.6 のようなモデルを選択します。

    /models

Helicone

Helicone (opens in a new tab) は、AI アプリケーション向けのロギング、監視、分析を提供する LLM 可観測性プラットフォームです。Helicone AI Gateway は、モデルに基づいてリクエストを適切なプロバイダーに自動的にルーティングします。

  1. Helicone (opens in a new tab) にアクセスし、アカウントを作成して、ダッシュボードから API キーを生成します。

  2. /connect コマンドを実行し、Helicone を検索します。

    /connect
  3. Helicone の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行してモデルを選択します。

    /models

より多くのプロバイダーや、キャッシュやレート制限のような高度な機能については、Helicone のドキュメント (opens in a new tab)を確認してください。

任意の設定

Helicone の機能やモデルが opencode を通じて自動的に構成されない場合は、いつでも自分で構成できます。

Helicone のモデルディレクトリ (opens in a new tab)はこちらです。追加したいモデルの ID を取得するためにこれが必要です。

~/.config/opencode/opencode.jsonc
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "helicone": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Helicone",
      "options": {
        "baseURL": "https://ai-gateway.helicone.ai",
      },
      "models": {
        "gpt-4o": {
          // Model ID (from Helicone's model directory page)
          "name": "GPT-4o", // Your own custom name for the model
        },
        "claude-sonnet-4-20250514": {
          "name": "Claude Sonnet 4",
        },
      },
    },
  },
}

カスタムヘッダー

Helicone は、キャッシュ、ユーザー追跡、セッション管理などの機能向けにカスタムヘッダーをサポートしています。options.headers を使ってプロバイダー設定に追加します:

~/.config/opencode/opencode.jsonc
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "helicone": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Helicone",
      "options": {
        "baseURL": "https://ai-gateway.helicone.ai",
        "headers": {
          "Helicone-Cache-Enabled": "true",
          "Helicone-User-Id": "opencode",
        },
      },
    },
  },
}
セッション追跡

Helicone の Sessions (opens in a new tab) 機能を使うと、関連する LLM リクエストをグループ化できます。opencode-helicone-session (opens in a new tab) プラグインを使って、各 OpenCode の会話を Helicone のセッションとして自動的にログに記録します。

npm install -g opencode-helicone-session

設定に追加します。

opencode.json
{
  "plugin": ["opencode-helicone-session"]
}

このプラグインは、リクエストに Helicone-Session-Id と Helicone-Session-Name ヘッダーを注入します。Helicone の Sessions ページでは、各 OpenCode の会話が個別のセッションとして表示されます。

一般的な Helicone ヘッダー
HeaderDescription
Helicone-Cache-Enabledレスポンスのキャッシュを有効にします(true/false)
Helicone-User-Idユーザーごとにメトリクスを追跡します
Helicone-Property-[Name]カスタムプロパティを追加します(例: Helicone-Property-Environment)
Helicone-Prompt-Idリクエストをプロンプトのバージョンに関連付けます

利用可能なすべてのヘッダーについては、Helicone Header Directory (opens in a new tab) を参照してください。


llama.cpp

llama.cpp (opens in a new tab) の llama-server ユーティリティを通じて、ローカルモデルを使うように opencode を構成できます。

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "llama.cpp": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "llama-server (local)",
      "options": {
        "baseURL": "http://127.0.0.1:8080/v1"
      },
      "models": {
        "qwen3-coder:a3b": {
          "name": "Qwen3-Coder: a3b-30b (local)",
          "limit": {
            "context": 128000,
            "output": 65536
          }
        }
      }
    }
  }
}

この例では:

  • llama.cpp はカスタムプロバイダー ID です。これは任意の文字列にできます。
  • npm は、このプロバイダーに使うパッケージを指定します。ここでは、あらゆる OpenAI 互換 API に @ai-sdk/openai-compatible を使用しています。
  • name は、UI でのプロバイダーの表示名です。
  • options.baseURL は、ローカルサーバーのエンドポイントです。
  • models は、モデル ID とその構成のマップです。モデル名はモデル選択リストに表示されます。

IO.NET

IO.NET は、さまざまなユースケース向けに最適化された 17 のモデルを提供します:

  1. IO.NET コンソール (opens in a new tab)にアクセスし、アカウントを作成して、API キーを生成します。

  2. /connect コマンドを実行し、IO.NET を検索します。

    /connect
  3. IO.NET の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行してモデルを選択します。

    /models

LM Studio

LM Studio を通じて、ローカルモデルを使うように opencode を構成できます。

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "lmstudio": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "LM Studio (local)",
      "options": {
        "baseURL": "http://127.0.0.1:1234/v1"
      },
      "models": {
        "google/gemma-3n-e4b": {
          "name": "Gemma 3n-e4b (local)"
        }
      }
    }
  }
}

この例では:

  • lmstudio はカスタムプロバイダー ID です。これは任意の文字列にできます。
  • npm は、このプロバイダーに使うパッケージを指定します。ここでは、あらゆる OpenAI 互換 API に @ai-sdk/openai-compatible を使用しています。
  • name は、UI でのプロバイダーの表示名です。
  • options.baseURL は、ローカルサーバーのエンドポイントです。
  • models は、モデル ID とその構成のマップです。モデル名はモデル選択リストに表示されます。

Moonshot AI

Moonshot AI の Kimi K2 を使うには:

  1. Moonshot AI コンソール (opens in a new tab)にアクセスし、アカウントを作成して、Create API key をクリックします。

  2. /connect コマンドを実行し、Moonshot AI を検索します。

    /connect
  3. Moonshot の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して Kimi K2 を選択します。

    /models

MiniMax

  1. MiniMax API コンソール (opens in a new tab)にアクセスし、アカウントを作成して、API キーを生成します。

  2. /connect コマンドを実行し、MiniMax を検索します。

    /connect
  3. MiniMax の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して、M2.1 のようなモデルを選択します。

    /models

Modal

  1. 使用するモデル用の共有 Endpoint (opens in a new tab)を作成します。

  2. proxy token (opens in a new tab)を作成し、ID と secret をピリオドで連結します。

    wk-<id>.ws-<secret>
  3. /connect を実行して Modal を検索し、連結した proxy token を入力します。

    /connect
  4. /models を実行して Modal workspace の endpoint を選択します。

    /models

NVIDIA

NVIDIA は、build.nvidia.com (opens in a new tab) を通じて Nemotron モデルや他の多くのオープンモデルへのアクセスを無料で提供します。

  1. build.nvidia.com (opens in a new tab) にアクセスし、アカウントを作成して、API キーを生成します。

  2. /connect コマンドを実行し、NVIDIA を検索します。

    /connect
  3. NVIDIA の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して、nemotron-3-super-120b-a12b のようなモデルを選択します。

    /models

オンプレミス / NIM

カスタムのベース URL を設定して、NVIDIA NIM (opens in a new tab) 経由でローカルに NVIDIA モデルを使うこともできます。

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "nvidia": {
      "options": {
        "baseURL": "http://localhost:8000/v1"
      }
    }
  }
}

環境変数

あるいは、API キーを環境変数として設定します。

export NVIDIA_API_KEY=nvapi-your-key-here

Nebius Token Factory

  1. Nebius Token Factory コンソール (opens in a new tab)にアクセスし、アカウントを作成して、Add Key をクリックします。

  2. /connect コマンドを実行し、Nebius Token Factory を検索します。

    /connect
  3. Nebius Token Factory の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して、Kimi K2 Instruct のようなモデルを選択します。

    /models

Ollama

Ollama を通じて、ローカルモデルを使うように opencode を構成できます。

ヒント: Ollama は OpenCode 向けに自動的に設定できます。詳細については Ollama の連携ドキュメント (opens in a new tab)を参照してください。

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "ollama": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Ollama (local)",
      "options": {
        "baseURL": "http://localhost:11434/v1"
      },
      "models": {
        "llama2": {
          "name": "Llama 2"
        }
      }
    }
  }
}

この例では:

  • ollama はカスタムプロバイダー ID です。これは任意の文字列にできます。
  • npm は、このプロバイダーに使うパッケージを指定します。ここでは、あらゆる OpenAI 互換 API に @ai-sdk/openai-compatible を使用しています。
  • name は、UI でのプロバイダーの表示名です。
  • options.baseURL は、ローカルサーバーのエンドポイントです。
  • models は、モデル ID とその構成のマップです。モデル名はモデル選択リストに表示されます。

ヒント: ツール呼び出しが機能しない場合は、Ollama で num_ctx を増やしてみてください。16k 〜 32k 程度から始めます。


Ollama Cloud

OpenCode で Ollama Cloud を使うには:

  1. https://ollama.com/ (opens in a new tab) にアクセスし、サインインまたはアカウントを作成します。

  2. Settings > Keys に移動し、Add API Key をクリックして新しい API キーを生成します。

  3. OpenCode で使うために API キーをコピーします。

  4. /connect コマンドを実行し、Ollama Cloud を検索します。

    /connect
  5. Ollama Cloud の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  6. 重要: OpenCode でクラウドモデルを使う前に、モデル情報をローカルにプルする必要があります:

    ollama pull gpt-oss:20b-cloud
  7. /models コマンドを実行して、Ollama Cloud のモデルを選択します。

    /models

OpenAI

ChatGPT Plus または Pro (opens in a new tab) へのサインアップをおすすめします。

  1. サインアップしたら、/connect コマンドを実行して OpenAI を選択します。

    /connect
  2. ここで ChatGPT Plus/Pro オプションを選択でき、ブラウザが開いて認証を求められます。

    ┌ Select auth method
    │
    │ ChatGPT Plus/Pro
    │ Manually enter API Key
    └
  3. これで、/models コマンドを使うと、すべての OpenAI モデルが利用できるようになります。

    /models
処理地域

ChatGPT OAuth では、workspace の認証情報がリージョン推論の residency 要件を示す場合、OpenCode が自動的に適用します。固定のリージョン一覧を持たず、認証情報の compute residency 値を転送します。保存データの residency はリージョン推論を意味しません。

API キーの使用

既に API キーをお持ちの場合は、Manually enter API Key を選択してターミナルに貼り付けることができます。


OpenCode Zen

OpenCode Zen は、OpenCode チームが提供する、テスト・検証済みのモデルのリストです。詳しくはこちら。

  1. OpenCode Zen (opens in a new tab) にサインインし、Create API Key をクリックします。

  2. /connect コマンドを実行し、OpenCode Zen を検索します。

    /connect
  3. OpenCode の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して、Qwen 3 Coder 480B のようなモデルを選択します。

    /models

OpenRouter

  1. OpenRouter ダッシュボード (opens in a new tab)にアクセスし、Create API Key をクリックして、キーをコピーします。

  2. /connect コマンドを実行し、OpenRouter を検索します。

    /connect
  3. プロバイダーの API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. 多くの OpenRouter モデルはデフォルトでプリロードされています。/models コマンドを実行して、使いたいものを選択します。

    /models

    opencode 設定を通じて追加のモデルを追加することもできます。

    opencode.json
    {
      "$schema": "https://opencode.ai/config.json",
      "provider": {
        "openrouter": {
          "models": {
            "somecoolnewmodel": {}
          }
        }
      }
    }
  5. opencode 設定を通じてカスタマイズすることもできます。以下はプロバイダーを指定する例です。

    opencode.json
    {
      "$schema": "https://opencode.ai/config.json",
      "provider": {
        "openrouter": {
          "models": {
            "moonshotai/kimi-k2": {
              "options": {
                "provider": {
                  "order": ["baseten"],
                  "allow_fallbacks": false
                }
              }
            }
          }
        }
      }
    }

LLM Gateway

  1. LLM Gateway ダッシュボード (opens in a new tab)にアクセスし、Create API Key をクリックして、キーをコピーします。

  2. /connect コマンドを実行し、LLM Gateway を検索します。

    /connect
  3. プロバイダーの API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. 多くの LLM Gateway モデルはデフォルトでプリロードされています。/models コマンドを実行して、使いたいものを選択します。

    /models

    opencode 設定を通じて追加のモデルを追加することもできます。

    opencode.json
    {
      "$schema": "https://opencode.ai/config.json",
      "provider": {
        "llmgateway": {
          "models": {
            "somecoolnewmodel": {}
          }
        }
      }
    }
  5. opencode 設定を通じてカスタマイズすることもできます。以下はプロバイダーを指定する例です。

    opencode.json
    {
      "$schema": "https://opencode.ai/config.json",
      "provider": {
        "llmgateway": {
          "models": {
            "glm-4.7": {
              "name": "GLM 4.7"
            },
            "gpt-5.2": {
              "name": "GPT-5.2"
            },
            "gemini-2.5-pro": {
              "name": "Gemini 2.5 Pro"
            },
            "claude-3-5-sonnet-20241022": {
              "name": "Claude 3.5 Sonnet"
            }
          }
        }
      }
    }

Poolside

Poolside (opens in a new tab) は OpenAI-compatible API 経由でモデルを提供します。

  1. platform.poolside.ai (opens in a new tab) にサインインし、API Keys タブで New key をクリックして API key を作成します。

  2. /connect を実行して Poolside を検索します。

    /connect
  3. Poolside API key を入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models を実行してモデルを選択します。

    /models

Poolside のデプロイ

組織独自の Poolside deployment は、カスタム OpenAI-compatible provider として設定します。管理者から受け取った API key または token を ~/.secrets/poolside-key に保存し、一意の provider ID と利用可能な model ID を追加してください。

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "poolside-deployment": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Poolside deployment",
      "options": {
        "baseURL": "https://poolside.example.com/openai/v1",
        "apiKey": "{file:~/.secrets/poolside-key}"
      },
      "models": {
        "<served-model-id>": {
          "name": "Poolside deployment model",
          "reasoning": true,
          "interleaved": {
            "field": "reasoning_content"
          }
        }
      }
    }
  }
}

poolside.example.com を deployment の host に、<served-model-id> を /openai/v1/models endpoint が返す model ID に置き換えます。モデルの可用性と thinking の動作は deployment 設定に依存します。

Tip: Poolside Agent CLI (opens in a new tab) をインストールして、ターミナルから Poolside agents を直接使用することもできます。


SAP AI Core

SAP AI Core は、統一されたプラットフォームを通じて、OpenAI、Anthropic、Google、Amazon、Meta、Mistral、AI21 の 40 以上のモデルへのアクセスを提供します。

  1. SAP BTP Cockpit (opens in a new tab) にアクセスし、SAP AI Core サービスインスタンスに移動して、サービスキーを作成します。

    ヒント: サービスキーは、clientid、clientsecret、url、serviceurls.AI_API_URL を含む JSON オブジェクトです。BTP Cockpit の Services > Instances and Subscriptions で AI Core インスタンスを見つけられます。

  2. /connect コマンドを実行し、SAP AI Core を検索します。

    /connect
  3. サービスキーの JSON を入力します。

    ┌ Service key
    │
    │
    └ enter

    または、AICORE_SERVICE_KEY 環境変数を設定します:

    AICORE_SERVICE_KEY='{"clientid":"...","clientsecret":"...","url":"...","serviceurls":{"AI_API_URL":"..."}}' opencode

    または、bash プロファイルに追加します:

    ~/.bash_profile
    export AICORE_SERVICE_KEY='{"clientid":"...","clientsecret":"...","url":"...","serviceurls":{"AI_API_URL":"..."}}'
  4. 任意でデプロイ ID とリソースグループを設定します:

    AICORE_DEPLOYMENT_ID=your-deployment-id AICORE_RESOURCE_GROUP=your-resource-group opencode

    注記: これらの設定は任意であり、SAP AI Core のセットアップに合わせて構成する必要があります。

  5. /models コマンドを実行して、40 以上の利用可能なモデルから選択します。

    /models

STACKIT

STACKIT AI Model Serving は、AI モデル向けの完全マネージド型のソブリンホスティング環境を提供し、Llama、Mistral、Qwen のような LLM に焦点を当て、ヨーロッパのインフラ上で最大限のデータ主権を実現します。

  1. STACKIT Portal (opens in a new tab) にアクセスし、AI Model Serving に移動して、プロジェクトの認証トークンを作成します。

    ヒント: 認証トークンを作成する前に、STACKIT のカスタマーアカウント、ユーザーアカウント、プロジェクトが必要です。

  2. /connect コマンドを実行し、STACKIT を検索します。

    /connect
  3. STACKIT AI Model Serving の認証トークンを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して、Qwen3-VL 235B や Llama 3.3 70B のような利用可能なモデルから選択します。

    /models

OVHcloud AI Endpoints

  1. OVHcloud パネル (opens in a new tab)にアクセスします。Public Cloud セクションの AI & Machine Learning > AI Endpoints に移動し、API Keys タブで Create a new API key をクリックします。

  2. /connect コマンドを実行し、OVHcloud AI Endpoints を検索します。

    /connect
  3. OVHcloud AI Endpoints の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して、gpt-oss-120b のようなモデルを選択します。

    /models

Scaleway

opencode で Scaleway Generative APIs (opens in a new tab) を使うには:

  1. Scaleway コンソールの IAM 設定 (opens in a new tab)にアクセスし、新しい API キーを生成します。

  2. /connect コマンドを実行し、Scaleway を検索します。

    /connect
  3. Scaleway の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して、devstral-2-123b-instruct-2512 や gpt-oss-120b のようなモデルを選択します。

    /models

SCX.ai

SCX.ai (opens in a new tab) は、オーストラリア国内の再生可能エネルギー基盤上で OpenAI-compatible API によりオープンモデルを提供する、オーストラリアの sovereign AI プラットフォームです。

  1. SCX.ai platform (opens in a new tab) でアカウントと API key を作成します。

  2. /connect を実行して SCX.ai を検索します。

    /connect
  3. SCX.ai API key を入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models で MiniMax-M2.7 や GLM-5.2 などを選択します。

    /models

Snowflake Cortex

Snowflake Cortex (opens in a new tab) を使うと、OpenAI 互換 API 経由でフロンティアモデル(Claude、OpenAI GPT-5 など)にアクセスできます。すべての推論は Snowflake のペリメーター内で実行され、Snowflake クレジットで課金されます。モデルごとの料金については、Snowflake Service Consumption Table (opens in a new tab) を参照してください。

Snowflake アカウントをお持ちでない場合は、無料トライアルにサインアップ (opens in a new tab)してください。

opencode のコーディング、ファイル編集、コマンド実行に関するコアワークフローはツール呼び出しに依存しています。Snowflake Cortex 内では Claude と OpenAI のファミリーのみがこれをサポートしています。コアワークフローをサポートするため、このプロバイダーはそれらのファミリーに限定されています。

OpenCode は 2 つの認証方法をサポートしています:

  • ブラウザ OAuth(推奨) — IdP/SSO でサインインします。管理するシークレットはなく、トークンは自動的に更新されます。
  • 手動のベアラートークン — Snowflake コンソールから PAT または JWT を貼り付けます。

ブラウザー OAuth(推奨)

  1. /connect コマンドを実行し、Snowflake Cortex を検索します。

    /connect
  2. Login with Snowflake (External Browser) を選択します。

    ┌ Select auth method
    │
    │ Login with Snowflake (External Browser)
    │ Paste PAT or bearer token manually
    └
  3. プロンプトが表示されたら、アカウント識別子 (opens in a new tab)を入力します。例: myorg-myaccount や xy12345.us-east-1。

    ┌ Snowflake Account Identifier
    │
    │
    └ enter
  4. 任意で、セッションのスコープを絞るために Snowflake のロール(例: SYSADMIN)を入力します。空欄のままにするとデフォルトのロールが使われます。

  5. 開いたブラウザでサインインを完了します。OpenCode は OAuth コールバックを自動的に捕捉してトークンを保存します。コピー&ペーストは不要です。

  6. /models コマンドを実行してモデルを選択します。

    /models

注記: ブラウザ OAuth は、Snowflake の組み込みの SNOWFLAKE$LOCAL_APPLICATION セキュリティ統合(ドキュメント (opens in a new tab))を使用します。これは現在、全アカウントへの展開が進んでいます。お使いのアカウントでの利用可否を確認するには:

SHOW SECURITY INTEGRATIONS LIKE 'SNOWFLAKE$LOCAL_APPLICATION';

結果が空の場合は、統合がアカウントに展開されるまで、下記の手動のベアラートークン方式を使用してください。

Bearer トークンの手動指定

トークンを直接貼り付けたい場合、または SNOWFLAKE$LOCAL_APPLICATION がまだお使いのアカウントで利用できない場合:

  1. Snowflake アカウントで Programmatic Access Token (PAT) (opens in a new tab) を生成します。

  2. /connect コマンドを実行し、Snowflake Cortex を検索して、Paste PAT or bearer token manually を選択します。

  3. プロンプトが表示されたら、アカウント識別子 (opens in a new tab)を入力します。

  4. PAT を貼り付けます。

  5. /models コマンドを実行してモデルを選択します。

    /models

環境変数

CI やヘッドレス環境では、opencode を起動する前に PAT または JWT を設定します:

export SNOWFLAKE_ACCOUNT=myorg-myaccount
export SNOWFLAKE_CORTEX_TOKEN=your-pat-or-jwt

注記: SNOWFLAKE_CORTEX_TOKEN は PAT または JWT のみを受け付けます — ブラウザ OAuth フローは /connect からのみ利用可能で、環境変数では設定できません。後方互換性のため SNOWFLAKE_CORTEX_PAT も引き続きサポートされています。

モデルカタログは自動的に提供されます。最小限の opencode.json があれば十分です:

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "model": "snowflake-cortex/claude-sonnet-4-6",
  "small_model": "snowflake-cortex/claude-haiku-4-5"
}

Together AI

  1. Together AI コンソール (opens in a new tab)にアクセスし、アカウントを作成して、Add Key をクリックします。

  2. /connect コマンドを実行し、Together AI を検索します。

    /connect
  3. Together AI の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して、Kimi K2 Instruct のようなモデルを選択します。

    /models

Venice AI

  1. Venice AI コンソール (opens in a new tab)にアクセスし、アカウントを作成して、API キーを生成します。

  2. /connect コマンドを実行し、Venice AI を検索します。

    /connect
  3. Venice AI の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して、Llama 3.3 70B のようなモデルを選択します。

    /models

Vercel AI Gateway

Vercel AI Gateway を使うと、統一されたエンドポイントを通じて OpenAI、Anthropic、Google、xAI などのモデルにアクセスできます。モデルはマークアップなしの定価で提供されます。

  1. Vercel ダッシュボード (opens in a new tab)にアクセスし、AI Gateway タブに移動して、API keys をクリックして新しい API キーを作成します。

  2. /connect コマンドを実行し、Vercel AI Gateway を検索します。

    /connect
  3. Vercel AI Gateway の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行してモデルを選択します。

    /models

opencode 設定を通じてモデルをカスタマイズすることもできます。以下はプロバイダーのルーティング順序を指定する例です。

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "vercel": {
      "models": {
        "anthropic/claude-sonnet-4": {
          "options": {
            "order": ["anthropic", "vertex"]
          }
        }
      }
    }
  }
}

便利なルーティングオプション:

OptionDescription
order試すプロバイダーのシーケンス
only特定のプロバイダーに制限
zeroDataRetentionゼロデータ保持ポリシーを持つプロバイダーのみを使用

xAI

認証方法は2つです。device-code OAuth で SuperGrok サブスクリプションを使うか、xAI console の pay-as-you-go API key を使います。

オプション A — SuperGrok サブスクリプション

  1. /connect を実行して xAI を検索します。

    /connect
  2. SuperGrok Subscription を選択します。対応している場合、OpenCode は user code が入力済みの xAI 検証リンクを開きます。

  3. consent screen を承認します。code を求められたら OpenCode が表示する user code を入力してください。承認後、OpenCode は xAI token endpoint をポーリングして OAuth token を保存します。

  4. /models を実行して Grok モデルを選択します。

    /models

OpenCode は OAuth access token を自動更新します。Grok API アクセスを含む Grok または X Premium プランで利用でき、個別の XAI_API_KEY は不要です。

オプション B — API key

  1. xAI console (opens in a new tab) でアカウントと API key を作成します。

  2. /connect を実行して xAI を検索します。

    /connect
  3. Manually enter API Key を選び、xAI API key を貼り付けます。

    ┌ API key
    │
    │
    └ enter
  4. /models で Grok Beta などのモデルを選択します。

    /models

Z.AI

  1. Z.AI API コンソール (opens in a new tab)にアクセスし、アカウントを作成して、Create a new API key をクリックします。

  2. /connect コマンドを実行し、Z.AI を検索します。

    /connect

    GLM Coding Plan に加入している場合は、Z.AI Coding Plan を選択します。

  3. Z.AI の API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. /models コマンドを実行して、GLM-4.7 のようなモデルを選択します。

    /models

ZenMux

  1. ZenMux ダッシュボード (opens in a new tab)にアクセスし、Create API Key をクリックして、キーをコピーします。

  2. /connect コマンドを実行し、ZenMux を検索します。

    /connect
  3. プロバイダーの API キーを入力します。

    ┌ API key
    │
    │
    └ enter
  4. 多くの ZenMux モデルはデフォルトでプリロードされています。/models コマンドを実行して、使いたいものを選択します。

    /models

    opencode 設定を通じて追加のモデルを追加することもできます。

    opencode.json
    {
      "$schema": "https://opencode.ai/config.json",
      "provider": {
        "zenmux": {
          "models": {
            "somecoolnewmodel": {}
          }
        }
      }
    }

カスタムプロバイダー

/connect コマンドにリストされていない、任意の OpenAI 互換プロバイダーを追加するには:

ヒント: opencode では任意の OpenAI 互換プロバイダーを使えます。最近のほとんどの AI プロバイダーは OpenAI 互換の API を提供しています。

  1. /connect コマンドを実行し、下にスクロールして Other に移動します。

    $ /connect
     
    ┌  Add credential
    │
    ◆  Select provider
    │  ...
    │  ● Other
    └
  2. プロバイダーの一意の ID を入力します。

    $ /connect
     
    ┌  Add credential
    │
    ◇  Enter provider id
    │  myprovider
    └

    注記: 覚えやすい ID を選んでください。設定ファイルでこれを使います。

  3. プロバイダーの API キーを入力します。

    $ /connect
     
    ┌  Add credential
    │
    ▲  This only stores a credential for myprovider - you will need to configure it in opencode.json, check the docs for examples.
    │
    ◇  Enter your API key
    │  sk-...
    └
  4. プロジェクトディレクトリに opencode.json ファイルを作成または更新します:

    opencode.json
    {
      "$schema": "https://opencode.ai/config.json",
      "provider": {
        "myprovider": {
          "npm": "@ai-sdk/openai-compatible",
          "name": "My AI Provider Display Name",
          "options": {
            "baseURL": "https://api.myprovider.com/v1"
          },
          "models": {
            "my-model-name": {
              "name": "My Model Display Name"
            }
          }
        }
      }
    }

    設定オプションは次のとおりです:

    • npm : 使う AI SDK パッケージ。OpenAI 互換プロバイダー(/v1/chat/completions 向け)には @ai-sdk/openai-compatible。プロバイダー/モデルが /v1/responses を使う場合は @ai-sdk/openai を使用します。
    • name : UI での表示名。
    • models : 利用可能なモデル。
    • options.baseURL : API エンドポイントの URL。
    • options.apiKey : 認証を使わない場合、任意で API キーを設定します。
    • options.headers : 任意でカスタムヘッダーを設定します。

    高度なオプションについては、以下の例で詳しく説明します。

  5. /models コマンドを実行すると、カスタムプロバイダーとモデルが選択リストに表示されます。


例

以下は、apiKey、headers、モデルの limit オプションを設定する例です。

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "myprovider": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "My AI Provider Display Name",
      "options": {
        "baseURL": "https://api.myprovider.com/v1",
        "apiKey": "{env:ANTHROPIC_API_KEY}",
        "headers": {
          "Authorization": "Bearer custom-token"
        }
      },
      "models": {
        "my-model-name": {
          "name": "My Model Display Name",
          "limit": {
            "context": 200000,
            "output": 65536
          }
        }
      }
    }
  }
}

設定の詳細:

  • apiKey : env 変数の構文を使って設定します。詳しくはこちら。
  • headers : 各リクエストとともに送信されるカスタムヘッダー。
  • limit.context : モデルが受け付ける最大入力トークン。
  • limit.output : モデルが生成できる最大トークン。

limit フィールドにより、OpenCode はどれだけのコンテキストが残っているかを把握できます。標準のプロバイダーは、これらを models.dev から自動的に取得します。


トラブルシューティング

プロバイダーの構成に問題がある場合は、次を確認してください:

  1. 認証のセットアップを確認する: opencode auth list を実行して、プロバイダーの認証情報が設定に追加されているか確認します。これは、認証に環境変数を使う Amazon Bedrock のようなプロバイダーには適用されません。

  2. カスタムプロバイダーの場合は、opencode 設定を確認し、次のことを行います:

    • /connect コマンドで使ったプロバイダー ID が opencode 設定の ID と一致していることを確認します。
    • プロバイダーに正しい npm パッケージが使われていること。例えば、Cerebras には @ai-sdk/cerebras を使います。他のすべての OpenAI 互換プロバイダーには @ai-sdk/openai-compatible(/v1/chat/completions 向け)を使います。モデルが /v1/responses を使う場合は @ai-sdk/openai を使います。1 つのプロバイダー配下の混在したセットアップでは、provider.npm を介してモデルごとにオーバーライドできます。
    • options.baseURL フィールドに正しい API エンドポイントが使われていることを確認します。

文書の出典(MIT)