---
title: "Continue with EU-hosted models · VS Code and JetBrains setup"
description: "Configure the Continue extension for VS Code and JetBrains to use open-weight models processed in EU data centres, role by role, in config.yaml."
canonical: "https://inference.eu/integrations/continue/"
language: "en"
---

IDEs and editors · Continue

# Use Continue with open-source models hosted in the EU

Continue is an open-source AI assistant for VS Code and JetBrains IDEs. Every model is defined in config.yaml, so adding inference.eu takes a few lines. Your chat, edit and apply requests then go straight from the IDE to open-weight models 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.

2.  2

    Add `INFERENCE_EU_API_KEY=<your key>` to `~/.continue/.env` so config.yaml can read it as a secret.

3.  3

    Open `~/.continue/config.yaml` from the Continue panel and add the inference.eu models with `provider: openai` and `apiBase` set to our base URL.

4.  4

    Assign roles such as `chat`, `edit` and `apply` to each model.

5.  5

    Reload the Continue panel, choose an inference.eu model in the selector and send a test message.

~/.continue/config.yaml

```
name: inference.eu
version: 0.0.1
schema: v1
models:
  - name: Qwen3 Coder (inference.eu)
    provider: openai
    model: qwen3-coder-480b-a35b-instruct
    apiBase: https://api.inference.eu/v1
    apiKey: ${{ secrets.INFERENCE_EU_API_KEY }}
    roles:
      - chat
      - edit
      - apply
  - name: GLM-5.3 (inference.eu)
    provider: openai
    model: glm-5.3
    apiBase: https://api.inference.eu/v1
    apiKey: ${{ secrets.INFERENCE_EU_API_KEY }}
    roles:
      - chat
```

## What Continue is

Continue is an open-source extension for VS Code and the JetBrains IDEs, with a command-line agent as well. It offers chat, inline edits, an agent mode that uses tools, and tab autocomplete. Continue does not bundle a model of its own; you decide which provider answers each kind of request.

That design suits teams that want to keep their editor and choose where models run. Because Continue supports any OpenAI-compatible API, inference.eu works with the built-in `openai` provider and a custom `apiBase`.

## How the configuration works

Models are listed in `config.yaml`, either locally in `~/.continue/config.yaml` or through a shared configuration. Each entry names a `provider`, the `model` id, an `apiBase` and an `apiKey`. With `provider: openai` and `apiBase` set to inference.eu, Continue calls our Chat Completions endpoint.

The `${{ secrets.INFERENCE_EU_API_KEY }}` syntax reads the key from `~/.continue/.env`, keeping it out of the config file. Roles decide what each model does: `chat` for the chat panel and agent, `edit` for inline changes, `apply` for applying code blocks to files. You can give different roles to different models.

## Which models to choose

Give the `chat`, `edit` and `apply` roles to `qwen3-coder-480b-a35b-instruct`; it is trained for code and handles agent mode's tool calls well. Add `glm-5.3` or `kimi-k3` as further chat models for design questions, reviews and work with longer documents, and switch between them in the model selector.

`gpt-oss-120b` is a good choice when you want fast answers to short questions. Tab autocomplete is a different job: it needs a small, fast model trained for fill-in-the-middle completion. Leave the `autocomplete` role unassigned until you have chosen such a model, rather than giving it to a large chat model.

## Troubleshooting

A 401 error usually means the secret was not resolved. Check that `~/.continue/.env` contains `INFERENCE_EU_API_KEY` without quotes or spaces, then reload the window. "Model not found" means the `model` value differs from the inference.eu id; copy it exactly.

If Continue tries the Responses API and fails, add `useResponsesApi: false` to the model entry so it uses Chat Completions. If agent mode answers in prose instead of calling tools, choose a model with reliable tool calling, such as Qwen3 Coder or GLM-5.3. Make sure `apiBase` ends in `/v1` without a trailing path.

## Keeping code and data in the EU

With a local config, Continue sends model requests directly from your IDE to the `apiBase` you set. With inference.eu, the code, files and context you include 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.

Continue can collect anonymous usage telemetry; you can turn it off in the extension settings. If you use a configuration stored on Continue's hub, review how secrets are managed there. For the strictest setups, keep config.yaml and the `.env` file local and distribute them through your own tooling.

## Continue

Category

IDEs and editors

Maker

Continue Dev, Inc.

API format

OpenAI

Processing

EU data centres

Website

[www.continue.dev](https://www.continue.dev/)

Documentation

[docs.continue.dev](https://docs.continue.dev/customize/model-providers/top-level/openai)

## Continue: common questions

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

Continue is open source and the extension is free. You pay inference.eu only for the tokens your requests use, billed in euros. No separate model subscription from Continue is needed when you bring your own provider.

Yes. The same config.yaml applies to the VS Code extension and the JetBrains plugin, so one inference.eu setup covers IntelliJ IDEA, PyCharm, WebStorm and the other JetBrains IDEs as well as VS Code.

With a local config.yaml, model requests go directly from your IDE to the provider you configure, here inference.eu. Continue may send anonymous telemetry, which you can turn off. Code you include in prompts is sent only to the model provider.

Autocomplete needs a small, fast model trained for fill-in-the-middle completion. Large chat models are too slow for keystroke-level suggestions. Use the inference.eu models for chat, edit, apply and agent work, and assign the autocomplete role only to a dedicated completion model.

Put \`INFERENCE\_EU\_API\_KEY=...\` in \`~/.continue/.env\` and reference it as \`${{ secrets.INFERENCE\_EU\_API\_KEY }}\` in config.yaml. The key then never appears in the config file itself, which you can share with your team.

The secret did not resolve or the key is invalid. Check the spelling of the variable in \`.env\` and config.yaml, make sure the key is active in your inference.eu account, and reload the IDE window after any change.

Yes. Agent mode relies on tool calls in the OpenAI format, which inference.eu supports with streaming. Use models trained for tool use, such as Qwen3 Coder, GLM-5.3 or Kimi K3, for the most dependable results.

Yes. Roles let you assign each model a job. For example, give \`chat\` to GLM-5.3 for discussion and \`edit\` and \`apply\` to Qwen3 Coder for code changes. Continue picks the right model for each action.

Yes. Share a config.yaml with the inference.eu models and roles through your repository or internal tooling, and let each developer keep their own key in \`~/.continue/.env\`. Usage is then tracked per key.

Requests are processed in EU data centres, are not used for training, and are covered by a data processing agreement under Article 28 GDPR with a published subprocessor list. Your own obligations depend on how you use it, so involve your data protection officer.

[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/)
-   [ZedAdd inference.eu as an OpenAI-compatible provider in the Zed editor and run its Agent Panel on open-weight models processed in EU data centres.IDEs and editors](https://inference.eu/integrations/zed/)
-   [JetBrains AI AssistantConnect JetBrains AI Assistant to open-weight models processed in EU data centres through its OpenAI-compatible provider, and assign them to IDE features.IDEs and editors](https://inference.eu/integrations/jetbrains-ai-assistant/)
-   [CursorUse open-weight models processed in EU data centres for Cursor Chat and Agent through the OpenAI base URL override. What it covers and what still goes via Cursor.IDEs and editors](https://inference.eu/integrations/cursor/)

## 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
