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
npm install -g @qwen-code/qwen-code@latestЧерез Homebrew (macOS, Linux)
brew install qwen-codeПроверка установки
qwen --versionНастройка Qwen Code с AITUNNEL
Qwen Code поддерживает несколько способов подключить провайдера. Выберите подходящий под ваш сценарий.
Способ 1: Переменные окружения (быстрый старт)
Самый простой способ — экспортировать переменные в сессию оболочки:
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. Порядок поиска:
.qwen/.envв текущей директории (и всех родительских).envв текущей директории~/.qwen/.envв домашней директории~/.env
Загружается только первый найденный файл. Создайте ~/.qwen/.env:
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:
{
"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 | Всегда перекрывает остальные |
| 2 | Shell-переменная (export) | Перекрывает .env и settings.json |
| 3 | .env файл (первый найденный) | Применяется, если не задано в shell |
| 4 (низший) | env в settings.json | Применяется, если не задано нигде выше |
Рекомендуется хранить ключ в .qwen/.env или export AITUNNEL_API_KEY= в профиле оболочки, а в settings.json держать только структуру провайдеров.
Запуск и первая сессия
Перейдите в директорию проекта и запустите CLI:
cd /path/to/your/project
qwenПри первом запуске Qwen Code спросит способ аутентификации. Введите /auth и выберите OpenAI — именно через это меню AITUNNEL подключается корректно. Важно: команда qwen auth (без слеша) показывает только Qwen OAuth и Alibaba Cloud — для AITUNNEL используйте **/auth внутри сессии**.
Проверьте подключение:
/statsОтобразится текущая модель и провайдер. Отправьте любой запрос, например «Объясни структуру этого проекта», и проверьте панель активности AITUNNEL — запросы должны появляться в реальном времени.
Несколько моделей в одном конфиге
Qwen Code позволяет держать список моделей и переключаться между ними на лету. Это удобно: одна модель для быстрых правок, другая — для сложных рефакторингов.
{
"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"
}
}Внутри сессии:
/modelAITUNNEL использует один baseUrl и один API-ключ для всех моделей — не нужно настраивать отдельных провайдеров для Anthropic, OpenAI и Google.
Быстрая модель для подсказок (`fastModel`)
Qwen Code использует отдельную «быструю» модель для follow-up suggestions и спекулятивных запросов. По умолчанию это основная модель, но можно задать более дешёвую, чтобы снизить задержки и расходы:
{
"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:
# Проект: Next.js Frontend
## Правила
- TypeScript 5.0+, Node.js 20+
- Все новые функции документируются JSDoc
- Строгое равенство (`===` / `!==`)
## Стиль
- 2 пробела для отступов
- Компоненты React в PascalCase, хуки — camelCase с `use`
## Запрещено
- Добавлять внешние зависимости без явной необходимостиРаботает и глобальный ~/.qwen/QWEN.md — используйте его для личных предпочтений, которые применяются ко всем проектам. Управлять контекстом можно через /memory show и /memory refresh.
Полезные CLI-флаги
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:
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 use | 400K |
| 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 |
Примеры задач
Рефакторинг
> Преобразуй все callback-функции в async/await в src/api/*.jsГенерация тестов
> Напиши vitest-тесты для всех публичных методов UserServiceCode review
> Проверь код в src/auth/ на security-уязвимости и предложи правкиДокументация
> Добавь JSDoc ко всем экспортируемым функциям в src/utils/Миграция
> Обнови код для совместимости с 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 — выбран не тот протокол. Решения:
- Запустите
qwen auth statusи проверьтеselectedType - Внутри сессии:
/auth→ OpenAI (именно через/auth, не черезqwen auth) - Или пропишите в
~/.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 + AITUNNEL | Qwen Code (OAuth) | Claude Code | Codex 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. Работает из России, оплата в рублях.