Агент · кто есть кто

DEV-AGENT

Агент-разработчик: выполняет работу по одобренной спеке (ТЗ). Один запуск — один шаг: он берёт спеку и код, делает правки и, если нужно, создаёт merge request.

Nomad-джоба: dev-agent · nomad/dev-agent.nomad.hcl · на главную · про спеку (ТЗ) · другой агент: SPEC-AGENT · про Gate

Что это такое

DEV-AGENT — это запуск Goose-агента «с идентичностью разработчика». Это не ЧЕЛОВЕК: программа. Она выполняет работу, описанную в спеке (ТЗ): читает код, вносит изменения и отчитывается о результате.

Простая аналогия: DEV-AGENT — это разработчик, который получает одобренное ТЗ и «делает работу». Человек при этом в цикле остаётся: он одобрил спеку (ТЗ) и проверяет результаты шагов.

В рамках чего запускается

DEV-AGENT запускает workflow на каждом шаге разработки — после того, как спека (ТЗ) одобрена. У workflow есть список шагов; каждый шаг — отдельный запуск DEV-AGENT с собственным промптом:

# workflows.py — список шагов (сейчас демонстрационные)
steps = [
    Step(step_name="step-1-intro",     job_name="dev-agent", ...),
    Step(step_name="step-2-followup",  job_name="dev-agent", ...),
]

for step in steps:
    результат = запустить_шаг(step)      # DEV-AGENT выполняет шаг
    проверить_результат(результат)        # Gate: PASS → дальше, иначе стоп

Что он получает на вход

ВходОткудаЧто это
спеку (ТЗ)workflow → activityодобренное техническое задание — что нужно сделать
base_shaполе спекиот какой версии кода отталкиваться
снимок репозиторияNomad prestart (fetch-repo)код ровно на этом коммите
промпт шагаworkflowчто именно сделать в этом конкретном шаге

Что он делает и отдаёт

  1. Получает тело спеки (ТЗ) и снимок кода на base_sha.
  2. Выполняет работу шага (пишет код, правит файлы).
  3. Если шаг пишет в репозиторий — push изменений и создание merge request.
  4. В результат кладёт свой вывод (output) и, если есть, commit_sha.
  5. Завершается и шлёт workflow сигнал agent_done; результат сохраняется как артефакт.
Права доступа: DEV-AGENT пишет в репозиторий. Перед запуском workflow выпускает временный deploy-ключ; после шага ключ всегда отзывается, даже если шаг упал. Такой ключ живёт ровно один шаг и никогда не попадает внутрь контейнера агента.

Связи

Вход

одобренная спека (ТЗ), base_sha, снимок кода, промпт шага.

Выход

вывод агента; при записи — push ветки и MR.

Перед

спеку (ТЗ) написал SPEC-AGENT и одобрил ЧЕЛОВЕК.

Дальше

проверка результата на Gate, шаг за шагом.