---
title: "Kilo Code with EU-hosted models · Setup guide"
description: "Add inference.eu as a custom OpenAI-compatible provider in Kilo Code for VS Code and the CLI, and run its agents on open-weight models processed in the EU."
canonical: "https://inference.eu/integrations/kilo-code/"
language: "en"
---

Coding agents · Kilo Code

# Use Kilo Code with open-source models hosted in the EU

Kilo Code is an open-source coding agent for VS Code, JetBrains and the terminal. It accepts custom OpenAI-compatible providers, either through its settings dialog or in kilo.jsonc. Add inference.eu and your agents work on open-weight models processed in European data centres.

[Contact sales](https://inference.eu/contact/)[Setup](#setup)

1.  01API format: OpenAI
2.  02EU data centres
3.  03Covered by one DPA

## Set it up in a few minutes

1.  1

    Create an API key in your inference.eu account and export it as `INFERENCE_EU_API_KEY`.

2.  2

    In the extension, open Settings, go to the Providers tab and click Custom provider at the bottom.

3.  3

    Enter `inference-eu` as the provider id, choose OpenAI Compatible as the provider API, and paste the inference.eu base URL and your key.

4.  4

    Pick the models Kilo fetches from the endpoint, or edit `~/.config/kilo/kilo.jsonc` directly to set limits and tool calling.

5.  5

    Select an inference.eu model in the model picker and start a small task to confirm that edits work.

~/.config/kilo/kilo.jsonc

```
{
  "$schema": "https://app.kilo.ai/config.json",
  "model": "inference-eu/qwen3-coder-480b-a35b-instruct",
  "provider": {
    "inference-eu": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "inference.eu",
      "options": {
        "baseURL": "https://api.inference.eu/v1",
        "apiKey": "{env:INFERENCE_EU_API_KEY}"
      },
      "models": {
        "qwen3-coder-480b-a35b-instruct": {
          "name": "Qwen3 Coder 480B",
          "tool_call": true
        },
        "glm-5.3": { "name": "GLM-5.3", "tool_call": true },
        "kimi-k3": { "name": "Kimi K3", "tool_call": true }
      }
    }
  }
}
```

## What Kilo Code is

Kilo Code is an open-source AI coding agent available as a VS Code extension, a JetBrains plugin and a command-line tool. It offers modes for different kinds of work, such as architecting, coding, debugging and answering questions, and it edits files and runs commands with your approval.

Kilo supports a long list of built-in providers and lets you add your own. Any endpoint that implements the OpenAI Chat Completions API can be registered as a custom provider, which is how you connect inference.eu and keep your agent work on European infrastructure.

## How the configuration works

The custom provider dialog asks for a provider id, a display name, the provider API and a base URL. Choose OpenAI Compatible for the API and enter the inference.eu base URL ending in `/v1`. When the URL and key are valid, Kilo queries `/v1/models` and shows a searchable list of models to add.

For finer control, edit `kilo.jsonc` in `~/.config/kilo/` or in your project. The `provider` block uses the same shape as the example: an `npm` adapter, `options.baseURL`, `options.apiKey` with `{env:...}` syntax, and a `models` map. The `model` key selects the default as `inference-eu/<model id>`. Per model you can set `tool_call`, `reasoning` and `limit`.

## Which models to choose

For the Code mode and agentic tasks, `qwen3-coder-480b-a35b-instruct` is a strong default. It is trained for code and tool use and keeps edits focused. For Architect and Ask modes, where the agent reads and reasons more than it edits, `glm-5.3` and `kimi-k3` give thorough answers.

`gpt-oss-120b` responds quickly and suits Debug sessions with short loops of trying and checking. Mark models with `"tool_call": true` in kilo.jsonc so Kilo knows it can give them tools. You can switch models per mode, so it is worth testing each one on the kind of work it will do most.

## Troubleshooting

A 401 error means the key did not reach Kilo. If you use `{env:INFERENCE_EU_API_KEY}`, start VS Code or the CLI from a shell where the variable is set. If the model list stays empty after you enter the base URL, check that it ends in `/v1` and has no extra path.

"Model not found" means the model key differs from the inference.eu id. If the agent describes changes without applying them, the model is not returning tool calls: set `"tool_call": true` and pick a model trained for tool use. Kilo also accepts full endpoint URLs in the base URL field, but the plain `/v1` base is the cleanest choice.

## Keeping code and data in the EU

With a custom provider, Kilo sends model requests from your editor or terminal to the base URL you enter. With inference.eu, prompts, file contents and command output are processed in EU data centres and never used for training. We sign a data processing agreement under Article 28 GDPR, share our subprocessor list and bill in euros.

Kilo also offers its own gateway and sign-in. If all model traffic must stay with inference.eu, make the custom provider your only one, set its model as the default for every mode, and review Kilo's telemetry setting.

## Kilo Code

Category

Coding agents

Maker

Kilo Code, Inc.

API format

OpenAI

Processing

EU data centres

Website

[kilo.ai](https://kilo.ai/)

Documentation

[kilo.ai](https://kilo.ai/docs/code-with-ai/agents/custom-models)

## Kilo Code: common questions

The questions buyers, developers and legal teams ask us most. Something missing? Ask us directly.

Yes. Add inference.eu as a custom OpenAI-compatible provider, select its models in the model picker and set one as the default. Model requests then go to inference.eu and do not need the Kilo gateway or a Kilo balance.

The global file is \`~/.config/kilo/kilo.jsonc\`, or \`%USERPROFILE%\\.config\\kilo\\kilo.jsonc\` on Windows. You can also place \`kilo.jsonc\` in a project root. The extension's settings dialog writes to the same configuration, so both routes stay in sync.

Yes, when you add the provider through the settings dialog. Once the base URL and key are valid, Kilo reads \`/v1/models\` and lets you search and add models. In kilo.jsonc you list them yourself under \`models\`.

Qwen3 Coder 480B is a strong choice for Code mode, with GLM-5.3 or Kimi K3 for Architect and Ask modes. gpt-oss-120b is fast for short debugging loops. Try them on your own repository before you decide.

Kilo needs to know a model supports tool calls. Add \`"tool\_call": true\` to the model entry in kilo.jsonc and choose a model trained for tool use, such as Qwen3 Coder, GLM-5.3 or Kimi K3.

The API key is missing or wrong. If kilo.jsonc reads it with \`{env:INFERENCE\_EU\_API\_KEY}\`, make sure the variable is set where VS Code or the CLI starts. Otherwise paste the key again in the provider dialog.

Yes. Kilo Code is available for VS Code, JetBrains IDEs and as a CLI. The custom provider in kilo.jsonc applies wherever Kilo reads that file, so one setup covers your editor and your terminal.

Yes. Add a \`limit\` object with \`context\` and \`output\` to a model entry in kilo.jsonc. Kilo uses these values to track how much room is left in the conversation. Use the limits listed for the model on inference.eu.

Model requests go from your machine to inference.eu, where they are processed in EU data centres and not used for training. Avoid signing in to other providers and check Kilo's telemetry setting if your policy requires that nothing else is sent.

Yes. Commit a project \`kilo.jsonc\` with the provider block and default model, without the key. Each developer exports their own \`INFERENCE\_EU\_API\_KEY\`, so usage is tracked per person and no credentials are shared.

[Ask a question](https://inference.eu/contact/)

## Related

[All integrations](https://inference.eu/integrations/)

-   [ClineConnect the Cline coding agent for VS Code and the terminal to open-weight models processed in EU data centres with the OpenAI Compatible provider.Coding agents](https://inference.eu/integrations/cline/)
-   [OpenCodeRun the OpenCode terminal agent on open-weight models processed in EU data centres. Add one provider block to opencode.json and keep your code in Europe.Coding agents](https://inference.eu/integrations/opencode/)
-   [ContinueConfigure the Continue extension for VS Code and JetBrains to use open-weight models processed in EU data centres, role by role, in config.yaml.IDEs and editors](https://inference.eu/integrations/continue/)

## Move your AI workloads to EU infrastructure

Tell us which models you use and roughly how much traffic you have. We reply within one working day with pricing and next steps.

-   Reply within one working day
-   Pricing for your volume
-   DPA ready to sign
