Initial project blueprint
This commit is contained in:
@@ -0,0 +1,127 @@
|
||||
# Компоненты
|
||||
|
||||
## 1. Conversation Manager
|
||||
|
||||
Отвечает за пользовательский контекст:
|
||||
|
||||
- диалоги;
|
||||
- сообщения;
|
||||
- вложения;
|
||||
- выбранный проект;
|
||||
- активные workers;
|
||||
- выбранные режимы доступа;
|
||||
- настройки моделей;
|
||||
- историю подтверждений.
|
||||
|
||||
Не выполняет tools напрямую.
|
||||
|
||||
## 2. Orchestrator
|
||||
|
||||
Главный серверный компонент.
|
||||
|
||||
Функции:
|
||||
|
||||
- принять задачу;
|
||||
- определить тип задачи;
|
||||
- выбрать execution mode;
|
||||
- запустить planner;
|
||||
- создать execution graph;
|
||||
- запускать узлы графа;
|
||||
- вызывать model router;
|
||||
- вызывать MCP tools;
|
||||
- отправлять команды local worker;
|
||||
- обрабатывать подтверждения;
|
||||
- логировать;
|
||||
- собирать финальный результат.
|
||||
|
||||
## 3. Model Router
|
||||
|
||||
Единый интерфейс к моделям.
|
||||
|
||||
Слоты:
|
||||
|
||||
```text
|
||||
weak
|
||||
strong
|
||||
vision
|
||||
embedding
|
||||
reranker
|
||||
```
|
||||
|
||||
Каждый слот настраивается:
|
||||
|
||||
```text
|
||||
provider = local | external | disabled
|
||||
model = string
|
||||
base_url = string
|
||||
api_key_env = string
|
||||
```
|
||||
|
||||
## 4. MCP Client
|
||||
|
||||
Универсальный клиент к MCP-серверам.
|
||||
|
||||
Не должен знать про 1С.
|
||||
|
||||
Поддержать:
|
||||
|
||||
- initialize;
|
||||
- tools/list;
|
||||
- tools/call;
|
||||
- resources/list;
|
||||
- resources/read;
|
||||
- prompts/list;
|
||||
- prompts/get.
|
||||
|
||||
## 5. Local Worker Gateway
|
||||
|
||||
Серверная часть для связи с local workers.
|
||||
|
||||
Local worker сам открывает исходящее соединение:
|
||||
|
||||
```text
|
||||
Local Worker → WebSocket/gRPC stream → Server
|
||||
```
|
||||
|
||||
Сервер не открывает входящий порт на ПК пользователя.
|
||||
|
||||
## 6. Policy Engine
|
||||
|
||||
Не содержит жестких запретов.
|
||||
|
||||
Он читает настройки проекта и решает:
|
||||
|
||||
- выполнять сразу;
|
||||
- запросить подтверждение;
|
||||
- показать preview;
|
||||
- поставить задачу в ручной режим;
|
||||
- пропустить, если выбран full_auto.
|
||||
|
||||
## 7. Execution Graph Engine
|
||||
|
||||
Хранит и исполняет граф:
|
||||
|
||||
```text
|
||||
nodes:
|
||||
- id
|
||||
- type
|
||||
- input
|
||||
- output
|
||||
- status
|
||||
- dependencies
|
||||
- assigned_runner
|
||||
- attempts
|
||||
- logs
|
||||
```
|
||||
|
||||
Статусы:
|
||||
|
||||
```text
|
||||
pending
|
||||
running
|
||||
waiting_confirmation
|
||||
completed
|
||||
failed
|
||||
cancelled
|
||||
skipped
|
||||
```
|
||||
Reference in New Issue
Block a user