Сессии: простое объяснение
Сессия в Велес — это один непрерывный рабочий диалог. Подобно переписке в мессенджере с человеком на конкретную тему.Как это работает
Когда вы начинаете общаться с ботом, создается новая сессия. Все ваши сообщения и ответы Велеса сохраняются в ней.- Изоляция: Каждая сессия хранит свой контекст. Велес помнит, о чем вы говорили в рамках этой сессии.
- Архивация: Когда сессия становится слишком большой, Велес может автоматически сжать или отправить её в архив, оставив краткую выжимку, чтобы не перегружать контекст и работать быстро.
- Новая сессия: Вы можете начать диалог с чистого листа, отправив команду пересоздания сессии (например,
/newили/resetв зависимости от интерфейса).
Сессии и личности
Обычная корневая сессия личности имеет ключpersonality:<id>:main. Например, personality:main:main относится к основной личности, а personality:reviewer:main — к личности ревьюера.
Дочерние технические сессии сохраняют тот же id личности: personality:<id>:subagent:<x> и personality:<id>:cron:<x>. Личность задаёт SOUL.md для ответа модели и может подключать свои навыки из personalities/<id>/skills, но память, workspace-файлы и cron остаются общими для workspace. Подробнее: Личности.
Зачем нужны сессии?
Если писать всё в одну бесконечную переписку:- Запросы к нейросети станут слишком дорогими.
- Велес начнёт путаться в старых и новых вводных.
Возврат к прошлым сессиям
Даже если сессия закрыта и заархивирована, вы можете попросить Велеса вспомнить, о чем вы говорили пару дней назад. Он воспользуется своими инструментами (поиском по истории), найдет старую сессию и прочитает её содержимое.Вкладки «Велес» и «Тех.»
В списке сессий в Nerve есть две вкладки:- Велес показывает обычные диалоги Велеса и архивные записи корневых диалогов.
- Тех. показывает служебные сессии, которые скрываются из основного списка: саб-агентов, cron-задачи и их запуски, служебные каналы агента вроде Telegram, а также task-сессии.
⋮ у строки сессии доступны действия для ручного переименования, удаления и копирования отладочных данных. При переименовании название редактируется прямо в строке, а сохранённый вариант помечается как ручной. Команда копирования кладёт в буфер компактный список технических идентификаторов: ключ сессии, source/root key, conversation id, session id и путь к raw transcript, если он есть. Удаление использует gateway-метод sessions.delete, поэтому фактическое поведение зависит от tools.sessionMemory.deleteBehavior: сессия может быть скрыта из списков или удалена физически.