docs: expand lint scope batch47 (2 files)
This commit is contained in:
@@ -9,7 +9,7 @@ Integrations & Bridges Agent — це модуль, який забезпечу
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 1. Призначення
|
## 1. Призначення
|
||||||
|
|
||||||
Bridges Agent виконує функції:
|
Bridges Agent виконує функції:
|
||||||
|
|
||||||
@@ -25,7 +25,7 @@ Bridges Agent виконує функції:
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 2. Види інтеграцій
|
## 2. Види інтеграцій
|
||||||
|
|
||||||
### 2.1. Месенджери та комунікаційні сервіси
|
### 2.1. Месенджери та комунікаційні сервіси
|
||||||
|
|
||||||
@@ -65,7 +65,7 @@ Bridges Agent виконує функції:
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 3. Агенти інтеграцій
|
## 3. Агенти інтеграцій
|
||||||
|
|
||||||
Модуль складається із під-агентів:
|
Модуль складається із під-агентів:
|
||||||
|
|
||||||
@@ -102,7 +102,7 @@ Bridges Agent виконує функції:
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 4. Модель інтеграції
|
## 4. Модель інтеграції
|
||||||
|
|
||||||
### 4.1. Таблиця інтеграцій
|
### 4.1. Таблиця інтеграцій
|
||||||
|
|
||||||
@@ -119,7 +119,7 @@ Bridges Agent виконує функції:
|
|||||||
|
|
||||||
Всі зовнішні події конвертуються у універсальний формат:
|
Всі зовнішні події конвертуються у універсальний формат:
|
||||||
|
|
||||||
```
|
```text
|
||||||
event: {
|
event: {
|
||||||
id,
|
id,
|
||||||
team_id,
|
team_id,
|
||||||
@@ -128,7 +128,7 @@ type, // message | file | issue | event | calendar_update ...
|
|||||||
payload, // JSON
|
payload, // JSON
|
||||||
ts
|
ts
|
||||||
}
|
}
|
||||||
```
|
```text
|
||||||
|
|
||||||
Цей формат потім обробляється:
|
Цей формат потім обробляється:
|
||||||
|
|
||||||
@@ -140,7 +140,7 @@ ts
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 5. Основні сценарії
|
## 5. Основні сценарії
|
||||||
|
|
||||||
### 5.1. Telegram → microDAO
|
### 5.1. Telegram → microDAO
|
||||||
|
|
||||||
@@ -175,7 +175,7 @@ ts
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 6. Інтеграція з Runtime Core (12)
|
## 6. Інтеграція з Runtime Core (12)
|
||||||
|
|
||||||
Основний агент:
|
Основний агент:
|
||||||
|
|
||||||
@@ -196,13 +196,13 @@ const bridgesAgentConfig: AgentConfig = {
|
|||||||
"disable_integration"
|
"disable_integration"
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
```
|
```text
|
||||||
|
|
||||||
Адаптери — це окремі агенти з вузькими tools.
|
Адаптери — це окремі агенти з вузькими tools.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 7. Tools (для Runtime Core)
|
## 7. Tools (для Runtime Core)
|
||||||
|
|
||||||
### 7.1. register_integration
|
### 7.1. register_integration
|
||||||
|
|
||||||
@@ -230,36 +230,36 @@ const bridgesAgentConfig: AgentConfig = {
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 8. UI
|
## 8. UI
|
||||||
|
|
||||||
## 8.1. Sidebar → Інтеграції
|
## 8.1. Sidebar → Інтеграції
|
||||||
|
|
||||||
* список інтеграцій,
|
- список інтеграцій,
|
||||||
* кнопка "Підключити інтеграцію".
|
- кнопка "Підключити інтеграцію".
|
||||||
|
|
||||||
## 8.2. Модалка підключення інтеграції
|
## 8.2. Модалка підключення інтеграції
|
||||||
|
|
||||||
* вибір сервісу: Telegram / Email / Calendar / GitHub / Custom API,
|
- вибір сервісу: Telegram / Email / Calendar / GitHub / Custom API,
|
||||||
* ввод даних підключення,
|
- ввод даних підключення,
|
||||||
* тестування підключення,
|
- тестування підключення,
|
||||||
* збереження.
|
- збереження.
|
||||||
|
|
||||||
## 8.3. Профіль інтеграції
|
## 8.3. Профіль інтеграції
|
||||||
|
|
||||||
* історія подій,
|
- історія подій,
|
||||||
* статус,
|
- статус,
|
||||||
* налаштування,
|
- налаштування,
|
||||||
* кнопка "Вимкнути".
|
- кнопка "Вимкнути".
|
||||||
|
|
||||||
## 8.4. Cross-microDAO панель
|
## 8.4. Cross-microDAO панель
|
||||||
|
|
||||||
* список підключених DAO,
|
- список підключених DAO,
|
||||||
* права та контексти,
|
- права та контексти,
|
||||||
* статуси синхронізації.
|
- статуси синхронізації.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 9. API
|
## 9. API
|
||||||
|
|
||||||
### Інтеграції
|
### Інтеграції
|
||||||
|
|
||||||
@@ -280,9 +280,9 @@ const bridgesAgentConfig: AgentConfig = {
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 10. Інструкції для Cursor
|
## 10. Інструкції для Cursor
|
||||||
|
|
||||||
```
|
```text
|
||||||
Implement the Integrations & Bridges Agent using:
|
Implement the Integrations & Bridges Agent using:
|
||||||
|
|
||||||
- 20_integrations_bridges_agent.md
|
- 20_integrations_bridges_agent.md
|
||||||
@@ -329,18 +329,17 @@ Output:
|
|||||||
- list of modified files
|
- list of modified files
|
||||||
- diff
|
- diff
|
||||||
- summary
|
- summary
|
||||||
```
|
```text
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 11. Результат
|
## 11. Результат
|
||||||
|
|
||||||
Після впровадження:
|
Після впровадження:
|
||||||
|
|
||||||
* microDAO стає мережевим вузлом,
|
- microDAO стає мережевим вузлом,
|
||||||
* агенти можуть діяти в кількох просторах,
|
- агенти можуть діяти в кількох просторах,
|
||||||
* знання й події можуть перетікати між DAO,
|
- знання й події можуть перетікати між DAO,
|
||||||
* зовнішні інструменти інтегруються легко та безпечно,
|
- зовнішні інструменти інтегруються легко та безпечно,
|
||||||
* DAARION.city отримує основу для єдиного агентського всесвіту.
|
- DAARION.city отримує основу для єдиного агентського всесвіту.
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# Task 1 — UI-Agents-List (People / Agents / Robots панель)
|
## Task 1 — UI-Agents-List (People / Agents / Robots панель)
|
||||||
|
|
||||||
## Мета
|
## Мета
|
||||||
|
|
||||||
@@ -18,62 +18,62 @@
|
|||||||
|
|
||||||
### 1. Розташування
|
### 1. Розташування
|
||||||
|
|
||||||
* Лівий сайдбар, нижче/поруч з блоком "Простори (microDAO)".
|
- Лівий сайдбар, нижче/поруч з блоком "Простори (microDAO)".
|
||||||
* Заголовок: `Учасники`.
|
- Заголовок: `Учасники`.
|
||||||
* Вкладки або груповані секції:
|
- Вкладки або груповані секції:
|
||||||
|
|
||||||
* `Люди`
|
- `Люди`
|
||||||
* `Агенти`
|
- `Агенти`
|
||||||
* `Роботи` (поки список порожній, з текстом "Скоро").
|
- `Роботи` (поки список порожній, з текстом "Скоро").
|
||||||
|
|
||||||
### 2. Дані
|
### 2. Дані
|
||||||
|
|
||||||
* People:
|
- People:
|
||||||
|
|
||||||
* `id`, `display_name`, `avatar_url`, `online_status`.
|
- `id`, `display_name`, `avatar_url`, `online_status`.
|
||||||
|
|
||||||
* Agents:
|
- Agents:
|
||||||
|
|
||||||
* `id`, `name`, `role`, `avatar`, maybe `type` (system/custom).
|
- `id`, `name`, `role`, `avatar`, maybe `type` (system/custom).
|
||||||
|
|
||||||
* Robots:
|
- Robots:
|
||||||
|
|
||||||
* поки просто статичний текст: "Роботи поки не під'єднані".
|
- поки просто статичний текст: "Роботи поки не під'єднані".
|
||||||
|
|
||||||
На бекенді: можна зробити:
|
На бекенді: можна зробити:
|
||||||
|
|
||||||
* `GET /participants?team_id=...` → `{ people: [...], agents: [...] }`
|
- `GET /participants?team_id=...` → `{ people: [...], agents: [...] }`
|
||||||
або окремі запити `GET /members`, `GET /agents`.
|
або окремі запити `GET /members`, `GET /agents`.
|
||||||
|
|
||||||
### 3. UI-поведінка
|
### 3. UI-поведінка
|
||||||
|
|
||||||
* Клік по Людині:
|
- Клік по Людині:
|
||||||
|
|
||||||
* відкриває DM-чат `/t/:teamId/dm/:userId`.
|
- відкриває DM-чат `/t/:teamId/dm/:userId`.
|
||||||
|
|
||||||
* Клік по Агенту:
|
- Клік по Агенту:
|
||||||
|
|
||||||
* відкриває сторінку агента `/t/:teamId/agent/:agentId`
|
- відкриває сторінку агента `/t/:teamId/agent/:agentId`
|
||||||
або агент-чат.
|
або агент-чат.
|
||||||
|
|
||||||
* Список скролиться, якщо елементів багато.
|
- Список скролиться, якщо елементів багато.
|
||||||
|
|
||||||
### 4. Інтеграція з існуючим кодом
|
### 4. Інтеграція з існуючим кодом
|
||||||
|
|
||||||
* Використати загальні компоненти `Sidebar`, `Avatar`, `ListItem`.
|
- Використати загальні компоненти `Sidebar`, `Avatar`, `ListItem`.
|
||||||
* Типи/інтерфейси привести до стандартів з `05_coding_standards.md`.
|
- Типи/інтерфейси привести до стандартів з `05_coding_standards.md`.
|
||||||
|
|
||||||
## Acceptance Criteria
|
## Acceptance Criteria
|
||||||
|
|
||||||
* У лівому сайдбарі є блок "Учасники" з секціями `Люди`, `Агенти`, `Роботи`.
|
- У лівому сайдбарі є блок "Учасники" з секціями `Люди`, `Агенти`, `Роботи`.
|
||||||
* Для `Людей` і `Агентів` рендеряться реальні дані з API (або mock, якщо API ще нема).
|
- Для `Людей` і `Агентів` рендеряться реальні дані з API (або mock, якщо API ще нема).
|
||||||
* Клік по Людині відкриває приватний чат (навіть якщо поки stub).
|
- Клік по Людині відкриває приватний чат (навіть якщо поки stub).
|
||||||
* Клік по Агенту відкриває сторінку/чат агента.
|
- Клік по Агенту відкриває сторінку/чат агента.
|
||||||
* "Роботи" відображаються як порожній список з плейсхолдером.
|
- "Роботи" відображаються як порожній список з плейсхолдером.
|
||||||
|
|
||||||
## Приклад промта для Cursor
|
## Приклад промта для Cursor
|
||||||
|
|
||||||
```
|
```text
|
||||||
Implement the Participants panel (People / Agents / Robots) in the left sidebar using:
|
Implement the Participants panel (People / Agents / Robots) in the left sidebar using:
|
||||||
|
|
||||||
- 21_agent_only_interface.md
|
- 21_agent_only_interface.md
|
||||||
@@ -88,7 +88,7 @@ Deliverables:
|
|||||||
- Click on an Agent opens `/t/:teamId/agent/:agentId`.
|
- Click on an Agent opens `/t/:teamId/agent/:agentId`.
|
||||||
|
|
||||||
Output: list of files + diff + summary.
|
Output: list of files + diff + summary.
|
||||||
```
|
```text
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -102,65 +102,65 @@ Output: list of files + diff + summary.
|
|||||||
|
|
||||||
### 1. Де викликається
|
### 1. Де викликається
|
||||||
|
|
||||||
* У header каналу/чату — кнопка `+ Додати учасника`.
|
- У header каналу/чату — кнопка `+ Додати учасника`.
|
||||||
* Доступна тільки для користувача з правами `admin`/`owner` (поки можна не перевіряти, просто буде кнопка).
|
- Доступна тільки для користувача з правами `admin`/`owner` (поки можна не перевіряти, просто буде кнопка).
|
||||||
|
|
||||||
### 2. Модалка
|
### 2. Модалка
|
||||||
|
|
||||||
* Заголовок: "Додати учасника".
|
- Заголовок: "Додати учасника".
|
||||||
* Tabs:
|
- Tabs:
|
||||||
|
|
||||||
* `Люди`
|
- `Люди`
|
||||||
* `Агенти`
|
- `Агенти`
|
||||||
* Із них нас цікавить вкладка `Агенти`.
|
- Із них нас цікавить вкладка `Агенти`.
|
||||||
|
|
||||||
### 3. Вкладка "Агенти"
|
### 3. Вкладка "Агенти"
|
||||||
|
|
||||||
* Список доступних агентів з пошуком.
|
- Список доступних агентів з пошуком.
|
||||||
* По кліку на агента або чекбоксом обираємо 1–N агентів.
|
- По кліку на агента або чекбоксом обираємо 1–N агентів.
|
||||||
|
|
||||||
### 4. Налаштування прав
|
### 4. Налаштування прав
|
||||||
|
|
||||||
* Секція "Права в цьому каналі":
|
- Секція "Права в цьому каналі":
|
||||||
|
|
||||||
* `[ ] Читати`
|
- `[ ] Читати`
|
||||||
* `[ ] Писати`
|
- `[ ] Писати`
|
||||||
* `[ ] Створювати задачі / follow-ups`
|
- `[ ] Створювати задачі / follow-ups`
|
||||||
* За замовчуванням: `Читати` увімкнено, інші вимкнено.
|
- За замовчуванням: `Читати` увімкнено, інші вимкнено.
|
||||||
|
|
||||||
### 5. API / Entitlements
|
### 5. API / Entitlements
|
||||||
|
|
||||||
* On Submit:
|
- On Submit:
|
||||||
|
|
||||||
* `POST /entitlements` (або аналог) із даними:
|
- `POST /entitlements` (або аналог) із даними:
|
||||||
|
|
||||||
* `agent_id`
|
- `agent_id`
|
||||||
* `resource_kind: "channel"`
|
- `resource_kind: "channel"`
|
||||||
* `resource_id: channelId`
|
- `resource_id: channelId`
|
||||||
* `scopes: ["read", "write", "tasks"]` (залежить від чекбоксів)
|
- `scopes: ["read", "write", "tasks"]` (залежить від чекбоксів)
|
||||||
|
|
||||||
* Web3 Stub:
|
- Web3 Stub:
|
||||||
|
|
||||||
* В коді робимо виклик функції `governance.issueAccessToken(...)` або логування TODO;
|
- В коді робимо виклик функції `governance.issueAccessToken(...)` або логування TODO;
|
||||||
* Реальної транзакції поки не робимо.
|
- Реальної транзакції поки не робимо.
|
||||||
|
|
||||||
### 6. UX
|
### 6. UX
|
||||||
|
|
||||||
* Після успіху модалка закривається.
|
- Після успіху модалка закривається.
|
||||||
* У хедері каналу в списку учасників зʼявляється новий агент.
|
- У хедері каналу в списку учасників зʼявляється новий агент.
|
||||||
|
|
||||||
## Acceptance Criteria
|
## Acceptance Criteria
|
||||||
|
|
||||||
* У кожному каналі/чаті є кнопка "Додати учасника".
|
- У кожному каналі/чаті є кнопка "Додати учасника".
|
||||||
* В модалці є вкладка "Агенти" зі списком наявних агентів.
|
- В модалці є вкладка "Агенти" зі списком наявних агентів.
|
||||||
* Можна обрати агента, налаштувати права, натиснути "Запросити".
|
- Можна обрати агента, налаштувати права, натиснути "Запросити".
|
||||||
* На бекенді зберігаються entitlements (навіть якщо прості JSON у БД).
|
- На бекенді зберігаються entitlements (навіть якщо прості JSON у БД).
|
||||||
* Після додавання агент показується як учасник каналу.
|
- Після додавання агент показується як учасник каналу.
|
||||||
* В коді є очевидний Stub для майбутньої web3 інтеграції.
|
- В коді є очевидний Stub для майбутньої web3 інтеграції.
|
||||||
|
|
||||||
## Приклад промта для Cursor
|
## Приклад промта для Cursor
|
||||||
|
|
||||||
```
|
```text
|
||||||
Implement the "Invite Agent" flow for channels using:
|
Implement the "Invite Agent" flow for channels using:
|
||||||
|
|
||||||
- 21_agent_only_interface.md
|
- 21_agent_only_interface.md
|
||||||
@@ -176,7 +176,7 @@ Deliverables:
|
|||||||
4) POST entitlements call to store agent-channel permissions (web3 as stub hook).
|
4) POST entitlements call to store agent-channel permissions (web3 as stub hook).
|
||||||
|
|
||||||
Output: list of files + diff + summary.
|
Output: list of files + diff + summary.
|
||||||
```
|
```text
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -190,64 +190,64 @@ Output: list of files + diff + summary.
|
|||||||
|
|
||||||
### 1. Ресурси для MVP
|
### 1. Ресурси для MVP
|
||||||
|
|
||||||
* Почати з `Проєктів` (Projects Agent з документу 15).
|
- Почати з `Проєктів` (Projects Agent з документу 15).
|
||||||
* Інтерфейс у правому сайдбарі для активного контексту:
|
- Інтерфейс у правому сайдбарі для активного контексту:
|
||||||
|
|
||||||
* розділ "Проєкти цього контексту",
|
- розділ "Проєкти цього контексту",
|
||||||
* кожен проєкт має кнопку `⋯` → `Поділитися`.
|
- кожен проєкт має кнопку `⋯` → `Поділитися`.
|
||||||
|
|
||||||
### 2. Модалка "Поділитися проєктом"
|
### 2. Модалка "Поділитися проєктом"
|
||||||
|
|
||||||
* Заголовок: "Поділитися проєктом".
|
- Заголовок: "Поділитися проєктом".
|
||||||
* Tabs:
|
- Tabs:
|
||||||
|
|
||||||
* `Люди`
|
- `Люди`
|
||||||
* `Агенти`
|
- `Агенти`
|
||||||
* Список одержувачів з пошуком.
|
- Список одержувачів з пошуком.
|
||||||
|
|
||||||
### 3. Права доступу
|
### 3. Права доступу
|
||||||
|
|
||||||
* Радіо-кнопки або чекбокси:
|
- Радіо-кнопки або чекбокси:
|
||||||
|
|
||||||
* `Тільки читати`
|
- `Тільки читати`
|
||||||
* `Читати і оновлювати задачі`
|
- `Читати і оновлювати задачі`
|
||||||
* `Адмініструвати проєкт`
|
- `Адмініструвати проєкт`
|
||||||
* Для MVP:
|
- Для MVP:
|
||||||
|
|
||||||
* мапимо на `["read"]`, `["read","write"]`, `["admin"]`.
|
- мапимо на `["read"]`, `["read","write"]`, `["admin"]`.
|
||||||
|
|
||||||
### 4. API / Entitlements
|
### 4. API / Entitlements
|
||||||
|
|
||||||
* `POST /entitlements`:
|
- `POST /entitlements`:
|
||||||
|
|
||||||
* `resource_kind: "project"`
|
- `resource_kind: "project"`
|
||||||
* `resource_id: projectId`
|
- `resource_id: projectId`
|
||||||
* `subject_kind: "user" | "agent"`
|
- `subject_kind: "user" | "agent"`
|
||||||
* `subject_id: ...`
|
- `subject_id: ...`
|
||||||
* `scopes: [...]`
|
- `scopes: [...]`
|
||||||
|
|
||||||
* Web3 Stub:
|
- Web3 Stub:
|
||||||
|
|
||||||
* так само, як у Task 2 — залишити хук/функцію для майбутньої транзакції.
|
- так само, як у Task 2 — залишити хук/функцію для майбутньої транзакції.
|
||||||
|
|
||||||
### 5. Відображення
|
### 5. Відображення
|
||||||
|
|
||||||
* У правому сайдбарі для вибраного проєкту:
|
- У правому сайдбарі для вибраного проєкту:
|
||||||
|
|
||||||
* короткий список: хто має доступ (іконки + тип: людина/агент).
|
- короткий список: хто має доступ (іконки + тип: людина/агент).
|
||||||
* посилання "Керувати доступами" (можна виводити ту ж саму модалку).
|
- посилання "Керувати доступами" (можна виводити ту ж саму модалку).
|
||||||
|
|
||||||
## Acceptance Criteria
|
## Acceptance Criteria
|
||||||
|
|
||||||
* У правому сайдбарі є список проєктів для контексту (навіть якщо один).
|
- У правому сайдбарі є список проєктів для контексту (навіть якщо один).
|
||||||
* Для кожного проєкту доступна дія "Поділитися".
|
- Для кожного проєкту доступна дія "Поділитися".
|
||||||
* Модалка дозволяє вибрати людей/агентів і рівень доступу.
|
- Модалка дозволяє вибрати людей/агентів і рівень доступу.
|
||||||
* Після підтвердження зʼявляються записи entitlements.
|
- Після підтвердження зʼявляються записи entitlements.
|
||||||
* У правій панелі видно, що проєкт поділено з конкретними субʼєктами.
|
- У правій панелі видно, що проєкт поділено з конкретними субʼєктами.
|
||||||
|
|
||||||
## Приклад промта для Cursor
|
## Приклад промта для Cursor
|
||||||
|
|
||||||
```
|
```text
|
||||||
Implement the "Share Project" flow as the first Resource Sharing feature using:
|
Implement the "Share Project" flow as the first Resource Sharing feature using:
|
||||||
|
|
||||||
- 21_agent_only_interface.md
|
- 21_agent_only_interface.md
|
||||||
@@ -264,7 +264,7 @@ Deliverables:
|
|||||||
5) Show who has access in the sidebar (avatars + type).
|
5) Show who has access in the sidebar (avatars + type).
|
||||||
|
|
||||||
Output: list of files + diff + summary.
|
Output: list of files + diff + summary.
|
||||||
```
|
```text
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -278,63 +278,63 @@ Output: list of files + diff + summary.
|
|||||||
|
|
||||||
### 1. Новий маршрут
|
### 1. Новий маршрут
|
||||||
|
|
||||||
* `GET /t/:teamId/home` (frontend route).
|
- `GET /t/:teamId/home` (frontend route).
|
||||||
* Відображає `AgentHubPage`.
|
- Відображає `AgentHubPage`.
|
||||||
|
|
||||||
### 2. AgentHubPage структура
|
### 2. AgentHubPage структура
|
||||||
|
|
||||||
* Верх:
|
- Верх:
|
||||||
|
|
||||||
* заголовок: `microDAO: {team.name}`
|
- заголовок: `microDAO: {team.name}`
|
||||||
* короткі віджети (можуть бути stub):
|
- короткі віджети (можуть бути stub):
|
||||||
|
|
||||||
* "Учасники: X людей, Y агентів"
|
- "Учасники: X людей, Y агентів"
|
||||||
* "Активні проєкти: N"
|
- "Активні проєкти: N"
|
||||||
|
|
||||||
* Центр:
|
- Центр:
|
||||||
|
|
||||||
* чат з головним агентом (Team Assistant або спеціальний OS Agent):
|
- чат з головним агентом (Team Assistant або спеціальний OS Agent):
|
||||||
|
|
||||||
* використовує вже існуючий `AgentChatWindow`.
|
- використовує вже існуючий `AgentChatWindow`.
|
||||||
* агент_id береться з конфіг (наприклад, "team_assistant" для цієї команди).
|
- агент_id береться з конфіг (наприклад, "team_assistant" для цієї команди).
|
||||||
|
|
||||||
* Праворуч:
|
- Праворуч:
|
||||||
|
|
||||||
* контекст (список проєктів / каналів / ресурсів — поки можна stub).
|
- контекст (список проєктів / каналів / ресурсів — поки можна stub).
|
||||||
|
|
||||||
### 3. Поведінка чату
|
### 3. Поведінка чату
|
||||||
|
|
||||||
* Перший запуск:
|
- Перший запуск:
|
||||||
|
|
||||||
* агент вітається, якщо немає історії:
|
- агент вітається, якщо немає історії:
|
||||||
|
|
||||||
> "Привіт, це твій Agent Hub. Я допоможу керувати твоєю microDAO."
|
> "Привіт, це твій Agent Hub. Я допоможу керувати твоєю microDAO."
|
||||||
|
|
||||||
* Далі:
|
- Далі:
|
||||||
|
|
||||||
* користувач може написати запит, наприклад:
|
- користувач може написати запит, наприклад:
|
||||||
|
|
||||||
* "Покажи активні проєкти"
|
- "Покажи активні проєкти"
|
||||||
* "Відкрий канал #dev-mvp"
|
- "Відкрий канал #dev-mvp"
|
||||||
* "Хочу створити новий проєкт"
|
- "Хочу створити новий проєкт"
|
||||||
* Поки що можна зробити stub-відповіді, якщо Projects/Messenger Agents ще не реалізовані.
|
- Поки що можна зробити stub-відповіді, якщо Projects/Messenger Agents ще не реалізовані.
|
||||||
|
|
||||||
### 4. Навігація
|
### 4. Навігація
|
||||||
|
|
||||||
* Кнопка/посилання "Головна" у лівому сайдбарі веде на `/t/:teamId/home`.
|
- Кнопка/посилання "Головна" у лівому сайдбарі веде на `/t/:teamId/home`.
|
||||||
* Після успішного онбордингу (з `08_agent_first_onboarding.md`) редірект також може йти на Agent Hub.
|
- Після успішного онбордингу (з `08_agent_first_onboarding.md`) редірект також може йти на Agent Hub.
|
||||||
|
|
||||||
## Acceptance Criteria
|
## Acceptance Criteria
|
||||||
|
|
||||||
* Існує маршрут `/t/:teamId/home`, який рендерить Agent Hub.
|
- Існує маршрут `/t/:teamId/home`, який рендерить Agent Hub.
|
||||||
* У центрі — робочий чат з Team Assistant (через `/agents/{id}/chat` endpoint).
|
- У центрі — робочий чат з Team Assistant (через `/agents/{id}/chat` endpoint).
|
||||||
* У сайдбарі є посилання "Головна" / "Agent Hub", що веде на цей екран.
|
- У сайдбарі є посилання "Головна" / "Agent Hub", що веде на цей екран.
|
||||||
* Якщо історії немає — агент показує вітальний меседж.
|
- Якщо історії немає — агент показує вітальний меседж.
|
||||||
* Екран виглядає як "головна консоль" microDAO, а не просто черговий канал.
|
- Екран виглядає як "головна консоль" microDAO, а не просто черговий канал.
|
||||||
|
|
||||||
## Приклад промта для Cursor
|
## Приклад промта для Cursor
|
||||||
|
|
||||||
```
|
```text
|
||||||
Implement the Agent Hub Home screen using:
|
Implement the Agent Hub Home screen using:
|
||||||
|
|
||||||
- 21_agent_only_interface.md
|
- 21_agent_only_interface.md
|
||||||
@@ -353,7 +353,7 @@ Deliverables:
|
|||||||
3) "Home / Agent Hub" entry in left sidebar that routes to `/t/:teamId/home`.
|
3) "Home / Agent Hub" entry in left sidebar that routes to `/t/:teamId/home`.
|
||||||
|
|
||||||
Output: list of files + diff + summary.
|
Output: list of files + diff + summary.
|
||||||
```
|
```text
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -409,4 +409,3 @@ Output: list of files + diff + summary.
|
|||||||
**Готово.**
|
**Готово.**
|
||||||
Це **структурований список задач для Agent-Only Interface**, готовий до використання в Cursor.
|
Це **структурований список задач для Agent-Only Interface**, готовий до використання в Cursor.
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -123,3 +123,5 @@ docs/cursor/10_agent_ui_system.md
|
|||||||
docs/cursor/16_followups_reminders_agent.md
|
docs/cursor/16_followups_reminders_agent.md
|
||||||
docs/cursor/05_coding_standards.md
|
docs/cursor/05_coding_standards.md
|
||||||
docs/cursor/19_notifications_attention_agent.md
|
docs/cursor/19_notifications_attention_agent.md
|
||||||
|
docs/cursor/20_integrations_bridges_agent.md
|
||||||
|
docs/cursor/22_agent_only_interface_tasks.md
|
||||||
|
|||||||
Reference in New Issue
Block a user