Vault Audit ИИ стал Veynrel: как Obsidian-плагин обзавёлся MCP-сервером и Companion

Habr AI · оригинал

Материал подготовлен автоматизированной редакционной системой. Факты можно сверить по указанному первоисточнику.

Obsidian-плагин Vault Audit AI переименован в Veynrel и расширен за счёт отдельного сервера Companion с поддержкой MCP. Архитектура проекта теперь разделяет чтение данных и запись изменений, обеспечивая безопасное взаимодействие внешних ИИ-агентов с локальной базой знаний.

Ценность: Проект демонстрирует практический подход к интеграции LLM-агентов с локальными хранилищами данных через MCP, решая проблему конкурентного доступа и безопасности записей без потери функциональности.

Obsidian-плагин Vault Audit AI сменил название на Veynrel, что отражает расширение его функциональности за пределы простого аудита заметок. Разработчик объясняет, что старое имя перестало соответствовать реальности после добавления семантического поиска, автоматизации и интеграции с внешними ИИ-клиентами. При этом техническая миграция для пользователей прошла незаметно: существующие настройки, горячие клавиши и семантические индексы сохранились, а старые идентификаторы в коде оставлены ради совместимости.

Ключевым нововведением стал Veynrel Companion — отдельный Node.js-сервис, который хранит постоянное зеркало семантического состояния Vault. Этот слой необходим для сценариев, когда пользователь работает не внутри Obsidian, а во внешних средах, таких как Codex или Claude Code. Companion позволяет ИИ-агентам искать информацию в заметках без необходимости копировать текст вручную в чат, что особенно удобно при работе с большими базами знаний.

Архитектурно разработчик сознательно запретил Companion напрямую записывать файлы Markdown. Это сделано для предотвращения конфликтов с внутренними механизмами Obsidian, такими как AutoSync и отслеживание изменений. Вместо прямого изменения файлов ИИ-агент использует инструмент propose_change, создавая предложение, которое пользователь должен подтвердить внутри плагина. Такой подход сохраняет явную границу между чтением данных агентом и записью изменений пользователем.

Для хранения данных Companion использует SQLite как основное хранилище, а опционально может подключать Qdrant для ускорения векторного поиска. Это решение позволяет избежать зависимости от внешних сервисов: если Qdrant недоступен, данные остаются в локальной базе SQLite. MCP-интерфейс предоставляет семь основных инструментов, включая поиск по семантическому индексу и управление предложениями изменений, что даёт агентам контролируемый доступ к контексту без перегрузки окна контекста.

Проект также претерпел структурные изменения: сервер Companion вынесен в отдельный репозиторий, чтобы избежать конфликтов с требованиями Obsidian Community Plugin Scanner. Это позволило развивать сервис как самостоятельный продукт со своими зависимостями и CI-процессами. Безопасность усилена разделением токенов доступа: один используется для синхронизации плагина, другой — для MCP-клиентов, что предотвращает несанкционированный доступ к состоянию зеркала.

Количество тестов в проекте выросло до 849 в основном плагине и 218 в Companion, что отражает сложность новых сценариев взаимодействия. Разработчик подчёркивает, что явные границы между слоями — чтение, поиск, предложение изменений — повышают надёжность системы. Veynrel теперь представляет собой двухуровневую архитектуру, где плагин управляет Vault, а Companion обеспечивает безопасный доступ для внешних ИИ-агентов через стандартный MCP-протокол.