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

SPEC-AGENT

Агент, который пишет спеку (ТЗ). Он запускается, когда у задачи ещё нет готового технического задания: читает всё, что известно о задаче, и превращает это в черновик спеки.

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

Что это такое

SPEC-AGENT — это запуск Goose-агента «с идентичностью составителя ТЗ». Он не пишет код — он проектирует: читает задачу и создаёт техническое задание (артефакт kind=spec), по которому потом будет работать агент-разработчик.

Простая аналогия: SPEC-AGENT — это аналитик, который превращает «сделай фичу» в понятное техническое задание для разработчика.

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

SPEC-AGENT запускает workflow — но только в одном случае: когда пришла задача без готового ТЗrun() передан task_id, а не spec_id). Тогда выполняется первый шаг пайплайна — шаг SPEC_STEP:

# workflows.py
SPEC_STEP = Step(
    step_name = "spec",
    job_name  = "spec-agent",     # ← это и есть SPEC-AGENT
    writes_repo = False,          # читает, но НЕ пишет в репозиторий
    uses_task_package = True,     # вход — пакет задачи, а не спека
)

run(spec_id, task_id=""):
    if task_id:                       # ТЗ ещё нет
        результат = запустить_шаг(SPEC_STEP)   # SPEC-AGENT пишет черновик
        ...

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

ВходОткудаЧто это
пакет задачисистема (task package)история, подзадачи, срезы, тесткейсы, решения — всё, что уже известно о задаче
снимок репозиторияNomad prestart (fetch-repo)код, который надо понять, чтобы спроектировать изменение

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

  1. Читает пакет задачи и код репозитория.
  2. Через MCP-инструмент artifacts создаёт артефакт spec в статусе draft (черновик).
  3. Записывает в спеку base_sha — коммит, от которого вести работу.
  4. В свой результат (result.json) кладёт ссылку на созданную спеку — spec_id.
  5. Завершается; workflow забирает spec_id и отправляет спеку (ТЗ) ЧЕЛОВЕК на проверку.
Права доступа: SPEC-AGENT read-only — он не получает deploy-ключ, не коммитит и не создаёт MR. Его «письмо» — только сам артефакт спеки в artifacts-service.

Связи

Вход

пакет задачи, снимок репозитория.

Выход

черновик спеки (ТЗ) + spec_id в result.json.

Дальше

ЧЕЛОВЕК проверяет спеку (ТЗ) на Gate.

Потом

после одобрения работает DEV-AGENT.