Слаб-напоминалка для каждого тика /loop. Читай в начале каждого Cycle (до шагов 1–20 в LoopPrompt.md). Полная процедура — AlgorithmIntegration.md.
Swarm — это EXECUTE-фаза одного PRD, не «просто крутить beads». Beads — тактика; ISC +
progress: M/N— источник истины для «куда мы идём».
# если путь забыт — последний PRD по mtime в репо
ls -t MEMORY/WORK/*/PRD.md 2>/dev/null | head -1| Проверка | Ожидание на looper-тиках |
|---|---|
phase в frontmatter |
execute (не verify / learn / complete до saturation) |
## Criteria |
ISC-чекбоксы - [ ] / - [x] |
progress: M/N |
Совпадает с числом [x] в Criteria |
updated |
Обновлялся при последнем ISC/bead sync |
Если PRD не найден — стоп координации «вслепую»: fallback по AlgorithmIntegration.md → Fallback: PRD не найден (спроси пользователя; не делай stub без «да»).
Выполни до операционных шагов looper (panes, Mail, beads):
- Rules refresh:
RulesRefresh.md— проект<repo>/AGENTS.md+<repo>/CLAUDE.mdкаждый тик; глобальные$GLOBAL_AGENTS.md(seedocs/ECOSYSTEM.md) +~/.claude/CLAUDE.md— каждый ~3-й тик (и всегда на digest-тике). - Прочитай frontmatter активного PRD (
task,phase,progress: M/N). - Сверь
br list --status closed(или Mail/reviewer) с beads, закрытыми с прошлого тика — для каждого: mapping → ISC? (AlgorithmIntegration.md→ Mapping: bead close → ISC update). - Edit PRD при прямом покрытии ISC:
- [ ]→- [x],progress: M+1/N,updated: <ISO>. - Не помечай ISC
[x]авансом, если reviewer/QA ещё не подтвердили или bead лишь часть составного ISC. - Не создавай второй PRD и не уходи в «чисто операционный» режим без PRD.
Дополнительно к чеклисту выше + RealityCheckDigest.md:
- Прочитать PRD целиком (
## Criteria,## Verification). - Сверить каждый ISC с
main(коммиты, тесты, capture panes). - Edit PRD
## Verification— evidence по новым ISC (BD-ID, commit, test, capture). phaseостаётсяexecute— не ставьverifyна digest-тике.- В человеко-сводке: строка
PRD <slug>: progress M/N; evidence для ISC-…. - Edit PRD
## Verification— evidence; Q1–Q3 в digest (формальный JSONL — в LEARN).
Подробности: AlgorithmIntegration.md → Reality-check digest = sub-VERIFY pass.
Когда: AFK-режим (LaunchAFK / «ухожу спать» / оператор не отвечает). См. AFKExitHandoff.md.
Каждый looper-тик (~3 min):
- Обнови
afk_stall_loops(+1 если нет прогресса: bead close, ISCM/N, видимая работа в pane). - Если
afk_stall_loops >= 6или немедленный триггер (невосстановимый блокер после 1 recovery, пустой граф ready+in_progress, флот мёртв) → стоп:/loop stop- Mail «AFK PAUSE» на panes
- Запиши
docs/swarm-afk-exit-handoff.mdпо шаблону - PRD
phaseостаётсяexecute(если не saturation)
- Не спрашивай пользователя; не начинай следующий тик после exit.
Триггеры: все ISC [x] + нет open/stalled; пользователь «стоп»; нельзя двигать остаток без вне swarm.
phase: verify→ финальный VERIFY по всем ISC.phase: learn→ Algorithm Q1–Q3 + appenddocs/swarm-learnings/reflections.jsonl.phase: complete.- Сообщить пользователю: что закрыто / не закрыто / главный вывод.
Подробности: AlgorithmIntegration.md → LEARN: завершение swarm. После этого останови /loop.
| Антипаттерн | Почему плохо |
|---|---|
| Закрыли beads, PRD не трогали | Digest и progress врут; Algorithm сломан |
Поставили phase: verify на каждом digest |
VERIFY — один раз в LEARN, digest = sub-VERIFY |
| Новый PRD «для swarm» | Один PRD на работу; swarm = EXECUTE существующего |
| Только bead-count в reality-check | План = ISC + stage docs, не счётчик BD |
AFK + бесконечный /loop без handoff |
Человек возвращается к неизвестному состоянию; нужен swarm-afk-exit-handoff.md |
| Файл | Роль |
|---|---|
LoopPrompt.md |
Операционные шаги 1–20 + /loop 3m bootstrap |
AlgorithmIntegration.md |
Полный lifecycle PRD ↔ swarm |
RealityCheckDigest.md |
Формат человеко-сводки + PRD Verification |
docs/PRD-FORMAT.md |
Формат PRD |
MemoryIntegration.md |
session memory (optional; see MemoryIntegration.md) по фазам Algorithm |
RulesRefresh.md |
AGENTS.md + CLAUDE.md (global + project) cadence |
AFKExitHandoff.md |
Стоп looper в AFK, stall counter, exit handoff |
docs/planning/algorithm.md (optional) |
Фазы Algorithm |