Сначала два слова
Оркестрация — это как дирижёр в оркестре. Музыканты (наши агенты — SPEC-AGENT и DEV-AGENT) играют сами по себе, а дирижёр решает: кого позвать, когда, и что делать дальше. Здесь дирижёр — код этого репозитория.
Durable (произносится «дью́рэбл») — значит живучий. Программа не боится, что что-то упадёт или зависнет на полчаса: она запоминает, где остановилась, и продолжает с того же места. Как закладка в книге.
Что делает этот код
- Человек даёт задачу: «сделай спеку (ТЗ) и напиши код».
- Код запускает SPEC-AGENT (программу с искусственным интеллектом), чтобы тот подготовил спеку (ТЗ).
- Спеку (ТЗ) проверяет человек. Не понравилось — SPEC-AGENT переделывает с учётом замечаний.
- Когда спека (ТЗ) одобрена — запускается DEV-AGENT.
- Его результат снова проверяется. И так далее, шаг за шагом.
Каждый запуск агента (SPEC-AGENT или DEV-AGENT) — отдельный «подход»: агент стартует, делает одно дело, отчитывается и завершается.
Где лежит самое важное
Почти весь код — в одной папке: temporal/worker/. Внутри три главные вещи:
📋 План
workflows.py — сценарий «что за чем идёт». Самый главный файл.
🙋 Проверки
gates.py — правила: пропустить шаг, переделать или остановиться.
🔌 Шаги
остальные файлы — мелкие действия: запустить SPEC-AGENT/DEV-AGENT, сохранить результат, прочитать статус.
Полное дерево репозитория выглядит так:
mr_meeseeks/
├─ temporal/worker/ ← основной код (вся логика здесь)
├─ nomad/ ← «пусковая установка» агентов (конфиги)
├─ goose/goose-agent/ ← образ самого агента
├─ docs/ ← документация
├─ tests/ ← тесты
└─ остальное ← инфраструктура (docker, vault, скрипты)
temporal/worker/,
остальные папки — про то, где и как это запускается.Как проходит один шаг
Простыми словами, без внутренних терминов:
- Код решает запустить агента (SPEC-AGENT или DEV-AGENT) и запоминает это (вдруг что-то упадёт).
- Выбранный агент просыпается, получает задание и работает — минуту или полчаса.
- Всё это время код просто ждёт, ничего не делая и ничего не забывая.
- Агент закончил и постучался: «готово, вот результат».
- Код проверяет результат и решает: дальше, переделать или стоп.
Термины, которые встретятся в коде, если заглянуть глубже:
workflow
весь сценарий целиком («план»).
activity
один конкретный шаг плана («действие»).
signal
тот самый «стук в дверь» — SPEC-AGENT/DEV-AGENT или человек сообщает о результате.
gate
проверка: пропустить, переделать или остановиться.
Совет: как читать этот код
README.md— что это и как запускается.temporal/worker/workflows.py— главный сценарий (начните с него!).temporal/worker/gates.py— правила проверок.- Потом — всё остальное, по мере надобности.
workflows.py и gates.py.
Открыть разбор workflows.py по блокам →