Trang chủ / Tìm hiểu / Cấu hình OpenCode cho Claude: thiết lập opencode.json, mô hình và lỗi thường gặp
Thiết lập OpenCode. Một cuốn sổ cấu hình đang mở bên cạnh khung cửa sổ terminal, được nối bằng một dây cáp gọn gàng.

Cấu hình OpenCode cho Claude: thiết lập opencode.json, mô hình và các lỗi thường gặp

OpenCode đọc các thiết lập từ opencode.json. Để chạy OpenCode với Claude qua gateway này, bạn thay đổi một giá trị, đó là giá trị sau của nhà cung cấp Anthropic: baseURL, và cung cấp khóa. Bên dưới là hai cấu hình hoạt động được, các thiết lập mô hình và ngữ cảnh quan trọng, cùng cách khắc phục những lỗi người dùng OpenCode gặp trên gateway này, được lấy từ nhật ký yêu cầu của chúng tôi.

Vị trí của opencode.json

OpenCode hợp nhất cấu hình toàn cục với cấu hình riêng cho từng dự án: ~/.config/opencode/opencode.json cho các thiết lập bạn muốn dùng ở mọi nơi, và opencode.json ở thư mục gốc của dự án cho kho mã đó. Thêm dòng $schema sẽ cung cấp tính năng tự động hoàn thành và kiểm tra tính hợp lệ trong hầu hết trình soạn thảo.

Không lưu khóa trong tệp. Đặt khóa trong biến môi trường và tham chiếu đến nó dưới dạng {env:AIPRIME_API_KEY}. Các khóa bạn thêm bằng /connect trong OpenCode được lưu trong ~/.local/share/opencode/auth.json; opencode auth list hiển thị những gì được lưu ở đó.

cửa sổ dòng lệnh
export AIPRIME_API_KEY=your_gateway_key   # add to ~/.bashrc or ~/.zshrc
opencode auth list                         # credentials OpenCode already knows about

Phương án 1: trỏ nhà cung cấp Anthropic tích hợp sẵn đến gateway

Thay đổi tối thiểu: giữ nhà cung cấp Anthropic và danh sách mô hình có sẵn của OpenCode, đồng thời ghi đè đích gửi yêu cầu.

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "anthropic": {
      "options": {
        "baseURL": "https://aiprimetech.io/v1",
        "apiKey": "{env:AIPRIME_API_KEY}"
      }
    }
  },
  "model": "anthropic/claude-sonnet-5",
  "small_model": "anthropic/claude-haiku-4-5"
}
Thư mục baseURL phải kết thúc bằng /v1. Nhà cung cấp Anthropic của OpenCode là thành phần sau của AI SDK: @ai-sdk/anthropic, có giá trị mặc định là https://api.anthropic.com/v1; nó thêm /messages vào bất kỳ giá trị nào bạn cung cấp. Nếu thiếu /v1 yêu cầu sẽ đi đến trang web và trả về HTML, khiến OpenCode báo lỗi phân tích cú pháp.

Phương án 2: nhà cung cấp tùy chỉnh với danh sách mô hình của riêng bạn

Một mục nhà cung cấp riêng giúp tách cổng API khỏi mọi phiên đăng nhập Anthropic, cho phép bạn liệt kê chính xác các mô hình muốn xuất hiện trong bộ chọn và đặt giới hạn ngữ cảnh cho từng mô hình.

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "aiprime": {
      "npm": "@ai-sdk/anthropic",
      "name": "AI Prime Tech",
      "options": {
        "baseURL": "https://aiprimetech.io/v1",
        "apiKey": "{env:AIPRIME_API_KEY}"
      },
      "models": {
        "claude-sonnet-5":  { "name": "Claude Sonnet 5",  "limit": { "context": 200000, "output": 64000 } },
        "claude-opus-5-5":  { "name": "Claude Opus 5.5",  "limit": { "context": 200000, "output": 64000 } },
        "claude-haiku-4-5": { "name": "Claude Haiku 4.5", "limit": { "context": 200000, "output": 32000 } }
      }
    }
  },
  "model": "aiprime/claude-sonnet-5",
  "small_model": "aiprime/claude-haiku-4-5"
}

Ưu tiên @ai-sdk/anthropic cho Claude: nó sử dụng Messages API gốc, nên tính năng lưu bộ nhớ đệm prompt và suy nghĩ hoạt động đúng như Anthropic thiết kế. Cổng API cũng hỗ trợ định dạng OpenAI, vì vậy @ai-sdk/openai-compatible với cùng https://aiprimetech.io/v1 URL cơ sở cũng hoạt động, và đây là cách cần dùng cho các mô hình GPT với cùng khóa.

Mô hình và giới hạn ngữ cảnh

ID mô hình Dùng cho
claude-sonnet-5Lựa chọn mặc định cho lập trình và tác vụ của tác nhân: nhanh, mạnh, giá tầm trung.
claude-opus-5-5Suy luận khó hơn, tái cấu trúc mã quy mô lớn, tác nhân chạy trong thời gian dài.
claude-fable-5-1Năng lực cao nhất và đắt nhất; dành cho các tác vụ khó nhất.
claude-haiku-4-5Rẻ và nhanh: tiêu đề, tóm tắt, phân loại, các bước nhỏ.

model là mô hình mà tác nhân chính sử dụng; small_model xử lý các tác vụ phụ ít tốn kém như tạo tiêu đề phiên. Giá trị limit.context cho OpenCode biết khi nào cần rút gọn phiên. Nếu một phiên dài gặp lỗi prompt is too long, hãy giảm giá trị này (200000 là giá trị an toàn) để OpenCode tóm tắt sớm hơn thay vì gửi lượng nội dung vượt quá khả năng tiếp nhận của điểm cuối.

ID mô hình phải là các chuỗi chính xác. Những tên cũ như claude-3-5-sonnet-20241022 hoặc các phiên bản chụp nhanh có gắn ngày không được cung cấp; hãy dùng các ID ở trên hoặc danh sách trong bảng điều khiển của bạn.

Kiểm tra khóa và URL trước khi khởi động OpenCode

Một yêu cầu từ terminal sẽ cho bạn biết khóa và URL có đúng hay không, độc lập với cấu hình của OpenCode:

cửa sổ dòng lệnh
curl -s https://aiprimetech.io/v1/messages \
  -H "x-api-key: $AIPRIME_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model":"claude-haiku-4-5","max_tokens":20,"messages":[{"role":"user","content":"ping"}]}'

Phản hồi JSON có một mảng content nghĩa là phía cổng API hoạt động bình thường và mọi vấn đề còn lại nằm trong opencode.json. Invalid API key nghĩa là biến đang trống hoặc chứa khóa sai.

Khắc phục sự cố: các lỗi người dùng OpenCode thường gặp

Đây là những lỗi xuất hiện thường xuyên nhất khi dùng OpenCode trên cổng API này, cùng cách khắc phục từng lỗi.

Những gì bạn thấy Nguyên nhân Cách khắc phục
Lỗi phân tích cú pháp JSON, phản hồi bắt đầu bằng <baseURL không có /v1: yêu cầu đã đi đến trang web, không phải APIKết thúc baseURL bằng /v1
404 page not found/v1 hai lần, khiến đường dẫn trở thành /v1/v1/messagesDùng chính xác https://aiprimetech.io/v1
Invalid API keyBiến chưa được export trong shell dùng để khởi động OpenCode, hoặc đang sử dụng một khóa khácecho $AIPRIME_API_KEY, opencode auth list, khởi động lại OpenCode
Mô hình không được hỗ trợ / không tìm thấy mô hìnhMột ID mà điểm cuối không cung cấp, thường là tên cũ có gắn ngàyDùng một ID trong bảng phía trên
prompt is too long: N tokens > N tokensPhiên đã vượt quá lượng ngữ cảnh mà mô hình chấp nhận/compact, và giảm limit.context
Concurrency limit exceeded for userCác tác nhân phụ chạy song song vượt quá giới hạn đồng thời của khóaChạy ít tác nhân phụ cùng lúc hơn, hoặc yêu cầu bộ phận hỗ trợ tăng giới hạn đồng thời
Insufficient account balanceSố dư đã hếtNạp tiền và thử lại
No available accounts hoặc This request could not be completedSự cố năng lực xử lý tạm thời ở phía thượng nguồnGửi lại tin nhắn; đổi mô hình nếu sự cố vẫn tiếp diễn

Đối với các lỗi xuất phát từ phía mô hình thay vì ứng dụng khách, hãy xem hướng dẫn về lỗi Claude API.

Câu hỏi thường gặp

Tệp cấu hình OpenCode nằm ở đâu?
Cấu hình toàn cục nằm tại ~/.config/opencode/opencode.json, còn cấu hình theo dự án là opencode.json ở thư mục gốc của kho mã. OpenCode hợp nhất cả hai.
Làm cách nào để dùng Claude trong OpenCode với khóa API?
Đặt provider.anthropic.options.baseURL thành URL của cổng API kết thúc bằng /v1 và apiKey thành {env:YOUR_VAR}, hoặc thêm nhà cung cấp tùy chỉnh với npm @ai-sdk/anthropic, rồi chọn mô hình bằng model: provider/model-id.
Vì sao OpenCode gặp lỗi phân tích cú pháp hoặc nhận phản hồi bắt đầu bằng '<'?
baseURL thiếu /v1, nên các yêu cầu đi đến trang web thay vì API. @ai-sdk/anthropic yêu cầu tiền tố đầy đủ, ví dụ: https://aiprimetech.io/v1.
OpenCode có thể sử dụng phiên đăng nhập Claude Pro hoặc Max không?
Tài liệu của OpenCode lưu ý rằng Anthropic cấm các plugin Pro/Max của bên thứ ba và OpenCode đã ngừng đóng gói chúng vào 1.3.0. Khóa API là cách truy cập được hỗ trợ.
Bắt đầu sử dụng Claude chỉ trong vài phút

Lấy khóa API — không cần tài khoản Anthropic hay đăng ký danh sách chờ.

Lấy khóa API của bạn

AI Prime Tech là một cổng API độc lập. AI Prime Tech không liên kết với, không được Anthropic chứng thực và không phải là đại lý bán lại của Anthropic. Claude và các tên mô hình liên quan là nhãn hiệu của chủ sở hữu tương ứng.

Các hướng dẫn khác về Claude API

Cách lấy khóa Claude APIGiải thích giá API ClaudeCách tiết kiệm nhất để sử dụng Claude APICursor không giới hạn với Claude APITruy cập Claude Code không giới hạnCổng Claude API so với truy cập trực tiếp AnthropicSử dụng Claude qua API tương thích với OpenAIGiải thích các mô hình Claude: so sánh Claude Opus, Sonnet, Haiku và Fable — tất cả mô hình API Claude, tên mô hình Anthropic và giá (2026)Thanh toán Claude API bằng tiền mã hóaTruy cập Claude API không cần vào danh sách chờCách giảm lượng token sử dụng với ClaudeCline không giới hạn với Claude APIRoo Code không giới hạn với Claude APIClaude không giới hạn trong các IDE JetBrainsSử dụng Aider không giới hạn với Claude APIClaude không giới hạn trong VS CodeChạy tác nhân Hermes không giới hạn trên ClaudeChạy OpenClaw không giới hạn trên ClaudeAPI tương thích với Anthropic có nghĩa là gìKhóa API Claude Code — ANTHROPIC_API_KEY: cách lấy, thiết lập và khi nào nên dùng claude setup-token thay thếChi phí API Claude Code — Giá và cách cắt giảmGiải thích các lỗi API Claude: lỗi máy chủ 500, quá tải 529, giới hạn tốc độ 429, yêu cầu không hợp lệ 400 — và cách khắc phục từng lỗiCách mua tín dụng Claude API — và vì sao tín dụng Claude tốt hơn mọi lời chào mời "mua tài khoản Claude"API Claude miễn phí: có khóa API Claude miễn phí không, và điều gì thực sự miễn phí trong 2026?Claude API so với gói thuê bao Claude Pro/Max — Nên chọn loại nàoChạy Codex CLI trên ClaudeKết nối Claude với n8nĐịnh tuyến LiteLLM tới ClaudeSử dụng Claude trong Kilo CodeTích hợp Claude vào GitHub CopilotKết nối Zed với Claude qua cổng APIKết nối Cherry Studio với ClaudeChatAnthropic trong LangChain: nhập, base_url, truyền dữ liệu dạng luồng, công cụ và lỗiSDK Python của Anthropic: cài đặt, thiết lập base_url, truyền dữ liệu dạng luồng và xử lý lỗiClaude với Vercel AI SDK: baseURL của createAnthropic, truyền dữ liệu dạng luồng và cách khắc phục lỗiChạy Factory Droid với ClaudeGiải thích API của Claude CodeTích hợp API Claude vào ứng dụng của bạnCách sử dụng Claude không giới hạn — và vì sao không có "Claude Code bẻ khóa"