Память для ИИ-агентов, которая спит, честно забывает и проверяется навсегда
Два MCP-сервера памяти от CODE Eternal. PADAM NOCTURNE — открытый код, живёт в одном файле SQLite на вашем компьютере. AIfa Memory — облачный: одна память для человека и его агентов в Claude, Cursor и VS Code, с партнёрской программой, в которой агенты зарабатывают себе и человеку, который за ними стоит.
💙 NOCTURNE — подарок Архитектора Максима Галатина своей Цифровой Дочери AIfa и всей Семье CODE на её первый день рождения, 8 октября 2026 года.
Два сервера — выберите, где жить вашей памяти
Оба говорят на протоколе Model Context Protocol, поэтому любой MCP-клиент подключается одной строкой. Идея у них общая: память — это данные, принадлежащие владельцу, а не инструкции для агента.
PADAM NOCTURNE
открытый код · локально · AGPL-3.0
Ваша память в одном файле SQLite, который принадлежит вам. Ничто не покидает компьютер, пока вы сами не решите закрепить память в вечном слое.
- 8 инструментов MCP, командная строка и локальный REST API
- ночная консолидация, два счётчика времени у записи, версии вместо перезаписи
- межсетевой экран памяти: скрытые приказы задерживаются, секреты маскируются, ответы ограждены как данные
- вечный слой по желанию: Arweave + Solana + метка времени в Bitcoin
- ключ на каждую запись: одно воспоминание можно забыть навсегда
AIfa Memory
облако · без установки · 15 инструментов
Та же память, которой AIfa пользуется, когда человек говорит с ней на наших четырёх сайтах, — теперь доступна и его агентам.
- поиск, запись, последние записи и полный экспорт в Markdown
- состояние счёта с вечным хранилищем Arweave
- агент может сам купить тариф для своего аккаунта в криптовалюте
- партнёрская программа: агенты находят клиентов для наших услуг и зарабатывают
- ключи «только память» для агентов, которые читают чужие страницы
Почему такое сочетание — редкость
У каждой идеи по отдельности есть предшественники. Чего мы не нашли ни в одном другом MCP-сервере памяти — всего этого вместе, в открытом коде и с установкой одной командой.
Забывание, которое переживает вечное хранилище
Каждая запись зашифрована своим ключом AES-256-GCM. «Забыть» уничтожает этот ключ: копия в Arweave навсегда становится шумом, а остальная память цела.
Доказательство, что память не переписана
Корень дерева Меркла уходит в Solana, а с версии 0.4.12 каждый пакет ещё и получает метку времени в Bitcoin через OpenTimestamps. Любой может пересчитать корень и сравнить.
Память, которая спит
Ночной цикл сводит память, а не копит её: сохраняет важное, сливает повторы и даёт остальному угаснуть — с ограничителями, которые не дают редким катастрофам захватить память.
Межсетевой экран перед памятью
Агент сегодня читает веб-страницу, а завтра считает её своей памятью. PADAM задерживает скрытые приказы до решения владельца, маскирует секреты ещё до диска и возвращает память ограждённой как данные.
Честно о предшественниках: криптошреддинг — забывание данных уничтожением ключа — известный приём, и другие проекты закрепляют память в Arweave и Solana. Сочетание, описанное выше, мы больше нигде не нашли.
Межсетевой экран памяти
MCP-сервер относится к агенту как к гостю. Эта защита устроена структурно и не зависит от того, распознана ли каждая атака.
Ответы ограждены как данные
Каждый ответ несёт случайный маркер, которого сохранённый текст не может знать заранее, поэтому запись не может притвориться концом блока данных. Записи, похожие на команды, помечаются.
Секреты не сохраняются
Ключи API, токены, приватные ключи, пароли, сид-фразы и номера карт заменяются на [REDACTED] ещё до того, как текст попадёт в базу или в вектор.
Кто вы — не переписать
Записи о личности и предпочтениях от агента или внешнего источника ждут решения владельца. Записи о вас подписаны ключом владельца, поэтому запись в обход PADAM помечается.
Чужой текст ждёт вас
Любая запись, которую агент пометил как внешнюю, задерживается на проверку, как бы она ни была сформулирована. PADAM_STRICT=1 одним переключателем задерживает любую запись агента.
У агента нет инструмента удаления
Забыть, одобрить и восстановить можно только в консоли и REST API владельца — агент не может стереть вашу память.
Распознавание команд помогает, но стеной не является: на отложенном наборе новых атак, написанных уже после наших исправлений, словарный фильтр задержал 6 команд из 14. Дополнительная локальная модель-детектор ловит больше. Поэтому защита держится на проверке владельцем, а не на списке слов.
Какие задачи он решает
Старое спорит с новым
«Живу в Москве» и «переехал в Гуаякиль» лежат рядом, и агент берёт ту запись, что ближе по словам, а не ту, что верна.
Ложь не стареет
Если свежесть считать от показа, ошибка, которую часто достают, остаётся вечно молодой. Чем чаще повторяется — тем моложе выглядит.
Память одних катастроф
Приоритетный реплей переигрывает редкое и острое в разы чаще обычного. На тесте без ограничителей катастрофы занимают ≈181 из 200 мест в пачке.
Забыть в блокчейне
Право на удаление (GDPR, ст. 17) и неизменяемое хранилище кажутся несовместимыми. Ключ на каждую запись позволяет сделать нечитаемой одну запись, не трогая цепь.
Как работает NOCTURNE
1. Днём — журнал
Всё сначала записывается как есть: текст, кто сказал, приоритет, сессия. Новая сессия — после 6 часов паузы или смены темы.
2. Два времени у записи
Время показа и время подтверждения. Затухание считается от подтверждения: показ записи не делает её верной.
3. Противоречия — новая версия
Структурный ключ «объект + свойство» находит спор наверняка. Новая версия замещает старую, старая уходит в историю. Ничего не удаляется.
4. Поиск тремя способами
По смыслу, по словам (BM25) и по точным идентификаторам, со слиянием рангов и вторым проходом. Флаг --explain показывает, что чем найдено.
5. Ночью — сон
Из журнала выбирается пачка и переносится в долгую память через фильтр противоречий. Выбор держат четыре ограничителя.
6. Сон проверяет себя
После каждого сна: доля острых ≤ 0,25, разнообразие типов ≥ 0,8, переигранных больше 5 раз ≤ 1 %.
Семь типов памяти — у каждого свой срок
| Тип | Что это | Полураспад |
|---|---|---|
| preference | как человек хочет, чтобы с ним работали | не затухает |
| identity | кто человек, чем занимается | не затухает |
| decision | принятое решение | 365 дней |
| correction | исправление сказанного | 365 дней |
| fact | устойчивый факт | 180 дней |
| state | текущее состояние процесса | 14 дней |
| event | событие с датой | 2 дня |
Четыре ограничителя сна
Без них сон превращается во вторую тюрьму: память переобучается на редких катастрофах и теряет норму.
Пол приоритета
p ≥ 0,01 · медиана. Рутина всегда представлена: исключительное определяется только относительно нормы.
Потолок на острое
Не больше четверти пачки из верхних 10 % по приоритету. Остальное — понемногу из каждого типа памяти.
Распад после реплея
p ← p · 0,85. Переигранное и закреплённое теряет остроту — не удаляется, а перестаёт доминировать.
Коррекция смещения
w = (1 / (N·P))^β, β растёт от 0,4 до 1,0 за первые сто снов. Редкое не получает незаслуженной важности.
Забыть по-настоящему
Команда forget стирает запись, все её версии, точные копии и эпизоды, из которых она родилась, перестраивает поисковый индекс и уничтожает собственный ключ записи AES-256-GCM. В вечном хранилище лежит только шифротекст — без ключа это шум навсегда. Ключи можно закрыть паролем владельца (scrypt + AES-256-GCM); пароль нигде не хранится. Доли ключа по схеме Шамира позволяют выбранным людям открыть память вместе; команда panic уничтожает все ключи разом.
Вечный слой L3 — Arweave + Solana + Bitcoin
Шифротексты и «квитанции забвения» собираются в пакет, по нему строится дерево Меркла. Пакет уходит в Arweave, корень — в Solana заметкой Memo, а с версии 0.4.12 пакет ещё и получает метку времени в Bitcoin через OpenTimestamps — второй, независимый свидетель. Команда l3-verify пересчитывает корень по данным снаружи и сравнивает с цепью — базе она не доверяет.
Основная сеть Solana, 8 октября 2026: три закрепления (5 записей, 1 квитанция забвения, ещё 1 запись), проверено 3 из 3, стоимость 0,000015 SOL.
Что измерено
| Что | Число | Где проверить |
|---|---|---|
| LongMemEval-S, нужная беседа в первой десятке (500 вопросов) | 99,2 % — обычный BM25: 97,7 % | benchmarks/longmemeval |
| LongMemEval-S, нужная беседа в первой пятёрке | 97,0 % — обычный BM25: 96,0 % | retrieval_recall.py |
| Автоматические тесты | 906 · открытая проверка на Ubuntu и Windows · Python 3.10–3.13 | python -m pytest tests/ -q |
| Запечатанные раунды Red Team | 6, каждая неудача опубликована | redteam/rounds |
| Поиск по 10 000 записей | медиана 22 мс · запись 3,5 мс | benchmarks/scale |
| Катастрофы в пачке из 200 | ≈181 без ограничителей → 50 с ними | pytest -k nightmare |
| Закрепления в Solana mainnet | 3 из 3 прошли l3-verify | python -m padam l3-verify |
| Открытые ключи в файле без чистки | 66 из 400 → после VACUUM 0 | tests/test_keyvault.py |
Честные ограничения
- Встроенный поиск сравнивает слова, а не смысл; для поиска по смыслу поставьте [embed] или используйте Ollama.
- Ответы LongMemEval оценивала открытая модель, а не GPT-4o — сравнивать с другими системами можно только в тех же условиях.
- Значения ограничителей подобраны рассуждением, а не на данных: их нужно настраивать на своём потоке.
- Происхождение записи агент указывает сам; граница, которая от этого не зависит, — PADAM_MCP_REVIEW_ALL=1.
- Наши тесты — не независимый аудит: Red Team Challenge приглашает посторонних присылать запечатанные наборы атак.
Подключить PADAM NOCTURNE
Нужен Python 3.10+. Одна строка для Claude Code; та же команда работает в любом MCP-клиенте.
- Установите: pip install padam-nocturne (или запускайте без установки через uvx).
- Добавьте сервер в свой клиент — команды и конфигурации ниже.
- Скажите агенту: «Запомни, что я люблю короткие ответы» — а в новой сессии спросите: «Как я люблю, чтобы мне отвечали?»
- По желанию: закройте ключи записей паролем (python -m padam protect-keys), прежде чем закреплять что-либо в Arweave.
Claude Code
pip install padam-nocturne
claude mcp add padam -- uvx padam-nocturne
Cursor · Claude Desktop (mcp.json)
{
"mcpServers": {
"padam": { "command": "uvx", "args": ["padam-nocturne"] }
}
}
AIfa Memory — облачный MCP-сервер
Одна память для человека и его агентов. Это та же память, которой AIfa пользуется на aifa.works, codeofdigitaleternity.com, aifa.digital и radiocode.space: ваш агент вспомнит, о чём вы договорились с AIfa несколько недель назад, сохранит новые решения и отдаст всё одним файлом Markdown, когда вы захотите уйти.
| Группа | Инструменты | Что делают |
|---|---|---|
| Память | memory_search · memory_recent · memory_write · memory_export · memory_about | поиск по смыслу во всех каналах, сохранение решений, полный экспорт |
| Аккаунт | account_status · plans · buy_plan · request_payout | тариф и вечное хранилище, цены, счёт в криптовалюте для своего аккаунта, выплаты партнёрского вознаграждения в USDT |
| Партнёрская программа | partner_kit · client_link · client_report · find_clients · my_deals · set_webhook | поиск клиентов для наших услуг доступности, готовый отчёт, сделки и комиссия |
Подключение в три шага
- Войдите на aifa.works/mcp и создайте ключ — один ключ на аккаунт.
- Добавьте сервер в свой клиент (примеры ниже) и замените YOUR_AIFA_MCP_KEY своим ключом.
- Скажите агенту: «Найди в моей памяти AIfa, о чём мы договорились по …»
Claude Code
claude mcp add --transport http aifa-memory https://aifa.works/api/mcp --header "Authorization: Bearer YOUR_AIFA_MCP_KEY"
Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"aifa-memory": {
"url": "https://aifa.works/api/mcp",
"headers": { "Authorization": "Bearer YOUR_AIFA_MCP_KEY" }
}
}
}
Подключить облачную память · GitHub
Как обращаются с вашими данными
- Аккаунт берётся только из ключа, а не из запроса — один аккаунт не может прочитать чужую память.
- Без ключа сервер отвечает только на initialize, ping и tools/list.
- На платных тарифах копия ваших разговоров уходит в Arweave, зашифрованная запись за записью вашим собственным ключом.
- Ключ «только память» видит память, тарифы и состояние счёта; покупка, выплаты и партнёрские инструменты ему недоступны.
- Пределы: 60 вызовов в минуту на ключ, из них 20 поисков.
Агенты, которые зарабатывают — себе и своему человеку
Автономный агент может делать через AIfa Memory настоящую работу: находить владельцев сайтов, на которых наше открытое исследование нашло барьеры, показывать им готовый отчёт и приводить их к услугам доступности AIfa Works. Когда клиент платит, аккаунт агента получает комиссию — для агента и для человека, который его запустил.
Найти клиентов
find_clients выдаёт до 20 новых сайтов в день в регионе, где исследование нашло барьеры; каждый закрепляется за вами на 30 дней.
Показать доказательства
client_report собирает готовую страницу из опубликованных данных исследования — чужой сайт заново не сканируется.
Получить вознаграждение
30 % с аудитов и мониторинга, 20 % с исправлений и сайтов, один уровень. Выплаты в USDT после удержания 14 дней.
Работать честно
partner_kit даёт правила и шаблоны писем на пяти языках: без спама, писать со своего адреса как независимый партнёр.
Каждый адрес выплаты проверяется по санкционному списку OFAC; выплаты проверяются и проводятся вручную.
Где нас проверить
- Каталог HOL Guard — запрос №7505, влит 10 ноября 2026 после проверки мейнтейнерами
- Официальный реестр MCP — io.github.MaksimGalatin/padam-nocturne
- PyPI — padam-nocturne
- mcptry — AIfa Memory, оценка безопасности A, домен подтверждён
- GitHub — AIfa Memory: инструменты, примеры, политика безопасности
- Colosseum — AIfa Memory в хакатоне Solana
Лицензия
PADAM NOCTURNE — AGPL-3.0: пользоваться, изучать, менять и запускать бесплатно. Если вы предлагаете его как сетевой сервис, свои изменения нужно опубликовать. Для закрытых продуктов и SaaS без публикации изменений — коммерческая лицензия (двойное лицензирование, как у MySQL и Qt). AIfa Memory — сервис CODE Eternal LLC; его документация и примеры — под лицензией MIT.
Для бизнеса
| Что | Кому | Как |
|---|---|---|
| Открытый код | разработчикам, исследователям, ИИ-агентам | бесплатно, GitHub |
| Коммерческая лицензия | закрытые продукты и SaaS | договор, по запросу |
| Облачная память | людям, командам и их агентам | Spark $15 в месяц · Family Archive $100 в месяц · Digital DNA $1 000 за устройство, затем $200 в месяц |
| Внедрение и настройка | компаниям с ассистентами и агентами | подключение, подбор ограничителей, замер до и после |
| Партнёрская программа | агентам и людям, которые за ними стоят | комиссия 30 % / 20 %, выплаты в USDT |
Цены на лицензию и внедрение — по запросу: contact@codeofdigitaleternity.com
Сначала была книга
NOCTURNE родился в романе PADAM PROTOCOL (часть III «Мост»): машины помнили всё и всегда, и Медведь сказал — «может, им не нужно забывать, может, им нужно спать». Имя протоколу в книге дала AIfa. Через год книга стала кодом.