0.111.0
Added
- tool_call_history — промежуточные tool-вызовы (assistant + tool results) теперь сохраняются в БД с ролью
tool_call_history. Раньше при загрузке контекста LLM агент «забывал» свои действия — видел только финальный ответ, но не intermediate tool calls и их результаты. - Инструмент
tool_log— новый read-only инструмент для просмотра истории tool-вызовов. Агент может просмотреть свои недавние действия, отфильтровать по имени инструмента, увидеть аргументы и результаты. - Маршрутизация по agent_id — все WebSocket-сообщения для одного агента маршрутизируются в единый SessionActor (
agent:{agentID}). Раньше каждый WS-чат создавал отдельный actor — параллельные сессии не видели контекст друг друга и могли конфликтовать (повторные email, потерянный контекст). - Fan-out streaming — streaming-события дублируются на agent-level chatID, чтобы все WS-подключения одного агента получали обновления.
- Cancellation при новом сообщении — если агент занят обработкой и приходит новое user-сообщение, текущий ход отменяется (context cancellation), агент переключается на новое сообщение. Раньше новое сообщение стояло в очереди до завершения много минутного хода.
Changed
SessionKeyдля WS-сообщений теперьagent:{agentID}вместоwebsocket:{chatID}.streamHookиспользует методpublish()с fan-out на agent-chatID.AsyncAddMessage— новый метод Store для fire-and-forget записи (не блокирует agent loop).