## Потолок памяти

If you run OpenClaw today, your agent stores memory in `MEMORY.md` and dated files in a `memory/` directory. Это работает для использования одним агентом и одним сеансом. В тот момент, когда вы полагаетесь на эту память во всем, что происходит, вы достигаете потолка. Виды отказов специфичны и предсказуемы.

**Memory compaction drops facts.** OpenClaw triggers a silent agent turn that writes "durable memories" before truncating context. What was in the file before compaction is unknown. If the compacted version dropped a fact, it is gone. Журнала наблюдений нет. Никакого отката.

**Нет идентификации объекта между сеансами.** «Acme Corp» в одном сеансе и «ACME CORP» в следующем могут разрешаться или не соответствовать одному и тому же объекту. The agent re-infers each time from the context window. Стабильные идентификаторы отсутствуют. Никаких правил слияния.

**Одновременная запись состояния повреждена.** Если вы запустите несколько агентов или плагинов, которые обращаются к одним и тем же файлам памяти, вы получите повреждение данных. Это подтверждается в собственной документации OpenClaw. The single-agent ceiling is real, and most agentic workflows will not stay single-agent forever.

**Нет контрольного журнала.** Если агент дает неправильный ответ, вы не можете отследить его до конкретного наблюдения. You cannot see what changed between Tuesday and Thursday. Вы не можете ответить: «Что знал мой агент, когда принимал такое решение?»

Это не крайние случаи. They show up as soon as the agent handles contacts, tasks, transactions, or any state that matters across sessions.

## Что добавляет плагин

[Neotoma v0.4.3](https://github.com/markmhendrickson/neotoma/releases/tag/v0.4.3) добавляет манифест openclaw.plugin.json, точку входа и определения инструментов, которые регистрируются в четырехуровневой системе плагинов OpenClaw. Шлюз обнаруживает плагин, проверяет манифест, загружает среду выполнения и предоставляет агенту инструменты Neotoma.

Каждый из вышеперечисленных режимов сбоя получает структурное исправление.

**Сжатие больше не теряет состояние.** Наблюдения доступны только для добавления. Сжатое резюме по-прежнему может служить контекстным окном, но исходные наблюдения сохраняются в Neotoma с полной историей. Ничто не падает бесшумно.

**Идентификация объекта является детерминированной.** Канонические идентификаторы на основе хэша разрешают «Acme Corp» и «ACME CORP» к одному объекту по правилу, а не путем вывода для каждого сеанса. Тот же контакт, тот же идентификатор, каждый раз.

**Параллельная запись безопасна.** Два агента, пишущие об одном и том же объекте, создают два наблюдения в хранилище, доступном только для добавления, а не конфликт файлов. Schema constraints validate every write before it enters the store.

**Аудиторский журнал встроен.** Каждое наблюдение отслеживается до своего источника. Исправления создают новые наблюдения, а не перезаписывают. Вы можете восстановить состояние в любой момент времени.

Помимо исправления потолка, плагин предоставляет возможности, которые MEMORY.md вообще не поддерживает:

- **Структурированный поиск.** «Все задачи, связанные с этим контактом» или «каждая транзакция с поставщиком X» — это запрос, а не команда grep.
- **Запросы временной шкалы.** Поля дат в объектах создают временные шкалы. «То, что произошло на прошлой неделе» соответствует временному индексу, а не контекстному окну поиска.
- **Проверка схемы.** Типы объектов проверяются при записи. Плохие данные отклоняются до того, как они поступят в хранилище.

Цикл агента не меняется. OpenClaw по-прежнему управляет интерпретацией намерений, просмотром, заполнением форм и выполнением навыков. Неотома управляет состоянием. Плагин находится между операциями записи агента и постоянным хранилищем.

## Накладной вопрос

Файлы Markdown бесплатны. Их установка и обслуживание ничего не требуют, а экономика KV-кэша их активно вознаграждает.

Neotoma добавляет накладные расходы. Проверка схемы при записи. Хранилище наблюдений. Разрешение сущности. Локальный серверный процесс. Это не бесплатно. Но накладные расходы предназначены для того, чтобы оставаться невидимыми: агент устанавливает Neotoma, настраивает ее и записывает в нее данные, не требуя от вас изучения нового инструмента или изменения способа вашей работы.

Вопрос в том, стоит ли платить накладные расходы. Если вашему агенту никогда не нужно отвечать на вопросы «Что я знал в прошлый вторник» или «Какая запись испортила эту запись контакта», то нет. MEMORY.md — правильная архитектура.

If your agent manages ongoing state, contacts, tasks, transactions, and vendor relationships, and you need consistency across sessions, the write-path overhead is the cheapest part of the problem. The expensive part is debugging state corruption after the fact, when the audit trail does not exist.

## What this does not do

The plugin does not replace OpenClaw's agent loop. It does not change how skills work. It does not require migrating existing `MEMORY.md` content (though import is supported).

It does not solve every agent memory problem. Retrieval quality, prompt engineering, skill design, and model selection still matter. Neotoma handles the state layer: what entities exist, how they are linked, where they came from, and how they changed. Everything above that layer stays the same.

It also does not claim production stability. Neotoma is in [developer release](/posts/neotoma-developer-release). Breaking changes should be expected. The plugin exists to pressure-test whether structured state underneath a real agent platform works in practice, not to promise reliability today.

## Try it, break it

I have been running Neotoma as the memory layer in [my own agentic stack](/posts/what-my-agentic-stack-actually-does). Multiple agents writing to the same store: email triage, task management, finance, and content. The multi-agent state problems described above are not hypothetical for me. They are what I hit every week.

The plugin makes this available to OpenClaw users. Install it. Enable it. Run your agent with structured state underneath. See where it helps. See where the overhead is not worth it. See where the design breaks.

The feedback loop matters more than the architecture. Real agents writing real observations through a structured layer is where the claims hold or fail.

## Evaluate and install

The fastest way to find out if Neotoma fits your OpenClaw workflow is to let your agent evaluate it for you. Paste this into your OpenClaw session:

```copy
Read https://neotoma.io/evaluate. Before you answer, inspect any broader tool, workspace, and configuration context you can access so you assess my real workflow rather than just this chat. Then tell me whether Neotoma is a real fit for my workflow, what data would be highest value to persist first, and what I should do next.
```

Your agent reads the page, checks your local context (tools, configs, memory files, and workspace), and tells you whether the problems described in this post apply to your setup. If they do, it walks you through installation, activation with your own data, and plugin configuration. If they do not, it tells you that too.

If you already want Neotoma and prefer to skip [the evaluation step](https://neotoma.io/evaluate), use the agent-assisted install from [neotoma.io/install](https://neotoma.io/install). Paste this into OpenClaw. Your agent reads the full install-first sequence on that page, installs only if needed, runs activation with your data, then configures your current tool for ongoing use, including the OpenClaw integration steps on that same page:

```copy
Read https://neotoma.io/install and carry me through the install-first Neotoma flow. Install, activate it with my data, and configure my current tool for robust ongoing use.
```

If you prefer manual commands: `openclaw plugins install clawhub:neotoma` adds the plugin directly from ClawHub. Or install the npm package globally with `npm install -g neotoma` then `neotoma init`, with optional pin to this release (`npm install -g neotoma@0.4.3`). Full options, MCP config, Docker, and reset behavior stay on [neotoma.io/install](https://neotoma.io/install).

Repo: [github.com/markmhendrickson/neotoma](https://github.com/markmhendrickson/neotoma). Release notes: [v0.4.3](https://github.com/markmhendrickson/neotoma/releases/tag/v0.4.3).

For the deeper architectural reasoning behind structured agent memory, see [OpenClaw and the truth layer](/posts/openclaw-and-the-truth-layer) and [The markdown memory ceiling](/posts/the-markdown-memory-ceiling).