OpenCode là gì?
OpenCode là coding agent mã nguồn mở, chạy trong terminal và có cả bản ứng dụng, làm việc theo cùng kiểu với Claude Code hay Codex: đọc mã, sửa file, chạy lệnh trong dự án. Điểm khác là OpenCode không gắn với một hãng model nào; bạn khai báo nhà cung cấp và model mình muốn dùng.
Vì vậy OpenCode hợp với người muốn dùng nhiều họ model trong cùng một công cụ, hoặc muốn gom chi phí của mọi model về một API key OpenAI-compatible chung.
Cài OpenCode
Cài bằng bộ cài chính thức hoặc npm, rồi chạy opencode trong thư mục dự án. Trong phiên, lệnh /connect thêm nhà cung cấp có sẵn, lệnh /models chọn model.
curl -fsSL https://opencode.ai/v2/install | bash
# Hoặc npm
npm install -g @opencode/cliKhai báo nhà cung cấp OpenAI-compatible
Nhà cung cấp tuỳ chỉnh khai trong file opencode.json: đặt ở thư mục dự án để áp cho riêng dự án đó, hoặc ở file cấu hình chung của OpenCode trong thư mục người dùng để áp cho mọi dự án. Mẫu dưới khai STEYG Code làm một nhà cung cấp, key đọc từ biến môi trường nên không nằm trong file.
Thay MODEL_ID bằng id lấy từ GET /v1/models; muốn nhiều model thì thêm nhiều mục trong models. Đặt limit.context và limit.output khớp với model để OpenCode biết khi nào phải tóm gọn ngữ cảnh.
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"steyg": {
"npm": "@ai-sdk/openai-compatible",
"name": "STEYG Code",
"options": {
"baseURL": "https://steyg.one/api/v1",
"apiKey": "{env:STEYG_CODE_API_KEY}"
},
"models": {
"MODEL_ID": {
"name": "MODEL_ID",
"limit": { "context": 1000000, "output": 32000 }
}
}
}
}
}Đặt API key và chạy thử
Ba bước để có phiên OpenCode đầu tiên chạy qua key của bạn:
- Tạo API key trong trang STEYG Code và đặt vào biến môi trường
STEYG_CODE_API_KEYcủa terminal sẽ chạy OpenCode. - Mở
opencodetrong dự án, gõ/modelsvà chọn model thuộc nhà cung cấp STEYG Code. - Giao một việc nhỏ, rồi xem token và chi phí của request trong usage của dashboard.
Dùng nhiều họ model từ cùng một key
Mọi model trong danh mục STEYG Code gọi được qua cùng base URL OpenAI-compatible, nên một nhà cung cấp trong opencode.json có thể khai cả model Claude, GPT lẫn DeepSeek, GLM, Qwen. Đổi model giữa phiên bằng /models, không phải đổi key hay tài khoản.
Đơn giá từng model có ở bài bảng giá API theo token; nhóm DeepSeek, GLM, Qwen có bài riêng API DeepSeek, GLM, Qwen trả bằng VND.
- Phiên làm việc chính, sửa lỗi khó: một model reasoning tầng cao của Claude hoặc GPT.
- Đọc nhiều mã nguồn, chạy lô, tác vụ lặp lại: model đơn giá thấp, ngữ cảnh dài như DeepSeek hay Qwen.
- So hai model trên cùng một việc bằng usage thật trong dashboard trước khi chọn model mặc định.
Lỗi hay gặp
Phần lớn lỗi khi nối OpenCode với một nhà cung cấp tuỳ chỉnh rơi vào vài trường hợp:
- 401: biến
STEYG_CODE_API_KEYkhông có trong terminal đang chạy OpenCode, hoặc key đã bị thu hồi. - Model không có trong danh mục: id trong
modelsgõ sai; đối chiếu vớiGET /v1/models. - 404 kèm trang HTML:
baseURLthiếu/v1ở cuối. - Không thấy model trong
/models: fileopencode.jsonkhông đúng chỗ hoặc sai cú pháp JSON; kiểm tra dấu phẩy và dấu ngoặc.
Câu hỏi thường gặp
OpenCode có miễn phí không?
Phần mềm mã nguồn mở và miễn phí; bạn trả cho model mà nó gọi, theo cách tính của nhà cung cấp bạn khai báo, ví dụ theo token với một API key.
Có dùng model Claude trong OpenCode được không?
Được. Khai id Claude trong mục models của nhà cung cấp OpenAI-compatible; STEYG Code nhận request Chat Completions cho model Claude bằng cùng key.
Đặt API key thẳng vào opencode.json có sao không?
Không nên, đặc biệt với file trong thư mục dự án vì nó dễ bị commit. Dùng cú pháp {env:STEYG_CODE_API_KEY} để OpenCode đọc key từ biến môi trường.
OpenCode khác Claude Code thế nào?
Claude Code do Anthropic làm, dành cho model Claude và giao thức Anthropic Messages. OpenCode là mã nguồn mở, gọi được nhiều nhà cung cấp và model qua cấu hình.