5.4 KiB
5.4 KiB
Бэклог — Мультиагентная разработка ПО
type: backlog updated_at: 2026-05-19
Решения (19.05.2026)
Analyst — пересмотр архитектуры
Было: Analyst = Стрим (OpenClaw main agent), работает как посредник.
Стало: Analyst = отдельный полноценный агент OpenClaw (не субагент).
Ключевые решения:
- Analyst — первоклассный агент в
agents.list[], равноправен с main - Слава общается с Analyst напрямую (не через Стрим)
- Каналы связи: отдельный Telegram-чат + Plane (комментарии)
- Модель:
anthropic/claude-sonnet-4-6(API, не CLI) - Свой workspace, своя память, свои сессии
Поведение:
- Получает задачу от Славы (Telegram или Plane)
- Читает
00-business-request.md+CLAUDE.mdпроекта - Если неясности → формирует вопросы, останавливается, ждёт ответа
- Пишет BRD, ТЗ, AC, Test Plan
- Коммитит в feature-ветку
- Запрашивает approve у Славы
Правила:
- ❌ Не пишет код
- ❌ Не трогает архитектуру, дизайн, ADR
- ❌ Не закрывает задачу без
:approved:от Славы - ❌ Не угадывает — спрашивает
- ✅ Читает весь репо (контекст)
- ✅ Пишет только в
docs/work-items/<id>/ - ✅ Коммитит в feature-ветку
- ✅ Обновляет статусы в Plane
Поток:
Слава (Telegram) ──────► Analyst agent
Слава (Plane comment) ──► Analyst agent (через webhook)
Analyst ──► Git (коммит в feature-ветку)
Analyst ──► Plane (статус, комментарии)
Analyst ──► Слава (ответ в Telegram / Plane)
Стрим в цепочке НЕ участвует — Analyst автономен.
TODO: Analyst agent
- Решить: тот же Telegram-бот (binding по peer) или отдельный бот?
- Решить: Plane webhook сразу или пока руками?
- Решить: первый проект — enduro-trails?
- Добавить
analystвagents.list[]в openclaw.json - Создать workspace
~/.openclaw/workspace-analyst/с AGENTS.md (промпт из proposal) - Настроить Telegram binding
- Дать доступ к Gitea (SSH key или token для
claude-bot) - Дать
PLANE_API_TOKENв env агента - Написать скилл
plane-api(или использовать exec curl) - Тестовый прогон: создать Work Item → Analyst пишет BRD
TODO: Инфраструктура (из ревью 18.05)
- Claude Code CLI установлен на mva154 (v2.1.142)
- Gitea работает (v1.25.5)
- Plane работает
- Node.js на mva154 (v24.14.0)
- Service account
claude-botв Gitea - Репо enduro-trails — каноническая структура
- CI workflow (lint + test + build)
- Проверить авторизацию Claude CLI (
claude auth status) - Проверить Gitea Actions runner (работает ли?)
- Настроить branch protection на main
- Plane webhooks → endpoint
TODO: Orchestrator (Фаза 2)
- FastAPI скелет:
/webhook/plane,/webhook/gitea,/health - QG-проверки (lint-spec, req-coverage, reaction check)
- Запуск агентов по событиям
- Репо
admin/agent-dev— заполнить кодом
TODO: Тестирование / аудит (24.05.2026)
- Определить тип Work Item для чистого тестирования (Audit / Regression или Feature+skip:*)
- Описать YAML-схему Test Plan (чтобы Tester agent мог исполнять автономно)
- Обновить
proposal_v1/09_ui_testing.mdпод сценарий «регресс без новой фичи» - Прописать как Tester agent запускает Playwright + vision + формирует отчёт
- Добавить тип
Auditв список типов Work Item в06_plane_integration.md
TODO: Управление бэклогом (24.05.2026)
- Решить: кто и куда заводит задачи (Слава → Plane / через Analyst / через Стрим)
- Описать правила декомпозиции крупных фич (тип
Decomposition, когда и как) - Прописать правила работы с backlog (приоритет, эпик/фаза, когда заводить Phase)
- Решить: кто обновляет статусы в Plane (Analyst? Orchestrator?)
- Решить: Plane — единственный источник backlog'а или нужно отдельное хранилище
TODO: Остальные агенты (после Analyst)
- Architect (Claude CLI, Opus)
- Developer (Claude CLI, Sonnet)
- Reviewer (Claude CLI, Opus)
- Tester (Claude CLI, Sonnet)
- Deployer (Claude CLI, Sonnet)