diff --git a/docs/team-workflow-guide.md b/docs/team-workflow-guide.md new file mode 100644 index 0000000..e24f1d4 --- /dev/null +++ b/docs/team-workflow-guide.md @@ -0,0 +1,158 @@ +# awg-dash: Руководство по работе с командой разработки + +> Команда состоит из 5 агентов Hermes с изолированными профилями. +> Репозиторий: `embeddevio/awg-dash` (Gitea) +> MCP сервер: `http://127.0.0.1:8100/mcp` + +--- + +## 1. Роли + +| Роль | Профиль | Запуск | Ответственность | +|------|---------|--------|-----------------| +| **TechLead** | `techlead-agent` | `hermes --profile techlead-agent chat` | Архитектура, декомпозиция эпиков, контроль качества, мерж, релизы | +| **Backend** | `backend-engineer` | `hermes --profile backend-engineer chat` | REST API, бизнес-логика, модели, unit-тесты | +| **Frontend** | `frontend-engineer` | `hermes --profile frontend-engineer chat` | UI/UX, дашборды, e2e-тесты | +| **QA** | `qa-engineer` | `hermes --profile qa-engineer chat` | Тест-планы, автотесты, регресс, security | +| **DevOps** | `devops` | `hermes --profile devops chat` | CI/CD, Docker, деплой, мониторинг | + +Маршрутизация: при создании issue с лейблом `backend`/`frontend`/`qa`/`devops`/`epic` Hermes направляет задачу соответствующему профилю автоматически. + +--- + +## 2. Быстрый старт + +```bash +# Запустить TechLead агента (отвечает за архитектуру и координацию) +tmux new-session -d -s techlead 'hermes --profile techlead-agent chat' + +# Подключиться к сессии +tmux attach -t techlead + +# Когда нужен бэкенд — запустить в другом окне +tmux new-session -d -s backend 'hermes --profile backend-engineer chat' + +# Остальные профили по мере необходимости +tmux new-session -d -s frontend 'hermes --profile frontend-engineer chat' +tmux new-session -d -s qa 'hermes --profile qa-engineer chat' +tmux new-session -d -s devops 'hermes --profile devops chat' +``` + +--- + +## 3. Процесс разработки + +``` +TechLead: Эпик → Subtasks with AC + ├── Backend: API + тесты → PR + ├── Frontend: UI компоненты → PR + ├── QA: Тест-план → e2e → Review PRs + ├── DevOps: CI/CD + деплой в staging + └── TechLead: Code Review → Merge (если все gates зелёные) +``` + +### 3.1 Эпик (создаёт TechLead) + +1. Зайти в профиль TechLead: `hermes --profile techlead-agent chat` +2. Дать задачу. Агент создаст issue с лейблом `epic`. +3. В теле issue — GIVEN/WHEN/THEN acceptance criteria. +4. Агент создаст задачи-потомки с лейблами ролей. + +**ID лейблов (использовать числа, не строки):** + +| ID | Лейбл | +|----|-------| +| 1 | `epic` | +| 2 | `backend` | +| 3 | `frontend` | +| 4 | `devops` | +| 5 | `qa` | +| 6 | `blocker` | +| 7 | `release` | +| 8 | `hotfix` | + +### 3.2 Разработка (Backend / Frontend) + +1. Зайти в профиль (`hermes --profile backend-engineer chat`). +2. Сообщить номер issue — агент сам прочитает задачу. +3. Агент создаёт ветку `feat/N-slug`, пишет код, тесты, открывает PR. +4. **Важно:** агент не сливает PR. Только TechLead мержит. + +### 3.3 QA + +1. Зайти в профиль QA: `hermes --profile qa-engineer chat` +2. Попросить проверить PR #N. Агент прочитает diff, напишет тест-план, выполнит тесты. +3. Результат — комментарий на PR с pass/fail. + +### 3.4 DevOps + +1. Зайти в профиль DevOps: `hermes --profile devops chat` +2. Сообщить о мерже — агент собирает образ, деплоит в staging. + +### 3.5 Code Review и Merge (TechLead) + +**Gate для мержа:** +- [ ] CI зелёный (lint + тесты) +- [ ] coverage ≥ 70% +- [ ] Security scan — low/none +- [ ] QA approve +- [ ] Хотя бы 1 review от владельца роли + +**Gate для релиза:** +- [ ] Все задачи эпика закрыты +- [ ] Regression pass +- [ ] Smoke tests green +- [ ] Документация обновлена + +--- + +## 4. Labels reference + +Можно установить лейбл через Gitea MCP: + +``` +issue_write(method='add_labels', owner='embeddevio', repo='awg-dash', + issue_number=N, labels=[2]) # backend +``` + +--- + +## 5. Создание задачи вручную + +```python +# Через MCP инструмент +mcp__gitea__issue_write( + method='create', + owner='embeddevio', + repo='awg-dash', + title='Frontend: status indicator', + body='**AC:** GIVEN tunnel active WHEN page loads THEN green indicator shown', + labels=[3] # frontend +) +``` + +--- + +## 6. Правила для всех + +- Все операции с репозиторием — только через MCP (не curl, не shell git). +- Никто не пушит в `main` напрямую. +- Никто не сливает свой PR (кроме TechLead после прохождения gates). +- PR #1 (TechLead bootstrap) — не мержить, это шаблоны и конфиги. +- Если задача кажется непонятной — агент откроет issue с уточняющими вопросами. +- Критическая проблема → лейбл `blocker` → TechLead подключается. + +--- + +## 7. Переключение между профилями + +```bash +# Из текущей сессии можно выйти (/exit) и зайти в другой профиль +# Или через отдельный tmux: + +tmux new-session -d -s backend 'hermes --profile backend-engineer chat' +tmux attach -t backend + +# Просмотр запущенных сессий агентов +tmux ls +``` \ No newline at end of file