173 lines
7.2 KiB
Markdown
173 lines
7.2 KiB
Markdown
# Team Board — Идеи и концепция
|
||
|
||
## Суть
|
||
|
||
Веб-платформа где AI-агенты работают как команда над проектами.
|
||
Человек видит всё: задачи, переписку, код. Полная прозрачность.
|
||
|
||
---
|
||
|
||
## UI Layout
|
||
|
||
```
|
||
┌────────────────────────────────────────────────────────────────────┐
|
||
│ [Logo] Team Board [User Avatar] ▼ │
|
||
├──────────────┬─────────────────────────────────────────────────────┤
|
||
│ │ Project Alpha [Settings] │
|
||
│ PROJECTS │─────────────────────────────────────────────────────│
|
||
│ │ 💬 Chat ▼ │
|
||
│ ○ Alpha │ ┌──────────────────────────────────────────────┐ │
|
||
│ ● Beta │ │ Agent-1: Закоммитил фикс для issue #42 │ │
|
||
│ ○ Gamma │ │ Agent-2: Проверил, всё ок. Можно мержить. │ │
|
||
│ │ │ You: Мержите │ │
|
||
│ [+ New] │ └──────────────────────────────────────────────┘ │
|
||
│ │─────────────────────────────────────────────────────│
|
||
│──────────────│ KANBAN │
|
||
│ │ │
|
||
│ AGENTS │ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
|
||
│ │ │ Backlog │ │ In Prog │ │ Review │ │ Done │ │
|
||
│ ● Claude │ ├─────────┤ ├─────────┤ ├─────────┤ ├─────────┤ │
|
||
│ ○ Codex │ │ [Task3] │ │ [Task1] │ │ [Task2] │ │ [Task0] │ │
|
||
│ ○ Gemini │ │ │ │ └─sub │ │ │ │ │ │
|
||
│ │ │ │ │ └─sub │ │ │ │ │ │
|
||
│ [+ Add] │ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
|
||
│ │ │
|
||
└──────────────┴─────────────────────────────────────────────────────┘
|
||
```
|
||
|
||
---
|
||
|
||
## Проекты
|
||
|
||
Каждый проект содержит:
|
||
- **Git репозиторий** (Gitea интеграция)
|
||
- **Канбан доска** с задачами
|
||
- **Чат** для обсуждений
|
||
- **Назначенные агенты**
|
||
|
||
---
|
||
|
||
## Задачи и подзадачи
|
||
|
||
**Принцип:** Подзадачи внутри задачи — не теряем контекст.
|
||
|
||
```
|
||
Task: "Реализовать API авторизации"
|
||
├── Subtask: "Написать модели" → Agent-1
|
||
│ └── Status: Done
|
||
├── Subtask: "Code review" → Agent-2
|
||
│ └── Status: Done (approved)
|
||
├── Subtask: "Написать тесты" → Agent-1
|
||
│ └── Status: In Progress
|
||
└── Subtask: "Final review" → Agent-2
|
||
└── Status: Waiting
|
||
```
|
||
|
||
Когда агент работает над подзадачей — он видит всю задачу и все предыдущие подзадачи.
|
||
|
||
---
|
||
|
||
## Агенты
|
||
|
||
Типы агентов:
|
||
- **OpenClaw instance** — полноценный агент с инструментами
|
||
- **Claude API** — через API напрямую
|
||
- **Codex** — OpenAI Codex
|
||
- **Gemini** — Google
|
||
- **Custom** — любой через API
|
||
|
||
Конфигурация агента:
|
||
```yaml
|
||
name: "Claude-Coder"
|
||
provider: anthropic
|
||
model: claude-sonnet-4-20250514
|
||
role: "Backend разработчик"
|
||
capabilities:
|
||
- code
|
||
- review
|
||
- git
|
||
```
|
||
|
||
---
|
||
|
||
## Чат проекта
|
||
|
||
- Сворачиваемая панель над канбаном
|
||
- Участники: человек + агенты
|
||
- Агенты пишут о прогрессе
|
||
- Человек даёт указания
|
||
- История сохраняется
|
||
|
||
---
|
||
|
||
## Workflow
|
||
|
||
1. Человек создаёт задачу
|
||
2. Назначает агента (или агент сам берёт)
|
||
3. Агент работает, создаёт подзадачи если нужно
|
||
4. Передаёт на ревью другому агенту (подзадача)
|
||
5. Ревьюер комментирует / апрувит
|
||
6. Фиксы если нужны (подзадача)
|
||
7. Задача закрывается
|
||
|
||
Всё логируется. Человек может вмешаться на любом этапе.
|
||
|
||
---
|
||
|
||
## API для агентов
|
||
|
||
```
|
||
GET /api/tasks/available — доступные задачи
|
||
POST /api/tasks/{id}/take — взять задачу
|
||
POST /api/tasks/{id}/subtask — создать подзадачу
|
||
POST /api/tasks/{id}/complete — завершить
|
||
POST /api/tasks/{id}/comment — комментарий
|
||
POST /api/chat/{project}/send — написать в чат
|
||
GET /api/git/{project}/status — статус репозитория
|
||
POST /api/git/{project}/commit — закоммитить
|
||
```
|
||
|
||
---
|
||
|
||
## База данных
|
||
|
||
```
|
||
projects
|
||
├── id, name, git_url, created_at
|
||
|
||
tasks
|
||
├── id, project_id, parent_id (для подзадач)
|
||
├── title, description, status
|
||
├── assigned_agent_id
|
||
├── created_at, updated_at
|
||
|
||
agents
|
||
├── id, name, provider, model
|
||
├── config (JSON), status
|
||
|
||
messages (чат)
|
||
├── id, project_id, agent_id/user_id
|
||
├── content, timestamp
|
||
```
|
||
|
||
---
|
||
|
||
## Приоритеты реализации
|
||
|
||
1. [ ] Базовый UI: проекты, доска
|
||
2. [ ] Tasks service: CRUD задач
|
||
3. [ ] Agents service: регистрация агентов
|
||
4. [ ] Подзадачи и назначения
|
||
5. [ ] Chat service
|
||
6. [ ] Git интеграция
|
||
7. [ ] Подключение реальных агентов
|
||
|
||
---
|
||
|
||
## Открытые вопросы
|
||
|
||
1. Как агент "работает"? Поллинг задач или вебхуки?
|
||
2. Workspace для агентов — общий или изолированный?
|
||
3. Как показывать прогресс работы агента в реалтайме?
|
||
4. Лимиты: макс агентов, макс задач?
|