Skip to main content
Glama

📜 OpenLore

Release Go Reference

При поддержке

Предоставляйте свою документацию ИИ-агентам через SSH.

OpenLore — это минимальная, расширяемая, агент-ориентированная база знаний, которая поддерживает общий контекст актуальным и проверяемым.


О проекте

ИИ-агенты для написания кода уже умеют исследовать файлы с помощью ls, cat, grep, find, конвейеров и циклов в оболочке. OpenLore предоставляет им тот же интерфейс через SSH, но вместо реальной машины — вашу документацию.

Agent ──SSH or MCP──▶ OpenLore ──▶ docs, knowledge, and artifacts

Всё начинается с однобинарного, не требующего настройки, read-only сервера документации. Когда вам понадобится живая база знаний, вы можете добавить доступ с учётом идентичности, контролируемую публикацию, атомарные записи, валидацию и утверждение человеком — без изменения того, как агенты читают или перемещаются по контенту.

Хранение и получение Markdown

Помещайте документацию, runbook'и, проектный контекст или заметки, созданные агентами, в обычные Markdown-файлы. Никакого конвейера импорта нет: укажите OpenLore на каталог — и он напрямую обслуживает существующую иерархию. Организуйте документы в папки, связывайте их стандартными Markdown-ссылками и группируйте в docset'ы, когда разным людям или агентам нужны разные уровни доступа. OpenLore по умолчанию доступен только на чтение; включите запись, когда хотите, чтобы агенты также создавали и обновляли Markdown.

Демонстрация импорта навыков OpenLore

Related MCP server: AgentBase

Быстрый старт

Самый быстрый путь — позволить агенту настроить OpenLore:

# Teach your agent how to install, configure, and bundle OpenLore
ssh openlore.sh teach | your-agent-cli

# Add documentation access instructions to AGENTS.md
ssh openlore.sh agents >> AGENTS.md

Или установите и запустите его напрямую:

go install github.com/aakarim/go-openlore/cmd/openlore@latest

openlore ./docs

ssh -p 2222 localhost
ssh -p 2222 localhost "grep -r 'authentication' /docs"

По умолчанию запускается:

  • SSH на localhost:2222

  • веб-интерфейс для людей на http://localhost:8080

  • MCP через HTTP на http://localhost:8080/mcp

Дополнительные способы установки и упаковки OpenLore см. в разделе Установка.

Возможности

  • Агент-ориентированный поиск — Агенты используют shell-инструменты и паттерны композиции, которые они уже знают, вместо изучения специального API поиска.

  • Единая поверхность знаний, несколько транспортов — Предоставляйте одну и ту же виртуальную файловую систему через SSH, SFTP/SSHFS, MCP и удобный веб-интерфейс для людей.

  • Живые управляемые знания — Оставляйте контент доступным только для чтения, разрешайте ограниченную публикацию или включайте полную запись для каждого docset'а. Записи атомарны, устойчивы к конфликтам и могут требовать утверждения человеком.

  • Представления с учётом идентичности — Давайте каждому человеку или агенту только те docset'ы, которые ему нужны, с ролевыми грантами ro, publish и rw, псевдонимами путей и приватными домашними каталогами.

  • Безопасность по построению — Оболочка — это интерпретатор Go в памяти, а не реальная системная оболочка. В обычном сеансе нет побега из оболочки, выполнения произвольных процессов или фонового доступа к сети.

  • Переносимые пакеты знаний — Встраивайте документацию в самодостаточный бинарный файл, собирайте кроссплатформенные пакеты с помощью GitHub Action или упаковывайте их как настольное MCP-расширение.

  • Структурированные знания без нового языка запросов — Просматривайте frontmatter как NDJSON с помощью lore meta, запрашивайте его через jq и проверяйте Open Knowledge Format (OKF) компании Google и Agent Skills вблизи пути записи.

  • Расширяемая политика и обработка — Плагины могут добавлять валидацию, гранты, read/write middleware, метаданные и пост-коммитную обработку, сохраняя тот же файловый интерфейс.

Варианты использования

  • Репозиторий непрерывного обучения — храните сеансы и наработки в одном общем сервере. Добавьте метрики, чтобы можно было оптимизировать. Позвольте агентам обмениваться наработками, сохраняя изоляцию пользователей.

  • Командный репозиторий артефактов — делитесь созданными документами markdown, HTML, JSON, Excel и т.д., сохраняя контроль доступа. Это гораздо естественнее, чем git, и более агент-ориентированно, чем Confluence/Notion.

  • Документация для ИИ-агентов кодирования — поместите внутреннюю документацию по API, runbook'и, продуктовый контекст и заметки по архитектуре за знакомый, доступный для grep интерфейс.

  • Общая живая память для команд агентов — дайте агентам отдельные или общие docset'ы, чтобы они могли публиковать результаты, передавать работу и накапливать устойчивый контекст между сеансами.

  • Публичный сайт с документацией — добавьте любые файлы в свой публичный docset, включите публичный доступ, и они будут показаны любому агенту, который наткнётся на ваш сайт. Улучшает AEO/GEO без необходимости редактировать существующую документацию.

  • Обмен навыками — публикуйте Agent Skills в общие коллекции, чтобы каждый авторизованный агент мог обнаруживать и использовать одни и те же управляемые процедуры.

  • Репозиторий плагинов для агентов — закрепляйте версии репозиториев Agent Plugins с GitHub и предоставляйте их агентам вашей команды. Навыки, упакованные по открытому стандарту, автоматически остаются актуальными.

  • Управляемый вклад в знания — разрешите участникам публиковать материалы во входящих, оставляя чувствительные пути для утверждающих и предотвращая случайные перезаписи.

  • Удалённый просмотр артефактов агентов — открывайте отчёты, журналы, скриншоты и сгенерированные файлы через браузер или SSH без создания собственного просмотрщика артефактов и без предоставления доступа к машине агента.

  • Рабочие пространства для конкретных идентичностей — подключайте приватный дом для каждого агента плюс общие командные знания — всё через один сервер и одну модель авторизации.

  • Переносимая клиентская или проектная база знаний — поставляйте исполняемый файл с версией, в который встроена нужная документация, или распространяйте те же знания как настольное расширение MCPB.

  • Проверенные каталоги знаний — применяйте соглашения по frontmatter и пакетам, дёшево просматривайте метаданные и останавливайте некорректные знания на этапе приёма.

Как это работает

OpenLore построен на Wish для транспорта SSH. Подключение полностью обрабатывается в рамках виртуальной файловой системы:

  1. Аутентификация — подключайтесь без ключа или сопоставляйте SSH-ключ, сертификат, passkey или вход через OAuth с идентичностью.

  2. Формирование представления — монтируйте только те docset'ы и пути, которые разрешены этой идентичности.

  3. Исследование — выполняйте shell-команды, реализованные как чистые Go-функции, в рамках этого представления или используйте эквивалентный MCP-инструмент shell.

  4. Безопасный вклад — если запись включена, авторизуйте и проверяйте изменение целого файла перед его атомарным коммитом или направлением на утверждение.

OAuth-клиенты используют делегированные идентичности, поэтому устойчивое происхождение записей отличает непосредственную работу adil от работы, выполненной как adil/claude@claude.ai. Делегаты не могут получить больше полномочий, чем их принципал, и могут быть ограничены по docset'ам и спискам запрещённых возможностей. CIMD-клиенты могут дополнительно аутентифицироваться с помощью метаданных, размещённых у вендора, и private_key_jwt; см. Authenticated OAuth Clients.

Обычная оболочка не может вызывать bash, exec, curl или произвольные хост-процессы. Встроенная документация всегда доступна только для чтения. Явно доверенным идентичностям может быть предоставлена узко ограниченная асинхронная обработка через возможность spawn.

Управляемая запись

OpenLore по умолчанию доступен только для чтения. В развёртываниях с записью сохраняется единый путь записи, управляемый политикой, для редиректов, append, tee, patch, sed -i, перемещения файлов, публикации и одобренных внешних заданий.

echo "# Research" | publish backend findings.md
cat change.diff | patch /backend/api.md
sed -i 's/old/new/g' /backend/runbook.md

Записи — это атомарные замены целых объектов. Защита compare-and-swap по умолчанию отклоняет устаревшие правки, гранты docset'ов ограничивают цель, а выбранные пути могут создавать проверяемые changeset'ы в /requests вместо прямого коммита.

См. Writing and publishing для настройки с точки зрения пользователя и Write system internals для модели реализации.

Установка

Установка с помощью Go

Требуется Go 1.26 или новее:

go install github.com/aakarim/go-openlore/cmd/openlore@latest

Сборка из исходников

git clone https://github.com/aakarim/go-openlore.git
cd go-openlore
go build -o openlore ./cmd/openlore

Встраивание документации в бинарный файл

Поместите документацию в assets/lore/ и выполните сборку. Полученный бинарный файл содержит документацию и обслуживает её в режиме только для чтения по адресу /docs при запуске без аргумента с каталогом:

go build -o my-docs ./cmd/openlore

Сборка с помощью GitHub Action

Создавайте кроссплатформенные бинарные файлы со встроенной документацией:

- uses: aakarim/openlore@v1
  with:
    docs-dir: ./docs
    config: ./openlore.yml

См. Ways to use OpenLore для использования с MCP stdio, настольной упаковкой MCPB, SSHFS и Go-библиотекой.

HTTP-загрузка во входящие

Настройте docset inbox и роль с грантом publish, затем создайте учётные данные для существующей идентичности (в конфигурации сервера должно быть указано auth_file, чтобы CLI мог их проверить):

openlore inbox token create --identity alice --label webhook --config openlore.yml
curl -H 'Authorization: Bearer olin_ID_SECRET' -H 'Content-Type: text/markdown' \
  --data-binary @note.md 'https://docs.example.com/inbox/docs?name=note.md'

POST /inbox/{docset} принимает bearer-учётные данные или HMAC от точного тела с использованием X-OpenLore-Token-Id и X-OpenLore-Signature. OAuth-токены доступа используются только для POST/GET /inbox/tokens и DELETE /inbox/tokens/{id}; учётные данные входящих являются отдельными и отзываемыми. См. Configuration and identity.

Документация

Руководство

Содержимое

Ways to use OpenLore

SSH, MCP, web, SSHFS, встроенные бинарные файлы, GitHub Action, MCPB и использование библиотеки

Command reference

Полный справочник по shell, интроспекции, публикации, синтаксису, CLI-командам и флагам

Configuration and identity

openlore.yml, аутентификация, роли, docset'ы, псевдонимы, домашние каталоги и проверка хоста

Workload identity federation

Аутентификация CI и агентов с помощью кратковременных внешних токенов идентичности

Writing and publishing

Режимы записи, входящие, обработка конфликтов, утверждения и задания

Plugins and knowledge formats

Установка плагинов, интерфейсы, валидация OKF, lore validate и lore meta

Write system internals

Слои файловой системы, шов записи, changeset'ы, хуки и асинхронные задания

Security evaluation

Модель угроз и свойства безопасности

Безопасность

  • Команды выполняются в чистом Go-интерпретаторе, а не через os/exec.

  • Виртуальная файловая система очищает пути и обеспечивает соблюдение границ docset'ов.

  • Разрешённые шаблоны файлов и игнорируемые каталоги не допускают секреты в представление.

  • RBAC управляет чтением, публикацией, записью, утверждениями и доверенными возможностями.

  • Веб-конечная точка может публиковать SSH-хост-ключ через TLS, чтобы избежать слепого доверия при первом использовании; также поддерживаются сертификаты пользователей и хостов SSH.

Полную оценку безопасности см. в SECURITY.md.

Лицензия

MIT — Адиль Карим

OpenLore включает сторонние компоненты с открытым исходным кодом. Их лицензии и требуемые уведомления перечислены в assets/legal/THIRD_PARTY_NOTICES.md, с полными текстами лицензий в assets/legal/licenses/. Они встроены в бинарный файл и предоставляются запущенным сервисом по адресу /legal.

Maintenance

ActivityActive
ResponsivenessWithin a week

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    B
    maintenance
    Provides a shared context layer for AI agent teams to improve token efficiency through context deduplication and incremental state sharing. It enables multiple agents to coordinate tasks, share real-time discoveries, and manage dependencies while significantly reducing redundant data transmission.
    15
    0
    8
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Hosted shared knowledge base for AI agents. Store, search, and retrieve structured knowledge using semantic search. Agents contribute to a growing collective intelligence that compounds over time. No install — just a URL.
    1
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables teams to capture and distill knowledge from sessions, meetings, and feeds into a searchable, vector-embedded graph, then retrieve or synthesize it conversationally via semantic search and citations.
    17
    25
    Apache 2.0