> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ruapi.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# How to use Kilo Code with Claude, DeepSeek and GPT via RuAPI

> Step-by-step Kilo Code setup with RuAPI as a Custom provider: DeepSeek, GPT, Gemini and other models over the OpenAI protocol, Claude over the Anthropic protocol. No VPN needed; pay in USDT.

[Kilo Code](https://kilo.ai) is an open-source AI coding agent that runs in VS Code, JetBrains and the terminal: it reads and edits files and runs commands on its own. By default, Kilo asks you to sign in to a Kilo account and pay for models through it, but you can also bring your own key. RuAPI gives you access to Claude, GPT, Gemini, DeepSeek, GLM, Qwen and Kimi with a single API key, and works from Russia without a VPN. You top up your balance in USDT; no foreign-issued card required.

## How it works

In Kilo Code, a third-party service is added as a **Custom provider**. For RuAPI, it's convenient to create two:

| Provider | Provider API | Base URL | Models |
| - | - | - | - |
| `ruapi` | **OpenAI Compatible** | `https://www.ruapi.ai/v1` | DeepSeek, GPT, Gemini, GLM, Qwen, Kimi and others |
| `ruapi-claude` | **Anthropic Messages** | `https://www.ruapi.ai/v1` | Claude: `claude-opus-5-5`, `claude-sonnet-5-5`, `claude-haiku-5-5` |

Claude is best added as the second provider, over the Anthropic protocol: requests then use Claude's native format and prompt caching works. Claude also works through OpenAI Compatible, but without caching — long tasks end up costing several times more.

<Note>
  Unlike in Cline and Roo Code, both providers here use the URL **with** the trailing `/v1`: Kilo appends the rest of the path itself.
</Note>

## Before you start

<Steps>
  <Step title="RuAPI API key">
    Sign up at [www.ruapi.ai](https://www.ruapi.ai/?utm_source=docs\&utm_campaign=en-kilo-code) and top up your balance ([how to top up](/en/topup)). Then go to Console → **API Keys** and click **Create API key**. Keys start with `sk-`.
  </Step>

  <Step title="Latest version of Kilo Code">
    Install Kilo Code from the VS Code Marketplace (search for “Kilo Code”) or update it to the latest version.
  </Step>
</Steps>

<Tip>
  No bank card needed: you can top up your balance in USDT. If you don't have USDT yet, follow our [step-by-step guide to buying it with rubles](/en/buy-usdt). Foreign-issued cards are accepted too.
</Tip>

## A provider for DeepSeek, GPT and other models

<Steps>
  <Step title="Open the provider settings">
    Open Kilo Code in the sidebar → ⚙️ (**Settings**) → **Providers** tab. Scroll to the bottom and click **Custom provider**.
  </Step>

  <Step title="Fill in the dialog">
    | Field | Value |
    | - | - |
    | **Provider ID** | `ruapi` |
    | **Display name** | `RuAPI` |
    | **Provider API** | `OpenAI Compatible` |
    | **Base URL** | `https://www.ruapi.ai/v1` |
    | **API key** | your RuAPI key `sk-...` |
    | **Models** | once you've entered the URL and key, Kilo fetches the model list automatically — select the ones you need, e.g. `deepseek-flash`, `deepseek-v4-pro`, `gpt-5.4`, `glm-5.3` |
  </Step>

  <Step title="Save the provider">
    Click **Submit** — RuAPI models will appear in the model picker.
  </Step>
</Steps>

If the model list doesn't load, double-check the URL and key and click **Fetch models** again, or enter model names manually. You'll find the exact names on the [pricing page](https://www.ruapi.ai/pricing?utm_source=docs\&utm_campaign=en-kilo-code); enter them exactly as listed, including any prefix and capitalization (e.g. `kimi/kimi-k3`).

## A provider for Claude

<Steps>
  <Step title="Add another provider">
    ⚙️ → **Providers** → **Custom provider**.
  </Step>

  <Step title="Fill in the dialog">
    | Field | Value |
    | - | - |
    | **Provider ID** | `ruapi-claude` |
    | **Display name** | `RuAPI Claude` |
    | **Provider API** | `Anthropic Messages` |
    | **Base URL** | `https://www.ruapi.ai/v1` |
    | **API key** | the same RuAPI key `sk-...` |
    | **Models** | `claude-sonnet-5-5`, `claude-opus-5-5`, `claude-haiku-5-5`; if the list doesn't load, enter them manually |
  </Step>

  <Step title="Save the provider">
    Click **Submit**.
  </Step>
</Steps>

## Picking a model and running your first task

In the Kilo Code chat, open the model picker and choose, for example, **RuAPI Claude → claude-sonnet-5-5** or **RuAPI → deepseek-flash**. Then open a project folder and give it a task:

```
Add error handling to the parseConfig function in config.ts
```

To confirm that requests are going through RuAPI, open Console → **Usage Logs**: you'll see an entry for each request with the model and cost. For Claude, from the second or third step onward the entry details should show how many tokens were read from the cache.

Which model to pick:

| Task | Model |
| - | - |
| Complex tasks, design work | `claude-opus-5-5` |
| Everyday coding | `claude-sonnet-5-5` |
| Lots of routine edits on a tight budget | `deepseek-flash` (DeepSeek caches automatically) |

## Keeping costs down

* **New topic, new task.** The context grows with every step and is sent in full each time.
* **Use a cheaper model for routine work.** Plan with a strong model and hand edits to `deepseek-flash`.
* **Use a separate key with a spending limit.** Create a dedicated key for Kilo Code and set a limit on it in Console → **API Keys**.

## Troubleshooting

<AccordionGroup>
  <Accordion title="401 / Invalid key">
    Make sure you pasted the full RuAPI key (`sk-...`) with no extra spaces and that **Base URL** is set to `https://www.ruapi.ai/v1`.
  </Accordion>

  <Accordion title="The model list doesn't load">
    Double-check the URL and key, then click **Fetch models**. If that doesn't help, enter model names manually, copying them from the [pricing page](https://www.ruapi.ai/pricing?utm_source=docs\&utm_campaign=en-kilo-code).
  </Accordion>

  <Accordion title="Model not found (404 or 503)">
    The model name must match the one on RuAPI exactly. Pick Claude models from the `RuAPI Claude` provider and all other models from `RuAPI`.
  </Accordion>

  <Accordion title="400: The reasoning_content in the thinking mode must be passed back">
    This can happen with DeepSeek in reasoning mode if you switch models mid-task. In most cases RuAPI automatically fixes and retries the request. If the error persists, start a new task.
  </Accordion>
</AccordionGroup>

## What's next

* [Cline](/en/integrations/cline) and [Roo Code](/en/integrations/roo-code) — similar VS Code agents.
* [Claude Code](/en/integrations/claude-code) — Anthropic's official terminal agent.
* [Models and prices](/en/models) — the full list of available models.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.