claude-code-substrate-memory
Claude Code Substrate Memory
claude-code-substrate-memory подключает Claude Code к организационной памяти Substrate. Он
предоставляет семь MCP-инструментов для чтения и записи памяти, захватывает новые витки
транскрипта через хуки жизненного цикла Claude Code и хранит неудачные доставки в ограниченном
локальном буфере.
Версия 0.1.0 использует только стандартную библиотеку Python во время выполнения.
Установка
Клонируйте репозиторий и загрузите его как плагин Claude Code:
git clone https://github.com/Substrate-memory/claude-code-substrate-memory.git
claude --plugin-dir /absolute/path/to/claude-code-substrate-memoryДля разработки или прямого использования через CLI установите пакет в окружение Python 3.11+:
python -m pip install -e .
substrate-claude-code statusМанифесты плагина предоставляют MCP-сервер, хуки жизненного цикла и слэш-команды. MCP-сервер
также можно запустить напрямую с помощью python -m claude_code_memory.server, когда src/
находится в PYTHONPATH.
Related MCP server: Claude Memory MCP Server
Конфигурация
Учётные данные принимаются только из переменных окружения:
SUBSTRATE_API_URL=https://your-substrate-server.example
SUBSTRATE_API_KEY=your-profile-scoped-bearer-keyЗадайте их в окружении, которое запускает Claude Code. Никогда не записывайте
SUBSTRATE_API_KEY в .mcp.json, hooks/hooks.json, файл настроек проекта или другой
файл конфигурации в открытом виде. Выполните substrate-claude-code configure, чтобы вывести
необходимую настройку без записи каких-либо секретов.
Если переменные отсутствуют или API временно недоступен, захват остаётся включённым, и новые
события помещаются в локальный буфер в ~/.substrate/claude_code_memory/. Установите
SUBSTRATE_STATE_HOME, чтобы переместить корень состояния, что особенно полезно для
изолированных тестов. Захват сайдчейнов включён по умолчанию. Установите
SUBSTRATE_CAPTURE_SIDECHAINS=0, чтобы использовать аварийный выключатель исключения.
MCP-инструменты
Инструмент | Назначение |
| Поиск по организационной памяти и возврат цитируемых карточек памяти. |
| Чтение одной вики-страницы по пути относительно репозитория. |
| Задать цитируемый вопрос по памяти Substrate. |
| Отправка текста для асинхронной вики-индексации. |
| Запись долговременного факта или решения, запрошенного пользователем. |
| Повторная доставка локально буферизованных событий захвата. |
| Показ конфигурации без содержимого и счётчиков буфера. |
Репозиторий также добавляет слэш-команды /substrate-status и /substrate-recall.
Захват через хуки
Claude Code вызывает четыре командных хука из hooks/hooks.json:
Stop захватывает нормализованные блоки пользователя, ассистента, вызовов инструментов, результатов инструментов и системные блоки, которые ранее не были контрольными точками, и отправляет событие
turn.PreCompact захватывает то же инкрементальное окно транскрипта, что и
pre_compress, перед тем как Claude Code сжимает свой контекст.SessionEnd отправляет событие
session_endбез содержимого, содержащее только нормализованное количество сообщений и границу сессии. Постоянный маркер гарантирует, что оно отправляется не более одного раза.SessionStart выполняет ограниченный поиск по Substrate и выводит компактный блок воспоминаний в формате Markdown, когда доступна релевантная память.
Каждый хук — это отдельный процесс, поэтому посимвольные дайджесты сообщений и одноразовые маркеры сохраняются в каталоге состояния плагина. События захвата надёжно буферизуются перед доставкой по сети.
Граница конфиденциальности
Читатель транскрипта захватывает записи user, assistant и system верхнего уровня и
сайдчейнов. Записи сайдчейнов содержат координаты записи/блока и происхождение сессии. Вызовы
инструментов и их результаты — это отдельные текстовые сообщения, связанные по tool_call_id.
Парный результат получает имя инструмента; осиротевший или неоднозначный результат получает код
причины и не идентифицирует источник.
Для каждого захваченного блока полное обнаружение учётных данных выполняется до предела в 65 536 байт UTF-8. Если распознанное учётное данное встречается где-либо в блоке, весь блок становится не содержащим содержимого. Это предотвращает обрезание секрета на бывшей границе усечения. Двоичные и медиа-тела, скрытые рассуждения, использование токенов, поля выставления счетов и произвольные метаданные провайдера не захватываются.
Общее ядро захвата редактирует распознанные секреты перед сохранением и передачей. Редактирование
— это защита в глубину, а не доказательство отсутствия произвольного конфиденциального текста.
Видимые подсказки и вывод ассистента сами по себе могут содержать конфиденциальный материал,
поэтому настраивайте только доверенный сервер Substrate и проверяйте его политику доступа и
хранения. Неудачные доставки остаются в ограниченном локальном буфере, принадлежащем владельцу.
Буфер резервирует ёмкость для граничных событий и отказывает новейшим событиям при давлении,
вместо того чтобы удалять более старые доказательства. substrate-claude-code status показывает
постоянные счётчики evicted, quarantined, dropped и duplicates без раскрытия содержимого.
Поведение при сбоях
Хуки всегда завершаются с кодом 0. Сбои API, некорректный ввод хуков, нечитаемые или усечённые
транскрипты, повреждённое локальное состояние и сбои воспоминаний не блокируют и не аннотируют
сессию Claude Code. Обычные хуки захвата ничего не пишут в stdout; необязательная диагностика
идёт только в stderr, когда установлен SUBSTRATE_DEBUG. Воспоминание при запуске сессии —
единственный намеренный вывод хука.
Карта репозитория
src/claude_code_memory/— среда выполнения Claude Code, читатель транскрипта, хуки, воспоминания, MCP-сервер и CLI.src/substrate_capture/— замороженное общее ядро захвата, используемое всеми плагинами хоста..claude-plugin/— метаданные плагина и само-листингового маркетплейса..mcp.json— регистрация MCP-сервера через stdio.hooks/hooks.json— регистрация хуков жизненного цикла Claude Code.commands/— командные подсказки/substrate-statusи/substrate-recall.tests/— тесты контрактов общего ядра и хоста Claude Code с синтетическими фикстурами.scripts/— инструменты проверки происхождения и публикации общего ядра.
Разработка
python -m pip install -e '.[dev]'
python -m pytest tests/ -q
ruff check .Не редактируйте src/substrate_capture/ напрямую. Его дайджесты общие для всех репозиториев
хоста и проверяются набором тестов.
Лицензия
MIT © 2026 Sightline Technologies Inc. См. LICENSE.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
- mcpOAuthai.butlerbrain
Persistent memory for AI assistants. Save once; recall from Claude, ChatGPT, or any MCP client.
Persistent AI memory shared across Claude, ChatGPT, coding agents, and compatible MCP clients.
Persistent memory for AI agents — log and recall conversation context over MCP.
Private persistent memory for Claude, ChatGPT & Gemini via MCP - semantic search, zero-code setup.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceMCP server providing persistent, searchable memory management for AI workflows, enabling Claude Code to store, retrieve, and organize context through CRUD operations and knowledge tools.MIT
- -licenseNot gradedqualityBmaintenanceEnterprise-grade MCP server for persistent, intelligent memory management across Claude Code sessions.-

Sekha MCP Serverofficial
AlicenseNot gradedqualityCmaintenanceThis MCP server exposes Sekha memory tools (store, search, update, etc.) to any MCP-compatible client, enabling persistent conversation memory across Claude Desktop, Claude Code, and other applications.2AGPL 3.0- AlicenseNot gradedqualityCmaintenanceMCP Memory Server for Claude Code that provides persistent context across sessions using semantic search (RAG).Apache 2.0
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Substrate-memory/claude-code-substrate-memory'
If you have feedback or need assistance with the MCP directory API, please join our Discord server