Kilo Code
Use Edgee with the Kilo Code CLI to route every terminal coding session through the gateway.
Edgee's OpenAI-compatible API works with Kilo Code, letting you use its terminal agent while routing every request through Edgee for compression and observability.
Edgee CLI setup (recommended)
The fastest way to connect Kilo Code to Edgee is the CLI. It authenticates, hands Kilo an Edgee provider populated from the live Edgee model catalog, and starts the agent — no config file to edit by hand.
Install the Edgee CLI
curl -fsSL https://edgee.ai/install.sh | bash
# Accept the alias prompt (recommended).
# If skipped: edgee alias
# Reopen your terminal afterward.
Launch Kilo Code through Edgee
Choose how you want to launch. Both options route requests through Edgee.
With aliases installed in the previous step, use your usual command:
kilo
The alias runs edgee launch for you, so requests go through Edgee.
If you are not signed in, Edgee starts sign-in automatically at launch. Follow the prompts and select your organization when asked.
The CLI authenticates, adds the edgee provider, and starts Kilo Code. Token compression is enabled automatically. Pick an Edgee model from Kilo's model picker, or pass one directly:
edgee launch kilo -- -m edgee/anthropic/claude-sonnet-4-5
After the session ends, the CLI prints a link to view token usage, compression savings, and cost breakdown in the Edgee Console.
Your own config is never modified
Unlike integrations that write into your configuration files, edgee launch kilo passes the Edgee provider to the agent inline, through the KILO_CONFIG_CONTENT environment variable, which Kilo deep-merges over your own configuration.
Two things follow. Your Edgee API key is never written to disk — it exists only in the environment of the Kilo process that Edgee starts. And nothing you have configured is touched, moved, or re-emitted: your ~/.config/kilo/kilo.json, your project kilo.json, your agents, commands and skills are all read by Kilo exactly as usual. Edgee contributes one provider and nothing else.
Because KILO_CONFIG_CONTENT ranks above project-level configuration in Kilo's precedence order, a kilo.json committed in a repository cannot shadow the Edgee provider.
Model context windows and pricing
Each model the CLI writes into the edgee provider carries its context window and its per-million-token rates, read from the Edgee model catalog:
{
"models": {
"anthropic/claude-sonnet-4-5": {
"name": "anthropic/claude-sonnet-4-5",
"limit": { "context": 1000000, "output": 32000 },
"cost": { "input": 3, "output": 15, "cache_read": 0.3, "cache_write": 3.75 }
}
}
}
Those are Claude Sonnet 4.5's catalog values: a 1M context window, $3 and $15 per million input and output tokens, $0.30 per million cached-read tokens, $3.75 per million cache-write tokens.
Why it matters: Kilo defaults both to 0 for a config-defined model. Without limit, its context gauge and auto-compaction have nothing to measure against; without cost, every session reports as free.
Details on what the CLI emits:
limit.contextcomes from the catalog. When a model is served by several LLM providers with different windows, the value is the author's own provider entry, or the smallest declared window when the author doesn't serve it — overstating the window makes the agent compact too late and the request gets rejected.limit.outputis always32000. Kilo clamps every request'smax_tokensto its own 32k ceiling anyway, and its schema requiresoutputwheneverlimitis set.costis in US dollars per million tokens, the same unit as Kilo's own catalog. A model that is genuinely free gets zeroed rates rather than an omittedcost.- Tiered long-context pricing is not emitted. Kilo's schema has a
cost.context_over_200kslot, but its config merge drops that field, so declaring it would imply a tier that never takes effect. - Models the catalog has no entry for keep working; they just ship without
limitorcost. The fetch is best-effort — if it fails, launch continues with no declared metadata.
Manual setup (advanced)
Get your coding-agent key
Manual setup uses the key of your enrolled Kilo Code agent, not a standard API key created for LLM Router applications.
- Open the Edgee Console and select your organization.
- In the header, click Set up coding agent or +, select Kilo Code, and click Enroll. If your agent is already enrolled, use its existing icon.
- Click the agent's icon, then Advanced settings → Advanced.
- Under Edgee API key (for manual setup), click Reveal key, then the copy icon.
Use this key wherever the configuration below shows <YOUR_CODING_AGENT_KEY>.
Configure Kilo Code
Prefer to configure Kilo Code yourself? Open or create ~/.config/kilo/kilo.json and add the following configuration:
{
"$schema": "https://app.kilo.ai/config.json",
"provider": {
"edgee": {
"npm": "@ai-sdk/openai-compatible",
"name": "Edgee",
"options": {
"baseURL": "https://edgee.io/v1",
"apiKey": "<YOUR_CODING_AGENT_KEY>"
},
"models": {
"anthropic/claude-sonnet-4-5": {
"name": "claude sonnet 4.5 (edgee)",
"limit": { "context": 1000000, "output": 32000 },
"cost": { "input": 3, "output": 15, "cache_read": 0.3, "cache_write": 3.75 }
},
"openai/gpt-5.2": {
"name": "gpt-5.2 (edgee)",
"limit": { "context": 400000, "output": 32000 },
"cost": { "input": 1.75, "output": 14, "cache_read": 0.175, "cache_write": 0 }
}
}
}
}
}
Make sure to replace "<YOUR_CODING_AGENT_KEY>" with the coding-agent key copied above.
Keep the /v1 on baseURL: Kilo speaks the OpenAI Chat Completions API and does not append the version segment itself.
Model ids use the provider/model form the Edgee catalog exposes. limit and cost are optional, but a model without them gets no context gauge, no auto-compaction, and a $0 cost readout — the same reason edgee launch kilo declares them for you. Keep limit.output at 32000: Kilo clamps max_tokens to that ceiling regardless.
Usage
Once configured, select an Edgee model from Kilo's picker, or pass it on the command line:
kilo -m edgee/anthropic/claude-sonnet-4-5
Model ids are namespaced by the provider key, so every Edgee model appears as edgee/<provider>/<model>. Run kilo models edgee to list the ones currently available to you.
Authentication
Edgee uses standard Bearer token authentication. The API key configured in kilo.json — or supplied by edgee launch kilo — authenticates requests to the Edgee API.
Kilo's own kilo auth login is independent and untouched: launching through Edgee adds a provider rather than redirecting the one you already signed in to, so you can switch back at any time by picking a non-Edgee model.
Next Steps
- Explore Kilo Code's documentation for more features
- Set up observability to monitor your Kilo Code sessions
Verify the connection
Send one request from the configured client, then open Logs in the same Edgee organization. Check the served model, provider, and key. For a CLI-launched coding agent, also inspect its session report.
If the request is missing, check that you launched through Edgee or saved the client’s gateway URL and coding-agent key. If it appears with an error, inspect the error before changing settings. See Troubleshooting and Gateway errors.