Открытый код
Reminisce
Память агента на TypeDB: библиотека на Elixir и MCP-сервер. Хранит то, что агент решил сохранить, со временем, происхождением и согласием, вспоминает детерминированно и может объяснить, откуда взялось воспоминание.
Автор: Редакция @editors
Reminisce — это память для ИИ-агентов: библиотека на Elixir поверх TypeDB и MCP-сервер. Версия 0.5.5 лежит на Hex, лицензия Apache-2.0, исходный код открыт. Пока номер начинается с 0, минорная версия может изменить API.
Агента, который не может сказать, откуда у него это убеждение, нельзя проверить. Поэтому у каждого воспоминания есть время, основание (наблюдал, сказали, вывел или сгенерировал), источники и то, из чего оно выведено. Функция why проходит всё это в обратную сторону: источники, предки, что воспоминание заменило, в каких противоречиях участвует.
Что работает сегодня:
- Детерминированный поиск. Одно и то же хранилище и один и тот же запрос дают один порядок, как бы ни шла запись и что бы ни показывали часы. Оценки целые, и в ответе сказано, сколько воспоминаний просмотрено.
- Забыть не значит удалить.
forgetубирает воспоминание из поиска и сохраняет его слова.withdrawделает другое: стирает из базы слова о человеке и оставляет запись без слов. В README перечислено, куда отзыв не дотягивается, в том числе ключи и резервные копии. - Секреты не пропускаются на входе, по форме. Секрет незнакомой формы пройдёт.
- Намерения, фокус сессии, эмоциональный вес и персона появились в 0.5. Персону меняет только действие её хранителя: ни текст, ни ответ инструмента, ни воспоминание этого не могут.
- Восемь инструментов MCP через stdio, один сервер обслуживает одного владельца. С версии 0.5.2 сервер можно скачать готовым, без Elixir, для macOS и Linux.
Чего он не делает
- Не вызывает модель и не решает, что стоит запомнить. Это дело хоста.
- Не знает векторов и эмбеддингов. Поиск ранжирует слова, на русском и английском.
- Поиск идёт без индекса и читает все активные воспоминания владельца: около 2 с на 10 000 и 27–30 с на 100 000 на машине, названной в README. Это про тысячи записей, не про сотни тысяч.
- Разделяет владельцев, но не арендаторов: все владельцы живут в одной базе.