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

# Claude Code

> Как подключить официальный CLI Claude Code от Anthropic напрямую к RuAPI

[Claude Code](https://docs.claude.com/en/docs/claude-code/overview) — официальный консольный ассистент для написания кода от Anthropic. По умолчанию он стучится в `api.anthropic.com`, но через переменную **`ANTHROPIC_BASE_URL`** его можно сразу направить на RuAPI без каких-либо прокси.

<Note>
  На этой странице описана **прямая** настройка. Если удобнее графический интерфейс с несколькими провайдерами, смотрите [CC Switch](/ru/integrations/ccswitch).
</Note>

## Предварительные требования

<Steps>
  <Step title="Аккаунт RuAPI и API-ключ">
    Если ещё нет: зарегистрируйтесь на [www.ruapi.ai](https://www.ruapi.ai), пополните баланс в USDT, затем Консоль → **Токены** → **Создать токен**, чтобы получить строку `sk-...`. См. [Пополнение](/ru/topup) и [API-ключи и безопасность](/ru/authentication).
  </Step>

  <Step title="Node.js ≥ 18">
    Claude Code требует Node.js 18 и выше. Проверьте:

    ```bash theme={null}
    node --version
    ```

    Если не установлен — берите LTS-версию с [nodejs.org](https://nodejs.org). Для macOS:

    ```bash theme={null}
    brew install node
    ```
  </Step>
</Steps>

## Установка Claude Code

<Tabs>
  <Tab title="macOS / Linux">
    ```bash theme={null}
    npm install -g @anthropic-ai/claude-code
    ```

    Проверка:

    ```bash theme={null}
    claude --version
    ```
  </Tab>

  <Tab title="Windows">
    В **PowerShell**:

    ```powershell theme={null}
    npm install -g @anthropic-ai/claude-code
    claude --version
    ```

    <Warning>
      Некоторые shell-функции Claude Code рассчитаны на Unix-окружение. На Windows рекомендуем **WSL2** — внутри него ставьте по инструкции для macOS / Linux.
    </Warning>
  </Tab>
</Tabs>

## Настройка эндпоинта RuAPI

Три способа конфигурации, в порядке предпочтения:

### Способ 1: `settings.json` (рекомендуется)

Откройте `~/.claude/settings.json` (macOS / Linux) или `%USERPROFILE%\.claude\settings.json` (Windows). Если файла нет — создайте:

```json theme={null}
{
  "env": {
    "ANTHROPIC_BASE_URL": "https://www.ruapi.ai",
    "ANTHROPIC_API_KEY": "sk-ваш-токен-RuAPI",
    "ANTHROPIC_MODEL": "имя-модели",
    "ANTHROPIC_SMALL_FAST_MODEL": "имя-модели"
  }
}
```

<Warning>
  **Не** добавляйте `/v1` в конце `ANTHROPIC_BASE_URL`. SDK Anthropic сам подставляет `/v1/messages`, лишний `/v1` приведёт к 404.
</Warning>

<AccordionGroup>
  <Accordion title="Что означает каждое поле">
    | Поле                         | Значение                                                                                                         |
    | ---------------------------- | ---------------------------------------------------------------------------------------------------------------- |
    | `ANTHROPIC_BASE_URL`         | Эндпоинт RuAPI                                                                                                   |
    | `ANTHROPIC_API_KEY`          | Ваш токен RuAPI (**не** официальный ключ Anthropic)                                                              |
    | `ANTHROPIC_MODEL`            | Модель Claude по умолчанию. Claude Sonnet — лучший баланс цены и качества                                        |
    | `ANTHROPIC_SMALL_FAST_MODEL` | Маленькая модель для внутренних задач (генерация заголовков, автодополнение путей). Claude Haiku экономит токены |
  </Accordion>
</AccordionGroup>

### Способ 2: переменные окружения

Для быстрой пробы:

<Tabs>
  <Tab title="macOS / Linux (zsh / bash)">
    ```bash theme={null}
    export ANTHROPIC_BASE_URL="https://www.ruapi.ai"
    export ANTHROPIC_API_KEY="sk-ваш-ключ"
    claude
    ```

    Чтобы сохранить навсегда — добавьте эти строки в `~/.zshrc` или `~/.bashrc`.
  </Tab>

  <Tab title="Windows (PowerShell)">
    ```powershell theme={null}
    $env:ANTHROPIC_BASE_URL = "https://www.ruapi.ai"
    $env:ANTHROPIC_API_KEY  = "sk-ваш-ключ"
    claude
    ```

    Для постоянного сохранения:

    ```powershell theme={null}
    [Environment]::SetEnvironmentVariable("ANTHROPIC_BASE_URL", "https://www.ruapi.ai", "User")
    [Environment]::SetEnvironmentVariable("ANTHROPIC_API_KEY", "sk-ваш-ключ", "User")
    ```
  </Tab>
</Tabs>

### Способ 3: через CC Switch

Если вы часто переключаетесь между RuAPI и официальным аккаунтом, поставьте [CC Switch](/ru/integrations/ccswitch) и управляйте провайдерами через GUI.

## Первый запрос

Откройте новый терминал (чтобы переменные подгрузились), зайдите в любой проект:

```bash theme={null}
cd ~/some-project
claude
```

В интерактивном режиме спросите что-нибудь простое:

```
> Ответь одним русским предложением: привет
```

Должен прийти ответ от Claude, а в Консоли RuAPI → **Логи** появится запрос со списанием токенов.

<Tip>
  Чтобы убедиться, что запрос действительно прошёл через RuAPI, откройте Консоль → **Логи** и проверьте самую свежую запись — название модели должно совпадать с тем, что вы прописали.
</Tip>

## Переключение моделей

Внутри сессии:

```
/model имя-модели
```

Полный список — на [странице цен](https://www.ruapi.ai/pricing).

## Решение проблем

<AccordionGroup>
  <Accordion title="401 Unauthorized / Invalid API key">
    * `ANTHROPIC_API_KEY` должен быть **токеном RuAPI** (`sk-...`), а не официальным `sk-ant-...` от Anthropic.
    * Следите за лишними пробелами и переносами строк при копировании.
    * В Консоли RuAPI → **Токены** убедитесь, что ключ активен, а allowlist моделей (если задан) не исключает вызываемую модель.
  </Accordion>

  <Accordion title="404 / model not found">
    * Опечатка в ID модели. На RuAPI имена Claude совпадают с официальными — точные имена возьмите со страницы цен (семейства Claude Sonnet, Claude Opus, Claude Haiku).
    * Не добавляйте `/v1` к `ANTHROPIC_BASE_URL`.
  </Accordion>

  <Accordion title="402 / недостаточно средств">
    Проверьте баланс USD на главной странице Консоли и [пополните баланс](/ru/topup) в USDT. Длинный контекст и tool calls сжигают токены быстро — 5–10 USD на старте обычно достаточно.
  </Accordion>

  <Accordion title="Таймаут / нет соединения">
    * Проверьте доступность: `curl -I https://www.ruapi.ai`.
    * Если за корпоративным прокси — убедитесь, что `HTTPS_PROXY` не направляет запросы в недоступный шлюз.
    * VPN не требуется.
  </Accordion>

  <Accordion title="Хочу держать и официальный аккаунт, и RuAPI">
    Используйте [CC Switch](/ru/integrations/ccswitch) для переключения одним кликом или [direnv](https://direnv.net/), чтобы привязывать разные переменные окружения к разным каталогам проектов.
  </Accordion>
</AccordionGroup>

## Продвинутое

* **MCP-серверы**: не зависят от того, какой API стоит за бэкендом — настраиваются как обычно.
* **Tool calls / function calling**: RuAPI передаёт вызовы инструментов Anthropic без изменений.
* **Streaming / SSE**: включён по умолчанию, дополнительной настройки не требуется.

Больше про Claude Code — в [официальной документации](https://docs.claude.com/en/docs/claude-code/overview).
