Qwen Code в России — настройка CLI через AITUNNEL

Qwen Code — агентный CLI от QwenLM для программирования в терминале через AITUNNEL

Qwen Code — open-source агентный CLI от команды QwenLM для работы с AI-моделями прямо из терминала. Это форк Google Gemini CLI, адаптированный под модели Qwen3-Coder, но благодаря OpenAI-совместимому API он работает с любым провайдером — в том числе с AITUNNEL. В России это самый удобный способ использовать Qwen Code без VPN, без аккаунта Alibaba Cloud и без зарубежных карт.

Что такое Qwen Code?

Qwen Code — это терминальный AI-агент для разработчиков, который умеет:

  • Читать и редактировать файлы — вносит правки в код по вашим задачам
  • Выполнять команды — запускает тесты, билды, shell-скрипты
  • Понимать проект целиком — анализирует структуру, импорты, зависимости
  • Работать в headless-режиме — одноразовые запросы для CI/CD и скриптов
  • Интегрироваться с редакторами — поддержка VS Code, Zed, JetBrains
  • Переключать модели на лету — команда /model прямо в сессии

В отличие от чат-ботов, Qwen Code — агент: он не просто отвечает на вопросы, а выполняет задачи и возвращает результат в виде отредактированного кода.

Почему Qwen Code через AITUNNEL

Qwen Code рассчитан на Alibaba Cloud или Qwen OAuth, которые недоступны из России без VPN и иностранной карты. AITUNNEL даёт OpenAI-совместимый API с российским эндпоинтом api.aitunnel.ru — Qwen Code работает через него без дополнительных прокси.

  • Без VPN — запросы идут через российский домен
  • Оплата в рублях — пополнение от 399₽, карты МИР и СБП
  • Один API-ключ — Qwen3-Coder, Claude 4.5, GPT-5, Gemini, Kimi через единый baseUrl
  • Для бизнеса — договор, акты, счета-фактуры
  • Панель активности — видите каждый запрос и его стоимость в реальном времени

Рекомендуемая модель: для Qwen Code оптимальна Qwen3-Coder (qwen/qwen3-coder) — она специально обучена под агентные задачи программирования. Также через AITUNNEL доступны GPT-5.2 Codex, Claude Sonnet 4.5, Gemini 2.5 Pro и другие модели с tool calling.

Установка Qwen Code

Требуется Node.js 20 или новее.

Через npm

bash
npm install -g @qwen-code/qwen-code@latest

Через Homebrew (macOS, Linux)

bash
brew install qwen-code

Проверка установки

bash
qwen --version

Настройка Qwen Code с AITUNNEL

Qwen Code поддерживает несколько способов подключить провайдера. Выберите подходящий под ваш сценарий.

Способ 1: Переменные окружения (быстрый старт)

Самый простой способ — экспортировать переменные в сессию оболочки:

bash
export OPENAI_API_KEY="sk-aitunnel-xxx"
export OPENAI_BASE_URL="https://api.aitunnel.ru/v1"
export OPENAI_MODEL="qwen/qwen3-coder"

qwen

Замените sk-aitunnel-xxx на ваш реальный ключ AITUNNEL. Чтобы переменные сохранялись между сессиями, добавьте их в ~/.bashrc, ~/.zshrc или ~/.config/fish/config.fish.

Способ 2: Файл `.qwen/.env`

Qwen Code автоматически подгружает переменные из .env. Порядок поиска:

  1. .qwen/.env в текущей директории (и всех родительских)
  2. .env в текущей директории
  3. ~/.qwen/.env в домашней директории
  4. ~/.env

Загружается только первый найденный файл. Создайте ~/.qwen/.env:

bash
OPENAI_API_KEY=sk-aitunnel-xxx
OPENAI_BASE_URL=https://api.aitunnel.ru/v1
OPENAI_MODEL=qwen/qwen3-coder

После этого достаточно запустить qwen — ключ подтянется автоматически.

Способ 3: Глобальный конфиг `~/.qwen/settings.json` (рекомендуется)

Официальная документация Qwen Code рекомендует настраивать провайдеров через ~/.qwen/settings.json. Этот способ позволяет держать несколько моделей одновременно и переключаться между ними командой /model:

json
{
  "modelProviders": {
    "openai": [
      {
        "id": "qwen/qwen3-coder",
        "name": "Qwen3-Coder (AITUNNEL)",
        "baseUrl": "https://api.aitunnel.ru/v1",
        "description": "Qwen3-Coder через AITUNNEL",
        "envKey": "AITUNNEL_API_KEY"
      }
    ]
  },
  "env": {
    "AITUNNEL_API_KEY": "sk-aitunnel-xxx"
  },
  "security": {
    "auth": {
      "selectedType": "openai"
    }
  },
  "model": {
    "name": "qwen/qwen3-coder"
  }
}

Способ 4: Конфиг на уровне проекта

Создайте .qwen/settings.json в корне проекта. Формат тот же, что и у глобального конфига; настройки проекта переопределяют пользовательские. Удобно делиться конфигурацией с командой через git — только не забудьте добавить файл с ключом в .gitignore.

Порядок приоритета API-ключей

ПриоритетИсточникПоведение
1 (высший)CLI-флаг --openai-api-keyВсегда перекрывает остальные
2Shell-переменная (export)Перекрывает .env и settings.json
3.env файл (первый найденный)Применяется, если не задано в shell
4 (низший)env в settings.jsonПрименяется, если не задано нигде выше

Рекомендуется хранить ключ в .qwen/.env или export AITUNNEL_API_KEY= в профиле оболочки, а в settings.json держать только структуру провайдеров.

Запуск и первая сессия

Перейдите в директорию проекта и запустите CLI:

bash
cd /path/to/your/project
qwen

При первом запуске Qwen Code спросит способ аутентификации. Введите /auth и выберите OpenAI — именно через это меню AITUNNEL подключается корректно. Важно: команда qwen auth (без слеша) показывает только Qwen OAuth и Alibaba Cloud — для AITUNNEL используйте **/auth внутри сессии**.

Проверьте подключение:

text
/stats

Отобразится текущая модель и провайдер. Отправьте любой запрос, например «Объясни структуру этого проекта», и проверьте панель активности AITUNNEL — запросы должны появляться в реальном времени.

Несколько моделей в одном конфиге

Qwen Code позволяет держать список моделей и переключаться между ними на лету. Это удобно: одна модель для быстрых правок, другая — для сложных рефакторингов.

json
{
  "modelProviders": {
    "openai": [
      {
        "id": "qwen/qwen3-coder",
        "name": "Qwen3-Coder (AITUNNEL)",
        "baseUrl": "https://api.aitunnel.ru/v1",
        "envKey": "AITUNNEL_API_KEY"
      },
      {
        "id": "claude-sonnet-4-5",
        "name": "Claude Sonnet 4.5 (AITUNNEL)",
        "baseUrl": "https://api.aitunnel.ru/v1",
        "envKey": "AITUNNEL_API_KEY"
      },
      {
        "id": "gpt-5.2-codex",
        "name": "GPT-5.2 Codex (AITUNNEL)",
        "baseUrl": "https://api.aitunnel.ru/v1",
        "envKey": "AITUNNEL_API_KEY"
      },
      {
        "id": "moonshotai/kimi-k2",
        "name": "Kimi K2 (AITUNNEL)",
        "baseUrl": "https://api.aitunnel.ru/v1",
        "envKey": "AITUNNEL_API_KEY"
      }
    ]
  },
  "security": {
    "auth": { "selectedType": "openai" }
  },
  "model": {
    "name": "qwen/qwen3-coder"
  }
}

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

text
/model

AITUNNEL использует один baseUrl и один API-ключ для всех моделей — не нужно настраивать отдельных провайдеров для Anthropic, OpenAI и Google.

Быстрая модель для подсказок (`fastModel`)

Qwen Code использует отдельную «быструю» модель для follow-up suggestions и спекулятивных запросов. По умолчанию это основная модель, но можно задать более дешёвую, чтобы снизить задержки и расходы:

json
{
  "model": { "name": "qwen/qwen3-coder" },
  "fastModel": "gemini-2.5-flash"
}

Хорошие кандидаты: gemini-2.5-flash, gpt-5-mini, deepseek-chat. Переключить на лету можно командой /model --fast в сессии.

Файл контекста `QWEN.md`

Qwen Code поддерживает иерархическую «память» через файлы QWEN.md (аналог CLAUDE.md или AGENTS.md). Положите QWEN.md в корень проекта — его содержимое автоматически добавится в системный промпт.

Пример QWEN.md:

markdown
# Проект: Next.js Frontend

## Правила
- TypeScript 5.0+, Node.js 20+
- Все новые функции документируются JSDoc
- Строгое равенство (`===` / `!==`)

## Стиль
- 2 пробела для отступов
- Компоненты React в PascalCase, хуки — camelCase с `use`

## Запрещено
- Добавлять внешние зависимости без явной необходимости

Работает и глобальный ~/.qwen/QWEN.md — используйте его для личных предпочтений, которые применяются ко всем проектам. Управлять контекстом можно через /memory show и /memory refresh.

Полезные CLI-флаги

bash
qwen --model qwen/qwen3-coder               # модель для текущей сессии
qwen --openai-api-key sk-aitunnel-xxx       # ключ через флаг (высший приоритет)
qwen -p "Сгенерируй README для проекта"     # headless (одноразовый) запрос
qwen --approval-mode auto-edit              # авто-аппрув редактирования файлов
qwen --approval-mode yolo                   # авто-аппрув всех действий (осторожно!)
qwen --allowed-tools "Shell(git status)"    # безопасный whitelist для Shell
qwen --include-directories ../shared-lib    # подтянуть доп. директории
qwen -o json -p "..."                       # структурированный JSON-вывод

Режимы подтверждения

РежимПоведение
planТолько анализ, без изменений
defaultСпрашивает перед каждой записью в файл или shell-командой
auto-editАвто-аппрув редактирования, shell требует подтверждения
yoloПолный автомат (включает sandbox по умолчанию)

Headless-режим для CI/CD

Qwen Code можно запускать без интерактивного UI — удобно для скриптов, автоматизации и CI/CD:

bash
export OPENAI_API_KEY="sk-aitunnel-xxx"
export OPENAI_BASE_URL="https://api.aitunnel.ru/v1"
export OPENAI_MODEL="qwen/qwen3-coder"

qwen -p "Сгенерируй unit-тесты для src/utils.ts"

Флаг -o json возвращает структурированный JSON-вывод, что удобно парсить в скриптах.

Полезные команды в сессии

КомандаОписание
/helpСписок команд
/authСменить способ аутентификации (выберите OpenAI для AITUNNEL)
/modelПереключить модель
/statsИнформация о текущей сессии
/clearОчистить историю диалога
/compressСжать историю для экономии токенов
/memory showПоказать загруженный QWEN.md
/memory refreshПерезагрузить контекст
/permissionsУправление разрешениями на инструменты
/exitВыйти из сессии

Рекомендуемые модели для Qwen Code

МодельНазначениеКонтекст
Qwen3-Coder (qwen/qwen3-coder)Агентное программирование, основная модель256K
GPT-5.2 CodexСпециализация на коде, сильный tool use400K
Claude Sonnet 4.5Большой контекст и качественный рефакторинг1M
Claude Opus 4.5Сложные рассуждения и архитектура200K
Kimi K2 (moonshotai/kimi-k2)Длинный контекст, агентные сценарии200K+
Gemini 2.5 FlashБыстрая модель для fastModelБольшой
DeepSeek V3.2Экономичный вариант131K

Примеры задач

Рефакторинг

text
> Преобразуй все callback-функции в async/await в src/api/*.js

Генерация тестов

text
> Напиши vitest-тесты для всех публичных методов UserService

Code review

text
> Проверь код в src/auth/ на security-уязвимости и предложи правки

Документация

text
> Добавь JSDoc ко всем экспортируемым функциям в src/utils/

Миграция

text
> Обнови код для совместимости с React 19, учитывая breaking changes

Устранение неполадок

Ошибка 401 / 403

  • Проверьте ключ в личном кабинете AITUNNEL
  • Убедитесь, что баланс положительный
  • OPENAI_BASE_URL должен быть https://api.aitunnel.ru/v1/v1, без слеша в конце)
  • Проверьте, что в ключе нет лишних пробелов или переносов строк

Qwen Code пытается войти через Qwen OAuth

Если CLI открывает браузер для qwen.ai или просит выбрать регион Alibaba Cloud — выбран не тот протокол. Решения:

  1. Запустите qwen auth status и проверьте selectedType
  2. Внутри сессии: /authOpenAI (именно через /auth, не через qwen auth)
  3. Или пропишите в ~/.qwen/settings.json блок "security": { "auth": { "selectedType": "openai" } }

«Model not found» / 404

Проверьте актуальный ID модели в каталоге AITUNNEL. Должно быть именно qwen/qwen3-coder, а не qwen3-coder или qwen-coder.

Tool calling не срабатывает

Qwen Code активно использует tool calling для чтения файлов и выполнения команд. Убедитесь, что выбранная модель поддерживает вызов инструментов. Qwen3-Coder, Claude Sonnet/Opus 4.5, GPT-5.2 и Gemini 2.5 поддерживают его из коробки.

Ошибки лимита контекста

Для больших проектов используйте модели с расширенным окном (Claude Sonnet 4.5 — 1M токенов, GPT-5.2 Codex — 400K). Команда /compress сжимает историю диалога и освобождает контекст.

Сравнение с другими AI CLI

ПараметрQwen Code + AITUNNELQwen Code (OAuth)Claude CodeCodex CLI
Работа в России✅ без VPN❌ требует VPN
Оплата в рублях
Выбор моделилюбая через AITUNNELтолько Qwenтолько Claudeтолько OpenAI
Tool calling
Headless / CI-режим
Проектные настройки (.qwen/)

Дополнительные ресурсы

Ключевые возможности

  • Агентное программирование в терминале
  • Поддержка Qwen3-Coder, Claude, GPT-5, Gemini через один API
  • Переключение моделей командой /model
  • OpenAI-совместимый API — настройка за минуту
  • Headless-режим для CI/CD и скриптов
  • Файл контекста QWEN.md (аналог CLAUDE.md)
  • Интеграция с VS Code, Zed, JetBrains
  • Проектные и глобальные настройки (.qwen/settings.json)
  • Approval modes: plan / default / auto-edit / yolo
  • Структурированный JSON-вывод (-o json)

Подключите этот инструмент через AITUNNEL

Все инструменты и модели доступны через единый API. Работает из России, оплата в рублях.

Единый API50+ моделейОплата в рублях
Начать работуРегистрация за 1 минуту

Рекомендуемые модели