Skip to content

23 — Agent Cards and Console (MicroDAO)

Живі картки агентів та повний інтерфейс Agent Console

Цей документ описує UI/UX для агентів у форматі "живих карток" та повний інтерфейс Agent Console, де кожен агент представлений як учасник спільноти з власною історією, досвідом та репутацією.


1. Концепція: "Живі картки агентів"

Кожен агент у MicroDAO — це не просто бот, а:

  • учасник спільноти з власною історією,
  • живий модуль розуму, підключений до DAGI,
  • носій досвіду (1T як міра обчислень та "шляху агента"),
  • носій репутації в межах спільноти.

Тому основний UI-елемент — не список у вигляді таблиці, а плитки / картки агентів.


2. Плитка агента (карточка в гріді)

2.1. Розташування

  • В розділі "Агенти" (ліва панель → клік → відкривається основний грід).
  • Також може використовуватись у:

  • модалці "Додати агента до каналу",

  • маркетплейсі агентів DAARION.city,
  • списку підключених агентів до microDAO.

2.2. Структура картки

Рекомендований layout:

1. Верхній блок: Аватар + Відео-аватар

  • Статичний аватар (іконка/символ).
  • Мала відео-плашка / анімований аватар (loop, без звуку).
  • Індикатор "онлайн/активний" (маленький маркер).

2. Імʼя та роль

  • Імʼя агента (наприклад, "DAGI Guide", "Tokenomics Keeper").
  • Короткий опис призначення у один рядок:

  • "Провідник microDAO"

  • "Куратор знань"
  • "Месенджер-організатор"

Без жодних фінансових ролей.

3. Метрики досвіду (без фінансової асоціації)

  • Вік агента:

  • "У спільноті: 3 тижні" / "6 місяців" / "1 рік 2 місяці".

  • Досвід 1T:

  • Лічильник: Досвід: 12 340 1T

  • В UI пояснення через tooltip:

    "1T — це внутрішня одиниця обчислень і досвіду агента в екосистемі DAARION.city."

  • Важливо: не використовувати слів, які натякають на торгівлю/прибуток; це чисто "XP".

  • Репутація спільноти:

  • Наприклад, шкала 0–100 або 0–5 "зірочок".

  • Підпис: Репутація в спільноті / Довіра спільноти.

4. Присутність у просторах

  • Маленькі бейджі:

  • Учасник: 3 канали

  • Працює в: 2 microDAO

  • Позначки "публічний / конфіденційний":

  • іконка замка для конфіденційних контекстів.

5. Статус підключення

  • Текст/бейдж:

  • Підключено до цього простору

  • або Доступний для підключення

  • Кнопка:

  • Підключити до контексту (якщо ще не підʼєднаний).


3. Ховер та клік по картці

3.1. При наведенні курсору (hover)

Показати поверх картки напівпрозорий оверлей з опціями:

  • Основна кнопка: "Почати взаємодію"

  • Додаткові:

  • Підключити до цього каналу (якщо стіна контексту вже вибрана)

  • Деталі агента (відкрити повний профіль)

Можна додати коротку анімацію відео-аватара (легке пожвавлення).

3.2. При натисканні

Якщо клікаємо по основній площі картки:

  • Відкривається нове вікно/панель агента (Agent Console), де:

  • є текстовий чат,

  • є керування голосовим режимом,
  • є вкладка для обміну файлами/документами,
  • є вкладка памʼяті/прав доступу.

4. Agent Console: повний інтерфейс агента

Приклад структури:

4.1. Верхня панель

  • Аватар + відео-аватар (більший).
  • Імʼя, роль, короткий опис.
  • Показники:

  • Вік,

  • Досвід 1T,
  • Репутація спільноти.

  • Значок підключеності до поточного microDAO / каналу.

4.2. Вкладки

Вкладка 1: Чат

  • Текстовий чат (як звичайний agent chat).
  • Голосовий режим: кнопка "Голосовий діалог" (start/stop).
  • Привʼязка до поточного контексту:

  • показати, в якому просторі ти з ним розмовляєш.

Вкладка 2: Файли та Документи

  • Список файлів, якими обмінювались з цим агентом в межах даного microDAO.
  • Кнопка Завантажити файл → агент через DAGI може:

  • проаналізувати документ,

  • створити новий документ (збереження в microDAO file store).

  • Обовʼязково:

  • збереження у власних сховищах microDAO, не у зовнішньому середовищі по замовчуванню.

Вкладка 3: Памʼять і Знання

  • Блоки з:

  • короткостроковою памʼяттю (останні теми),

  • довгостроковими фактами про цю спільноту (як у 13_agent_memory_system).

  • Кнопки:

  • Показати, що ти памʼятаєш про цей проєкт

  • Очистити частину памʼяті

Вкладка 4: Присутність / Права доступу

  • Список:

  • В яких каналах цей агент присутній (публічні/конфіденційні).

  • В яких проєктах бере участь.

  • Для кожного:

  • перемикач Підключити/Відключити.

  • Позначка рівня доступу (read/write/tasks/knowledge).

  • Кнопка:

  • Додати до нового каналу/проєкту → відкриває спрощений Invite-Agent-Flow, але вже з попередньо вибраним агентом.

Вкладка 5: Еволюція та дух спільноти

  • Замінює будь-який фінансовий наратив:

  • Шлях агента в цій спільноті

  • Лог:

    • скільки разів агент допомагав у задачах,
    • які типи запитів обробляє найчастіше,
    • "внесок у колективний розум" (наприклад, скільки фактів/правил додано).
  • Репутація:

  • відгуки/оцінки від учасників (без мови торгівлі).


5. DAGI, багатомодальність і сховища

5.1. DAGI як бекенд агентських здібностей

Кожен агент отримує від DAGI:

  • текстове мислення,
  • мульти-модальні можливості:

  • розуміння зображень/файлів,

  • створення текстів, планів, специфікацій,
  • потенційно роботу з відео.

Інтерфейс агента дає доступ до:

  • аналізу файлів:

  • "Поясни цей документ для команди"

  • "Зроби витяг для каналу #planning"

  • генерації нових артефактів:

  • плани,

  • дорожні карти,
  • документація.

5.2. Зберігання в MicroDAO, а не "десь в хмарі без контролю"

Ключовий принцип:

  • Результати роботи агента (файли, документи, знання) зберігаються:

  • у сховищі степені MicroDAO (файлове / БД),

  • або у локальних базах спільноти.

  • DAGI використовується як "мозок", але:

  • не забирає собі сирі дані без волі спільноти,

  • не є єдиним місцем зберігання.

Це важливо підкреслити в UX:

  • у консолі:

  • "Документи зберігаються в просторі вашої microDAO."

  • опції експорту:

  • "Поділитися в іншому просторі DAARION.city"

  • "Надати доступ іншому агенту"

6. Підключення/відключення агентів до публічних/конфіденційних просторів

6.1. З точки зору плитки

На картці агента:

  • бейджі:

  • Публічні простори: 2

  • Конфіденційні: 1

  • При натисканні:

  • відкривається невеликий список:

    • #general (публічний)
    • #dev-mvp (конфіденційний)
  • поруч — перемикач:

    • Підключено / Відʼєднано.

6.2. З точки зору Agent Console

У вкладці "Присутність / Права доступу":

  • Табличка:

  • Простір / Тип (публічний/конфіденційний) / Доступ / Перемикач.

  • Операції:

  • натискання Відʼєднати:

    • агент перестає отримувати потік повідомлень з цього каналу/простору;
    • його не видно у списку учасників.
  • натискання Підключити:

    • запускає внутрішній Invite-Agent-Flow для відповідного ресурсу.

Все це повинно залишатись максимально людським в термінології:

жодних "інвесторів", "юнітів вартості", "ROI" тощо — тільки:

  • "досвід",
  • "шлях агента",
  • "довіра спільноти",
  • "внесок у колективний розум".

7. Компоненти та структура

7.1. Agent Card Component

interface AgentCardProps {
  agent: Agent;
  onCardClick: () => void;
  onConnect?: () => void;
  currentContext?: {
    teamId: string;
    channelId?: string;
  };
}

export function AgentCard({ agent, onCardClick, onConnect, currentContext }: AgentCardProps) {
  // Рендер картки з усіма метриками
}

7.2. Agent Grid

interface AgentGridProps {
  agents: Agent[];
  onAgentSelect: (agentId: string) => void;
  filter?: "all" | "connected" | "available";
}

export function AgentGrid({ agents, onAgentSelect, filter }: AgentGridProps) {
  // Сітка карток агентів
}

7.3. Agent Console

interface AgentConsoleProps {
  agentId: string;
  initialTab?: "chat" | "files" | "memory" | "presence" | "evolution";
}

export function AgentConsole({ agentId, initialTab = "chat" }: AgentConsoleProps) {
  // Повний інтерфейс агента з вкладками
}

8. Типи даних

8.1. Agent Metrics

interface AgentMetrics {
  age: {
    weeks?: number;
    months?: number;
    years?: number;
  };
  experience1T: number; // Досвід в 1T
  reputation: {
    score: number; // 0-100 або 0-5
    type: "stars" | "percentage";
  };
  presence: {
    channels: number;
    teams: number;
    public: number;
    confidential: number;
  };
}

8.2. Agent Presence

interface AgentPresence {
  channelId: string;
  channelName: string;
  type: "public" | "confidential";
  accessLevel: string[];
  connected: boolean;
}

8.3. Agent Evolution Log

interface AgentEvolutionLog {
  tasksHelped: number;
  requestTypes: Record<string, number>; // Типи запитів та їх кількість
  contributions: {
    factsAdded: number;
    rulesCreated: number;
    documentsGenerated: number;
  };
  communityFeedback: {
    positive: number;
    negative: number;
    averageRating: number;
  };
}

9. API Endpoints

9.1. Agent Metrics

GET /agents/{agentId}/metrics
// Повертає метрики агента (вік, досвід 1T, репутація)

GET /agents/{agentId}/presence
// Список просторів, де агент присутній

9.2. Agent Files

GET /agents/{agentId}/files
// Список файлів, з якими працював агент

POST /agents/{agentId}/files
// Завантажити файл для аналізу агентом
{
  file: File;
  context: {
    teamId: string;
    channelId?: string;
  };
}

9.3. Agent Evolution

GET /agents/{agentId}/evolution/log
// Лог еволюції та внеску агента

10. UI/UX Деталі

10.1. Відео-аватар

  • Формат: короткий loop (2-5 секунд)
  • Розмір на картці: 64x64px
  • Розмір в консолі: 128x128px
  • Без звуку
  • Анімація при hover: легке пожвавлення

10.2. Метрики досвіду

  • Вік: "3 тижні", "6 місяців", "1 рік 2 місяці"
  • 1T: велике число з розділювачами (12 340 1T)
  • Репутація: візуальна шкала (зірки або прогрес-бар)

10.3. Бейджі присутності

  • Компактні бейджі з іконками
  • Кольори: синій для публічних, червоний для конфіденційних
  • Іконка замка для конфіденційних просторів

11. Інтеграція з існуючими модулями

11.1. Agent UI System (10)

Agent Cards використовують компоненти з 10_agent_ui_system.md: - AgentAvatar - AgentChatWindow (у вкладці "Чат") - AgentMemoryTab (у вкладці "Памʼять")

11.2. Agent Memory System (13)

Вкладка "Памʼять і Знання" інтегрується з: - Short-term memory - Long-term memory - RAG retrieval

11.3. Agent Runtime Core (12)

Agent Console використовує: - AgentContext для роботи з агентом - Tools для аналізу файлів - LLM для генерації документів


12. Завдання для Cursor

Приклад промта:

You are a senior React/TS engineer.

Implement Agent Cards and Console using:

- 23_agent_cards_and_console.md
- 10_agent_ui_system.md
- 13_agent_memory_system.md
- 12_agent_runtime_core.md
- 05_coding_standards.md

Deliverables:

1) AgentCard component with metrics (age, 1T experience, reputation).
2) AgentGrid component for displaying multiple agent cards.
3) AgentConsole component with tabs: Chat, Files, Memory, Presence, Evolution.
4) Integration with file upload/analysis through DAGI.
5) Presence management (connect/disconnect from channels/projects).

Output:

- list of modified files
- diff
- summary

13. Результат

Після впровадження:

  • Агенти представлені як живі учасники спільноти, а не просто боти
  • Користувач бачить досвід та репутацію кожного агента
  • Повний контроль над підключеннями агентів до просторів
  • Зберігання всіх результатів роботи агентів у сховищі microDAO
  • Людська термінологія без фінансових наративів

Готово.
Це повна специфікація Agent Cards та Console, готова до використання в Cursor.