Стандартные рабочие процессы
Узнайте о стандартных рабочих процессах с Qwen Code.
Каждая задача в этом документе включает чёткие инструкции, примеры команд и лучшие практики, которые помогут вам получить максимум от Qwen Code.
Быстрое знакомство с новыми кодовыми базами
Получение общего обзора кодовой базы
Предположим, вы только что присоединились к новому проекту и хотите быстро понять его структуру.
1. Перейдите в корневую директорию проекта
cd /path/to/project2. Запустите Qwen Code
qwen3. Запросите общий обзор
give me an overview of this codebase4. Углубитесь в конкретные компоненты
explain the main architecture patterns used herewhat are the key data models?how is authentication handled?- Начинайте с широких вопросов, затем сужайтесь до конкретных областей
- Спрашивайте о соглашениях по коду и паттернах, используемых в проекте
- Запросите глоссарий терминов, специфичных для проекта
Поиск релевантного кода
Предположим, вам нужно найти код, связанный с определённой функцией или возможностью.
1. Попросите Qwen Code найти соответствующие файлы
find the files that handle user authentication2. Получите контекст о том, как компоненты взаимодействуют
how do these authentication files work together?3. Поймите поток выполнения
trace the login process from front-end to database- Будьте конкретны в том, что ищете
- Используйте терминологию проекта
Эффективное исправление ошибок
Предположим, вы столкнулись с сообщением об ошибке и нужно найти и исправить её источник.
1. Поделитесь ошибкой с Qwen Code
I'm seeing an error when I run npm test2. Запросите рекомендации по исправлению
suggest a few ways to fix the @ts-ignore in user.ts3. Примените исправление
update user.ts to add the null check you suggested- Сообщите Qwen Code команду для воспроизведения проблемы и получения stack trace
- Упомяните шаги для воспроизведения ошибки
- Дайте знать, является ли ошибка периодической или постоянной
Рефакторинг кода
Предположим, вам нужно обновить старый код, чтобы использовать современные паттерны и практики.
1. Определите устаревший код для рефакторинга
find deprecated API usage in our codebase2. Получите рекомендации по рефакторингу
suggest how to refactor utils.js to use modern JavaScript features3. Примените изменения безопасно
refactor utils.js to use ES 2024 features while maintaining the same behavior4. Проверьте рефакторинг
run tests for the refactored code- Попросите Qwen Code объяснить преимущества современного подхода
- Убедитесь, что изменения сохраняют обратную совместимость, когда это необходимо
- Выполняйте рефакторинг небольшими, тестируемыми шагами
Использование специализированных под-агентов
Предположим, вы хотите использовать специализированные AI-под-агенты для более эффективного выполнения конкретных задач.
1. Просмотрите доступных под-агентов
/agentsЭта команда показывает всех доступных под-агентов и позволяет создавать новых.
2. Используйте под-агентов автоматически
Qwen Code автоматически делегирует подходящие задачи специализированным под-агентам:
review my recent code changes for security issuesrun all tests and fix any failures3. Явно запросите конкретных под-агентов
use the code-reviewer subagent to check the auth modulehave the debugger subagent investigate why users can't log in4. Создайте собственных под-агентов для вашего рабочего процесса
/agentsЗатем выберите «create» и следуйте подсказкам, чтобы определить:
- Уникальный идентификатор, описывающий назначение под-агента (например,
code-reviewer,api-designer). - Когда Qwen Code должен использовать этого агента
- Какие инструменты ему доступны
- Системный промпт, описывающий роль и поведение агента
- Создавайте под-агенты для конкретного проекта в
.qwen/agents/для обмена с командой - Используйте описательные поля
description, чтобы включить автоматическое делегирование - Ограничивайте доступ к инструментам тем, что действительно нужно каждому под-агенту
- Узнайте больше о Под-агентах
- Узнайте больше о Режиме одобрения
Работа с тестами
Предположим, вам нужно добавить тесты для непокрытого кода.
1. Определите непроверенный код
find functions in NotificationsService.swift that are not covered by tests2. Сгенерируйте каркас тестов
add tests for the notification service3. Добавьте значимые тестовые сценарии
add test cases for edge conditions in the notification service4. Запустите и проверьте тесты
run the new tests and fix any failuresQwen Code может генерировать тесты, которые следуют существующим паттернам и соглашениям вашего проекта. При запросе тестов уточняйте, какое поведение вы хотите проверить. Qwen Code изучает ваши существующие тестовые файлы, чтобы соответствовать стилю, фреймворкам и паттернам утверждений, уже используемым в проекте.
Для полного покрытия попросите Qwen Code определить граничные случаи, которые вы могли упустить. Qwen Code может проанализировать ваши пути выполнения и предложить тесты для ошибочных ситуаций, граничных значений и неожиданных входных данных, которые легко не заметить.
Создание pull request’ов
Предположим, вам нужно создать хорошо документированный pull request для ваших изменений.
1. Опишите свои изменения
summarize the changes I've made to the authentication module2. Создайте pull request с помощью Qwen Code
create a pr3. Просмотрите и доработайте
enhance the PR description with more context about the security improvements4. Добавьте детали тестирования
add information about how these changes were tested- Попросите Qwen Code напрямую создать PR за вас
- Просмотрите сгенерированный Qwen Code PR перед отправкой
- Попросите Qwen Code выделить потенциальные риски или соображения
Работа с документацией
Предположим, вам нужно добавить или обновить документацию для вашего кода.
1. Определите недокументированный код
find functions without proper JSDoc comments in the auth module2. Сгенерируйте документацию
add JSDoc comments to the undocumented functions in auth.js3. Просмотрите и улучшите
improve the generated documentation with more context and examples4. Проверьте документацию
check if the documentation follows our project standards- Укажите желаемый стиль документации (JSDoc, docstrings и т.д.)
- Запросите примеры в документации
- Запросите документацию для публичных API, интерфейсов и сложной логики
Ссылки на файлы и директории
Используйте @, чтобы быстро включать файлы или директории, не дожидаясь, пока Qwen Code прочитает их.
1. Ссылка на один файл
Explain the logic in @src/utils/auth.jsЭто включает полное содержимое файла в диалог.
2. Ссылка на директорию
What's the structure of @src/components?Это предоставляет список файлов с информацией о них.
3. Ссылка на ресурсы MCP
Show me the data from @github: repos/owner/repo/issuesЭто получает данные от подключенных MCP-серверов в формате @server: resource. Подробнее см. MCP.
- Пути к файлам могут быть относительными или абсолютными
- Ссылки на файлы через @ добавляют
QWEN.mdв директории файла и её родительских директориях в контекст - Ссылки на директории показывают список файлов, а не их содержимое
- Вы можете ссылаться на несколько файлов в одном сообщении (например, “
@file1.jsи@file2.js”)
Возобновление предыдущих диалогов
Предположим, вы работали над задачей с Qwen Code и хотите продолжить с того места, где остановились, в следующем сеансе.
Qwen Code предоставляет два варианта для возобновления предыдущих диалогов:
--continueдля автоматического продолжения самого последнего диалога--resumeдля отображения выбора диалога
1. Продолжить самый последний диалог
qwen --continueЭто сразу же возобновляет ваш последний диалог без дополнительных запросов.
2. Продолжить в неинтерактивном режиме
qwen --continue -p "Continue with my task"Используйте -p (или --prompt) вместе с --continue, чтобы возобновить последний диалог в неинтерактивном режиме — идеально для скриптов или автоматизации.
3. Показать выбор диалога
qwen --resumeОтображает интерактивный выбор диалога в виде чистого списка, показывающего:
- Краткое описание сессии (или начальный промпт)
- Метаданные: прошедшее время, количество сообщений и ветка git
Используйте стрелки для навигации и нажмите Enter, чтобы выбрать диалог. Нажмите Esc для выхода.
- История диалогов хранится локально на вашей машине
- Используйте
--continueдля быстрого доступа к самому последнему диалогу - Используйте
--resume, когда нужно выбрать конкретный прошлый диалог - При возобновлении вы увидите всю историю диалога перед продолжением
- Возобновлённый диалог начинается с той же модели и конфигурации, что и исходный
Как это работает:
- Хранение диалогов: Все диалоги автоматически сохраняются локально с полной историей сообщений.
- Десериализация сообщений: При возобновлении восстанавливается вся история сообщений для сохранения контекста.
- Состояние инструментов: Использование инструментов и результаты из предыдущего диалога сохраняются.
- Восстановление контекста: Диалог возобновляется со всем предыдущим контекстом.
Примеры:
# Продолжить последний диалог
qwen --continue
# Продолжить последний диалог с конкретным промптом
qwen --continue -p "Show me our progress"
# Показать выбор диалога
qwen --resume
# Продолжить последний диалог в неинтерактивном режиме
qwen --continue -p "Run the tests again"Запуск параллельных сессий Qwen Code с Git worktrees
Предположим, вам нужно работать над несколькими задачами одновременно с полной изоляцией кода между экземплярами Qwen Code.
1. Понимание Git worktrees
Git worktrees позволяют вам переключать несколько веток из одного репозитория в отдельные директории. Каждый worktree имеет свою собственную рабочую директорию с изолированными файлами, разделяя при этом общую историю Git. Узнайте больше в официальной документации Git worktree .
2. Создайте новый worktree
# Создать новый worktree с новой веткой
git worktree add ../project-feature-a -b feature-a
# Или создать worktree с существующей веткой
git worktree add ../project-bugfix bugfix-123Это создаёт новую директорию с отдельной рабочей копией вашего репозитория.
3. Запустите Qwen Code в каждом worktree
# Перейдите в ваш worktree
cd ../project-feature-a
# Запустите Qwen Code в этой изолированной среде
qwen4. Запустите Qwen Code в другом worktree
cd ../project-bugfix
qwen5. Управляйте своими worktrees
# Список всех worktrees
git worktree list
# Удалить worktree после завершения работы
git worktree remove ../project-feature-a- Каждый worktree имеет независимое состояние файлов, что идеально подходит для параллельных сессий Qwen Code
- Изменения в одном worktree не влияют на другие, предотвращая взаимное вмешательство экземпляров Qwen Code
- Все worktrees используют общую историю Git и удалённые подключения
- Для длительных задач вы можете запустить Qwen Code в одном worktree, продолжая разработку в другом
- Используйте описательные имена директорий, чтобы легко определить, для какой задачи предназначен каждый worktree
- Не забудьте инициализировать свою среду разработки в каждом новом worktree в соответствии с настройками проекта. В зависимости от стека это может включать:
- JavaScript-проекты: установка зависимостей (
npm install,yarn) - Python-проекты: настройка виртуальных окружений или установка с помощью менеджеров пакетов
- Другие языки: следование стандартному процессу настройки вашего проекта
- JavaScript-проекты: установка зависимостей (
Использование Qwen Code как утилиты в стиле Unix
Добавление Qwen Code в процесс верификации
Предположим, вы хотите использовать Qwen Code в качестве линтера или ревьюера кода.
Добавьте Qwen Code в ваш скрипт сборки:
// package.json
{
...
"scripts": {
...
"lint:Qwen Code": "qwen -p 'you are a linter. please look at the changes vs. main and report any issues related to typos. report the filename and line number on one line, and a description of the issue on the second line. do not return any other text.'"
}
}- Используйте Qwen Code для автоматизированного ревью кода в вашем CI/CD пайплайне
- Настройте промпт для проверки специфичных проблем, актуальных для вашего проекта
- Рассмотрите создание нескольких скриптов для разных видов верификации
Пайп на вход, пайп на выход
Предположим, вы хотите передать данные на вход Qwen Code и получить структурированный вывод.
Передача данных через Qwen Code:
cat build-error.txt | qwen -p 'concisely explain the root cause of this build error' > output.txt- Используйте пайпы для интеграции Qwen Code в существующие shell-скрипты
- Комбинируйте с другими Unix-утилитами для мощных рабочих процессов
- Рассмотрите использование —output-format для структурированного вывода
Управление форматом вывода
Предположим, вам нужен вывод Qwen Code в определённом формате, особенно при интеграции в скрипты или другие инструменты.
1. Использование текстового формата (по умолчанию)
cat data.txt | qwen -p 'summarize this data' --output-format text > summary.txtВыводит только текстовый ответ Qwen Code (поведение по умолчанию).
2. Использование JSON-формата
cat code.py | qwen -p 'analyze this code for bugs' --output-format json > analysis.jsonВыводит JSON-массив сообщений с метаданными, включая стоимость и длительность.
3. Использование потокового JSON-формата
cat log.txt | qwen -p 'parse this log file for errors' --output-format stream-jsonВыводит серию JSON-объектов в реальном времени по мере обработки запроса Qwen Code. Каждое сообщение является валидным JSON-объектом, но весь вывод при конкатенации не является валидным JSON.
- Используйте
--output-format textдля простой интеграции, когда нужен только ответ Qwen Code - Используйте
--output-format json, когда нужен полный лог диалога - Используйте
--output-format stream-jsonдля вывода каждого шага диалога в реальном времени
Спросите Qwen Code о его возможностях
Qwen Code имеет встроенный доступ к своей документации и может отвечать на вопросы о собственных функциях и ограничениях.
Примеры вопросов
can Qwen Code create pull requests?how does Qwen Code handle permissions?what slash commands are available?how do I use MCP with Qwen Code?how do I configure Qwen Code for Amazon Bedrock?what are the limitations of Qwen Code?Qwen Code предоставляет ответы на эти вопросы на основе документации. Для практических примеров и демонстраций обратитесь к соответствующим разделам рабочих процессов выше.
- Qwen Code всегда имеет доступ к последней документации Qwen Code, независимо от используемой версии
- Задавайте конкретные вопросы, чтобы получить развёрнутые ответы
- Qwen Code может объяснять сложные функции, такие как интеграция MCP, корпоративные конфигурации и продвинутые рабочие процессы