New Ficelle v0.3.13 is out

Free LLM inference
that doesn't break.

Ficelle is an OpenAI-compatible router that puts the free models of 13 providers behind one endpoint. When one rate-limits or fails, the next eligible model answers in milliseconds. Paid fallback is off in code, so routed requests can't bill you.

  • Free core: no account, no card
  • No paid-model charges
  • Your keys stay local
providers pooled behind one endpoint, free models only
13
paid-model spend on routed requests, enforced in code
$0.00
real agent tasks benchmarked against gpt-5
76
line to change in your stack: the base URL
1
01 Why Ficelle

Reliability you expect from a paid API. On free models.

Free tiers rate-limit, retire models and change terms without notice. Ficelle treats that as the normal case: it measures, ranks and reroutes so your agent keeps getting answers.

When one model fails, the next one answers.

A rate limit, an error or a failed capability check takes the model out of rotation. Ficelle tries the next eligible free model, cools the failed one down, and probes it until it recovers.

Why provider breakage kills agents →
  1. 00.000429 · deepseek-v4-flash
  2. 00.214rerouted · Nex-N2-Pro
  3. 01.410200 · delivered, $0.00
  4. 90.000probe · deepseek recovered

It tests models so you don't have to.

Ficelle checks whether each model really handles tool calls, JSON and vision, then ranks the working ones by measured speed and reliability. Only models that can run your request are eligible.

Example capability checks
modeltoolsjsonvision
deepseek-v4-flash passes passes fails
nex-agi/Nex-N2-Pro passes passes passes
glm-4-flash fails passes fails

No middleman. Your keys stay on your machine.

The router runs locally. Your provider keys never leave it, and prompts go straight to the provider that serves them. There is no Ficelle proxy in the path.

02 How it works

From install to routed in three steps.

Base URL http://127.0.0.1:8646/v1
  1. Point your tools at one endpoint

    Cursor, Codex, Continue, Open WebUI and your own scripts talk to Ficelle's OpenAI-compatible endpoint; Claude Code uses its native Anthropic endpoint. Hermes and OpenClaw use packaged connectors.

  2. Ask for the kind of model you need

    Call ficelle/auto-tools, auto-json or auto-fast. You say what the job needs; Ficelle picks the real model that delivers it.

    Browse the model types →
  3. Ficelle handles the failover

    It scores working free models, routes to the best one available, and tries another eligible model when one fails. No manual provider switching.

    Compare the providers →
ficelle demo real run · unedited
❯ ficelle demo --knock-out 2
Ficelle failover demo · profile ficelle/auto-tools
Prompt: "In one sentence, what is a rate limit?"
Candidates in the pool: 19

  1. ficelle/nous/stepfun/step-3.7-flash:free (nous) — SIMULATED OUTAGE, HTTP 429 → rate_limited
     (fabricated by the demo; no request was sent to this provider)
  2. ficelle/nous/tencent/hy3:free (nous) — SIMULATED OUTAGE, HTTP 429 → rate_limited
     (fabricated by the demo; no request was sent to this provider)
  3. ficelle/openrouter/google/gemma-4-26b-a4b-it:free (openrouter) — answered, HTTP 200 · 1400 ms

Answered by ficelle/openrouter/google/gemma-4-26b-a4b-it:free in 1.4s.
  "A rate limit is a restriction placed on the frequency of incoming requests to a resource, such as an API or a website, to prevent abuse and ensure system stability."
Cost of this request: $0.00

That is the whole product: the model you were about to use went down, and the request still came back.

Nothing was changed: no cooldown was applied, no route log was written.
A real completion with the two leading candidates forced to fail. The 429s are simulated by the demo and say so; the failover decision, the answering model, its latency and the $0.00 are real.
03 Drop-in

Works with the OpenAI and Claude Code tools you already use.

Change one base URL and keep the client-side API key as a placeholder. Your real provider keys stay inside Ficelle, on your machine. OpenAI-compatible clients need no adapter, Claude Code connects through the native Anthropic Messages endpoint, and Hermes uses a packaged connector.

from openai import OpenAI

client = OpenAI(
    base_url="http://127.0.0.1:8646/v1",
    api_key="ficelle-local",
)

client.chat.completions.create(
    model="ficelle/auto-tools",
    messages=[{"role": "user", "content": "..."}],
)
curl http://127.0.0.1:8646/v1/chat/completions \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "ficelle/auto-json",
    "messages": [{"role": "user", "content": "..."}]
  }'
export OPENAI_BASE_URL="http://127.0.0.1:8646/v1"
export OPENAI_API_KEY="ficelle-local"

# Tools that read these OpenAI environment variables now
# route through Ficelle without code changes.
# Claude Code speaks Anthropic Messages; Ficelle serves it natively.
export ANTHROPIC_BASE_URL="http://127.0.0.1:8646"
export ANTHROPIC_API_KEY="ficelle-local"

claude   # default mapping: Haiku -> auto-fast, Sonnet -> auto-coding, Opus -> auto-orchestrator
04 What to route

Not every agent task needs a frontier model.

In Ficelle's 76-task benchmark, free routing was quality-safe against gpt-5 for labelling, extraction, reasoning, and code. Route those workloads through Ficelle and keep a paid model for polished writing.

Labelling and triage

Tagging tickets, detecting intent, sorting inbound, picking a branch in an agent graph.

Route it free ficelle/auto-fast

Free tied the premium model on every task we tested.

Structured extraction

Pulling fields out of invoices, emails, scraped pages, logs. Anything that ends as JSON.

Route it free ficelle/auto-json

95% quality-safe in the benchmark.

Reasoning and code

Multi-step logic, small refactors, test scaffolding, working through a plan.

Route it free ficelle/auto-reasoning

The one we expected free to fail. It held up.

Verdicts come from a 76-task benchmark against gpt-5. See the numbers →

05 Benchmarked, not promised

We measured it: 76 real agent tasks, free vs gpt-5.

Long-form content is the honest exception: paid still writes better. The whole 76-task benchmark cost $0.68 to run.

classification 100%
quality-safe vs gpt-5
JSON extraction 95%
quality-safe vs gpt-5
reasoning & code 94%
quality-safe vs gpt-5
long-form content
keep your paid model for polished writing
06 Pricing

The router is free. Pro does the upkeep for you.

The core router and its built-in profiles are free. Pro adds custom virtual models and maintains the broader provider pool alongside fusion, prompt compression, one-command updates and support.

Free
The routing core. Free forever.
0 €

Open core (BSL 1.1). No account, no card.

Install
Full routing + auto-fallback across free models
OpenRouter + Nous reference providers; bring your own keys
Local dashboard, built-in profiles & live benchmarks
Strict-zero: hardcoded & inspectable
Most popular
Pro
Ficelle maintains the provider integrations for you.
12 € 12 € 9.08 € /mo

Billed monthly. Cancel anytime. 109 € billed once a year.

Start 14-day trial
Full curated provider pool, fixes shipped when a provider breaks
Model fusion: a panel of models + a judge for answer synthesis
Native prompt compression to reduce tokens per call
Custom virtual models, exported to Hermes, OpenClaw & generic clients
One-command updates for the maintained provider pack
Priority support
Founder
Lifetime
Lifetime Pro. Limited to the first 200 licenses.
199 €

One payment. No renewals, ever.

Get the Founder license
Everything in Pro, forever
No renewals, ever
Founding-user status

14-day free trial, card required. Cancel anytime before it ends. The 199 € Founder license is capped to the first 200. Routing stays local; Pro periodically reconnects to refresh its entitlement.

07 FAQ

The things people ask before installing.

Clear answers on cost, privacy, model quality, and what happens when a provider goes down.

Is it really free?

The open core is free under BSL 1.1. It includes strict-zero routing, OpenRouter and Nous reference providers, and the one-command installer. Pro adds the maintained provider pool, model fusion, prompt compression and one-command updates. You never pay for models through Ficelle, on any plan.

What happens when a provider rate-limits?

Ficelle marks the model as cooling down, tries the best working free alternative, and probes the limited one until it recovers. When another eligible model is available, your agent receives its response instead of the provider's 429.

Are free models good enough for real work?

For labelling, triage, structured extraction and most reasoning: yes. We benchmarked 76 real agent tasks against gpt-5 and free routing was quality-safe on classification (100%), JSON extraction (95%) and reasoning (94%). Polished long-form writing is the exception, where the paid model still wins. Route the first three through Ficelle and keep your budget for the writing.

Do my prompts or keys pass through your servers?

No. There is no middleman: the router runs on your machine, your API keys stay local, and prompts go straight to the provider you choose. Ficelle-operated servers receive only an optional update request and the Pro license check; set FICELLE_DISABLE_UPDATE_CHECK=1 to opt out of update checks. The license check carries license identity, never prompts or provider keys.

Can it accidentally spend my money?

No. Paid fallback is hardcoded off. It is not a setting you can mis-toggle, and Ficelle refuses to start if the config claims otherwise. Any model that reports billing gets quarantined automatically. The core code is public to inspect, so you can verify all of it.

Does the Pro trial need a card?

Yes. The 14-day trial requires a card. Stripe charges the selected Pro plan when the trial ends unless you cancel first. Annual costs 109 €/yr; Lifetime costs 199 € as a single payment with no renewals. Prices are in euros, and your bank converts the EUR amount at its usual card rate.

Which tools work with it?

Ficelle supports Cursor, Codex, Continue, Open WebUI, LangChain, CrewAI and plain curl through its OpenAI-compatible endpoint at http://127.0.0.1:8646/v1. Claude Code connects natively through Ficelle's Anthropic Messages endpoint: set ANTHROPIC_BASE_URL=http://127.0.0.1:8646. Hermes and OpenClaw use packaged connectors.

Can I create my own virtual models?

Ficelle Pro includes Profile Studio. You can create a stable ID such as ficelle/custom/coding, start from a built-in routing policy, tune its model pool and export it to Hermes, OpenClaw or a generic OpenAI-compatible client. If Pro expires, Ficelle preserves the configuration but stops listing, exporting and routing that custom ID; direct requests fail explicitly instead of silently falling back.

A note from the founder

I built Ficelle because my own agents kept breaking.

I run most of my own agent work on free models. Providers rate-limit, retire models, or quietly start reporting a price, and something breaks roughly every week. I got tired of finding out after the fact.

So I wrote a router that picks whatever works right now and reroutes the moment it stops. Then I made it structurally unable to spend my money, because the alternative to a broken agent should not be a surprise invoice.

Before charging for Pro, I ran 76 real tasks through free routing and gpt-5 to measure where free routing held up and where it did not. Those numbers are on this page, including the category where paid still wins.

Cyril Creator of Ficelle
Read the code
Research & notes

Field notes on free inference.

All posts

Keep your agents running.

One command installs the free core, no account or card needed. Paid fallback is blocked by design.

$ curl -fsSL https://raw.githubusercontent.com/TheBlueHouse75/ficelle-open-core/v0.3.13/scripts/bootstrap-ficelle.py | python3 -

Ficelle Core v0.3.13, from its GitHub release. The script checks the package against a pinned SHA-256 before installing. Requires Python 3.