Docs

Cherry Studio

Cherry Studio's custom provider takes any OpenAI-, Anthropic- or Gemini-compatible endpoint. Paste the key and the address, press Get Model List, and the catalog fills the picker by itself.

Settings → Model Services → a custom provider: paste the key and the API address, click Get Model List, and the whole catalog fills the picker.

Cherry Studio
设置 → 模型服务 → 自定义服务商 (Settings → Model Services → Custom provider)

  类型 / Type     OpenAI
  API 密钥         sk-kn-...
  API 地址         https://api.kunavo.com/v1
  → 获取模型列表 (Get Model List), then pick the models you want
  → 检测 (Test) to confirm
获取模型列表 / Get Model List calls GET /v1/models with the key you just entered, so it is also the fastest test of whether the pair is right — an empty list almost always means the key or the address, not the provider.
Cherry Studio treats the trailing character of the address as meaningful: an address ending in # is used as a fixed path rather than a base to append to. Use https://api.kunavo.com/v1 with no trailing # and no trailing slash, and let Cherry Studio append the route.

Step by step

  1. Create a key at /app/keys and copy it — it is shown once.
  2. Open 设置 → 模型服务 (Settings → Model Services) and add a 自定义服务商 (custom provider), or open any built-in OpenAI-type provider you are not using and repoint it.
  3. Fill in API 密钥 (the key) and API 地址 (https://api.kunavo.com/v1).
  4. Press 获取模型列表 and add the chat models you want; then 检测 to verify one of them end to end.
  5. Assign models per assistant rather than globally — Cherry Studio keeps a model per assistant, which is what makes a cheap default and an expensive specialist coexist.

Checked against Cherry Studio's provider documentation on September 6, 2026. Third-party settings move; if a field name here no longer matches what you see, that page is the authority, not this one.

Verify before you debug the client

One request settles whether a failure is the endpoint, the key, or the configuration file. If this returns JSON, the same base URL and key work in Cherry Studio.

# 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-..."

Which model id to put in the field

Every text model is reachable as a model id — the live list is GET /v1/models, and the catalog with prices is on the models page. Rates are USD per 1M tokens, input / output.

Model idKunavo in / outWhere it fits in Cherry Studio
claude-sonnet-5$2.00 / $10.00the everyday assistant
claude-opus-5$2.00 / $10.00an assistant kept for hard problems
claude-haiku-4-5$0.40 / $2.00translation, summarising, anything high-volume
gemini-3-1-pro$0.70 / $4.20long documents and large pasted context
Billing is per token from a prepaid balance with no monthly fee — see billing. On repeated context — which is most of what an editor or a chat client sends — prompt caching moves the bill more than the model choice does.

FAQ

How do I add a custom API provider to Cherry Studio?

Open Settings → Model Services (设置 → 模型服务) and add a custom provider (自定义服务商), which accepts any OpenAI-, Anthropic- or Gemini-compatible endpoint. Enter the API key and the API address, press Get Model List (获取模型列表) to pull the catalog, add the models you want, and use Test (检测) to confirm one works.

Why does Cherry Studio's Get Model List return nothing?

That button calls the endpoint's /v1/models route with the key you entered, so an empty result points at the address or the key rather than at Cherry Studio. Check the address is the /v1 root with no trailing slash and no trailing #, then try the same pair with curl — JSON back means the problem is in the app, a 401 means the key.

What does a # at the end of Cherry Studio's API address do?

It marks the address as a fixed path: Cherry Studio uses it as given instead of appending the route to it. That is useful for endpoints with unusual paths and harmful for ordinary ones, so a normal OpenAI-compatible endpoint should be entered as its /v1 root with no trailing # and no trailing slash.

Can Cherry Studio use Claude models without an Anthropic account?

Yes, when a gateway serves them. Cherry Studio sends the model id to whatever address the provider entry names, so a Claude id resolves at that endpoint and the only credential Cherry Studio holds is the endpoint's key. One custom provider can therefore expose Claude, Gemini and GPT ids in the same model list.