Tài liệu

Tài liệu

Kimi Code

Kimi Code lưu các nhà cung cấp trong tệp TOML; endpoint bên thứ ba cần ba khóa trong tệp này: type, base_url, api_key. Trỏ một nhà cung cấp đến Kunavo để CLI giao tiếp với các mã Claude và GPT qua giao thức mà nó đã hỗ trợ.

Kimi Code lưu nhà cung cấp trong ~/.kimi-code/config.toml — đặt providers.<name>.base_url thành https://api.kunavo.com/v1 với type = "openai" và CLI chạy các id Claude và GPT trên một key.

~/.kimi-code/config.toml
default_model = "kunavo/claude-sonnet-5"

[providers.kunavo]
type = "openai"
base_url = "https://api.kunavo.com/v1"
api_key = "sk-kn-..."

[models."kunavo/claude-sonnet-5"]
provider = "kunavo"
model = "claude-sonnet-5"
max_context_size = 200000
base_url giữ hậu tố /v1. Trang nhà cung cấp làm rõ điều này mà không cần suy đoán: giá trị mặc định được tài liệu hóa cho type = "openai" là https://api.openai.com/v1, còn ví dụ thực tế về endpoint bên thứ ba trên trang biến môi trường là KIMI_MODEL_BASE_URL="https://api.example.com/v1". Kimi Code chỉ thêm đường dẫn, nên dùng origin thuần ở đây sẽ gây lỗi 404 thay vì lỗi xác thực. Điều này ngược với các ứng dụng khách dùng giao thức Anthropic, vốn cần https://api.kunavo.com không có hậu tố.
Xuất biến shell không giúp nhà cung cấp có khóa. Trang tài liệu về các tệp cấu hình của Kimi Code nói rõ: chạy export KIMI_API_KEY trong terminal không cung cấp khóa cho bất kỳ nhà cung cấp nào. Thứ tự ưu tiên được tài liệu hóa là api_key hoặc api_key_env — chỉ đặt một trong hai vì chúng loại trừ lẫn nhau — tiếp theo là khóa trong bảng con [providers.kunavo.env] nếu cả hai đều không có; nếu thiếu cả ba, quá trình khởi động sẽ thất bại với thông báo lỗi. Để không lưu khóa trong tệp, hãy ghi api_key_env = "KUNAVO_API_KEY" thay cho api_key; nếu biến chưa được đặt hoặc có giá trị rỗng, yêu cầu sẽ thất bại với thông báo lỗi nêu tên biến đó.
Kunavo chưa chạy thử ứng dụng khách này với endpoint của mình. Khối cấu hình ở trên được lấy từ tài liệu hiện tại của Kimi Code, không phải từ một phiên sử dụng: ở đây chưa ghi nhận lần chạy streaming hay gọi công cụ nào bằng Kimi Code, vì vậy hãy xem yêu cầu thực tế đầu tiên là bài kiểm tra, không phải xác nhận. Trang thiết lập đã xuất bản không phải là kết quả nghiệm thu.
type chỉ tên giao thức, không phải nhà cung cấp. Danh sách được tài liệu hóa gồm kimi, anthropic, openai, openai_responses, google-genai và vertexai — bảng hiện tại không có biến thể OpenAI cũ, nên bài hướng dẫn bảo bạn đặt biến thể đó đã lỗi thời. Chọn openai rồi nhập mã model Claude là cách kết hợp được chủ đích: mã này được phân giải tại URL cơ sở, không phải trong CLI.
Chưa có khóa? Tạo tài khoản Kunavo, tạo khóa (bắt đầu bằng sk-kn-) và nạp tín dụng từ $10 — các lệnh gọi được thanh toán từ số dư đó và các lệnh gọi thất bại không bị tính phí. Sau đó, bảng điều khiển mở tại phần thiết lập Kimi Code.

Từng bước

  1. Tạo khóa tại /app/keys rồi sao chép khóa — khóa chỉ hiển thị một lần.
  2. Mở ~/.kimi-code/config.toml, được tạo trong lần chạy đầu tiên. Nếu bạn đã di chuyển thư mục dữ liệu bằng KIMI_CODE_HOME, tệp nằm tại $KIMI_CODE_HOME/config.toml; tên tệp luôn là config.toml.
  3. Thêm bảng [providers.kunavo] ở trên. Ba khóa tài liệu liệt kê cho loại này, theo thứ tự đó, là type, base_url và api_key.
  4. Khai báo bí danh model trong [models."..."] bằng provider, model và max_context_size — cả ba đều bắt buộc. Bí danh là tên bạn truyền cho -m và default_model; giá trị model là mã được gửi qua giao thức. Đặt bí danh có dấu chấm trong dấu ngoặc kép.
  5. Ở lần cấu hình đầu tiên, không thêm capabilities. Trang nhà cung cấp cho biết các khả năng được tự động khớp theo tiền tố tên model, còn bảng model cho biết mảng này chỉ được bổ sung chứ không bao giờ bị xóa — vì vậy sau này không thể bỏ một thẻ sai bằng cách chỉnh sửa cấu hình.
  6. Chạy kimi hoặc kimi -m kunavo/claude-sonnet-5 để chọn bí danh cho một phiên. Để thử endpoint mà không đụng đến cấu hình, hãy đặt KIMI_MODEL_NAME, KIMI_MODEL_API_KEY, KIMI_MODEL_PROVIDER_TYPE=openai và KIMI_MODEL_BASE_URL — CLI sẽ tạo nhà cung cấp trong bộ nhớ và không ghi lại bất kỳ thay đổi nào.

Đã kiểm tra đối chiếu với Trang về nhà cung cấp và model của Kimi Code vào 21 tháng 9, 2026. Cài đặt của bên thứ ba có thể thay đổi; nếu tên trường ở đây không còn khớp với những gì bạn thấy, trang đó là nguồn có thẩm quyền, không phải trang này.

Đây là phiên bản ngắn. Hướng dẫn đầy đủ — lựa chọn mô hình, chi phí của một phiên thực tế và các trường hợp lỗi — nằm trong Kimi Code và Claude Code — dùng ứng dụng khách nào, model nào, tài khoản nào.

Xác minh trước khi gỡ lỗi ứng dụng khách

Một yêu cầu sẽ xác định liệu lỗi nằm ở endpoint, khóa hay tệp cấu hình. Nếu lệnh này trả về JSON, cùng base URL và khóa sẽ hoạt động trong Kimi Code.

# Settles whether a failure is the endpoint, the key, or the client.
curl -sS https://api.kunavo.com/v1/models \
  -H "Authorization: Bearer sk-kn-..."

Đặt model id nào vào trường

Mọi mô hình văn bản đều có thể truy cập bằng model id — danh sách đang hoạt động là GET /v1/models, còn danh mục kèm giá nằm trên trang mô hình. Mức giá tính bằng USD trên mỗi 1M token, đầu vào / đầu ra.

ID mô hìnhKunavo vào / raPhù hợp ở đâu trong Kimi Code
claude-sonnet-5$1.40 / $7.00bí danh mặc định — model làm việc cho các vòng lặp chỉnh sửa và chạy
claude-opus-5$3.50 / $17.50bí danh thứ hai cho các lượt lập kế hoạch, khi một kế hoạch sai sẽ tốn kém
claude-haiku-4-5$0.70 / $3.50bí danh giá rẻ để gán trong [secondary_model] cho các tác tử con
gpt-5-6-sol$2.00 / $12.00ý kiến thứ hai từ một dòng model khác, dùng cùng khóa và cùng bảng nhà cung cấp
Thanh toán theo token từ số dư trả trước, không có phí hàng tháng — xem trang Thanh toán. Với ngữ cảnh lặp lại — chiếm phần lớn dữ liệu mà trình chỉnh sửa hoặc ứng dụng trò chuyện gửi đi — bộ nhớ đệm prompt ảnh hưởng đến hóa đơn nhiều hơn lựa chọn mô hình.

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

Làm cách nào để trỏ Kimi Code đến endpoint API tùy chỉnh?

Thêm một bảng nhà cung cấp vào ~/.kimi-code/config.toml với type = "openai", đặt base_url thành endpoint của bạn và api_key thành khóa của bạn, sau đó khai báo bí danh model trong [models."<alias>"] với provider, model và max_context_size. Trang nhà cung cấp của Kimi Code nêu rõ type = "openai" dùng cho giao thức OpenAI Chat Completions và mọi dịch vụ bên thứ ba tương thích với giao thức này; bạn có thể ghi đè base_url nếu cần. Bạn cũng có thể mở trình quản lý nhà cung cấp bằng /provider trong TUI, nhưng đường dẫn dành cho nhà cung cấp đã biết sẽ nhập dữ liệu từ danh mục models.dev, nên thêm thủ công sẽ nhanh hơn nếu endpoint chưa có trong danh mục đó.

base_url của Kimi Code có cần kết thúc bằng /v1 không?

Có, với endpoint tương thích OpenAI. Kimi Code chỉ thêm đường dẫn, nên base_url phải là gốc /v1 — chẳng hạn https://api.kunavo.com/v1. Tài liệu làm rõ điều này, không cần suy đoán: base_url mặc định cho type = "openai" là https://api.openai.com/v1, còn ví dụ endpoint bên thứ ba trên trang biến môi trường là https://api.example.com/v1. Nếu thiếu /v1, bạn sẽ gặp lỗi 404, không phải 401.

Tại sao Kimi Code báo thiếu khóa API dù biến đã được xuất?

Vì ứng dụng không đọc các biến môi trường của shell để lấy thông tin xác thực, trừ khi bạn chỉ định biến cần đọc. Trang tài liệu về các tệp cấu hình nêu rõ rằng chạy export KIMI_API_KEY không cung cấp khóa cho bất kỳ nhà cung cấp nào. Hãy ghi api_key trực tiếp trong config.toml hoặc đặt api_key_env thành tên biến — hai lựa chọn này loại trừ lẫn nhau, vì vậy chỉ đặt một. Bảng con [providers.<name>.env] chỉ được dùng khi không có lựa chọn nào trong hai lựa chọn trên; nếu thiếu cả ba, quá trình khởi động sẽ thất bại với thông báo lỗi.

Kimi Code có thể chạy model Claude qua nhà cung cấp bên thứ ba không?

Loại nhà cung cấp chỉ tên giao thức, không phải nhà cung cấp dịch vụ, còn giá trị model được chuyển nguyên đến bất kỳ base_url nào bạn đã cấu hình — vì vậy, mã Claude đặt trong nhà cung cấp loại openai sẽ được phân giải tại endpoint đó thay vì trong CLI. Kimi Code cũng có loại nhà cung cấp riêng type = "anthropic" dành cho giao thức Anthropic Messages; URL cơ sở của loại này là origin thuần, không có hậu tố /v1. Kunavo chưa chạy phiên Kimi Code nào với endpoint của mình bằng một trong hai giao thức, vì vậy hãy xác minh bằng lệnh curl ở trên và xem phiên đầu tiên là bài kiểm tra.