snens

Файлы инстанса

Инстанс — это каталог с данными: характер агента, память, скиллы, тикеты, журналы. Ядро и тулы читают его с диска, поэтому правка файла действует без пересборки.

Каталоги и переменные

чтопо умолчаниюпеременная
данные~/.local/share/snens (%APPDATA%\snens на Windows)SNENS_DATA_DIR, XDG_DATA_HOME
конфиг~/.config/snens/config.tomlSNENS_CONFIG_DIR, SNENS_CONFIG
сессии<данные>/sessionsключ sessions_dir
скиллы<данные>/skillsskills_dir
тикеты<данные>/ticketstickets_dir
ящик подагентов<данные>/mailmail_dir
тулы<данные>/tools, иначе tools/ рядом с бинарём ядраtools_dir

Второй инстанс — это не второй бинарник, а свои каталоги и свой конфиг: SNENS_DATA_DIR=/srv/exp SNENS_CONFIG_DIR=/srv/exp/cfg snens tui.

Пути внутри данных

путьчтокто правит
soul.mdкто я: тон, рамки, стильчеловек
user.mdкто человек: язык, город, привычки работычеловек
memory.mdкарточка долгих фактовагент
skills/<имя>/SKILL.mdскилл: front-matter и телоагент
skills/<имя>/references/*.mdдетали скилла, читаются по требованиюагент
skills/<имя>/scripts/*запускаемые проверки скиллаагент
tickets/*.mdтикеты: неудобства и возможностиагент
sessions/<id>.jsonlжурнал сессии, append-onlyникто (только дописывание)
sessions/<id>.out/дампы полного вывода, LIVE_CONTEXT.json, cwd, attach/ядро и агент (зеркало)
mail/<id>/new/*.jsonвходящие: вопросы, ответы, steerпишут родитель и ребёнок
mail/<id>/read/прочитанные сообщенияход сессии
mail/<id>/children/<id>pid ребёнка: без него не отличить «снят» от «думает»харнесс

Что уезжает в каждый ход

soul.md, user.md, memory.md читаются заново при каждой сборке промпта и приклеиваются к системному тексту целиком. Рядом едет оглавление скиллов (только name и description) и строка рабочего каталога. Тела скиллов, references/, тикеты и журналы в префикс не попадают — их читают по требованию.

Отсюда лимит memory.md: около 4 КБ. Всё, что там лежит, оплачивается на каждом ходу любой сессии, включая те, где эти факты не нужны. Поэтому в карточку идёт только то, что нужно всегда и не добывается разведкой за минуту; остальное — указателем: «проекты и их грабли — там-то».

soul.md и user.md держатся короткими по той же причине; подробности про человека, его проекты и железо — в скиллах и тикетах, куда промпт не тянется.

Почему файлы, а не код

Характер и память меняются чаще, чем харнесс. Файл в каталоге данных правится руками и агентом, версионируется отдельно от исходников и переносится между машинами копированием каталога. Ничего из этого не требует компиляции.

Дальше: скиллы · долгая память · контекст