Skip to main content
Glama

📜 OpenLore

Release Go Reference

Patrocinado por

Sirve tu documentación a agentes de IA a través de SSH.

OpenLore es una base de conocimiento mínima, extensible y nativa para agentes que mantiene el contexto compartido actualizado e inspeccionable.


Acerca de

Los agentes de codificación de IA ya saben explorar archivos con ls, cat, grep, find, tuberías y bucles de shell. OpenLore les ofrece esa misma interfaz a través de SSH, respaldada por tu documentación en lugar de una máquina real.

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

Comienza como un servidor de documentación de un solo binario, sin configuración y de solo lectura. Cuando necesitas una base de conocimiento en vivo, puedes añadir acceso limitado por identidad, publicación controlada, escrituras atómicas, validación y aprobación humana sin cambiar cómo los agentes leen o navegan el contenido.

Almacenar y recuperar Markdown

Coloca documentación, runbooks, contexto de proyecto o notas escritas por agentes en archivos Markdown normales. No hay canalización de ingesta: apunta OpenLore a un directorio y sirve la jerarquía existente directamente. Organiza los documentos con carpetas, conéctalos con enlaces Markdown estándar y agrúpalos en docsets cuando diferentes personas o agentes necesiten accesos distintos. OpenLore es de solo lectura por defecto; habilita la escritura cuando quieras que los agentes también creen y actualicen Markdown.

OpenLore Skills import demo

Related MCP server: AgentBase

Inicio rápido

La vía más rápida es dejar que tu agente configure 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

O instálalo y ejecútalo directamente:

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

openlore ./docs

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

Por defecto, esto inicia:

  • SSH en localhost:2222

  • la vista web para humanos en http://localhost:8080

  • MCP sobre HTTP en http://localhost:8080/mcp

Consulta Instalación para más formas de instalar y empaquetar OpenLore.

Características

  • Recuperación nativa para agentes — Los agentes usan las herramientas de shell y los patrones de composición que ya entienden, en lugar de aprender una API de recuperación a medida.

  • Una única superficie de conocimiento, múltiples transportes — Sirve el mismo sistema de archivos virtual a través de SSH, SFTP/SSHFS, MCP y una vista web amigable para humanos.

  • Conocimiento vivo y gobernado — Mantén el contenido de solo lectura, permite publicación limitada o habilita escrituras completas por docset. Las escrituras son atómicas, conscientes de conflictos y pueden requerir aprobación humana.

  • Vistas limitadas por identidad — Da a cada persona o agente solo los docsets que necesita, con permisos ro, publish y rw basados en roles, alias de ruta y directorios personales privados.

  • Seguro por construcción — El shell es un intérprete de Go en memoria, no un shell real del sistema operativo. No hay escape de shell, ejecución arbitraria de procesos ni acceso de red ambiental en una sesión normal.

  • Paquetes de conocimiento portables — Incrusta documentación en un binario autocontenido, crea paquetes multiplataforma con la GitHub Action o empaquétalos como una extensión MCP de escritorio.

  • Conocimiento estructurado sin un nuevo lenguaje de consulta — Inspecciona el frontmatter como NDJSON con lore meta, consúltalo con jq y valida los paquetes del Open Knowledge Format (OKF) de Google y las Agent Skills cerca de la ruta de escritura.

  • Política y procesamiento extensibles — Los plugins pueden añadir validación, permisos, middleware de lectura/escritura, metadatos y procesamiento posterior al commit mientras se preserva la misma interfaz de sistema de archivos.

Casos de uso

  • Repositorio de aprendizaje continuo - almacena sesiones y aprendizajes en un servidor compartido. Añade métricas para poder optimizar. Permite que los agentes compartan aprendizajes entre sí manteniendo el aislamiento de usuarios.

  • Repositorio de artefactos de equipo - comparte documentos markdown, HTML, JSON, Excel, etc. que hayas creado manteniendo los controles de acceso. Mucho más natural que git, más nativo para agentes que Confluence/Notion.

  • Documentación para agentes de codificación — Coloca documentación interna de API, runbooks, contexto de producto y notas de arquitectura detrás de una interfaz familiar y consultable con grep.

  • Una memoria viva compartida para equipos de agentes — Ofrece a los agentes docsets separados o compartidos para que puedan publicar hallazgos, traspasar trabajo y acumular contexto duradero entre sesiones.

  • Sitio de documentación público - añade cualquier archivo a tu docset público, habilita el acceso público y se mostrará a cualquier agente que se tope con tu sitio. Mejora el AEO/GEO sin necesidad de editar tu documentación existente.

  • Compartir skills — Publica Agent Skills en colecciones compartidas para que cada agente autorizado pueda descubrir y usar los mismos procedimientos gobernados.

  • Repositorio de Agent Plugins — Fija versiones de los repos de Agent Plugins desde GitHub y sírvelos a los agentes de tu equipo. Las skills empaquetadas en el estándar abierto se mantienen actualizadas automáticamente.

  • Contribución de conocimiento gobernada — Permite que los contribuyentes publiquen en bandejas de entrada mientras se reservan rutas sensibles para los aprobadores y se evitan sobrescrituras accidentales.

  • Revisión remota de artefactos de agentes — Expón informes, registros, capturas de pantalla y archivos generados a través del navegador o SSH sin crear un visor de artefactos personalizado ni conceder acceso a la máquina del agente.

  • Espacios de trabajo específicos por identidad — Monta un directorio personal privado para cada agente además del conocimiento compartido del equipo, todo a través de un único servidor y un único modelo de autorización.

  • Conocimiento portable de cliente o proyecto — Distribuye un ejecutable versionado con la documentación relevante incrustada, o distribuye el mismo conocimiento como una extensión de escritorio MCPB.

  • Catálogos de conocimiento validados — Aplica convenciones de frontmatter y de paquetes, inspecciona metadatos de forma económica y detén el conocimiento malformado en el momento de admisión.

Cómo funciona

OpenLore está construido sobre Wish para el transporte SSH. Una conexión se maneja enteramente contra un sistema de archivos virtual:

  1. Autenticar — conéctate sin clave o resuelve una clave SSH, certificado, passkey o inicio de sesión OAuth a una identidad.

  2. Componer una vista — monta solo los docsets y rutas concedidos a esa identidad.

  3. Explorar — ejecuta comandos de shell implementados como funciones Go puras sobre esa vista, o usa la herramienta shell equivalente de MCP.

  4. Contribuir de forma segura — si la escritura está habilitada, autoriza y valida un cambio de archivo completo antes de confirmarlo atómicamente o enviarlo para aprobación.

Los clientes OAuth usan identidades delegadas, por lo que la procedencia duradera de las escrituras distingue el trabajo directo de adil del trabajo realizado como adil/claude@claude.ai. Los delegados no pueden heredar más autoridad que su principal y pueden restringirse mediante listas de denegación por docset y capacidad. Los clientes CIMD también pueden autenticarse con metadatos alojados por el proveedor y private_key_jwt; consulta Clientes OAuth autenticados.

El shell normal no puede invocar bash, exec, curl ni procesos arbitrarios del host. La documentación incrustada es siempre de solo lectura. A las identidades explícitamente confiables se les puede conceder procesamiento asíncrono con alcance limitado mediante la capacidad spawn.

Escritura gobernada

OpenLore es de solo lectura por defecto. Los despliegues con escritura mantienen una única ruta de escritura controlada por políticas para redirecciones, append, tee, patch, sed -i, movimientos de archivos, publicación y trabajos externos aprobados.

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

Las escrituras son intercambios atómicos de objeto completo. La protección de comparar-y-intercambiar rechaza ediciones obsoletas por defecto, los permisos de docset limitan el destino y las rutas seleccionadas pueden producir changesets revisables en /requests en lugar de confirmar directamente.

Consulta Escritura y publicación para la configuración orientada al usuario y Detalles internos del sistema de escritura para el modelo de implementación.

Instalación

Instalar con Go

Requiere Go 1.26 o posterior:

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

Compilar desde el código fuente

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

Incrustar documentación en un binario

Coloca la documentación en assets/lore/ y compila. El binario resultante contiene la documentación y la sirve de solo lectura en /docs cuando se ejecuta sin argumento de directorio:

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

Compilar con la GitHub Action

Produce binarios multiplataforma con tu documentación incrustada:

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

Consulta Formas de usar OpenLore para MCP stdio, empaquetado de escritorio MCPB, SSHFS y uso de la biblioteca Go.

Subidas HTTP a la bandeja de entrada

Configura un inbox de docset y un rol con su permiso publish, luego crea una credencial para una identidad existente (la configuración del servidor debe nombrar auth_file para que la CLI pueda validarla):

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} acepta credenciales bearer o un HMAC de cuerpo exacto usando X-OpenLore-Token-Id y X-OpenLore-Signature. Los tokens de acceso OAuth se usan solo para POST/GET /inbox/tokens y DELETE /inbox/tokens/{id}; las credenciales de la bandeja de entrada son separadas y revocables. Consulta Configuración e identidad.

Documentación

Guía

Contenido

Formas de usar OpenLore

SSH, MCP, web, SSHFS, binarios incrustados, GitHub Action, MCPB y uso de biblioteca

Referencia de comandos

Referencia completa de shell, introspección, publicación, sintaxis, comandos CLI y flags

Configuración e identidad

openlore.yml, autenticación, roles, docsets, alias, directorios personales y verificación del host

Federación de identidades de cargas de trabajo

Autentica CI y agentes con tokens de identidad externa de corta duración

Escritura y publicación

Modos de escritura, bandejas de entrada, manejo de conflictos, aprobaciones y trabajos

Plugins y formatos de conocimiento

Instalación de plugins, interfaces, validación OKF, lore validate y lore meta

Detalles internos del sistema de escritura

Capas del sistema de archivos, costura de escritura, changesets, hooks y trabajos asíncronos

Evaluación de seguridad

Modelo de amenazas y propiedades de seguridad

Seguridad

  • Los comandos se ejecutan en un intérprete puro de Go, no a través de os/exec.

  • El sistema de archivos virtual limpia las rutas y hace cumplir los límites de los docsets.

  • Los patrones de archivo permitidos y los directorios ignorados mantienen los secretos fuera de la vista.

  • El RBAC controla lecturas, publicación, escrituras, aprobaciones y capacidades confiables.

  • El endpoint web puede publicar la clave de host SSH a través de TLS para evitar confianza ciega en el primer uso; también se admiten certificados de usuario y de host SSH.

Consulta SECURITY.md para la evaluación de seguridad completa.

Licencia

MIT — Adil Karim

OpenLore incluye componentes de código abierto de terceros. Sus licencias y avisos requeridos se enumeran en assets/legal/THIRD_PARTY_NOTICES.md, con los textos completos de las licencias en assets/legal/licenses/. Estos están incrustados en el binario y el servicio en ejecución los sirve en /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