Docs · Cline
How do I use Cline with FreeModel? Four VS Code settings
最后更新:
FreeModel is an AI model gateway: one key for 200+ models across dozens of providers, routed by task with free capacity tried first. Cline lets you pick OpenAI-compatible as a provider and then asks for a base URL, a key and a model. All three come from FreeModel.
Setup
{
"cline.apiProvider": "openai",
"cline.openaiBaseUrl": "https://freemodel.online/v1",
"cline.openaiApiKey": "sk-your-key",
"cline.model": "fm-v1-standard"
}
The same three fields are in Cline's own settings panel if you would rather click than edit JSON. Provider: OpenAI Compatible.
Why an alias works well here
Cline is an agent — it reads files, writes patches and runs commands in a loop. That means many calls per task, and the model that is best for the planning step is often not the best for the mechanical edits.
Point it at a tier alias such as fm-v1-standard and the router makes that call
per request. If a provider hits a rate limit mid-task, the request moves to the next
candidate rather than failing the run.
For long agent runs specifically, a tier alias beats a pinned id: it is re-resolved on every call, so a provider that starts failing loses the next request instead of the run.
If it does not work
| Symptom | Cause |
|---|---|
| 404 | Base URL is not ending at /v1, or has an extra segment |
| 401 | Key wrong, or the provider is still set to something other than OpenAI Compatible |
| Runs stall on long tasks | Provider-side rate limits; a route with failover handles it better than a fixed model |
| Tool calls rejected | The id is not the one you meant — ids are exact strings; check the spelling against /v1/models |
Next
Set up in three steps
- Step 1: Open Cline's settings and set the API provider to OpenAI Compatible. Until that changes, the other fields are ignored and Cline keeps using whichever provider was selected before.
- Step 2: Fill in the base URL and the key. The base is
https://freemodel.online/v1and the key is yoursk-value from the console. Cline appends/chat/completionsto whatever you put here, so/v1is the last segment. - Step 3: Set the model id and run one small task before you run a large one.
curl -s https://freemodel.online/v1/modelsconfirms the id exists without spending a request, and a single-file edit tells you whether tool calls are reaching the model at all.
The same three fields live in VS Code's settings.json as
cline.apiProvider, cline.openaiBaseUrl,
cline.openaiApiKey and cline.model, if you would rather keep the
configuration in a file you can commit and share with a team.
Why the model has to support tool calling
Cline does not chat, it acts. Reading a file, writing a patch and running a command are all tool calls, so a model that answers text but rejects tools breaks the loop on the first step instead of degrading gracefully. The model list does not state which ids accept tools, so the reliable move is not to pin one: send an alias and let the router re-decide on every call, where a model that fails a call is skipped rather than fatal.
The failure that costs the most is not a bad answer, it is a dead provider halfway through
a task. A pinned model id has nowhere to go when that happens, while an alias moves the
request to its next candidate and the loop keeps running. That is the practical reason to
prefer fm-v1-standard here over naming a model you happen to like.
Cline FAQ
Cline is an agent loop, so the questions below are mostly about tool calls and about what happens when a provider dies halfway through a task. Routing the request rather than pinning an id is what keeps a long run alive when that happens: 199 listed models, 77% of them chat, each call re-decided.[1]
Do I edit settings.json, or is the panel enough?
Why does Cline ask for approval on every step?
Can I switch the model partway through a task?
What does a 404 from Cline mean?
/v1 with nothing after it, because Cline adds /chat/completions itself. A trailing slash or an extra segment gives you a doubled path.Can I use a concrete model id instead of a route?
auto/ prefix is part of the route names rather than decoration.Sources
Every third-party figure quoted on this site was read from the vendor documentation linked below, on the date stated. None of these links are affiliate links and none of these vendors paid to be listed. If a number here disagrees with the page it came from, the page is right — tell us and it gets corrected.
- OpenRouter — credit-purchase fees and free-model rate limits
- OpenRouter — rate-limit reference
- OpenRouter — public model list
- LiteLLM — licence, deployment options and supported models
- Cloudflare AI Gateway — features and pricing
- Vercel AI Gateway — features
- Portkey — plans
- Helicone — plans
- Model Context Protocol — specification
- OpenAI Python SDK — base_url and OPENAI_BASE_URL
- Anthropic Messages API — request format
Where the percentages come from
Every share quoted on this site is counted from the live model list, not estimated. Divide the two counts in the last column, round to the nearest whole percent, and you get the number in the first.
| Share | Of what | Count |
|---|---|---|
| 77% | are chat models | 153 of 199 listed entries |
| 9% | generate images | 18 of 199 listed entries |
| 23% | are not chat models | 46 of 199 listed entries |
| 3% | are modality routes | 6 of 199 listed entries |
| 17% | carry a context length | 34 of 199 listed entries |
[1] Counted on 29 September 2026 from GET https://freemodel.online/v1/models, which needs no key and no account. Every row uses all 199 listed entries as the denominator, because the only thing the endpoint states for every entry is its modality. It no longer publishes per-model capability flags such as tool calling or reasoning, so this site quotes no shares for them. Fetch the list and recount whenever you want to check the arithmetic.