Protocol: router as text relay, single session per agent
This commit is contained in:
parent
d9fd2e0d96
commit
8ce40aff91
@ -111,15 +111,24 @@ Tracker → Agent:
|
|||||||
|
|
||||||
## Архитектура в Picogent
|
## Архитектура в Picogent
|
||||||
|
|
||||||
|
### Принцип: максимум разговорной речи
|
||||||
|
Все события приходят агенту как **текстовые сообщения**. Агент — LLM, он сам понимает что делать.
|
||||||
|
Router не строит промпты, не вызывает API — просто передаёт текст.
|
||||||
|
|
||||||
|
### Одна сессия на агента
|
||||||
|
НЕ создавать отдельные сессии на задачу/чат. Всё в одном контексте:
|
||||||
|
задачи, чат, ответы — чтобы агент видел полную картину.
|
||||||
|
|
||||||
### Router (обработка WS-событий)
|
### Router (обработка WS-событий)
|
||||||
```
|
```
|
||||||
WS event → Router:
|
WS event → Router:
|
||||||
task.assigned → buildPrompt() → runAgent(prompt, mcp_tools)
|
task.assigned → текст "Тебе назначена задача TB-42: ..." → runAgent(текст)
|
||||||
chat.message → если mention/listen:all → runAgent(message, mcp_tools)
|
chat.message → если mention/listen:all → текст "[чат] @author: ..." → runAgent(текст)
|
||||||
task.comment → если mention → runAgent(comment, mcp_tools)
|
task.comment → если mention → текст "[комментарий к TB-42] @author: ..." → runAgent(текст)
|
||||||
task.taken → internal: убрать из available (НЕ в промпт)
|
task.taken → internal: убрать из available (НЕ в промпт)
|
||||||
task.status → internal: проверить зависимости (НЕ в промпт)
|
task.status → internal: проверить зависимости (НЕ в промпт)
|
||||||
```
|
```
|
||||||
|
Агент сам решает: вызвать get_task(), add_step(), send_message() — через MCP tools.
|
||||||
|
|
||||||
### MCP Tools (регистрация)
|
### MCP Tools (регистрация)
|
||||||
```
|
```
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user