Команды
В этом документе описаны все команды, поддерживаемые Qwen Code, которые помогут вам эффективно управлять сессиями, настраивать интерфейс и контролировать поведение приложения.
Команды Qwen Code активируются с помощью определённых префиксов и делятся на три категории:
| Тип префикса | Описание функции | Типичный сценарий использования |
|---|---|---|
Слэш-команды (/) | Метауправление самим Qwen Code | Управление сессиями, изменение настроек, получение справки |
Команды с @ (@) | Быстрая вставка содержимого локальных файлов в чат | Позволяет ИИ анализировать указанные файлы или код в директориях |
Восклицательные команды (!) | Прямое взаимодействие с системной оболочкой (Shell) | Выполнение системных команд, таких как git status, ls и т.д. |
1. Команды с косой чертой (/)
Команды с косой чертой используются для управления сессиями Qwen Code, интерфейсом и базовым поведением.
1.1 Управление сессиями и проектами
Эти команды помогают сохранять, восстанавливать и подводить итоги по ходу работы.
| Команда | Описание | Примеры использования |
|---|---|---|
/summary | Генерирует сводку проекта на основе истории разговоров | /summary |
/compress | Заменяет историю чата сводкой для экономии токенов | /compress |
/restore | Восстанавливает файлы до состояния перед выполнением инструмента | /restore (список) или /restore <ID> |
/init | Анализирует текущую директорию и создает начальный контекстный файл | /init |
1.2 Управление интерфейсом и рабочей средой
Команды для настройки внешнего вида интерфейса и рабочей среды.
| Команда | Описание | Примеры использования |
|---|---|---|
/clear | Очистить содержимое экрана терминала | /clear (ярлык: Ctrl+L) |
/theme | Изменить визуальную тему Qwen Code | /theme |
/vim | Включить/выключить режим редактирования Vim в области ввода | /vim |
/directory | Управление поддержкой рабочего пространства с несколькими каталогами | /dir add ./src,./tests |
/editor | Открыть диалоговое окно для выбора поддерживаемого редактора | /editor |
1.3 Настройки языка
Команды специально для управления языком интерфейса и вывода.
| Команда | Описание | Примеры использования |
|---|---|---|
/language | Просмотр или изменение настроек языка | /language |
→ ui [язык] | Установить язык интерфейса | /language ui zh-CN |
→ output [язык] | Установить язык вывода LLM | /language output Chinese |
- Доступные языки интерфейса:
zh-CN(упрощенный китайский),en-US(английский) - Примеры языков вывода:
Chinese,English,Japaneseи т. д.
1.4 Управление инструментами и моделями
Команды для управления инструментами и моделями ИИ.
| Команда | Описание | Примеры использования |
|---|---|---|
/mcp | Список настроенных серверов и инструментов MCP | /mcp, /mcp desc |
/tools | Отображение списка доступных инструментов | /tools, /tools desc |
/approval-mode | Изменение режима одобрения использования инструментов | /approval-mode <режим (auto-edit)> --project |
→plan | Только анализ, без выполнения | Безопасный просмотр |
→default | Требовать одобрения для редактирования | Повседневное использование |
→auto-edit | Автоматически одобрять редактирование | Доверенная среда |
→yolo | Автоматически одобрять всё | Быстрое прототипирование |
/model | Переключение модели в текущем сеансе | /model |
/extensions | Список всех активных расширений в текущем сеансе | /extensions |
/memory | Управление контекстом инструкций ИИ | /memory add Важная информация |
1.5 Информация, настройки и помощь
Команды для получения информации и выполнения системных настроек.
| Команда | Описание | Примеры использования |
|---|---|---|
/help | Отобразить справочную информацию о доступных командах | /help или /? |
/about | Отобразить информацию о версии | /about |
/stats | Отобразить подробную статистику текущей сессии | /stats |
/settings | Открыть редактор настроек | /settings |
/auth | Изменить метод аутентификации | /auth |
/bug | Сообщить о проблеме в Qwen Code | /bug Кнопка не отвечает на нажатия |
/copy | Скопировать последний вывод в буфер обмена | /copy |
/quit-confirm | Показать диалог подтверждения перед выходом | /quit-confirm (ярлык: дважды нажмите Ctrl+C) |
/quit | Немедленно выйти из Qwen Code | /quit или /exit |
1.6 Общие сочетания клавиш
| Сочетание | Функция | Примечание |
|---|---|---|
Ctrl/cmd+L | Очистить экран | Эквивалентно /clear |
Ctrl/cmd+T | Переключить описание инструмента | Управление инструментами MCP |
Ctrl/cmd+C×2 | Подтверждение выхода | Безопасный механизм выхода |
Ctrl/cmd+Z | Отменить ввод | Редактирование текста |
Ctrl/cmd+Shift+Z | Повторить ввод | Редактирование текста |
2. Команды @ (Добавление файлов)
Команды @ используются для быстрого добавления содержимого локального файла или каталога в разговор.
| Формат команды | Описание | Примеры |
|---|---|---|
@<путь к файлу> | Вставить содержимое указанного файла | @src/main.py Пожалуйста, объясните этот код |
@<путь к каталогу> | Рекурсивно прочитать все текстовые файлы в каталоге | @docs/ Обобщите содержание этого документа |
Отдельный символ @ | Используется при обсуждении самого символа @ | @ Для чего используется этот символ в программировании? |
Примечание: Пробелы в путях нужно экранировать обратной косой чертой (например, @My\ Documents/file.txt)
3. Восклицательные команды (!) — Выполнение команд оболочки
Восклицательные команды позволяют выполнять системные команды непосредственно в Qwen Code.
| Формат команды | Описание | Примеры |
|---|---|---|
!<shell command> | Выполнить команду в подоболочке | !ls -la, !git status |
Отдельная ! | Переключить режим оболочки, любой ввод выполняется как команда Shell | !(вход) → Ввод команды → !(выход) |
Переменные окружения: Для команд, выполненных через !, будет установлена переменная окружения QWEN_CODE=1.
4. Пользовательские команды
Сохраняйте часто используемые запросы в виде сокращённых команд для повышения эффективности работы и обеспечения согласованности.
Краткий обзор
| Функция | Описание | Преимущества | Приоритет | Применимые сценарии |
|---|---|---|---|---|
| Пространство имён | Подкаталог создаёт команды с именами через двоеточие | Лучшая организация команд | ||
| Глобальные команды | ~/.qwen/commands/ | Доступны во всех проектах | Низкий | Часто используемые личные команды, применение в разных проектах |
| Команды проекта | <корневой каталог проекта>/.qwen/commands/ | Специфичны для проекта, под контролем версий | Высокий | Совместное использование в команде, команды конкретного проекта |
Правила приоритета: Команды проекта > Пользовательские команды (используется команда проекта, если имена совпадают)
Правила именования команд
Таблица сопоставления пути к файлу и имени команды
| Расположение файла | Сгенерированная команда | Пример вызова |
|---|---|---|
~/.qwen/commands/test.toml | /test | /test Parameter |
<project>/git/commit.toml | /git:commit | /git:commit Message |
Правила именования: Разделитель пути (/ или \) преобразуется в двоеточие (:)
Спецификация формата файла TOML
| Поле | Обязательность | Описание | Пример |
|---|---|---|---|
prompt | Обязательное | Содержимое запроса, отправляемого модели | prompt = "Please analyze code: {{args}}" |
description | Необязательное | Описание команды (отображается в /help) | description = "Code analysis tool" |
Механизм обработки параметров
| Метод обработки | Синтаксис | Применимые сценарии | Функции безопасности |
|---|---|---|---|
| Контекстно-зависимая инъекция | {{args}} | Необходим точный контроль параметров | Автоматическое экранирование Shell |
| Обработка параметров по умолчанию | Без специальной разметки | Простые команды, добавление параметров | Добавление как есть |
| Инъекция Shell-команд | !{command} | Необходим динамический контент | Требуется подтверждение выполнения |
1. Внедрение с учетом контекста ({{args}})
| Сценарий | Конфигурация TOML | Метод вызова | Фактический эффект |
|---|---|---|---|
| Прямое внедрение | prompt = "Fix: {{args}}" | /fix "Button issue" | Fix: "Button issue" |
| В команде оболочки | prompt = "Search: !{grep {{args}} .}" | /search "hello" | Выполнить grep "hello" . |
2. Обработка параметров по умолчанию
| Ситуация ввода | Метод обработки | Пример |
|---|---|---|
| С параметрами | Добавляется в конец подсказки (разделено двумя переносами) | /cmd parameter → Исходная подсказка + параметр |
| Без параметров | Отправить подсказку как есть | /cmd → Исходная подсказка |
🚀 Динамическая вставка контента
| Тип вставки | Синтаксис | Порядок обработки | Назначение |
|---|---|---|---|
| Содержимое файла | @{file path} | Обрабатывается первым | Вставка статических файлов ссылок |
| Команды оболочки | !{command} | Обрабатывается посередине | Вставка результатов выполнения |
| Замена параметров | {{args}} | Обрабатывается последним | Вставка пользовательских параметров |
3. Выполнение команд оболочки (!{...})
| Операция | Взаимодействие с пользователем |
|---|---|
| 1. Разбор команды и параметров | - |
| 2. Автоматическое экранирование оболочки | - |
| 3. Показ диалога подтверждения | ✅ Подтверждение пользователя |
| 4. Выполнение команды | - |
| 5. Вставка вывода в запрос | - |
Пример: Генерация сообщения коммита Git
# git/commit.toml
description = "Генерация сообщения коммита на основе подготовленных изменений"
prompt = """
Пожалуйста, сгенерируйте сообщение коммита на основе следующего различия:
diff
!{git diff --staged}
"""4. Внедрение содержимого файлов (@{...})
| Тип файла | Статус поддержки | Метод обработки |
|---|---|---|
| Текстовые файлы | ✅ Полная поддержка | Прямое внедрение содержимого |
| Изображения/PDF | ✅ Мультимодальная поддержка | Кодирование и внедрение |
| Бинарные файлы | ⚠️ Ограниченная поддержка | Может быть пропущено или усечено |
| Директория | ✅ Рекурсивное внедрение | Следует правилам .gitignore |
Пример: Команда для проверки кода
# review.toml
description = "Проверка кода на основе лучших практик"
prompt = """
Обзор {{args}}, ссылочные стандарты:
@{docs/code-standards.md}
"""Практический пример создания
Таблица шагов создания команды “Pure Function Refactoring”
| Операция | Команда/Код |
|---|---|
| 1. Создать структуру каталогов | mkdir -p ~/.qwen/commands/refactor |
| 2. Создать файл команды | touch ~/.qwen/commands/refactor/pure.toml |
| 3. Редактировать содержимое команды | См. полный код ниже. |
| 4. Протестировать команду | @file.js → /refactor:pure |
description = "Refactor code to pure function"
prompt = """
Please analyze code in current context, refactor to pure function.
Requirements:
1. Provide refactored code
2. Explain key changes and pure function characteristic implementation
3. Maintain function unchanged
"""Резюме лучших практик для пользовательских команд
Таблица рекомендаций по разработке команд
| Пункты практики | Рекомендуемый подход | Следует избегать |
|---|---|---|
| Именование команд | Используйте пространства имён для организации | Избегайте чрезмерно общих названий |
| Обработка параметров | Чётко используйте {{args}} | Полагайтесь на автоматическое добавление (легко запутать) |
| Обработка ошибок | Используйте вывод ошибок оболочки | Игнорируйте сбои выполнения |
| Организация файлов | Организуйте по функциям в каталогах | Все команды в корневом каталоге |
| Поле описания | Всегда предоставляйте чёткое описание | Полагайтесь на автоматически сгенерированное описание |
Таблица напоминания о функциях безопасности
| Механизм безопасности | Эффект защиты | Действие пользователя |
|---|---|---|
| Экранирование оболочки | Предотвращение внедрения команд | Автоматическая обработка |
| Подтверждение выполнения | Избежание случайного выполнения | Диалоговое подтверждение |
| Отчет об ошибках | Помощь в диагностике проблем | Просмотр информации об ошибке |