docs: expand lint scope batch53 (2 files)

This commit is contained in:
Apple
2026-02-16 07:50:40 -08:00
parent 4c92b1dded
commit 54bf8dc521
3 changed files with 156 additions and 202 deletions

View File

@@ -8,7 +8,7 @@
--- ---
# 1. Основні типи системних агентів ## 1. Основні типи системних агентів
MicroDAO має три фундаментальні типи агентів: MicroDAO має три фундаментальні типи агентів:
@@ -21,7 +21,7 @@ MicroDAO має три фундаментальні типи агентів:
--- ---
# 2. Особистий агент (Personal Agent) ## 2. Особистий агент (Personal Agent)
### 2.1. Призначення ### 2.1. Призначення
Особистий агент — це "внутрішній супутник" людини в екосистемі microDAO: Особистий агент — це "внутрішній супутник" людини в екосистемі microDAO:
@@ -58,25 +58,25 @@ operatorMode: {
schedule: "*/20 * * * *", // кожні 20 хвилин (приклад) schedule: "*/20 * * * *", // кожні 20 хвилин (приклад)
maxActionsPerHour: 10 maxActionsPerHour: 10
} }
``` ```text
--- ---
# 3. Спільний агент (Team/Shared Agent) ## 3. Спільний агент (Team/Shared Agent)
### 3.1. Призначення ### 3.1. Призначення
Це агенти: Це агенти:
* Team Assistant, - Team Assistant,
* Messenger Agent, - Messenger Agent,
* Projects Agent, - Projects Agent,
* Followups Agent, - Followups Agent,
* Memory Agent, - Memory Agent,
* Attention Agent, - Attention Agent,
* Knowledge Guide, - Knowledge Guide,
* Bridges Agent, - Bridges Agent,
* Governance Agent. - Governance Agent.
Вони працюють на рівні microDAO (колективний простір). Вони працюють на рівні microDAO (колективний простір).
@@ -84,11 +84,11 @@ operatorMode: {
Спільні агенти можуть отримувати доступ до: Спільні агенти можуть отримувати доступ до:
* каналів, - каналів,
* проектів, - проектів,
* документів Knowledge Space, - документів Knowledge Space,
* ритуалів узгодження, - ритуалів узгодження,
* Co-Memory microDAO. - Co-Memory microDAO.
Доступи обмежуються entitlements — кожен агент бачить лише те, що дозволено. Доступи обмежуються entitlements — кожен агент бачить лише те, що дозволено.
@@ -110,30 +110,29 @@ operatorMode: {
schedule: "0 * * * *", // щогодини schedule: "0 * * * *", // щогодини
maxActionsPerHour: 30 maxActionsPerHour: 30
} }
``` ```text
Операторські дії **завжди логуються** в Co-Memory. Операторські дії **завжди логуються** в Co-Memory.
--- ---
# 4. Protocol Agents: DAO Agent і Wallet Agent ## 4. Protocol Agents: DAO Agent і Wallet Agent
Ці агенти не є "учасниками" в комунікації, а швидше **протокольними модулями**. Ці агенти не є "учасниками" в комунікації, а швидше **протокольними модулями**.
--- ---
# 4.1. DAO Agent ## 4.1. DAO Agent
Роль: `"dao_protocol_agent"` Роль: `"dao_protocol_agent"`
### Призначення - **Призначення**
DAO Agent відповідає за: DAO Agent відповідає за:
* зв'язок із зовнішнім DAO-протоколом (якщо microDAO його має), - зв'язок із зовнішнім DAO-протоколом (якщо microDAO його має),
* синхронізацію правил із контрактами, - синхронізацію правил із контрактами,
* оновлення локальних правил на основі зовнішніх церемоній, - оновлення локальних правил на основі зовнішніх церемоній,
* відправку ритуалів узгодження в DAO-контракт (якщо дозволено). - відправку ритуалів узгодження в DAO-контракт (якщо дозволено).
### Інтерфейс (tools) ### Інтерфейс (tools)
@@ -144,7 +143,7 @@ tools: [
"submit_ritual_to_dao", "submit_ritual_to_dao",
"resolve_dao_result" "resolve_dao_result"
] ]
``` ```text
### Оператор-режим ### Оператор-режим
@@ -152,31 +151,30 @@ DAO Agent завжди працює **строго у командному ма
--- ---
# 4.2. Wallet Agent ## 4.2. Wallet Agent
Роль: `"wallet_interface_agent"` Роль: `"wallet_interface_agent"`
### Призначення - **Призначення**
Wallet Agent — це **інтерфейс** між microDAO/агентами та: Wallet Agent — це **інтерфейс** між microDAO/агентами та:
* криптографічним підписом, - криптографічним підписом,
* зовнішніми гаманцями користувачів, - зовнішніми гаманцями користувачів,
* фізичними ключами (Tangem-подібні), - фізичними ключами (Tangem-подібні),
* системою capability-доступів. - системою capability-доступів.
Wallet Agent **не зберігає приватні ключі**. Wallet Agent **не зберігає приватні ключі**.
Він: Він:
* формує пояснення: - формує пояснення:
* "що саме підписується", - "що саме підписується",
* "чому це потрібно", - "чому це потрібно",
* "які наслідки"; - "які наслідки";
* відправляє payload на зовнішній Signer; - відправляє payload на зовнішній Signer;
* отримує підписаний результат і повертає агенту, що ініціював дію. - отримує підписаний результат і повертає агенту, що ініціював дію.
### Tools ### Tools
@@ -187,11 +185,11 @@ tools: [
"verify_signature", "verify_signature",
"get_wallet_state" "get_wallet_state"
] ]
``` ```text
--- ---
# 5. Модель operatorMode ## 5. Модель operatorMode
Операторський режим є **частиною конфігурації кожного агента**. Операторський режим є **частиною конфігурації кожного агента**.
@@ -203,7 +201,7 @@ interface OperatorModeConfig {
schedule?: string; // CRON або natural language schedule?: string; // CRON або natural language
maxActionsPerHour?: number; maxActionsPerHour?: number;
} }
``` ```text
У `AgentConfig`: У `AgentConfig`:
@@ -212,14 +210,14 @@ interface AgentConfig {
... ...
operatorMode?: OperatorModeConfig; operatorMode?: OperatorModeConfig;
} }
``` ```text
### 5.1. Scopes ### 5.1. Scopes
* `"personal"` — особистий простір користувача; - `"personal"` — особистий простір користувача;
* `"team"` — командний рівень microDAO; - `"team"` — командний рівень microDAO;
* `"project"` — окремий проєкт; - `"project"` — окремий проєкт;
* `"channel"` — конкретний канал/чат. - `"channel"` — конкретний канал/чат.
### 5.2. Режими ### 5.2. Режими
@@ -247,89 +245,89 @@ interface AgentConfig {
--- ---
# 6. Модель системних агентів у БД ## 6. Модель системних агентів у БД
### Таблиця `system_agents` ### Таблиця `system_agents`
* id - id
* team_id - team_id
* type (`personal`, `team`, `protocol`) - type (`personal`, `team`, `protocol`)
* role - role
* operator_enabled - operator_enabled
* config_json (включає operatorMode) - config_json (включає operatorMode)
* created_at - created_at
### Таблиця `agent_permissions` ### Таблиця `agent_permissions`
* id - id
* agent_id - agent_id
* resource_kind - resource_kind
* resource_id - resource_id
* scopes (json array) - scopes (json array)
* created_at - created_at
### Таблиця `operator_logs` ### Таблиця `operator_logs`
* id - id
* agent_id - agent_id
* action - action
* payload_json - payload_json
* context - context
* created_at - created_at
--- ---
# 7. Інтеграція з доступами та ключами (Governance Agent) ## 7. Інтеграція з доступами та ключами (Governance Agent)
OperatorMode завжди працює у звʼязці з: OperatorMode завжди працює у звʼязці з:
* entitlements, - entitlements,
* symbolic keys, - symbolic keys,
* governance_policies. - governance_policies.
Наприклад: Наприклад:
* Personal Agent має ключ рівня `personal-scope`. - Personal Agent має ключ рівня `personal-scope`.
* Projects Agent має ключ `project-operator`. - Projects Agent має ключ `project-operator`.
* DAO Agent має ключ `protocol-access`, який Governance Agent може видати або анулювати. - DAO Agent має ключ `protocol-access`, який Governance Agent може видати або анулювати.
--- ---
# 8. UI-інтеграція ## 8. UI-інтеграція
### 8.1. Сторінка Агентів ### 8.1. Сторінка Агентів
У профілі агента: У профілі агента:
* показати блок **"Режим оператора"**: - показати блок **"Режим оператора"**:
* увімкнено/вимкнено, - увімкнено/вимкнено,
* дозволені дії, - дозволені дії,
* сфери дії, - сфери дії,
* розклад. - розклад.
### 8.2. Налаштування microDAO ### 8.2. Налаштування microDAO
Окремий розділ: Окремий розділ:
* "Системні агенти" - "Системні агенти"
* Personal Agent (індивідуальний) - Personal Agent (індивідуальний)
* Team Agents (список) - Team Agents (список)
* Protocol Agents - Protocol Agents
### 8.3. Журнал операторських дій ### 8.3. Журнал операторських дій
* список автоматичних дій агентів, - список автоматичних дій агентів,
* фільтри: агент → проєкт → тип дії. - фільтри: агент → проєкт → тип дії.
--- ---
# 9. Інструкції для Cursor ## 9. Інструкції для Cursor
Приклад: Приклад:
``` ```text
Implement Operator Modes & System Agents using: Implement Operator Modes & System Agents using:
- 22_operator_modes_and_system_agents.md - 22_operator_modes_and_system_agents.md
@@ -367,18 +365,17 @@ Output:
- list of files - list of files
- diff - diff
- summary - summary
``` ```text
--- ---
# 10. Результат ## 10. Результат
Після впровадження цього модуля: Після впровадження цього модуля:
* приватні агенти можуть працювати як персональні оператори; - приватні агенти можуть працювати як персональні оператори;
* командні агенти можуть працювати як "ритуальні організатори" microDAO; - командні агенти можуть працювати як "ритуальні організатори" microDAO;
* DAO Agent та Wallet Agent стають безпечними протокольними модулями; - DAO Agent та Wallet Agent стають безпечними протокольними модулями;
* усі дії мають чіткі межі, правила і логування; - усі дії мають чіткі межі, правила і логування;
* система стає самокерованою, але контрольованою через дух спільноти. - система стає самокерованою, але контрольованою через дух спільноти.

View File

@@ -1,6 +1,6 @@
# 34 — Internal Services Architecture (MicroDAO) # 34 — Internal Services Architecture (MicroDAO)
*Архітектура внутрішніх сервісів, їхні ролі, API, дані, залежності, взаємодія з PDP, Gateway, NATS, DB* Архітектура внутрішніх сервісів, їхні ролі, API, дані, залежності, взаємодія з PDP, Gateway, NATS, DB
--- ---
@@ -24,7 +24,7 @@
## 2. High-Level Service Landscape ## 2. High-Level Service Landscape
``` ```text
┌──────────────────────────┐ ┌──────────────────────────┐
│ API Gateway (PEP) │ │ API Gateway (PEP) │
└───────────────┬──────────┘ └───────────────┬──────────┘
@@ -32,7 +32,7 @@
┌──────────────────┴──────────────────┐ ┌──────────────────┴──────────────────┐
│ │ │ │
Public API Internal Service Mesh Public API Internal Service Mesh
``` ```text
Внутрішні сервіси: Внутрішні сервіси:
@@ -74,27 +74,25 @@
### 4.1 User & Team Service ### 4.1 User & Team Service
#### Відповідальність: - **Відповідальність**
- Users, teams, memberships. - Users, teams, memberships.
- Roles: Owner, Guardian, Member, Visitor. - Roles: Owner, Guardian, Member, Visitor.
- Viewer types: reader/commenter/contributor. - Viewer types: reader/commenter/contributor.
- Team mode: public/confidential. - Team mode: public/confidential.
#### Таблиці: - **Таблиці**
- `users` - `users`
- `teams` - `teams`
- `team_members` - `team_members`
#### API (internal): #### API (internal)
- `GET /internal/team/:id` - `GET /internal/team/:id`
- `POST /internal/team/create` - `POST /internal/team/create`
- `POST /internal/team/member/add` - `POST /internal/team/member/add`
- `POST /internal/team/member/remove` - `POST /internal/team/member/remove`
#### Події (NATS): #### Події (NATS)
- `team.member.joined` - `team.member.joined`
- `team.member.left` - `team.member.left`
@@ -103,27 +101,23 @@
### 4.2 Messaging Service ### 4.2 Messaging Service
#### Відповідальність: - **Відповідальність**
- Channels, messages, followups. - Channels, messages, followups.
- Co-memory embeddings. - Co-memory embeddings.
- Confidential mode enforcement (via Gateway). - Confidential mode enforcement (via Gateway).
#### Таблиці: - **Таблиці**
- `channels` - `channels`
- `messages` - `messages`
- `followups` - `followups`
- `comemory_items` - `comemory_items`
#### API: - **API**
- `POST /internal/message/send` - `POST /internal/message/send`
- `GET /internal/channel/:id/messages` - `GET /internal/channel/:id/messages`
- `POST /internal/comemory/index` - `POST /internal/comemory/index`
#### Події: - **Події**
- `chat.message.created` - `chat.message.created`
- `comemory.item.created` - `comemory.item.created`
@@ -131,17 +125,14 @@
### 4.3 Projects & Tasks Service ### 4.3 Projects & Tasks Service
#### Відповідальність: - **Відповідальність**
- Projects, tasks, workflow. - Projects, tasks, workflow.
#### Таблиці: - **Таблиці**
- `projects` - `projects`
- `tasks` - `tasks`
#### Події: - **Події**
- `project.created` - `project.created`
- `task.created` - `task.created`
- `task.updated` - `task.updated`
@@ -150,24 +141,20 @@
### 4.4 Agent Orchestrator ### 4.4 Agent Orchestrator
#### Відповідальність: - **Відповідальність**
- запуск приватних агентів; - запуск приватних агентів;
- трекінг `agent_runs`; - трекінг `agent_runs`;
- sandbox execution. - sandbox execution.
#### Таблиці: - **Таблиці**
- `agents` - `agents`
- `agent_runs` - `agent_runs`
#### Події: - **Події**
- `agent.run.started` - `agent.run.started`
- `agent.run.completed` - `agent.run.completed`
#### API: - **API**
- `POST /internal/agent/run` - `POST /internal/agent/run`
- `POST /internal/agent/finish` - `POST /internal/agent/finish`
- `GET /internal/agent/run/:id/status` - `GET /internal/agent/run/:id/status`
@@ -176,18 +163,17 @@
### 4.5 LLM Proxy Service ### 4.5 LLM Proxy Service
#### Завдання: #### Завдання
- централізований доступ до LLM (OpenAI / local models). - централізований доступ до LLM (OpenAI / local models).
- облік токенів. - облік токенів.
- нормалізація моделей. - нормалізація моделей.
#### API: - **API**
- `POST /internal/llm/chat` - `POST /internal/llm/chat`
- `POST /internal/llm/embeddings` - `POST /internal/llm/embeddings`
#### Event: #### Event
- `llm.tokens.used` - `llm.tokens.used`
@@ -195,20 +181,17 @@
### 4.6 Router / Planner (DAARWIZZ) ### 4.6 Router / Planner (DAARWIZZ)
#### Відповідальність: - **Відповідальність**
- run multi-agent routing pipeline; - run multi-agent routing pipeline;
- orchestration of tools; - orchestration of tools;
- intent recognition; - intent recognition;
- complex "flows". - complex "flows".
#### API: - **API**
- `POST /internal/router/route` - `POST /internal/router/route`
- `POST /internal/router/plan` - `POST /internal/router/plan`
#### Events: - **Events**
- `router.invoked` - `router.invoked`
- `router.completed` - `router.completed`
@@ -216,27 +199,23 @@
### 4.7 Wallet Service ### 4.7 Wallet Service
#### Відповідальність: - **Відповідальність**
- стейк RINGK; - стейк RINGK;
- генерація payout'ів; - генерація payout'ів;
- claim payout; - claim payout;
- зв'язок з блокчейном. - зв'язок з блокчейном.
#### Таблиці: - **Таблиці**
- `wallets` - `wallets`
- `staking_ringk` - `staking_ringk`
- `payouts` - `payouts`
#### API: - **API**
- `POST /internal/wallet/stake` - `POST /internal/wallet/stake`
- `POST /internal/wallet/payout/claim` - `POST /internal/wallet/payout/claim`
- `GET /internal/wallet/balance/:user` - `GET /internal/wallet/balance/:user`
#### Events: - **Events**
- `staking.locked` - `staking.locked`
- `payout.generated` - `payout.generated`
- `payout.claimed` - `payout.claimed`
@@ -245,43 +224,36 @@
### 4.8 RWA Inventory Service ### 4.8 RWA Inventory Service
#### Відповідальність: - **Відповідальність**
- облік energy/food/water/etc. - облік energy/food/water/etc.
- інтеграція з Embassy. - інтеграція з Embassy.
- оновлення RWA стоків. - оновлення RWA стоків.
#### Таблиці: - **Таблиці**
- `rwa_inventory` - `rwa_inventory`
#### Events: - **Events**
- `rwa.inventory.updated` - `rwa.inventory.updated`
--- ---
### 4.9 Embassy Gateway Service ### 4.9 Embassy Gateway Service
#### Відповідальність: - **Відповідальність**
- прийом підписаних webhook'ів від платформ (EnergyUnion, GREENFOOD). - прийом підписаних webhook'ів від платформ (EnergyUnion, GREENFOOD).
- HMAC перевірка. - HMAC перевірка.
- PDP авторизація (embassy keys). - PDP авторизація (embassy keys).
- генерація подій для NATS. - генерація подій для NATS.
#### Таблиці: - **Таблиці**
- `embassy_identities` - `embassy_identities`
- `embassy_webhooks` - `embassy_webhooks`
#### API: - **API**
- `POST /embassy/energy` - `POST /embassy/energy`
- `POST /embassy/rwa` - `POST /embassy/rwa`
#### Events: - **Events**
- `embassy.event.received` - `embassy.event.received`
- `embassy.energy.update` - `embassy.energy.update`
- `embassy.rwa.claim` - `embassy.rwa.claim`
@@ -290,53 +262,45 @@
### 4.10 Oracle Processor ### 4.10 Oracle Processor
#### Відповідальність: - **Відповідальність**
- обробка потоків енергетичних даних; - обробка потоків енергетичних даних;
- нормалізація; - нормалізація;
- створення `oracles`. - створення `oracles`.
#### Таблиці: - **Таблиці**
- `oracles` - `oracles`
#### Events: - **Events**
- `oracle.reading.published` - `oracle.reading.published`
--- ---
### 4.11 Governance Service ### 4.11 Governance Service
#### Відповідальність: - **Відповідальність**
- пропозиції, - пропозиції,
- голосування, - голосування,
- застосування політик, - застосування політик,
- оновлення bundles/caps/quotas. - оновлення bundles/caps/quotas.
#### Таблиці: - **Таблиці**
- `governance_policies` - `governance_policies`
#### Events: - **Events**
- `governance.policy.updated` - `governance.policy.updated`
--- ---
### 4.12 Capability Registry Service ### 4.12 Capability Registry Service
#### Відповідальність: - **Відповідальність**
- управління: - управління:
- capabilities, - capabilities,
- bundles, - bundles,
- bundle_caps, - bundle_caps,
- plan entitlements. - plan entitlements.
#### Таблиці: - **Таблиці**
- `capabilities` - `capabilities`
- `bundles` - `bundles`
- `bundle_caps` - `bundle_caps`
@@ -347,8 +311,7 @@
### 4.13 Usage Service ### 4.13 Usage Service
#### Відповідальність: - **Відповідальність**
- підрахунок usage: - підрахунок usage:
- agent runs, - agent runs,
- LLM tokens, - LLM tokens,
@@ -356,8 +319,7 @@
- router invokes, - router invokes,
- wallet transactions. - wallet transactions.
#### Таблиці: - **Таблиці**
(опціонально) (опціонально)
- `usage_agent_runs` - `usage_agent_runs`
@@ -371,13 +333,12 @@
### 4.14 Outbox Worker ### 4.14 Outbox Worker
#### Відповідальність: - **Відповідальність**
- читання `outbox_events` з БД; - читання `outbox_events` з БД;
- публікація у NATS; - публікація у NATS;
- маркування `processed`. - маркування `processed`.
#### Таблиця: #### Таблиця
- `outbox_events` - `outbox_events`
@@ -385,14 +346,12 @@
### 4.15 Telemetry / Logs Service ### 4.15 Telemetry / Logs Service
#### Відповідальність: - **Відповідальність**
- прийом логів з фронтенду, - прийом логів з фронтенду,
- прийом internal logs, - прийом internal logs,
- агрегація в аналітичні стріми. - агрегація в аналітичні стріми.
#### Events: - **Events**
- `telemetry.client.event` - `telemetry.client.event`
- `telemetry.error` - `telemetry.error`
- `telemetry.screen_view` - `telemetry.screen_view`
@@ -401,22 +360,19 @@
### 4.16 Auth / Session Service ### 4.16 Auth / Session Service
#### Відповідальність: - **Відповідальність**
- login, - login,
- OTP/Magic-link, - OTP/Magic-link,
- session cookies. - session cookies.
#### Таблиці: - **Таблиці**
- `sessions` (опціонально) - `sessions` (опціонально)
--- ---
### 4.17 File Storage / Docs Service ### 4.17 File Storage / Docs Service
#### Відповідальність: - **Відповідальність**
- завантаження файлів у каналах, - завантаження файлів у каналах,
- документи, - документи,
- архіви, - архіви,
@@ -432,24 +388,24 @@
Умовний граф залежностей: Умовний граф залежностей:
``` ```text
User/Team → Messaging → Projects/Tasks → Agents → Router User/Team → Messaging → Projects/Tasks → Agents → Router
↓ ↓ ↓ ↓ ↓ ↓
RWA Wallet Embassy RWA Wallet Embassy
↓ ↓ ↓ ↓ ↓ ↓
Oracle → Usage → Governance → PDP Oracle → Usage → Governance → PDP
``` ```text
Простіший вигляд: Простіший вигляд:
``` ```text
API Gateway (PEP) API Gateway (PEP)
↓ PDP ↓ PDP
Internal Services Internal Services
DB + NATS DB + NATS
``` ```text
--- ---
@@ -471,7 +427,7 @@ DB + NATS
## 7. Horizontal Scaling Responsibilities ## 7. Horizontal Scaling Responsibilities
### Stateless services: ### Stateless services
- Messaging - Messaging
- Projects/Tasks - Projects/Tasks
@@ -480,7 +436,7 @@ DB + NATS
- Router/Planner (частково) - Router/Planner (частково)
- LLM Proxy - LLM Proxy
### Stateful services: ### Stateful services
- Wallet - Wallet
- RWA - RWA
@@ -653,7 +609,7 @@ Output:
- list of modified files - list of modified files
- diff - diff
- summary - summary
``` ```text
--- ---
@@ -676,4 +632,3 @@ Output:
**Версія:** 1.0 **Версія:** 1.0
**Останнє оновлення:** 2024-11-14 **Останнє оновлення:** 2024-11-14

View File

@@ -135,3 +135,5 @@ docs/cursor/15_projects_agent_module.md
docs/cursor/12_agent_runtime_core.md docs/cursor/12_agent_runtime_core.md
docs/cursor/13_agent_memory_system.md docs/cursor/13_agent_memory_system.md
docs/cursor/06_tasks_onboarding_mvp.md docs/cursor/06_tasks_onboarding_mvp.md
docs/cursor/22_operator_modes_and_system_agents.md
docs/cursor/34_internal_services_architecture.md