freellmpool › guide

How to run OpenCode on free LLM models

You can run the OpenCode coding agent on free LLM tiers — no API bill — by pointing it at a local proxy that speaks the OpenAI API. The open-source tool freellmpool is that proxy: it pools the free tiers of 18 providers (Groq, Cerebras, NVIDIA, Gemini, OpenRouter, Cloudflare, Mistral, Cohere and more) behind one endpoint, with automatic failover. Three providers need no API key, so you can start for free in under a minute. It also ships an OpenCode plugin with a live dashboard, quality routing, and usage tools built in.

1. Install and start the proxy

pip install freellmpool
freellmpool proxy            # serves http://localhost:8080

The proxy now routes OpenAI-style requests to a free provider and fails over when one is rate-limited.

2. Add freellmpool as an OpenCode provider

In your opencode.json (or ~/.config/opencode/opencode.jsonc), add a freellmpool provider and set it as your model. The routing aliases let you pick how each prompt is routed:

{
  "model": "freellmpool/auto",
  "provider": {
    "freellmpool": {
      "npm": "@ai-sdk/openai-compatible",
      "options": { "baseURL": "http://localhost:8080/v1" },
      "models": {
        "auto": {}, "fast": {}, "quality": {}, "fair": {}
      }
    }
  }
}

Run freellmpool code opencode to print these steps any time.

3. Control routing quality from the model picker

Switch the model in OpenCode's picker to choose how freellmpool routes — no extra config:

4. The embedded dashboard (optional, but fun)

freellmpool ships a native OpenCode TUI plugin that renders a live panel inside the editor — the active routing mode, estimated money saved, tokens served free, a provider "race," a latency sparkline, and which provider/model just answered. It updates as you code. Setup is in the integrations/opencode-tui folder; a companion server plugin adds freellmpool_status and freellmpool_models tools you can ask for in any session.

Free-tier models are smaller than frontier models. They're great for scaffolding, refactors, tests, commit messages, and everyday edits — not a substitute for a frontier model on the hardest reasoning. Limits reset at UTC midnight; freellmpool/quality keeps effective quality high as caps fill.

5. (Optional) add free keys for more capacity

The keyless providers get you started; adding free API keys for Groq, Cerebras, Gemini and others unlocks more models and higher daily limits — see the accounts guide. freellmpool spreads load across whatever you have and tracks per-day usage so each tier drains evenly. Track your running total with freellmpool stats or embed a freellmpool badge in your README.

FAQ

Can I really use OpenCode for free?

Yes. freellmpool's proxy implements the OpenAI Chat Completions API and routes it to free-tier models, so OpenCode runs against them with no code changes. Quality is bounded by the free-tier models you have access to; freellmpool/quality routing picks the strongest fast-enough one per prompt.

Does freellmpool work with OpenCode's tool calls?

Yes — the proxy preserves tool/function calls across providers, and the bundled plugin adds extra tools (status, model list) plus the in-editor dashboard.

Is this against OpenCode's terms?

No — you're pointing OpenCode at a custom OpenAI-compatible provider, exactly the mechanism it supports for local and custom models. You're using the LLM providers' own free tiers; don't abuse them.

How do I see which free model OpenCode is using?

The embedded dashboard shows the last-served provider/model live; or ask the agent to run the freellmpool_status tool, or curl the proxy's /status endpoint.

Part of freellmpool (MIT, free, open source). Updated 2026-06-07.