~/content/providers

Providers

Using any LLM provider in OpenCode.

last_updated: "2026-01-20"

OpenCode 使用 AI SDKModels.dev 来支持 75+ LLM providers,并且它支持运行本地模型。

要添加一个 provider,你需要:

  1. 使用 /connect 命令添加 provider 的 API 密钥。
  2. 在你的 OpenCode config 中配置 provider。

###Credentials (凭证)

当你使用 /connect 命令添加 provider 的 API 密钥时,它们会被存储在 ~/.local/share/opencode/auth.json 中。


###Config (配置)

你可以通过 OpenCode config 中的 provider 部分自定义 providers。


Base URL (基础 URL)

你可以通过设置 baseURL 选项来为任何 provider 自定义基础 URL。这在使用代理服务或自定义 endpoints 时非常有用。

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

##OpenCode Zen

OpenCode Zen 是一个由 OpenCode 团队提供的模型列表,这些模型经过测试和验证,可以很好地与 OpenCode 配合使用。了解更多

Note

💡 提示

如果你是新手,我们建议从 OpenCode Zen 开始。

  1. 在 TUI 中运行 /connect 命令,选择 opencode,然后前往 opencode.ai/auth

    bash
    /connect
    
  2. 登录,添加你的账单详情,并复制你的 API 密钥。

  3. 粘贴你的 API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 在 TUI 中运行 /models 命令,查看我们推荐的模型列表。

    bash
    /models
    

它像 OpenCode 中的任何其他 provider 一样工作,并且完全可以选择使用。


##Directory (目录)

让我们详细了解一些 providers。如果你想将一个 provider 添加到列表中,请随时打开一个 PR。

Note

📝 注意

没有在这里看到 provider?提交一个 PR。


###302.AI

  1. 前往 302.AI console,创建一个帐户,并生成一个 API 密钥。

  2. 运行 /connect 命令并搜索 302.AI

    bash
    /connect
    
  3. 输入你的 302.AI API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令来选择一个模型。

    bash
    /models
    

###Amazon Bedrock

要将 Amazon Bedrock 与 OpenCode 一起使用:

  1. 前往 Amazon Bedrock console 中的 Model catalog (模型目录),并请求访问你想要的模型。

    Note

    💡 提示

Note

你需要有权访问你在 Amazon Bedrock 中想要的模型。

  1. 使用以下方法之一配置身份验证

    Environment Variables (Quick Start) (环境变量(快速入门))

    在运行 opencode 时设置以下环境变量之一:

    bash
    # 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 profile 中:

    bash
    export AWS_PROFILE=my-dev-profile
    export AWS_REGION=us-east-1
    

    对于特定于项目或持久的配置,请使用 opencode.json

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

    Available options: (可用选项:)

    • region - AWS region (e.g., us-east-1, eu-west-1)
    • profile - AWS named profile from ~/.aws/credentials
    • endpoint - Custom endpoint URL for VPC endpoints (alias for generic baseURL option)
    Note

    💡 提示

Note

配置文件选项优先于环境变量。

Advanced: VPC Endpoints (高级:VPC Endpoints)

如果你正在使用 Bedrock 的 VPC endpoints:

bash
{
  "$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"
      }
    }
  }
}
Note

📝 注意

endpoint 选项是通用 baseURL 选项的别名,使用 AWS 特定的术语。如果同时指定了 endpointbaseURL,则 endpoint 优先。

Authentication Methods (身份验证方法)

  • AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY: Create an IAM user and generate access keys in the AWS Console
  • AWS_PROFILE: Use named profiles from ~/.aws/credentials. First configure with aws configure --profile my-profile or aws sso login
  • AWS_BEARER_TOKEN_BEDROCK: Generate long-term API keys from the Amazon Bedrock console
  • AWS_WEB_IDENTITY_TOKEN_FILE / AWS_ROLE_ARN: For EKS IRSA (IAM Roles for Service Accounts) or other Kubernetes environments with OIDC federation. These environment variables are automatically injected by Kubernetes when using service account annotations.

Authentication Precedence (身份验证优先级)

Amazon Bedrock 使用以下身份验证优先级:

  1. Bearer Token - AWS_BEARER_TOKEN_BEDROCK environment variable or token from /connect command
  2. AWS Credential Chain - Profile, access keys, shared credentials, IAM roles, Web Identity Tokens (EKS IRSA), instance metadata
Note

📝 注意

When a bearer token is set (via /connect or AWS_BEARER_TOKEN_BEDROCK), it takes precedence over all AWS credential methods including configured profiles.

  1. 运行 /models 命令来选择你想要的模型。

    bash
    /models
    

###Anthropic

我们建议注册 Claude ProMax

  1. 注册后,运行 /connect 命令并选择 Anthropic。

    bash
    /connect
    
  2. 在这里,你可以选择 Claude Pro/Max 选项,它将打开你的浏览器并要求你进行身份验证。

    bash
    ┌ Select auth method
    │
    │ Claude Pro/Max
    │ Create an API Key
    │ Manually enter API Key
    └
    
  3. 现在,当你使用 /models 命令时,所有 Anthropic 模型都应该可用。

    bash
    /models
    
Using API keys (使用 API 密钥)

如果你没有 Pro/Max 订阅,你也可以选择 Create an API Key (创建 API 密钥)。它也会打开你的浏览器并要求你登录 Anthropic,并给你一个代码,你可以将其粘贴到你的终端中。

或者,如果你已经有一个 API 密钥,你可以选择 Manually enter API Key (手动输入 API 密钥)并将其粘贴到你的终端中。


###Azure OpenAI

Note

📝 注意

如果你遇到 "I'm sorry, but I cannot assist with that request" 错误,请尝试在你的 Azure 资源中将内容过滤器从 DefaultV2 更改为 Default

  1. 前往 Azure portal 并创建一个 Azure OpenAI 资源。你将需要:

    • Resource name (资源名称):这将成为你的 API endpoint 的一部分 (https://RESOURCE_NAME.openai.azure.com/)
    • API key (API 密钥):来自你的资源的 KEY 1KEY 2
  2. 前往 Azure AI Foundry 并部署一个模型。

    Note

    📝 注意

Note

部署名称必须与模型名称匹配,opencode 才能正常工作。

  1. 运行 /connect 命令并搜索 Azure

    bash
    /connect
    
  2. 输入你的 API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  3. 将你的资源名称设置为环境变量:

    bash
    AZURE_RESOURCE_NAME=XXX opencode
    

    或者将它添加到你的 bash profile 中:

    bash
    export AZURE_RESOURCE_NAME=XXX
    
  4. 运行 /models 命令来选择你部署的模型。

    bash
    /models
    

###Azure Cognitive Services

  1. 前往 Azure portal 并创建一个 Azure OpenAI 资源。你将需要:

    • Resource name (资源名称):这将成为你的 API endpoint 的一部分 (https://AZURE_COGNITIVE_SERVICES_RESOURCE_NAME.cognitiveservices.azure.com/)
    • API key (API 密钥):来自你的资源的 KEY 1KEY 2
  2. 前往 Azure AI Foundry 并部署一个模型。

    Note

    📝 注意

Note

部署名称必须与模型名称匹配,opencode 才能正常工作。

  1. 运行 /connect 命令并搜索 Azure Cognitive Services

    bash
    /connect
    
  2. 输入你的 API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  3. 将你的资源名称设置为环境变量:

    bash
    AZURE_COGNITIVE_SERVICES_RESOURCE_NAME=XXX opencode
    

    或者将它添加到你的 bash profile 中:

    bash
    export AZURE_COGNITIVE_SERVICES_RESOURCE_NAME=XXX
    
  4. 运行 /models 命令来选择你部署的模型。

    bash
    /models
    

###Baseten

  1. 前往 Baseten,创建一个帐户,并生成一个 API 密钥。

  2. 运行 /connect 命令并搜索 Baseten

    bash
    /connect
    
  3. 输入你的 Baseten API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令来选择一个模型。

    bash
    /models
    

###Cerebras

  1. 前往 Cerebras console,创建一个帐户,并生成一个 API 密钥。

  2. 运行 /connect 命令并搜索 Cerebras

    bash
    /connect
    
  3. 输入你的 Cerebras API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令来选择一个模型,例如 Qwen 3 Coder 480B

    bash
    /models
    

###Cloudflare AI Gateway

Cloudflare AI Gateway 让你通过统一的 endpoint 访问来自 OpenAI、Anthropic、Workers AI 等的模型。 通过 Unified Billing,你不需要为每个 provider 单独的 API 密钥。

  1. 前往 Cloudflare dashboard,导航到 AI > AI Gateway,并创建一个新的 gateway。

  2. 将你的 Account ID 和 Gateway ID 设置为环境变量。

    bash
    export CLOUDFLARE_ACCOUNT_ID=your-32-character-account-id
    export CLOUDFLARE_GATEWAY_ID=your-gateway-id
    
  3. 运行 /connect 命令并搜索 Cloudflare AI Gateway

    bash
    /connect
    
  4. 输入你的 Cloudflare API token。

    bash
    ┌ API key
    │
    │
    └ enter
    

    或者将其设置为环境变量。

    bash
    export CLOUDFLARE_API_TOKEN=your-api-token
    
  5. 运行 /models 命令来选择一个模型。

    bash
    /models
    

    你也可以通过你的 opencode config 添加模型。

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

###Cortecs

  1. 前往 Cortecs console,创建一个帐户,并生成一个 API 密钥。

  2. 运行 /connect 命令并搜索 Cortecs

    bash
    /connect
    
  3. 输入你的 Cortecs API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令来选择一个模型,例如 Kimi K2 Instruct

    bash
    /models
    

###DeepSeek

  1. 前往 DeepSeek console,创建一个帐户,然后点击 Create new API key (创建新的 API 密钥)。

  2. 运行 /connect 命令并搜索 DeepSeek

    bash
    /connect
    
  3. 输入你的 DeepSeek API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令来选择一个 DeepSeek 模型,例如 DeepSeek Reasoner

    bash
    /models
    

###Deep Infra

  1. 前往 Deep Infra dashboard,创建一个帐户,并生成一个 API 密钥。

  2. 运行 /connect 命令并搜索 Deep Infra

    bash
    /connect
    
  3. 输入你的 Deep Infra API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令来选择模型。

    bash
    /models
    

###Firmware

  1. 前往 Firmware dashboard,创建一个帐户,并生成一个 API 密钥。

  2. 运行 /connect 命令并搜索 Firmware

    bash
    /connect
    
  3. 输入您的 Firmware API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令来选择模型。

    bash
    /models
    

###Fireworks AI

  1. 前往 Fireworks AI console,创建一个帐户,然后点击 Create API Key(创建 API 密钥)。

  2. 运行 /connect 命令并搜索 Fireworks AI

    bash
    /connect
    
  3. 输入您的 Fireworks AI API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令来选择一个模型,例如 Kimi K2 Instruct

    bash
    /models
    

###GitLab Duo

GitLab Duo 通过 GitLab 的 Anthropic 代理提供具有原生工具调用功能的 AI 驱动的代理聊天。

  1. 运行 /connect 命令并选择 GitLab。

    bash
    /connect
    
  2. 选择您的身份验证方法:

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

    使用 OAuth(推荐)

    选择 OAuth,您的浏览器将打开以进行授权。

    使用个人访问令牌

    1. 转到 GitLab User Settings > Access Tokens
    2. 点击 Add new token(添加新令牌)
    3. 名称:OpenCode,范围:api
    4. 复制令牌(以 glpat- 开头)
    5. 在终端中输入它
  3. 运行 /models 命令以查看可用模型。

    bash
    /models
    

    提供三种基于 Claude 的模型:

    • duo-chat-haiku-4-5 (默认) - 快速响应,适用于快速任务
    • duo-chat-sonnet-4-5 - 平衡的性能,适用于大多数工作流程
    • duo-chat-opus-4-5 - 最强大的复杂分析能力
Note

📝 Note

如果您不想将令牌存储在 opencode 身份验证存储中,您还可以指定 'GITLAB_TOKEN' 环境变量。

自托管 GitLab
Note

📝 compliance note

OpenCode 使用一个小模型来执行一些 AI 任务,例如生成会话标题。 它被配置为默认使用 gpt-5-nano,由 Zen 托管。要锁定 OpenCode 仅使用您自己的 GitLab 托管实例,请将以下内容添加到您的 opencode.json 文件。还建议禁用会话共享。

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

对于自托管 GitLab 实例:

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

如果您的实例运行自定义 AI Gateway:

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

或者添加到您的 bash 配置文件:

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

📝 Note

您的 GitLab 管理员必须启用以下内容:

  1. 用户、组或实例的 Duo Agent Platform
  2. 功能标志(通过 Rails 控制台):
    • agent_platform_claude_code
    • third_party_agents_enabled
自托管实例的 OAuth

为了使 Oauth 适用于您的自托管实例,您需要创建一个新应用程序(Settings → Applications),回调 URL 为 http://127.0.0.1:8080/callback,并具有以下范围:

  • api (代表您访问 API)
  • read_user (读取您的个人信息)
  • read_repository (允许对存储库进行只读访问)

然后将应用程序 ID 公开为环境变量:

bash
export GITLAB_OAUTH_CLIENT_ID=your_application_id_here

更多文档请参见 opencode-gitlab-auth 主页。

配置

通过 opencode.json 进行自定义:

bash
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "gitlab": {
      "options": {
        "instanceUrl": "https://gitlab.com",
        "featureFlags": {
          "duo_agent_platform_agentic_chat": true,
          "duo_agent_platform": true
        }
      }
    }
  }
}
GitLab API 工具(可选,但强烈推荐)

要访问 GitLab 工具(合并请求、问题、管道、CI/CD 等):

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

此插件提供全面的 GitLab 存储库管理功能,包括 MR 审查、问题跟踪、管道监控等。


###GitHub Copilot

要将您的 GitHub Copilot 订阅与 opencode 一起使用:

Note

📝 Note

某些模型可能需要 Pro+ subscription 才能使用。

某些模型需要在您的 GitHub Copilot settings 中手动启用。

  1. 运行 /connect 命令并搜索 GitHub Copilot。

    bash
    /connect
    
  2. 导航到 github.com/login/device 并输入代码。

    bash
    ┌ Login with GitHub Copilot
    │
    │ https://github.com/login/device
    │
    │ Enter code: 8F43-6FCF
    │
    └ Waiting for authorization...
    
  3. 现在运行 /models 命令来选择您想要的模型。

    bash
    /models
    

###Google Vertex AI

要将 Google Vertex AI 与 OpenCode 一起使用:

  1. 前往 Google Cloud Console 中的 Model Garden(模型花园),并检查 您所在区域提供的模型。

    Note

    📝 Note

Note

您需要拥有一个启用了 Vertex AI API 的 Google Cloud 项目。

  1. 设置所需的环境变量:

    • GOOGLE_CLOUD_PROJECT: 您的 Google Cloud 项目 ID
    • VERTEX_LOCATION (可选): Vertex AI 的区域(默认为 global
    • 身份验证(选择一种):
      • GOOGLE_APPLICATION_CREDENTIALS: 您的服务帐户 JSON 密钥文件的路径
      • 使用 gcloud CLI 进行身份验证:gcloud auth application-default login

    在运行 opencode 时设置它们。

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

    或者将它们添加到您的 bash 配置文件。

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

💡 Tip

global 区域提高了可用性并减少了错误,且不产生额外费用。对于数据驻留要求,请使用区域端点(例如,us-central1)。了解更多

  1. 运行 /models 命令来选择您想要的模型。

    bash
    /models
    

###Groq

  1. 前往 Groq console,点击 Create API Key(创建 API 密钥),然后复制密钥。

  2. 运行 /connect 命令并搜索 Groq。

    bash
    /connect
    
  3. 输入提供商的 API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令来选择您想要的一个。

    bash
    /models
    

###Hugging Face

Hugging Face Inference Providers 提供了对 17+ 提供商支持的开放模型的访问。

  1. 前往 Hugging Face settings 创建一个令牌,该令牌具有调用 Inference Providers 的权限。

  2. 运行 /connect 命令并搜索 Hugging Face

    bash
    /connect
    
  3. 输入您的 Hugging Face 令牌。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令来选择一个模型,例如 Kimi-K2-InstructGLM-4.6

    bash
    /models
    

###Helicone

Helicone 是一个 LLM 可观察性平台,为您的 AI 应用程序提供日志记录、监控和分析。Helicone AI Gateway 根据模型自动将您的请求路由到适当的提供商。

  1. 前往 Helicone,创建一个帐户,并从您的仪表板生成一个 API 密钥。

  2. 运行 /connect 命令并搜索 Helicone

    bash
    /connect
    
  3. 输入您的 Helicone API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令来选择模型。

    bash
    /models
    

有关更多提供商和高级功能(如缓存和速率限制),请查看 Helicone documentation

可选配置

如果您看到 Helicone 中的某个功能或模型未通过 opencode 自动配置,您可以随时自行配置。

这是 Helicone's Model Directory,您需要使用它来获取要添加的模型的 ID。

bash
{
  "$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 将它们添加到您的提供商配置中:

bash
{
  "$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 功能允许您将相关的 LLM 请求分组在一起。使用 opencode-helicone-session 插件自动将每个 OpenCode 对话记录为 Helicone 中的一个会话。

bash
npm install -g opencode-helicone-session

将其添加到您的配置中。

bash
{
  "plugin": ["opencode-helicone-session"]
}

该插件将 Helicone-Session-IdHelicone-Session-Name 标头注入到您的请求中。在 Helicone 的 Sessions 页面中,您将看到每个 OpenCode 对话都列为单独的会话。

常见的 Helicone 标头

| Header | Description | | -------------------------- | ------------------------------------------------------------- | | Helicone-Cache-Enabled | 启用响应缓存 (true/false) | | Helicone-User-Id | 按用户跟踪指标 | | Helicone-Property-[Name] | 添加自定义属性(例如,Helicone-Property-Environment) | | Helicone-Prompt-Id | 将请求与提示版本关联 |

有关所有可用标头,请参见 Helicone Header Directory


###llama.cpp

您可以配置 opencode 以通过 llama.cpp's llama-server 实用程序使用本地模型

bash
{
  "$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 指定用于此提供商的包。在此,@ai-sdk/openai-compatible 用于任何与 OpenAI 兼容的 API。
  • name 是 UI 中提供商的显示名称。
  • options.baseURL 是本地服务器的端点。
  • models 是模型 ID 到其配置的映射。模型名称将显示在模型选择列表中。

###IO.NET

IO.NET 提供 17 种针对各种用例优化的模型:

  1. 前往 IO.NET 控制台,创建一个帐户,并生成一个 API 密钥。

  2. 运行 /connect 命令并搜索 IO.NET

    bash
    /connect
    
  3. 输入您的 IO.NET API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令以选择一个模型。

    bash
    /models
    

###LM Studio

您可以配置 opencode 以通过 LM Studio 使用本地模型。

bash
{
  "$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 指定用于此提供程序的包。 在这里,@ai-sdk/openai-compatible 用于任何与 OpenAI 兼容的 API。
  • name 是 UI 中提供程序的显示名称。
  • options.baseURL 是本地服务器的端点。
  • models 是模型 ID 到其配置的映射。 模型名称将显示在模型选择列表中。

###Moonshot AI

要使用 Moonshot AI 的 Kimi K2:

  1. 前往 Moonshot AI 控制台,创建一个帐户,然后单击Create API key(创建 API 密钥)。

  2. 运行 /connect 命令并搜索 Moonshot AI

    bash
    /connect
    
  3. 输入您的 Moonshot API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令以选择 Kimi K2

    bash
    /models
    

###MiniMax

  1. 前往 MiniMax API 控制台,创建一个帐户,并生成一个 API 密钥。

  2. 运行 /connect 命令并搜索 MiniMax

    bash
    /connect
    
  3. 输入您的 MiniMax API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令以选择一个模型,例如 M2.1

    bash
    /models
    

###Nebius Token Factory

  1. 前往 Nebius Token Factory 控制台,创建一个帐户,然后单击Add Key(添加密钥)。

  2. 运行 /connect 命令并搜索 Nebius Token Factory

    bash
    /connect
    
  3. 输入您的 Nebius Token Factory API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令以选择一个模型,例如 Kimi K2 Instruct

    bash
    /models
    

###Ollama

您可以配置 opencode 以通过 Ollama 使用本地模型。

bash
{
  "$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 指定用于此提供程序的包。 在这里,@ai-sdk/openai-compatible 用于任何与 OpenAI 兼容的 API。
  • name 是 UI 中提供程序的显示名称。
  • options.baseURL 是本地服务器的端点。
  • models 是模型 ID 到其配置的映射。 模型名称将显示在模型选择列表中。
Note

💡 Tip

如果工具调用不起作用,请尝试增加 Ollama 中的 num_ctx。 从 16k - 32k 左右开始。


###Ollama Cloud

要将 Ollama Cloud 与 OpenCode 结合使用:

  1. 前往 https://ollama.com/ 并登录或创建一个帐户。

  2. 导航到 Settings(设置)> Keys(密钥),然后单击 Add API Key(添加 API 密钥)以生成新的 API 密钥。

  3. 复制 API 密钥以在 OpenCode 中使用。

  4. 运行 /connect 命令并搜索 Ollama Cloud

    bash
    /connect
    
  5. 输入您的 Ollama Cloud API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  6. Important(重要):在使用 OpenCode 中的云模型之前,您必须在本地拉取模型信息:

    bash
    ollama pull gpt-oss:20b-cloud
    
  7. 运行 /models 命令以选择您的 Ollama Cloud 模型。

    bash
    /models
    

###OpenAI

我们建议注册 ChatGPT Plus 或 Pro

  1. 注册后,运行 /connect 命令并选择 OpenAI。

    bash
    /connect
    
  2. 在这里,您可以选择 ChatGPT Plus/Pro 选项,它将打开您的浏览器 并要求您进行身份验证。

    bash
    ┌ Select auth method
    │
    │ ChatGPT Plus/Pro
    │ Manually enter API Key
    └
    
  3. 现在,当您使用 /models 命令时,所有 OpenAI 模型都应该可用。

    bash
    /models
    
使用 API 密钥

如果您已经拥有 API 密钥,则可以选择 Manually enter API Key(手动输入 API 密钥)并将其粘贴到您的终端中。


###OpenCode Zen

OpenCode Zen 是 OpenCode 团队提供的一系列经过测试和验证的模型。了解更多

  1. 登录到 OpenCode Zen 并单击 Create API Key(创建 API 密钥)。

  2. 运行 /connect 命令并搜索 OpenCode Zen

    bash
    /connect
    
  3. 输入您的 OpenCode API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令以选择一个模型,例如 Qwen 3 Coder 480B

    bash
    /models
    

###OpenRouter

  1. 前往 OpenRouter 仪表板,单击 Create API Key(创建 API 密钥),然后复制该密钥。

  2. 运行 /connect 命令并搜索 OpenRouter。

    bash
    /connect
    
  3. 输入提供程序的 API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 默认情况下,许多 OpenRouter 模型已预加载,运行 /models 命令以选择您想要的模型。

    bash
    /models
    

    您还可以通过您的 opencode 配置添加其他模型。

    bash
    {
      "$schema": "https://opencode.ai/config.json",
      "provider": {
        "openrouter": {
          "models": {
            "somecoolnewmodel": {}
          }
        }
      }
    }
    
  5. 您还可以通过您的 opencode 配置自定义它们。 这是一个指定提供程序的示例

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

###SAP AI Core

SAP AI Core 通过统一平台提供对来自 OpenAI、Anthropic、Google、Amazon、Meta、Mistral 和 AI21 的 40 多个模型的访问。

  1. 转到您的 SAP BTP Cockpit,导航到您的 SAP AI Core 服务实例,并创建一个服务密钥。

    Note

    💡 Tip

Note

服务密钥是一个 JSON 对象,包含 clientidclientsecreturlserviceurls.AI_API_URL。 您可以在 BTP Cockpit 的 Services(服务)> Instances and Subscriptions(实例和订阅)下找到您的 AI Core 实例。

  1. 运行 /connect 命令并搜索 SAP AI Core

    bash
    /connect
    
  2. 输入您的服务密钥 JSON。

    bash
    ┌ Service key
    │
    │
    └ enter
    

    或者设置 AICORE_SERVICE_KEY 环境变量:

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

    或者将其添加到您的 bash 配置文件:

    bash
    export AICORE_SERVICE_KEY='{"clientid":"...","clientsecret":"...","url":"...","serviceurls":{"AI_API_URL":"..."}}'
    
  3. (可选)设置部署 ID 和资源组:

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

    📝 Note

Note

这些设置是可选的,应根据您的 SAP AI Core 设置进行配置。

  1. 运行 /models 命令以从 40 多个可用模型中进行选择。

    bash
    /models
    

###OVHcloud AI Endpoints

  1. 前往 OVHcloud 面板。 导航到 Public Cloud 部分,AI & Machine Learning > AI Endpoints 并在 API Keys 选项卡中,单击 Create a new API key(创建新的 API 密钥)。

  2. 运行 /connect 命令并搜索 OVHcloud AI Endpoints

    bash
    /connect
    
  3. 输入您的 OVHcloud AI Endpoints API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令以选择一个模型,例如 gpt-oss-120b

    bash
    /models
    

###Scaleway

要将 Scaleway Generative APIs 与 Opencode 结合使用:

  1. 前往 Scaleway 控制台 IAM 设置 以生成新的 API 密钥。

  2. 运行 /connect 命令并搜索 Scaleway

    bash
    /connect
    
  3. 输入您的 Scaleway API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令以选择一个模型,例如 devstral-2-123b-instruct-2512gpt-oss-120b

    bash
    /models
    

###Together AI

  1. 前往 Together AI 控制台,创建一个帐户,然后单击 Add Key(添加密钥)。

  2. 运行 /connect 命令并搜索 Together AI

    bash
    /connect
    
  3. 输入您的 Together AI API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令以选择一个模型,例如 Kimi K2 Instruct

    bash
    /models
    

###Venice AI

  1. 前往 Venice AI 控制台,创建一个帐户,并生成一个 API 密钥。

  2. 运行 /connect 命令并搜索 Venice AI

    bash
    /connect
    
  3. 输入您的 Venice AI API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令以选择一个模型,例如 Llama 3.3 70B

    bash
    /models
    

###Vercel AI Gateway

Vercel AI Gateway 使您可以通过统一端点访问来自 OpenAI、Anthropic、Google、xAI 等的模型。 模型以标价提供,没有加价。

  1. 前往 Vercel 仪表板,导航到 AI Gateway 选项卡,然后单击 API keys(API 密钥)以创建新的 API 密钥。

  2. 运行 /connect 命令并搜索 Vercel AI Gateway

    bash
    /connect
    
  3. 输入您的 Vercel AI Gateway API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令以选择一个模型。

    bash
    /models
    

您还可以通过您的 opencode 配置自定义模型。 这是一个指定提供程序路由顺序的示例。

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

一些有用的路由选项:

| Option | Description | | ------------------- | ---------------------------------------------------- | | order | 要尝试的提供程序序列 | | only | 限制为特定提供程序 | | zeroDataRetention | 仅使用具有零数据保留策略的提供程序 |


###xAI

  1. 前往 xAI 控制台,创建一个帐户,并生成一个 API 密钥。

  2. 运行 /connect 命令并搜索 xAI

    bash
    /connect
    
  3. 输入您的 xAI API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令以选择一个模型,例如 Grok Beta

    bash
    /models
    

###Z.AI

  1. 前往 Z.AI API 控制台,创建一个帐户,然后单击 Create a new API key(创建新的 API 密钥)。

  2. 运行 /connect 命令并搜索 Z.AI

    bash
    /connect
    

    如果您订阅了 GLM Coding Plan,请选择 Z.AI Coding Plan

  3. 输入您的 Z.AI API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 运行 /models 命令来选择一个模型,例如 GLM-4.7

    bash
    /models
    

###ZenMux

  1. 前往 ZenMux dashboard,点击 Create API Key(创建 API 密钥),并复制该密钥。

  2. 运行 /connect 命令并搜索 ZenMux。

    bash
    /connect
    
  3. 输入提供商的 API 密钥。

    bash
    ┌ API key
    │
    │
    └ enter
    
  4. 默认情况下,许多 ZenMux 模型已预加载,运行 /models 命令来选择您想要的模型。

    bash
    /models
    

    您还可以通过您的 opencode config 添加其他模型。

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

##自定义提供商

要添加任何未在 /connect 命令中列出的 OpenAI-compatible 提供商:

Note

💡 提示

您可以使用任何与 opencode 兼容的 OpenAI-compatible 提供商。 大多数现代 AI 提供商都提供 OpenAI-compatible API。

  1. 运行 /connect 命令并向下滚动到 Other(其他)。

    bash
    $ /connect
    
    ┌  Add credential
    │
    ◆  Select provider
    │  ...
    │  ● Other
    └
    
  2. 输入提供商的唯一 ID。

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

    📝 注意

Note

选择一个容易记住的 ID,您将在配置文件中使用它。

  1. 输入提供商的 API 密钥。

    bash
    $ /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-...
    └
    
  2. 在您的项目目录中创建或更新您的 opencode.json 文件:

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

    以下是配置选项:

    • npm: 要使用的 AI SDK package,对于 OpenAI-compatible 提供商,使用 @ai-sdk/openai-compatible
    • name: 在 UI 中的显示名称。
    • models: 可用模型。
    • options.baseURL: API endpoint URL。
    • options.apiKey: 可选设置 API 密钥,如果未使用 auth。
    • options.headers: 可选设置自定义 headers。

    有关高级选项的更多信息,请参见下面的示例。

  3. 运行 /models 命令,您的自定义提供商和模型将出现在选择列表中。


示例

这是一个设置 apiKeyheaders 和模型 limit 选项的示例。

bash
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "myprovider": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "My AI ProviderDisplay 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: 随每个请求发送的自定义 headers。
  • limit.context: 模型接受的最大输入 tokens。
  • limit.output: 模型可以生成的最大 tokens。

limit 字段允许 OpenCode 了解您还剩下多少 context。 标准提供商会自动从 models.dev 中提取这些信息。


##故障排除

如果您在配置提供商时遇到问题,请检查以下内容:

  1. 检查 auth 设置: 运行 opencode auth list 以查看提供商的凭据是否已添加到您的 config 中。

    这不适用于像 Amazon Bedrock 这样的提供商,它们依赖于环境变量进行 auth。

  2. 对于自定义提供商,请检查 opencode config 并:

    • 确保在 /connect 命令中使用的提供商 ID 与您的 opencode config 中的 ID 匹配。
    • 为提供商使用了正确的 npm package。 例如,对于 Cerebras,使用 @ai-sdk/cerebras。 对于所有其他 OpenAI-compatible 提供商,使用 @ai-sdk/openai-compatible
    • 检查在 options.baseURL 字段中使用了正确的 API endpoint。
Comments (Coming Soon)

Configure Giscus in environment variables to enable comments.