Инструмент Agent (agent)
В этом документе описывается инструмент agent для Qwen Code.
Описание
Используйте agent для запуска специализированного под-агента, который автономно выполняет сложные многошаговые задачи. Инструмент Agent делегирует работу специализированным агентам, способным работать независимо с доступом к собственному набору инструментов, что позволяет выполнять задачи параллельно и привлекать узкую экспертизу.
Аргументы
agent принимает следующие аргументы:
description(строка, обязательный): Краткое (3–5 слов) описание задачи для отображения пользователю и отслеживания.prompt(строка, обязательный): Подробное описание задачи для под-агента. Должно содержать исчерпывающие инструкции для автономного выполнения.subagent_type(строка, необязательный): Тип специализированного агента для этой задачи. По умолчанию —general-purpose, если опущен.run_in_background(логический, необязательный): Установитеtrue, чтобы запустить агента в фоне. Вы получите уведомление о завершении.isolation(строка, необязательный): Установите"worktree", чтобы запустить агента в изолированном git worktree.
Как использовать agent с Qwen Code
Инструмент Agent динамически загружает доступных под-агентов из вашей конфигурации и делегирует им задачи. Каждый под-агент запускается независимо и может использовать свой собственный набор инструментов, что обеспечивает специализированную экспертизу и параллельное выполнение.
Когда вы используете инструмент Agent, под-агент:
- Получает задачу с полной автономией.
- Выполняет задачу, используя доступные ему инструменты.
- Возвращает итоговое сообщение с результатом.
- Завершает работу (под-агенты не сохраняют состояние и используются однократно).
Использование:
agent(description="Краткое описание задачи", prompt="Детальные инструкции для под-агента", subagent_type="имя_агента")Доступные под-агенты
Доступные под-агенты зависят от вашей конфигурации. Распространённые типы под-агентов:
- general-purpose: Для сложных многошаговых задач, требующих различных инструментов.
- code-reviewer: Для ревью и анализа качества кода.
- test-runner: Для запуска тестов и анализа результатов.
- documentation-writer: Для создания и обновления документации.
Просмотреть доступных под-агентов можно с помощью команды /agents в Qwen Code.
Возможности инструмента Agent
Обновления в реальном времени
Инструмент Agent предоставляет живые обновления, показывающие:
- Статус выполнения под-агента.
- Отдельные вызовы инструментов, выполняемые под-агентом.
- Результаты вызовов инструментов и любые ошибки.
- Общий прогресс задачи и статус завершения.
Параллельное выполнение
Вы можете запустить несколько под-агентов одновременно, вызвав инструмент Agent несколько раз в одном сообщении. Это позволяет выполнять задачи параллельно и повышает эффективность.
Специализированная экспертиза
Каждый под-агент может быть настроен с:
- Определёнными правами доступа к инструментам.
- Специализированными системными промптами и инструкциями.
- Пользовательскими конфигурациями модели.
- Доменно-специфичными знаниями и возможностями.
Примеры использования agent
Делегирование универсальному агенту
agent(
description="Рефакторинг кода",
prompt="Пожалуйста, выполните рефакторинг модуля аутентификации в src/auth/, заменив колбэки на современные async/await паттерны. Убедитесь, что все тесты по-прежнему проходят, и обновите связанную документацию.",
subagent_type="general-purpose"
)Запуск параллельных задач
# Запуск ревью кода и выполнения тестов параллельно
agent(
description="Ревью кода",
prompt="Проверьте недавние изменения в модуле управления пользователями на качество кода, проблемы безопасности и соответствие лучшим практикам.",
subagent_type="general-purpose"
)
agent(
description="Запуск тестов",
prompt="Выполните полный набор тестов и проанализируйте любые сбои. Предоставьте сводку по покрытию тестами и рекомендации по улучшению.",
subagent_type="test-engineer"
)Генерация документации
agent(
description="Обновление документации",
prompt="Создайте полную API-документацию для недавно реализованных REST-эндпоинтов в модуле заказов. Включите примеры запросов/ответов и коды ошибок.",
subagent_type="general-purpose"
)Когда использовать инструмент Agent
Используйте инструмент Agent, когда:
- Сложные многошаговые задачи — задачи, требующие нескольких операций, которые могут быть выполнены автономно.
- Специализированная экспертиза — задачи, выигрывающие от доменно-специфичных знаний или инструментов.
- Параллельное выполнение — когда есть несколько независимых задач, которые можно запустить одновременно.
- Необходимость делегирования — когда вы хотите передать целую задачу, а не контролировать каждый шаг.
- Ресурсоёмкие операции — задачи, которые могут занять много времени или вычислительных ресурсов.
Когда НЕ использовать инструмент Agent
Не используйте инструмент Agent для:
- Простых одношаговых операций — используйте прямые инструменты, такие как Read, Edit и т.д.
- Интерактивных задач — задач, требующих диалога и обратной связи.
- Чтения конкретных файлов — используйте инструмент Read напрямую для лучшей производительности.
- Простого поиска — используйте инструменты Grep или Glob напрямую.
Важные замечания
- Выполнение без сохранения состояния: Каждый вызов под-агента независим и не помнит предыдущие выполнения.
- Одноразовое общение: Под-агенты предоставляют одно итоговое сообщение — без продолжения диалога.
- Исчерпывающие промпты: Ваш промпт должен содержать весь необходимый контекст и инструкции для автономного выполнения.
- Доступ к инструментам: Под-агенты имеют доступ только к инструментам, настроенным в их конкретной конфигурации.
- Параллельная работа: Несколько под-агентов могут запускаться одновременно для повышения эффективности.
- Зависимость от конфигурации: Доступные типы под-агентов зависят от конфигурации вашей системы.
Configuration
Суб-агенты настраиваются через систему конфигурации агентов Qwen Code. Используйте команду /agents, чтобы:
- Просмотреть доступных суб-агентов
- Создать новые конфигурации суб-агентов
- Изменить существующие настройки суб-агентов
- Установить разрешения и возможности инструментов
Для получения дополнительной информации о настройке суб-агентов обратитесь к документации по суб-агентам.