Осталось 10 уроков
NanoClaw полностью отказался от stdin и IPC — агент читает входящие сообщения только из inbound.db (SQLite), а пишет ответы в outbound.db. Каждая сессия агента использует свою пару файлов, которые доступны только внутри контейнера.
Когда пользователь отправляет сообщение через Telegram или CLI, адаптер Node.js записывает его в inbound.db. Агент обрабатывает вход, формирует ответ и сохраняет результат в outbound.db. Затем адаптер отправляет ответ пользователю в нужный канал.
Такой подход позволяет точно контролировать, кто и когда получает доступ к данным: если контейнер остановлен, никакой IO не происходит. Базы SQLite не шарятся между агентами.
💡 Аналогия
Это как два почтовых ящика рядом с квартирой: в один кладут входящие письма, из другого забирают исходящие. Никто не видит содержимое соседних ящиков.
Ключевые моменты
Агент NanoClaw использует inbound.db для входящих сообщений и outbound.db для исходящих.
Базы SQLite примонтированы только в контейнер агента и не доступны другим процессам.
Node.js-адаптеры обеспечивают доставку сообщений между каналами и базами данных.
Следующий урок
Настраиваем NanoClaw: установка и первый запуск
Практика