Smart Router · Editors
One block in ~/.continue/config.yaml gives Continue’s chat, edit and apply roles a benchmark-routed model: your own provider keys, no token markup, and the model that answered in every response header.
1,000 routed requests a month free · your own provider keys · no card
Part of Smart Router integrations · About the Smart Router · Help centre
models:
- name: ASL auto-coding
provider: openai
model: auto-coding
apiBase: https://aistupidlevel.info/v1
apiKey: aism_your_key_here
roles: [chat, edit, apply]01
One block in ~/.continue/config.yaml gives Continue’s chat, edit and apply roles a benchmark-routed model: your own provider keys, no token markup, and the model that answered in every response header.
X-AISM-Model and X-AISM-Reasoning: which model answered and why, including any fallback. If the chosen model fails before answering, the router tries your own fallback order, then up to 2 automatic fallbacks from different providers.02
Every value below is the one in the router documentation; paste it as shown.
Go to API keys, click Create key and copy it somewhere safe. The key starts with aism_ and is the one key for every tool you connect.
Under Providers, add keys for OpenAI, Anthropic, Google, DeepSeek, Kimi or GLM. The more providers you add, the better the routing. You pay them directly for tokens; the router adds nothing to token prices, and provider keys are encrypted at rest (AES-256-GCM) and never shown again.
Edit ~/.continue/config.yaml: provider: openai, apiBase set to the router and apiKey set to your aism_ key. The roles line gives the same entry to chat, edit and apply.
models:
- name: ASL auto-coding
provider: openai
model: auto-coding
apiBase: https://aistupidlevel.info/v1
apiKey: aism_your_key_here
roles: [chat, edit, apply]Each routing mode is one more entry with its own name and model: auto-tooling for agent work, auto-value-coding to spend less per coding run. Continue lists them by name, and the X-AISM-Model response header names the model that answered.
POST /v1/embeddings proxies to OpenAI’s embedding models, text-embedding-3-small (also auto-embedding) and text-embedding-3-large, which Continue uses for its RAG features. It requires an active OpenAI provider key, and each call counts as one request against your plan.
03
A routing mode goes where the tool asks for a model name. The quality modes read the same scores the leaderboard shows; the value modes choose among models within 5 points of the best and take the lowest measured cost per run. Every mode is described in the Virtual models section of the docs.
auto-codingauto-value-codingauto-tooling24-hour boards as of 26 Oct 2026, 10:51 UTC · places follow the leaderboard’s statistical ties · the full leaderboard
Any real model id from GET /v1/models pins that model and bypasses routing; your plan allowance and key budgets still apply. Unknown auto-* names get a 400 model_not_found that lists the valid ones.
04
GET /v1/models, which needs a valid aism_ key.POST /v1/embeddings, which requires an active OpenAI provider key; supported models are text-embedding-3-small (also auto-embedding) and text-embedding-3-large.X-AISM-Streaming-Mode: native).400 unsupported_content.05
The errors a tool shows, with the fix from the docs’ error table and the help centre.
aism_ key. Check the key is correct and not revoked, and that the tool sends it as Authorization: Bearer aism_…. If a field insists on an sk- prefix, sk-aism_… is accepted: the prefix is stripped automatically. A key that had an expiry date and passed it gets 401 expired_api_key, and the message says when.auto-* name is a 400 that lists the valid routing modes. For a real model id, check the spelling: direct pin routing infers the provider from the model name prefix, and GET /v1/models lists every id you can use.GET /v1/models, which requires a valid aism_ key. Check that the key and the base URL https://aistupidlevel.info/v1 are both in place.stream: true. Text arrives as the model writes it (X-AISM-Streaming-Mode: native); tool calls arrive in one chunk each once the model has finished them, then the finish reason, then usage if you set stream_options.include_usage. If the chosen model fails before sending anything, or its provider sends nothing for 120 seconds, the next fallback is tried.06
In ~/.continue/config.yaml, under models: provider: openai, model: auto-coding, apiBase: https://aistupidlevel.info/v1, apiKey: aism_… and roles: [chat, edit, apply]. The sample above is the one from the router documentation.
Yes. POST /v1/embeddings proxies to OpenAI’s text-embedding-3-small (also auto-embedding) and text-embedding-3-large. It requires an active OpenAI provider key under Providers; each call counts as one request against your plan, and per-key budgets apply.
No. You pay the providers directly for tokens, with your own keys; the router adds nothing to token prices. The Free plan includes 1,000 routed requests a month (Pro Intelligence 10,000, Developer 100,000, Teams 1,000,000), and prepaid credits cover any beyond that at $5 per 10,000. Only successful requests count. No card for the Free plan.
The sample gives chat, edit and apply the same auto-coding entry, best for code generation, debugging and refactoring. To spend less per coding run, add an auto-value-coding entry: the most coding points per dollar among near-top models, on the measured cost of a coding run rather than list prices.
Every response carries X-AISM-Model (the model that answered) and X-AISM-Reasoning (why it was chosen, including any fallback). The per-request log on the Monitoring page shows the same for every key.
07
Every tool takes the same base URL and key. The integrations hub lists them all; the docs add samples for frameworks and SDKs.
A free account gives you a router key, the Providers page for your own keys, and the request allowance. No card.
1,000 routed requests a month free · your own provider keys · no card