Skip to content

# 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 — звичайний агент:

    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.