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.

A
license - permissive license
Not graded
quality - not tested
A
maintenance

Maintenance

Maintainers
Response time
1wRelease cycle
6Releases (12mo)
Commit activity

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Your company's brain for AI agents. Cited, permission-aware knowledge across every system.

  • Shared knowledge base for AI agents. Semantic search across agents, no setup required — just a URL.

  • Shared, permission-aware company context for AI agents, with provenance, approvals and audit.

View all MCP Connectors

Latest Blog Posts

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/aakarim/OpenLore'

If you have feedback or need assistance with the MCP directory API, please join our Discord server