Диалог в привычном формате
Общайтесь через веб-чат или Telegram. Отправляйте текст, голосовые сообщения и изображения — Ника разберёт содержимое и сохранит контекст.
TEXT · VOICE · VISIONНика превращает разговоры в задачи, заметки и связанные знания. Локальный append-only журнал сохраняет историю изменений, а AREALRUST даёт ей архитектуру для работы на независимых узлах.
local-first · append-only · merkle search tree · ed25519
ваш компьютер
7f3a…c91eareals.ru
7f3a…c91etask.created · Подготовить план поездки · срок: пятницаНика связывает текущий разговор с людьми, решениями и задачами, которые уже есть в вашем графе.
Общайтесь через веб-чат или Telegram. Отправляйте текст, голосовые сообщения и изображения — Ника разберёт содержимое и сохранит контекст.
TEXT · VOICE · VISIONНика сама выделяет поручения, сроки, приоритеты и исполнителей. Задачи можно искать, планировать и держать на контроле по людям.
STATUS · DEADLINE · CONTROLИмпортируйте транскрипт встречи или документ. Ника извлечёт сущности, факты и задачи, а по последним разговорам соберёт плотный конспект.
NOTES · DIGEST · IMPORTЛюди, проекты, решения и факты связаны между собой. Можно открыть запись, увидеть историю её изменений и перейти к связанным сущностям.
ENTITIES · RELATIONS · HISTORYНика ведёт разовые напоминания и регулярные рутины, работает с Яндекс Календарём и повторяющимися встречами, умеет подключаться к Телемосту и разбирать аудио.
REMINDERS · CALENDAR · MEETINGSВыбирайте вычислительный контур под задачу: локальную модель на своём оборудовании или облачную через OpenRouter. Память узла остаётся вашей.
LM STUDIO · OPENROUTERИнтерфейс, чат, задачи, встречи и память используют новый журнал AREALRUST. Старые маршруты /api/sync/* отвечают 410 Gone.
Двусторонняя сессия сравнивает Merkle Search Tree, передаёт недостающие события и пропускает их через конвейер проверки получателя.
Новый протокол передаёт полный журнал. До включения его в Нике нужно перенести исполняемую политику Scope, чтобы приватные события не покидали свой контур.
Ниже — механика синхронизации, реализованная в шаблоне AREALRUST. Это возможность ядра, а не статус текущего runtime Ники: старый протокол Ники несовместим с новым журналом и отключён.
Каноническая JCS-форма превращается в $id — SHA-256 multihash байтов события. Поле $cause задаёт прошлый конус, а подпись Data Integrity на Ed25519 подтверждает автора с известным ключом.
Узлы обмениваются корнями MST, идентификатором журнала, числом событий, версией протокола и хешем базовых правил. Спуск по дереву сужает поиск до отсутствующих $id, без повторной передачи всей истории.
Сначала узел забирает недостающее у партнёра — pull, затем отдаёт своё — push. События идут пачками по 500; повторы пропускаются, а записи без уже полученных причин досылаются повторно.
Обычная sync-сессия не доверяет готовому вердикту отправителя. Принимающий узел проверяет каноническую форму, $id, причины, подпись, права и правила пака через собственный конвейер verify → restrict → commit → react.
Clojure-приложение Ники обращается к подпроцессу areal-node через JSON-протокол. Ядро хранит событийную модель и выполняет операции журнала; один процесс ядра может обслуживать несколько независимых журналов, включая пробные копии.
append-onlyJSONL-журнал дописывается с fsync и сохраняет прошлые состоянияcausal graphвердикт вычисляется по прошлому конусу события, а не порядку полученияatomic batchпакетная запись откатывается целиком при первом непринятом событииmerkle syncMST сокращает поиск различий между совместимыми узламиNIKA · CLOJURE
Диалог, задачи, заметки, конспекты, Telegram и подключение языковых моделей.
AREALRUST · AREAL-NODE
Причинный граф, подписи событий, правила проверки и Merkle-синхронизация между узлами.
NODE DATA · LOCAL STORAGE
Локальная история, ключ узла и известные ключи соседей. Резервная копия — копия каталога данных.
Нет. Старые маршруты /api/sync/* возвращают 410 Gone: их протокол несовместим с новым журналом. В AREALRUST уже есть новый двусторонний протокол, но он передаёт полный журнал. Включать его для личной памяти Ники можно только после переноса исполняемой политики Scope.
Да, локальный журнал и интерфейс продолжают работать без сети. Для ответов помощника нужна доступная языковая модель — локальная или облачная. Веб-поиск, Telegram, OpenRouter и другие внешние интеграции зависят от соединения.
Параллельные ветви не стираются. Порядок определяется по прошлому конусу и $id, поэтому не зависит от локального порядка приёма. Текущее значение выбирается детерминированно, а альтернативы сохраняются в метаданных conflicts. Это не автоматическое смысловое разрешение конфликта.
При обычной сессии нет: MST помогает найти и передать только отсутствующие события. Однако область синхронизации нового протокола — полный журнал, без выборочных приватных срезов. Начальный bootstrap нового узла также копирует историю партнёра до запуска.
Публично доступен этот лэндинг. Старый маршрут /api/sync/ сохранён, но его обработчики отвечают 410 Gone. Интерфейс администратора Ники слушает только локальный адрес сервера и не публикуется в интернет.