21 — Agent-Only Interface (MicroDAO)¶
Агентська операційна система замість класичного застосунку
Цей документ описує цільовий інтерфейс MicroDAO, де:
-
немає класичного "меню функцій";
-
все представлено як учасники: Люди, Агенти, Роботи;
-
чати, проєкти, бази знань і доступи — це ресурси, якими керують агенти;
-
інвайти, шеринги, права і токени виконуються через агентські дії (з web3-фіксацією, де потрібно).
Це візійний, але достатньо конкретний документ для Cursor:
-
UX-специфікація;
-
структура layout;
-
сценарії;
-
задачі для реалізації перших версій.
1. Мета¶
Перетворити MicroDAO на агентську ОС спільнот, де:
-
користувач взаємодіє насамперед з агентами, а не з "екранами";
-
кожен контекст (канал, проєкт, база даних, DAO-голосування) — це простір, де присутні:
-
Люди,
-
Агенти,
-
(у майбутньому) Роботи;
-
запрошення, шеринги, доступи — це:
-
діалог з агентом,
-
- технічні дії (RBAC, entitlements, web3-транзакції).
2. Загальний layout агентської ОС¶
2.1. Лівий сайдбар — Простори та Учасники¶
Структура:
-
Мої простори (microDAO)
-
[DAARION Core] -
[GreenFood DAO] -
[Personal Lab] -
Учасники
-
Люди
-
Агенти
-
Роботи (поки пусто, плейсхолдер)
-
Активний контекст
Підсвічений простір + "поточний стіл":
-
Канал:
#dev-mvp -
Проєкт:
MicroDAO MVP -
Простір знань:
Tokenomics
Сайдбар показує структуру світу, але основні дії йдуть через агентів.
2.2. Центр — Діалоговий простір¶
Центральна колонка завжди є чатом:
-
Це може бути:
-
канал (
#dev-mvp), -
група (мультичат),
-
DM з людиною,
-
або "Agent Hub" (чат з головним агентом).
У заголовку:
-
Назва контексту (наприклад,
#dev-mvp). -
Список учасників (аватари):
-
Люди: 2–5
-
Агенти: Team Assistant, Messenger Agent, Projects Agent, Governance Agent
-
(Роботи, якщо є)
Звідси:
-
пишуть люди,
-
відповідають агенти,
-
запускаються операції над ресурсами (проєктами, БД, токенами).
2.3. Правий сайдбар — Контекст і Ресурси¶
Праворуч:
-
Контекст:
-
Активний простір (microDAO)
-
Поточний канал/проєкт
-
Які агенти мають доступ
-
Ресурси:
-
Проєкти
-
Бази даних / таблиці
-
Простори знань (Co-Memory)
-
Повʼязані гаманці / токени
-
Права та ключі:
-
Список людей та агентів з доступами (read/write/admin/use-in-prompts)
-
Кнопка "Керувати доступами"
-
Інформація про web3-стан (якщо є on-chain записи)
3. Панель "Люди / Агенти / Роботи"¶
3.1. Люди¶
Елементи списку:
-
Аватар
-
Імʼя
-
Статус (online/offline/busy)
-
Ролі в microDAO (Member, Guardian, Investor…)
Клік по людині:
-
відкриває:
-
DM-чат з цією людиною,
-
або розширений профіль (у майбутньому):
-
в яких проєктах,
-
з якими агентами працює.
-
3.2. Агенти¶
Групи:
-
Системні агенти:
-
Team Assistant
-
Messenger Agent
-
Projects Agent
-
Memory/Knowledge Agent
-
Governance/Tokenomics Agent
-
Bridge/Integrations Agent
-
Користувацькі агенти:
-
спеціалізовані боти, створені командою.
-
Зовнішні агенти (маркетплейс):
-
агенти з інших microDAO або від сторонніх розробників.
Клік по агенту:
-
відкриває сторінку агента:
-
вкладка "Чат",
-
вкладка "Памʼять",
-
вкладка "Самонавчання/Еволюція",
-
вкладка "Доступи та ресурси" (які проєкти/БД він бачить).
3.3. Роботи¶
Поки може бути просто секція "Роботи (скоро)".
Модель на майбутнє:
-
Привʼязані до фізичних пристроїв (робот, сенсор, енергоблок).
-
Участь у чатах як окремі "учасники".
-
Окремі права на дії у фізичному світі.
4. Запрошення агентів до каналів/чатів¶
4.1. UX-флоу¶
У будь-якому чаті/каналі:
- кнопка "Додати учасника".
При натисканні:
-
Модалка:
-
таби:
Люди | Агенти | Роботи -
поле пошуку
-
Вибір Агента:
-
список агентів,
-
короткий опис (роль, профіль, що вміє).
-
Налаштування прав:
-
чекбокси / селект:
-
Читати цей канал -
Писати в цей канал -
Створювати задачі / follow-ups -
Доступ до проєктів цього контексту -
Доступ до баз знань цього контексту
-
-
Підтвердження:
-
кнопка "Запросити агента"
Після цього:
-
у header чату зʼявляється новий агент;
-
агент отримує повідомлення (system DM):
"Тебе додали до каналу #dev-mvp з правами: читати, писати, створювати задачі."
4.2. Backend/протоколно¶
Під капотом:
-
створюється entitlement для
agent_idз: -
resource_kind:channel/project/knowledge_space, -
resource_id, -
scopes:[read, write, tasks, knowledge]. -
(optionally) запускається web3-транзакція:
-
видача capability-токена / NFT-доступу,
-
запис в on-chain реєстр (аудит, DAO-гарантія).
5. Обмін проєктами / базами даних між людьми та агентами¶
5.1. Поняття "Ресурсу"¶
Ресурс — це будь-що, до чого можна дати/забрати доступ:
-
Проєкт (
project_id) -
Таблиця / БД (
dataset_id,table_id) -
Простір знань (
knowledge_space_id) -
Набір подій (
events_stream_id) -
Гаманець / смарт-контракт (
wallet_id,contract_id)
У правому сайдбарі поточного контексту:
-
"Ресурси цього контексту"
-
Кожен ресурс має меню:
-
"Поділитися…"
-
"Показати, хто має доступ"
5.2. UX шерингу¶
У правій панелі користувач:
-
Обирає ресурс → "Поділитися".
-
Відкривається модалка:
-
таби:
Люди | Агенти | MicroDAO -
Вибирає:
-
одного або кількох адресатів.
-
Вказує права:
-
read/write/admin/use_in_prompts_only. -
Підтверджує.
Після цього:
-
Governance/Tokenomics Agent:
-
оформлює web3-операцію (за потреби),
-
оновлює entitlements,
-
лог у audit/journal.
-
Memory/Knowledge Agent:
-
оновлює карту знань (хто/що бачить),
-
може пропонувати нові рекомендації (наприклад, Projects Agent тепер бачить дані продажів).
6. "Agent Hub" — стартовий екран без меню¶
Замість класичного "Home":
- при вході в MicroDAO користувач потрапляє в чат з головним агентом (Team Assistant / OS Agent).
Верхня частина:
-
"Привіт, це твоя microDAO: [Назва]"
-
Короткі блоки:
-
"Учасники" (скільки людей, скільки агентів)
-
"Проєкти" (активні)
-
"Сигнали" (важливі нотифікації)
Основний елемент — чат, де користувач може написати будь-що:
Приклади:
-
"Покажи, хто зараз працює над MVP."
-
"Створи новий проєкт для інтеграції DAGI."
-
"Запроси Projects Agent і Governance Agent в цей проєкт."
-
"Поділись базою
sales_eventsз Projects Agent тільки для читання."
Агент:
-
ставить уточнюючі питання (якщо потрібно),
-
викликає внутрішні агенти:
-
Messenger Agent → створити/налаштувати канал
-
Projects Agent → створити проєкт/таски
-
Governance Agent → оформити доступи й web3-запис
-
Knowledge Agent → підключити Co-Memory
Усе це відображається як:
-
ланцюжок дій у чаті,
-
результати в структурі UI (нові канали / проєкти / ресурси).
7. Мінімальний MVP цієї парадигми¶
Для першої реалізації (без надроздуття):
-
Лівий сайдбар:
-
блок "Учасники":
Люди,Агенти(Роботи — плейсхолдер). -
кліки відкривають DM / сторінку агента.
-
Agent Hub як Home:
-
/t/:teamId/home→ чат з Team Assistant. -
кнопка "Домашня" у сайдбарі → туди.
-
Модалка "Додати учасника" для каналів:
-
можливість додати агента,
-
налаштувати права (на поки що хоча б
read/write). -
Модалка "Поділитися ресурсом":
-
для проєктів (Projects Agent вже буде з 15-го документа),
-
базові права
read/write. -
Без web3 на першому етапі:
-
тільки модель прав у БД (RBAC + entitlements),
-
web3-интеграція — stub/плейсхолдер (логіка в Governance Agent).
8. Компоненти та структура¶
8.1. Layout Components¶
src/layouts/
AgentOSLayout.tsx # Головний layout з 3 колонками
LeftSidebar.tsx # Простори + Учасники
ParticipantsPanel.tsx # Панель Люди/Агенти/Роботи
RightSidebar.tsx # Контекст + Ресурси
ContextPanel.tsx # Панель контексту
ResourcesPanel.tsx # Панель ресурсів
8.2. Pages¶
src/pages/
AgentHubPage.tsx # /t/:teamId/home - стартовий екран
ParticipantPage.tsx # Сторінка учасника (людина/агент)
8.3. Modals¶
src/components/modals/
AddParticipantModal.tsx # Додати учасника до каналу/чату
ShareResourceModal.tsx # Поділитися ресурсом
ManageAccessModal.tsx # Керування доступами
8.4. Types¶
interface Participant {
id: string;
type: "human" | "agent" | "robot";
name: string;
avatar?: string;
status?: "online" | "offline" | "busy";
roles?: string[];
}
interface Resource {
id: string;
type: "project" | "dataset" | "knowledge_space" | "wallet" | "contract";
name: string;
description?: string;
accessLevel?: "read" | "write" | "admin" | "use_in_prompts_only";
}
interface Entitlement {
participantId: string;
resourceKind: string;
resourceId: string;
scopes: string[];
}
9. API Endpoints¶
9.1. Participants¶
GET /teams/{teamId}/participants
// Повертає список учасників (люди + агенти)
GET /teams/{teamId}/participants/{id}
// Деталі учасника
POST /channels/{channelId}/participants
// Додати учасника до каналу
{
participantId: string;
participantType: "human" | "agent";
scopes: string[];
}
9.2. Resources¶
GET /teams/{teamId}/resources
// Список ресурсів у контексті
POST /resources/{resourceId}/share
// Поділитися ресурсом
{
participantIds: string[];
scopes: string[];
}
9.3. Entitlements¶
GET /entitlements
// Список прав поточного користувача/агента
POST /entitlements
// Створити entitlement
{
participantId: string;
resourceKind: string;
resourceId: string;
scopes: string[];
}
10. Інтеграція з існуючими модулями¶
10.1. Messenger Agent (14)¶
Messenger Agent може:
- показувати список каналів з учасниками
- фільтрувати канали за наявністю агентів
- пропонувати додати агента до каналу
10.2. Projects Agent (15)¶
Projects Agent може:
- показувати проєкти як ресурси
- керувати доступами до проєктів
- пропонувати поділитися проєктом з іншими агентами
10.3. Governance Agent (18)¶
Governance Agent:
- оформлює web3-транзакції для доступу
- веде audit log всіх змін прав
- керує токеномікою доступів
11. Завдання для Cursor¶
Приклад промта:
You are a senior React/TS engineer.
Implement the Agent-Only Interface shell using:
- 21_agent_only_interface.md
- 10_agent_ui_system.md
- 14_messenger_agent_module.md
- 03_api_core_snapshot.md
- 05_coding_standards.md
Tasks:
1) Update the main layout:
- Left sidebar: Spaces + Participants (People, Agents, Robots placeholder).
- Center: Dialog area (chat for current context).
- Right sidebar: Context & Resources panel (stub data).
2) Create "Agent Hub" route `/t/:teamId/home`:
- Chat with Team Assistant as the main entry point.
3) Add "Add participant" flow for channels:
- Modal with tabs: People / Agents.
- For Agents: basic permissions (read / write) stored in entitlements (stub).
4) Add "Share resource" flow in the right sidebar:
- For now: projects only (resource type stub).
- Modal to grant read/write access to People or Agents (no web3 yet).
5) Ensure navigation:
- Clicking on a Person/Agent in the sidebar opens the appropriate chat/page.
Output:
- list of modified files
- diff
- summary
12. Результат¶
Після впровадження цього модуля:
-
MicroDAO отримує "агентський" каркас інтерфейсу:
-
вхід через Agent Hub,
-
центральна роль агентів,
-
простий механізм запрошення агентів,
-
базові flows шерингу ресурсів;
-
класичний месенджер (документ 14) стає лише однією з "здібностей" всередині агентської ОС, а не центром продукту.
Готово.
Це повна специфікація Agent-Only Interface, готова до використання в Cursor.