- Create /docs structure (microdao, daarion, agents) - Organize 61 cursor technical docs - Add README files for each category - Copy key documents to public categories - Add GitHub setup instructions and scripts
377 lines
10 KiB
Markdown
377 lines
10 KiB
Markdown
# 15 — Projects Agent Module (MicroDAO)
|
||
|
||
Агент-проєктний менеджер для команд і спільнот
|
||
|
||
Цей документ описує агентський модуль "Проєкти" у MicroDAO — систему управління роботою, яка повністю працює через агентів. Проєкти, задачі, дедлайни, фоллоуапи та прогрес — це не просто дані, а живий простір, у якому взаємодіють люди та агенти microDAO.
|
||
|
||
---
|
||
|
||
# 1. Ідея
|
||
|
||
Проєкт у MicroDAO — це:
|
||
|
||
- спільний простір роботи,
|
||
- де активні ролі мають люди та агенти,
|
||
- де задачі створюються й координуються автоматично,
|
||
- де агент проектів (Projects Agent) виступає координатором, навігатором і аналітиком.
|
||
|
||
Проєкт не існує як "сторінка". Він існує як **розмова**, **контекст**, **граф подій**, яким володіє Projects Agent.
|
||
|
||
---
|
||
|
||
# 2. Ролі агентів у модулі
|
||
|
||
## 2.1. Projects Agent (основний)
|
||
|
||
Роль: `"projects_core"`
|
||
|
||
Відповідає за:
|
||
|
||
- створення, оновлення, завершення задач;
|
||
- синхронізацію задач з каналами/чатами;
|
||
- календар дедлайнів;
|
||
- AI-саммарі проєкту;
|
||
- глибоку інтеграцію з памʼяттю для пріоритизації.
|
||
|
||
## 2.2. Task Agent
|
||
|
||
Роль: `"task_unit"`
|
||
|
||
- Опікується конкретними задачами.
|
||
- Може вести діалог про задачу у власному треді.
|
||
- Має памʼять щодо історії виконання конкретної задачі.
|
||
|
||
## 2.3. Planning Agent (опційний)
|
||
|
||
Роль: `"planning"`
|
||
|
||
- Створює дорожні карти (roadmaps),
|
||
- Пропонує структурування задач,
|
||
- Формує спринти,
|
||
- Аналізує історичні патерни роботи в microDAO.
|
||
|
||
---
|
||
|
||
# 3. Структура проєкту
|
||
|
||
Проєкт складається з:
|
||
|
||
- **Мета** (опис/маніфест),
|
||
- **Учасники** (люди й агенти),
|
||
- **Задачі**:
|
||
|
||
- backlog,
|
||
- активні,
|
||
- завершені.
|
||
|
||
- **Knowledge Space** (повʼязані документи/факти),
|
||
- **Проєктний контекст у памʼяті**:
|
||
|
||
- важливі рішення,
|
||
- визначення,
|
||
- стандарти/узгодження,
|
||
|
||
- **Канали спілкування**:
|
||
|
||
- основний канал проєкту,
|
||
- треди задач.
|
||
|
||
Проєкт і канал — різні речі, але проєкт зазвичай має прив'язаний канал для комунікації.
|
||
|
||
---
|
||
|
||
# 4. Модель задачі
|
||
|
||
Задача (`task`) має:
|
||
|
||
- `id`
|
||
- `project_id`
|
||
- `title`
|
||
- `description`
|
||
- `status`: `"new" | "in_progress" | "blocked" | "done"`
|
||
- `priority`: `"low" | "medium" | "high" | "critical"`
|
||
- `assignees`: перелік людей/агентів
|
||
- `due_at` (необовʼязково)
|
||
- `created_by` (людина або агент)
|
||
- `created_at`, `updated_at`
|
||
- `memory_thread_id` (для диалогу з Task Agent)
|
||
- `tags` (опційно)
|
||
|
||
Задача може мати чат-тред, пов'язаний з Task Agent.
|
||
|
||
---
|
||
|
||
# 5. Основні спроможності Projects Agent
|
||
|
||
## 5.1. Авто-створення задач з діалогів
|
||
|
||
Якщо в чаті зʼявляється фраза:
|
||
|
||
- "Треба зробити…"
|
||
- "Хочу щоб агент підготував…"
|
||
- "До кінця тижня потрібно…"
|
||
- "Це треба виправити."
|
||
|
||
Projects Agent може запропонувати:
|
||
|
||
> "Створити задачу для цього?"
|
||
|
||
Або може створити самостійно, якщо це дозволено правами контексту.
|
||
|
||
## 5.2. Автоматичні фоллоуапи
|
||
|
||
Projects Agent:
|
||
|
||
- відстежує дедлайни,
|
||
- нагадує виконавцю,
|
||
- пропонує оновлення статусу,
|
||
- створює автосаммарі тижня/дня.
|
||
|
||
## 5.3. Розумні саммарі проєкту
|
||
|
||
Команда може попросити:
|
||
|
||
- "Покажи прогрес по проєкту."
|
||
- "Що зроблено за останні 3 дні?"
|
||
- "Які блокери є зараз?"
|
||
|
||
Projects Agent формує відповіді через LLM + памʼять + RAG.
|
||
|
||
## 5.4. Привʼязка до каналів
|
||
|
||
Кожен проєкт має:
|
||
|
||
- основний канал,
|
||
- треди задач.
|
||
|
||
Projects Agent синхронізує зміни задач у чаті:
|
||
|
||
- статуси,
|
||
- дедлайни,
|
||
- призначення.
|
||
|
||
## 5.5. Планування і пріоритети
|
||
|
||
Projects Agent може:
|
||
|
||
- групувати задачі в спринти,
|
||
- пропонувати чергу виконання,
|
||
- аналізувати історію виконання.
|
||
|
||
---
|
||
|
||
# 6. Tools для Projects Agent
|
||
|
||
У форматі, що сумісний з Runtime Core (12).
|
||
|
||
### 6.1. Створення задач
|
||
|
||
`create_task(title, description, priority?, due_at?, assignees?)`
|
||
|
||
### 6.2. Оновлення задач
|
||
|
||
`update_task(id, fields)`
|
||
|
||
### 6.3. Призначення виконавців
|
||
|
||
`assign_task(id, assignees)`
|
||
|
||
### 6.4. Пошук задач
|
||
|
||
`search_tasks(query)`
|
||
|
||
### 6.5. Показати прогрес проєкту
|
||
|
||
`summarize_project(project_id)`
|
||
|
||
### 6.6. Створення спринтів
|
||
|
||
`create_sprint(name, tasks)`
|
||
|
||
### 6.7. Авто-фоллоуап
|
||
|
||
`auto_followup(task_id)`
|
||
|
||
---
|
||
|
||
# 7. Інтеграція з Runtime Core (12)
|
||
|
||
Projects Agent — звичайний агент:
|
||
|
||
```ts
|
||
const projectsAgentConfig: AgentConfig = {
|
||
id: "ag_projects_core",
|
||
teamId: "t_...",
|
||
name: "Projects Agent",
|
||
role: "projects_core",
|
||
systemPrompt: systemProjectsPrompt,
|
||
memoryScope: "team",
|
||
tools: [
|
||
"create_task",
|
||
"update_task",
|
||
"assign_task",
|
||
"search_tasks",
|
||
"summarize_project",
|
||
"auto_followup"
|
||
],
|
||
};
|
||
```
|
||
|
||
Projects Agent працює з:
|
||
|
||
* памʼяттю (13),
|
||
* каналами (14),
|
||
* еволюційним агентом (09),
|
||
* LLM (11).
|
||
|
||
---
|
||
|
||
# 8. Інтеграція з памʼяттю (13)
|
||
|
||
Projects Agent використовує:
|
||
|
||
### 8.1. Short-Term Memory
|
||
|
||
* поточні обговорення задач у каналі проєкту.
|
||
|
||
### 8.2. Long-Term Memory
|
||
|
||
* ключові рішення команди,
|
||
* визначення задач і стандартів,
|
||
* історія пріоритетів.
|
||
|
||
### 8.3. Mid-Term Memory
|
||
|
||
* summary спринтів,
|
||
* переліки завершених задач,
|
||
* звіти про прогрес.
|
||
|
||
Projects Agent додає факти в памʼять:
|
||
|
||
* "Задачу X завершено 12 жовтня."
|
||
* "Проєкт переходить до етапу тестування."
|
||
|
||
---
|
||
|
||
# 9. Інтеграція з Messenger Agent (14)
|
||
|
||
Messenger Agent допомагає Projects Agent:
|
||
|
||
* показувати списки задач у чатах,
|
||
* формувати треди для задач,
|
||
* робити дайджести по каналах.
|
||
|
||
Projects Agent може викликати Messenger Agent через tools або через делегацію.
|
||
|
||
---
|
||
|
||
# 10. API для проєктів та задач
|
||
|
||
### 10.1. Projects
|
||
|
||
`GET /projects?team_id=...`
|
||
`POST /projects`
|
||
`GET /projects/:id`
|
||
`PATCH /projects/:id`
|
||
|
||
### 10.2. Tasks
|
||
|
||
`GET /projects/:id/tasks`
|
||
`POST /tasks`
|
||
`PATCH /tasks/:id`
|
||
`GET /tasks/:id`
|
||
|
||
Модель задачі повинна бути сумісною з Task Agent.
|
||
|
||
---
|
||
|
||
# 11. UI інтеграція
|
||
|
||
## 11.1. Sidebar → Projects
|
||
|
||
У лівому сайдбарі в блоці "Простори" відображаються:
|
||
|
||
* список проєктів,
|
||
* кнопка "Створити проєкт".
|
||
|
||
## 11.2. Right Sidebar → Project Context
|
||
|
||
Коли користувач знаходиться у каналі проєкту:
|
||
|
||
* правий сайдбар показує:
|
||
|
||
* назву проєкту,
|
||
* короткий опис,
|
||
* задачі по статусам,
|
||
* кнопку "Нова задача".
|
||
|
||
## 11.3. Task Panel
|
||
|
||
Клік по задачі відкриває:
|
||
|
||
* повну картку задачі,
|
||
* чат-тред задачі,
|
||
* дії:
|
||
|
||
* змінити статус,
|
||
* призначити,
|
||
* додати опис,
|
||
* переглянути памʼять.
|
||
|
||
---
|
||
|
||
# 12. Інструкції для Cursor
|
||
|
||
Приклад промта:
|
||
|
||
```
|
||
Implement the Projects Agent module using:
|
||
|
||
- 15_projects_agent_module.md
|
||
- 12_agent_runtime_core.md
|
||
- 13_agent_memory_system.md
|
||
- 14_messenger_agent_module.md
|
||
- 10_agent_ui_system.md
|
||
- 05_coding_standards.md
|
||
|
||
Tasks:
|
||
|
||
1) Create models for Project and Task in backend.
|
||
|
||
2) Implement basic API: GET/POST/PATCH for projects and tasks.
|
||
|
||
3) Register Projects Agent with tools: create_task, update_task, search_tasks, summarize_project.
|
||
|
||
4) Implement UI:
|
||
|
||
- Projects list in sidebar.
|
||
|
||
- Project context panel in right sidebar.
|
||
|
||
- Modal for creating tasks.
|
||
|
||
- Basic task list with statuses.
|
||
|
||
5) Integrate task creation with agent chat (Projects Agent intercepts messages with "треба зробити").
|
||
|
||
Output:
|
||
|
||
- list of changed files
|
||
- diff
|
||
- summary
|
||
```
|
||
|
||
---
|
||
|
||
# 13. Результат
|
||
|
||
Після впровадження цього модуля:
|
||
|
||
* MicroDAO отримує повноцінний агентський менеджмент проєктів;
|
||
* задачі створюються з діалогів, а не через форму;
|
||
* агенти синхронізують роботу між каналами й людьми;
|
||
* зʼявляється можливість планувати спринти, отримувати прогрес і формувати дайджести;
|
||
* Projects Agent стає центральним "організатором роботи" у кожному microDAO.
|
||
|
||
|