$npx -y skills add AlekseiUL/sprut-agent-kit --skill subagent-runnerАвтоматический запуск и управление субагентами для параллельной обработки задач. Разбивает большие задачи на подзадачи, запускает субагенты параллельно, собирает результаты.
| 1 | # Subagent Runner |
| 2 | |
| 3 | Автоматический запуск субагентов для параллельной обработки сложных задач. |
| 4 | |
| 5 | ## Когда использовать |
| 6 | |
| 7 | ✅ **Используй когда:** |
| 8 | - Задача разбивается на 2+ независимых подзадачи |
| 9 | - Нужна параллельная обработка (исследование + написание + дизайн) |
| 10 | - Большой объём работы, который можно распараллелить |
| 11 | - Разные части задачи требуют разных специализаций |
| 12 | |
| 13 | ❌ **НЕ используй когда:** |
| 14 | - Задача простая, выполнима за 1-2 шага |
| 15 | - Подзадачи зависят друг от друга (нужна последовательность) |
| 16 | - Результат одной подзадачи нужен для начала другой |
| 17 | |
| 18 | ## Workflow |
| 19 | |
| 20 | ### 1. Анализ задачи |
| 21 | |
| 22 | Определи: |
| 23 | - Можно ли разбить на независимые части? |
| 24 | - Сколько субагентов нужно? (обычно 2-4) |
| 25 | - Какая специализация у каждого? |
| 26 | |
| 27 | ### 2. Запуск субагентов |
| 28 | |
| 29 | **Используй HTTP API daemon-а (localhost:4632):** |
| 30 | |
| 31 | ```bash |
| 32 | # Отправь progress сообщение |
| 33 | bun ~/.claude/plugins/cache/claudeclaw/claudeclaw/1.0.0/commands/progress.ts "🤖" "Запускаю 3 субагента для задачи: [название]" |
| 34 | |
| 35 | # Запусти субагента через REST API |
| 36 | curl -X POST http://localhost:4632/api/subagent/run \ |
| 37 | -H "Content-Type: application/json" \ |
| 38 | -d '{"name": "researcher", "prompt": "Исследуй тему X, найди 5 источников"}' |
| 39 | |
| 40 | # Получи task_id из ответа: |
| 41 | # {"ok":true,"taskId":"uuid-here","name":"researcher","prompt":"..."} |
| 42 | ``` |
| 43 | |
| 44 | **Сохрани task_id для мониторинга:** |
| 45 | |
| 46 | ```bash |
| 47 | TASK_ID="полученный-uuid" |
| 48 | ``` |
| 49 | |
| 50 | ### 3. Мониторинг |
| 51 | |
| 52 | Проверяй статус через API: |
| 53 | |
| 54 | ```bash |
| 55 | # Получи статус субагента |
| 56 | curl http://localhost:4632/api/subagent/status/$TASK_ID |
| 57 | |
| 58 | # Ответ: |
| 59 | # {"ok":true,"status":{"id":"uuid","name":"researcher","status":"running|completed|failed",...}} |
| 60 | |
| 61 | # Или дождись результата (блокирующий вызов, таймаут 60 сек по умолчанию) |
| 62 | curl "http://localhost:4632/api/subagent/wait/$TASK_ID?timeout=120000" |
| 63 | |
| 64 | # Ответ при успехе: |
| 65 | # {"ok":true,"result":"текст результата субагента"} |
| 66 | ``` |
| 67 | |
| 68 | **Альтернатива - читай файлы напрямую:** |
| 69 | |
| 70 | ```bash |
| 71 | # Проверь все запущенные субагенты |
| 72 | ls -la ~/.claude/claudeclaw/subagents/ |
| 73 | |
| 74 | # Читай результаты по мере готовности |
| 75 | cat ~/.claude/claudeclaw/subagents/$TASK_ID.txt |
| 76 | ``` |
| 77 | |
| 78 | ### 4. Сборка результатов |
| 79 | |
| 80 | Когда все субагенты завершили: |
| 81 | - Прочитай результаты из `.claude/claudeclaw/subagents/` |
| 82 | - Объедини в финальный ответ |
| 83 | - Отправь progress сообщение о завершении |
| 84 | |
| 85 | ## Примеры |
| 86 | |
| 87 | ### Пример 1: Исследование + Контент |
| 88 | |
| 89 | **Задача:** "Напиши статью об AI агентах с исследованием" |
| 90 | |
| 91 | **Разбивка:** |
| 92 | 1. Субагент-исследователь: найти 10 источников, ключевые тренды |
| 93 | 2. Субагент-писатель: написать черновик на основе исследования |
| 94 | 3. Субагент-редактор: проверить факты, улучшить стиль |
| 95 | |
| 96 | **Запуск:** |
| 97 | |
| 98 | ```bash |
| 99 | bun ~/.claude/plugins/cache/claudeclaw/claudeclaw/1.0.0/commands/progress.ts "🤖" "Запускаю 3 субагента: исследователь, писатель, редактор" |
| 100 | |
| 101 | # Запусти параллельно |
| 102 | curl -X POST http://localhost:4632/api/subagent/run -H "Content-Type: application/json" \ |
| 103 | -d '{"name":"researcher","prompt":"Найди 10 источников об AI агентах, выдели ключевые тренды 2026"}' & |
| 104 | |
| 105 | curl -X POST http://localhost:4632/api/subagent/run -H "Content-Type: application/json" \ |
| 106 | -d '{"name":"writer","prompt":"Напиши черновик статьи об AI агентах, структура: intro, 3 секции, вывод"}' & |
| 107 | |
| 108 | curl -X POST http://localhost:4632/api/subagent/run -H "Content-Type: application/json" \ |
| 109 | -d '{"name":"editor","prompt":"Проверь факты и улучши стиль статьи, убери воду"}' & |
| 110 | |
| 111 | wait |
| 112 | ``` |
| 113 | |
| 114 | ### Пример 2: Многофайловый рефакторинг |
| 115 | |
| 116 | **Задача:** "Обнови 5 файлов под новую архитектуру" |
| 117 | |
| 118 | **Разбивка:** |
| 119 | 1. Субагент-1: рефактор файлов A, B |
| 120 | 2. Субагент-2: рефактор файлов C, D |
| 121 | 3. Субагент-3: рефактор файла E, обновить тесты |
| 122 | |
| 123 | ## API Endpoints |
| 124 | |
| 125 | **Daemon работает на:** `http://localhost:4632` |
| 126 | |
| 127 | ### POST /api/subagent/run |
| 128 | Запускает субагента в фоне. |
| 129 | |
| 130 | **Request:** |
| 131 | ```json |
| 132 | { |
| 133 | "name": "researcher", |
| 134 | "prompt": "Исследуй тему X" |
| 135 | } |
| 136 | ``` |
| 137 | |
| 138 | **Response:** |
| 139 | ```json |
| 140 | { |
| 141 | "ok": true, |
| 142 | "taskId": "uuid-here", |
| 143 | "name": "researcher", |
| 144 | "prompt": "Исследуй тему X" |
| 145 | } |
| 146 | ``` |
| 147 | |
| 148 | ### GET /api/subagent/status/:taskId |
| 149 | Получает статус субагента. |
| 150 | |
| 151 | **Response:** |
| 152 | ```json |
| 153 | { |
| 154 | "ok": true, |
| 155 | "status": { |
| 156 | "id": "uuid", |
| 157 | "name": "researcher", |
| 158 | "status": "running|completed|failed", |
| 159 | "prompt": "...", |
| 160 | "result": "..." // если completed |
| 161 | } |
| 162 | } |
| 163 | ``` |
| 164 | |
| 165 | ### GET /api/subagent/wait/:taskId?timeout=60000 |
| 166 | Блокирующий вызов, ждёт завершения субагента. |
| 167 | |
| 168 | **Параметры:** |
| 169 | - `timeout` - таймаут в миллисекундах (5000-300000, по умолчанию 60000) |
| 170 | |
| 171 | **Response:** |
| 172 | ```json |
| 173 | { |
| 174 | "ok": true, |
| 175 | "result": "текст результата" |
| 176 | } |
| 177 | ``` |
| 178 | |
| 179 | **Ошибки:** |
| 180 | - Таймаут автоматически ограничен диапазоном 5-300 секунд для стабильности |
| 181 | |
| 182 | ## Статус интеграции |
| 183 | |
| 184 | 1. ✅ **Progress сообщения** - работают полностью |
| 185 | 2. ✅ **REST API для запуска субагентов** - работает через localhost:4632 |
| 186 | 3. ✅ **Монитор |