loop-worker — скилл для Claude Code: что делает и установка
Запускает фоновых воркеров Ruflo по расписанию /loop и проверяет их через MCP. Нужен для повторяющихся проверок кода и задач.
npx skills add ruvnet/ruflo --skill loop-worker -a claude-codeЧто делает loop-worker
Скилл запускает фоновые воркеры Ruflo через нативный /loop в Claude Code. Он передаёт имя воркера в mcp__plugin_ruflo-core_ruflo__hooks_worker-dispatch, а состояние смотрит через hooks_worker-status. Доступны 12 воркеров, включая audit, optimize, testgaps, map, document и refactor.
Для кэша промпта с TTL 5 минут скилл советует задержку 270s. При TTL 1 час он предлагает опрос раз в 1200-1800s, а для тяжёлых анализаторов использует рекомендуемый ритм 600s. Если воркер дважды подряд не сообщает ничего нового, цикл останавливается через ScheduleWakeup({ stop: true }).
Долгие фоновые задачи сами присылают уведомление о завершении. Поэтому короткие вызовы ScheduleWakeup для их опроса — плохой выбор; это повод задать задержку от 1200s. Ответы MCP с подсказками [LOOP_SUGGESTION] и [CRON_SUGGESTION] нужно учитывать.
Какие задачи решает
- запускать аудит безопасности по циклу
/loop - проверять состояние фонового воркера через MCP
- планировать следующую итерацию после запуска воркера
- останавливать цикл после двух пустых результатов
- подбирать задержку опроса под TTL кэша промпта
Примеры запросов агенту
- Запусти
/loop auditи проверяй статус фонового воркера. - Запусти
/loop mapдля построения карты кодовой базы. - Запусти
/loop testgapsи останови цикл после двух результатов без новых данных.
Как установить loop-worker
1Через Skills CLI (Vercel)
npx skills add ruvnet/ruflo --skill loop-worker -a claude-code2Вручную: положить файлы
~/.claude/skills/loop-worker/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/loop-worker/
1Через Skills CLI (Vercel)
npx skills add ruvnet/ruflo --skill loop-worker -a codex2Вручную: положить файлы
.agents/skills/loop-worker/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add ruvnet/ruflo --skill loop-worker -a cursor2Вручную: положить файлы
.cursor/skills/loop-worker/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install ruvnet/ruflo loop-worker2Вручную: положить файлы
.github/skills/loop-worker/SKILL.md1Через Skills CLI (Vercel)
npx skills add ruvnet/ruflo --skill loop-worker -a gemini-cli2Командой платформы
gemini skills install https://github.com/ruvnet/ruflo --path plugins/ruflo-loop-workers/skills/loop-workerВручную: положить файлы
.devin/skills/loop-worker/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add ruvnet/ruflo --skill loop-worker -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о loop-worker
Как установить loop-worker в Claude Code?
Выполните npx skills add ruvnet/ruflo --skill loop-worker -a claude-code, затем ещё раз npx skills add ruvnet/ruflo --skill loop-worker -a claude-code. Файл скилла расположен в ~/.claude/skills/loop-worker/SKILL.md.
Что делает loop-worker?
Скилл диспетчеризирует воркеры Ruflo через MCP, проверяет их статус и планирует новую итерацию с помощью /loop и ScheduleWakeup.
Когда loop-worker прекращает расписание?
Цикл останавливается, когда воркер два раза подряд сообщает, что новых результатов нет. Для этого используется ScheduleWakeup({ stop: true }).
Исходный текст
SKILL.md · MIT
---
name: loop-worker
description: Run Ruflo background workers using Claude Code native /loop scheduling
argument-hint: "<worker-name>"
allowed-tools: Bash(npx *) mcp__plugin_ruflo-core_ruflo__hooks_worker-dispatch mcp__plugin_ruflo-core_ruflo__hooks_worker-status ScheduleWakeup
---
Use `/loop` for in-session periodic workers. Pick the delay from what you are waiting for:
- With the 5-minute prompt-cache TTL, `min(270, cache_ttl * 0.9)` = 270s keeps the cache warm (ruflo-autopilot ADR-0001 owns that heartbeat).
- If the `ScheduleWakeup` tool description says this session uses the 1-hour TTL, a 270s wake buys nothing; poll at 1200-1800s unless the worker finishes faster.
Dispatch a worker via MCP: `mcp__plugin_ruflo-core_ruflo__hooks_worker-dispatch({ trigger: "WORKER_NAME" })`. It runs in the background by default (`background: true`), so check on it with `hooks_worker-status` instead of waiting inline.
Then schedule the next iteration. `ScheduleWakeup` needs the loop prompt back so the next firing re-enters the loop:
`ScheduleWakeup({ delaySeconds: 270, reason: "next WORKER_NAME iteration", prompt: "/loop <the same /loop input>", noop: false })`
Stop the loop when the worker reports nothing new twice in a row: `ScheduleWakeup({ stop: true })`.
### Available Workers (12, per ADR-0001 and `/ruflo-loop`)
| Worker | Priority | Interval | Description |
|--------|----------|----------|-------------|
| audit | critical | 270s | Security analysis |
| optimize | high | 270s | Performance optimization |
| predict | normal | 270s | Predictive preloading |
| testgaps | normal | 270s | Test coverage analysis |
| ultralearn | normal | 600s | Deep knowledge acquisition |
| deepdive | normal | 600s | Deep code analysis |
| map | normal | 600s | Codebase mapping |
| document | normal | 600s | Auto-documentation |
| refactor | normal | 600s | Refactoring suggestions |
| benchmark | normal | 600s | Performance benchmarking |
| consolidate | low | 600s | Memory consolidation |
| preload | low | 270s | Resource preloading |
The intervals are suggested cadences, not enforced by the dispatcher: 270s keeps the prompt cache warm, and the heavier analysis workers run at 600s because one iteration rarely finishes sooner.
Work you start in the background (a build, a long job) finishes with its own completion notification. Do not poll it with short `ScheduleWakeup` calls; use a long fallback delay (1200s or more) so the loop survives a hung job.
MCP tool responses include `[LOOP_SUGGESTION]` and `[CRON_SUGGESTION]` hints -- follow them.
© ruvnet · MIT · ruvnet/ruflo