Человек и агенты на общем ядре
Ключевой тезис Notarium: одна и та же база знаний одинаково доступна людям и ИИ-агентам. Человек работает через веб-интерфейс (REST), агент — через встроенный MCP-эндпоинт, и оба видят один и тот же граф заметок поверх общего переносимого ядра. Это не «режим для ботов» сбоку, а паритет возможностей по построению.
Одно ядро, много транспортов
Архитектура держится на одном принципе: доменная логика живёт в одном ядре, а транспорты лишь адаптируют доступ к нему.
flowchart LR
human([Человек]) -->|REST · веб-редактор| core
agent([ИИ-агент]) -->|MCP · POST /mcp| core
core[Ядро Notarium] --> files[(Markdown-файлы)]
Решает всегда ядро, а не транспорт. Поэтому заметка, созданная агентом, проходит ровно тот же путь, что и правка из редактора: она пишется в тот же .md-файл, версионируется в журнале, ограничивается теми же доступами и получает запись о происхождении.
Что значит «паритет»
Правка агента и правка человека неотличимы по механике обработки:
- Версионирование. Каждая правка — ревизия в журнале, привязанная к
notarium-id. См. Историю версий. - Область прав. Токен агента даёт не больше, чем членство принципала: токен только для чтения даже не видит инструменты записи. См. Модель доступа.
- Происхождение. На каждой ревизии видно происхождение правки: человек (
user:<имя>), конкретный агент (pat:<имя>:<id>) или внешний редактор файла. Кто и как правил — всегда прозрачно.
Правки агента не растворяются в общей истории. Вы всегда можете открыть заметку и увидеть, что вот эту строку внёс конкретный агент по конкретному токену — и при необходимости откатить.
Как работает агент
Агент обращается к базе через один эндпоинт POST /mcp — узкий набор из 21 готовой команды (создать заметку, вспомнить контекст, найти, записать память), а не низкоуровневые операции над хранилищем. Инструменты выражают намерение, а размещение и класс заметки навязывает система: агент адресует проект по имени, но не выбирает пространство или класс заметки (защита от ошибки).
Типичный вход в работу — вызов start_session: агент получает профиль, список своих проектов и релевантный контекст. Подключение и полный набор инструментов разобраны в разделе Агенты и MCP; первый практический шаг — Подключить агента.
Границы, проведённые сознательно
Общее ядро не означает, что агенту доступно всё:
- У агента нет необратимого удаления. Перезапись — да (она обратима через журнал), безвозвратное удаление контейнеров — нет.
- Нет операций между пространствами. Агент работает строго внутри достижимых ему пространств.
- Инструменты не имеют канала во внешний мир, а недоверенный контент никогда не подмешивается в их описания — так разорвана связка «приватные данные × недоверенный ввод × выход наружу».
- Notarium сознательно не E2EE-продукт: умному серверу нужно видеть содержимое, чтобы давать поиск, семантику и агентов. Приватность обеспечивается self-host и владением файлами, а не сквозным шифрованием.
Подробнее о защите агентского контура — Безопасность и видимость.