OpenLore
resmiAjan-native bilgi sunucusu. AI ajanlarına SSH ve MCP üzerinden kimlik kapsamlı görünümler, yönetilen yazım ve yapılandırılmış meta verilerle dokümanlar sunar. Tek binary, sıfır yapılandırma.
OpenLore MCP ile neler yapabilirsiniz?
-
Serve a shared knowledge base — Point OpenLore at a folder of Markdown and let any agent read the same files over MCP or SSH using familiar tools like
cat,grep, andfind. -
Scope access by identity — Grant each person or agent read-only, publish, or read-write access to specific docsets, with private home directories and path aliases.
-
Publish into governed inboxes — Let agents contribute new documents to an inbox without allowing them to edit existing content, with atomic, conflict-aware writes.
-
Query structured metadata — Inspect frontmatter as NDJSON with
lore metaand filter it withjqto find documents by their metadata. -
Embed docs in a portable binary — Build a self-contained executable with documentation embedded, served read-only at
/docsfor distribution to any team.
Dokümantasyon
📜 OpenLore
Ekibinizdeki her yapay zeka ajanına aynı güncel bilgiyi verin.
OpenLore'u bir Markdown klasörüne yönlendirin; Claude Code, Codex, Cursor veya bir CI işi olsun, ekibinizdeki her ajan aynı dosyaları okusun. Ajanlar, cat, grep ve find gibi zaten bildikleri araçları kullanır. Kimin neyi görebileceğine ve değiştirebileceğine siz karar verirsiniz.
Tek tıkla barındırılan sunucu. OpenLore'u Render'a Dağıtın bölümüne bakın.
Hızlı başlangıç
Bir klasörü kurun ve sunun:
brew install --cask aakarim/tap/lore
openlore ./docs
SSH, 2222 bağlantı noktasında çalışır. Web görünümü ve MCP, 8080 bağlantı noktasını paylaşır. ./docs içeriği / adresinde görünür.
Bir ajan bağlayın:
# Claude Code
claude mcp add --transport http openlore http://localhost:8080/mcp
# Codex
codex mcp add openlore --url http://localhost:8080/mcp
# Anything with a shell
ssh -p 2222 localhost "grep -r 'retry' /"
Ajanlarınıza ne zaman kullanmaları gerektiğini söyleyin:
ssh -p 2222 localhost agents >> AGENTS.md
Veya ajanınızın tüm kurulumu yapmasına izin verin:
ssh openlore.sh teach | claude
Homebrew kullanmıyor musunuz? Linux ve Windows için Quickstart bölümüne bakın.
Neden Markdown'ı sadece deponuzda tutmuyorsunuz?
Tek bir depodaki tek bir ajan için bunu yapın.
OpenLore, birkaç ajanın, deponun veya kişinin aynı bilgiye ihtiyaç duyduğu ve kimin neyi okuyabileceğini, yazabileceğini veya yayınlayabileceğini söylemeniz gereken durumlar içindir. Bir dosyayı bir kez güncelleyin; her ajan bir sonraki okumada yeni sürümü görür.
Vektör veritabanı, alım hattı veya SDK yoktur. Bilginiz sıradan Markdown olarak kalır.
Rehberler
- OpenLore nedir
- Claude Code
- Codex
- Cursor
- OpenCode
- SSH üzerinden herhangi bir ajan
- Bir ajanın bir gelen kutusuna yayınlamasına izin verin
- Render'a dağıtın
- Tüm dokümantasyon
Özellikler
- Ajana özgü erişim — Ajanlar, özel bir erişim API'si öğrenmek yerine zaten anladıkları kabuk araçlarını ve kompozisyon kalıplarını kullanır.
- Tek bilgi yüzeyi, birden çok aktarım — Aynı sanal dosya sistemini SSH, SFTP/SSHFS (doğrudan VS Code tarama ve düzenleme dahil), MCP ve insan dostu bir web görünümü üzerinden sunun.
- Canlı, yönetilen bilgi — İçeriği salt okunur tutun, kapsamlı yayınlamaya izin verin veya belge seti başına tam yazma etkinleştirin. Yazmalar atomiktir, çakışma farkındadır ve kaydedilmeden önce doğrulanır.
- Kimlik kapsamlı görünümler — Her kişiye veya ajana yalnızca ihtiyaç duyduğu belge setlerini, rol tabanlı
ro,publishverwizinleri, yol takma adları ve özel ana dizinlerle verin. - Tasarım gereği güvenli — Kabuk, gerçek bir işletim sistemi kabuğu değil, bellek içi bir Go yorumlayıcısıdır. Normal bir oturumda kabuk kaçışı, keyfi işlem yürütme veya ortam ağ erişimi yoktur.
- Taşınabilir bilgi paketleri — Belgeleri kendi kendine yeten bir ikili dosyaya gömün, GitHub Action ile platformlar arası paketler oluşturun veya bunları bir masaüstü MCP uzantısı olarak paketleyin.
- Yeni bir sorgu dili olmadan yapılandırılmış bilgi — Ön yüz maddeyi
lore metaile NDJSON olarak inceleyin,jqile sorgulayın ve Google'ın Open Knowledge Format (OKF) paketlerini ve Agent Skills'i yazma yoluna yakın doğrulayın. - Genişletilebilir politika ve işleme — Eklentiler, aynı dosya sistemi arayüzünü korurken doğrulama, izinler, okuma/yazma ara katman yazılımı, meta veriler ve kayıt sonrası işleme ekleyebilir.
Kullanım Durumları
- Sürekli Öğrenme deposu — oturumları ve öğrenimleri tek bir paylaşılan sunucuda saklayın. Optimize edebilmeniz için metrikler ekleyin. Kullanıcı izolasyonunu korurken ajanların birbirleriyle öğrenim paylaşmasına izin verin.
- Ekip Artefakt Deposu — erişim kontrollerini korurken oluşturduğunuz markdown, HTML, JSON, Excel vb. belgeleri paylaşın. Git'ten çok daha doğal, Confluence/Notion'dan daha ajan dostu.
- Kodlama ajanları için dokümantasyon — Dahili API belgelerini, çalıştırma kitaplarını, ürün bağlamını ve mimari notlarını tanıdık, aranabilir bir arayüzün arkasına koyun.
- Ajan ekipleri için paylaşılan canlı bellek — Ajanlara ayrı veya paylaşılan belge setleri verin; böylece bulguları yayınlayabilir, işleri devredebilir ve oturumlar arasında kalıcı bağlam biriktirebilirler.
- Genel dokümantasyon sitesi — genel belge setinize herhangi bir dosya ekleyin, genel erişimi etkinleştirin; sitenize rastlayan herhangi bir ajana gösterilecektir. Mevcut belgelerinizi düzenlemenize gerek kalmadan AEO/GEO'yu iyileştirir.
- Beceri paylaşımı — Agent Skills'i paylaşılan koleksiyonlara yayınlayın; böylece yetkili her ajan aynı yönetilen prosedürleri keşfedebilir ve kullanabilir.
- Ajan Eklentileri deposu — GitHub'dan Agent Plugins depolarını sürüm sabitleyin ve ekibinizin ajanlarına sunun. Açık standartta paketlenmiş beceriler otomatik olarak güncel kalır.
- Yönetilen bilgi katkısı — Katkıda bulunanların gelen kutularına yayınlamasına izin verin; mevcut belgeleri bakımcılara ayırın ve yanlışlıkla üzerine yazmaları önleyin.
- Artefakt deposu — Özel bir artefakt görüntüleyici oluşturmadan veya ajanın makinesine erişim vermeden raporları, günlükleri, ekran görüntülerini ve oluşturulan dosyaları tarayıcı veya SSH üzerinden saklayın ve sunun.
- Kimliğe özel çalışma alanları — Her ajan için özel bir ana dizin ve paylaşılan ekip bilgisi, tümü tek bir sunucu ve tek bir yetkilendirme modeli üzerinden bağlayın.
- Taşınabilir müşteri veya proje bilgisi — İlgili belgeleri gömmüş sürümlü bir yürütülebilir dosya gönderin veya aynı bilgiyi bir MCPB masaüstü uzantısı olarak dağıtın.
- Doğrulanmış bilgi katalogları — Ön yüz madde ve paket kurallarını uygulayın, meta verileri ucuz bir şekilde inceleyin ve hatalı biçimlendirilmiş bilgiyi kabul anında durdurun.
Nasıl Çalışır
OpenLore, SSH aktarımı için Wish üzerine kurulmuştur. Bir bağlantı tamamen sanal bir dosya sistemine karşı işlenir:
- Kimlik doğrulama — anahtarsız bağlanın veya bir SSH anahtarı, sertifika, parola veya OAuth girişini bir kimliğe çözümleyin.
- Bir görünüm oluşturun — yalnızca o kimliğe verilen belge setlerini ve yolları bağlayın.
- Keşfedin — bu görünüm üzerinde saf Go işlevleri olarak uygulanan kabuk komutlarını çalıştırın veya eşdeğer MCP
shellaracını kullanın. - Güvenle katkıda bulunun — yazma etkinse, atomik olarak kaydetmeden önce tüm dosya değişikliğini yetkilendirin ve doğrulayın.
OAuth istemcileri devredilmiş kimlikler kullanır; bu nedenle kalıcı yazma kaynağı, adil tarafından yapılan doğrudan çalışmayı adil/claude@claude.ai olarak yapılan çalışmadan ayırır. Temsilciler, asıllarından daha fazla yetki miras alamaz ve belge seti ve yetenek reddetme listeleriyle daraltılabilir. CIMD istemcileri ayrıca satıcı tarafından barındırılan meta veriler ve private_key_jwt ile kimlik doğrulayabilir; Authenticated OAuth Clients bölümüne bakın.
Normal kabuk bash, exec, curl veya keyfi ana bilgisayar işlemlerini çağıramaz. Gömülü dokümantasyon her zaman salt okunurdur. Açıkça güvenilen kimliklere, spawn yeteneği aracılığıyla dar kapsamlı eşzamansız işleme verilebilir.
Yönetilen Yazma
OpenLore varsayılan olarak salt okunurdur. Yazılabilir dağıtımlar, yönlendirmeler, ekleme, tee, patch, sed -i, dosya taşıma, yayınlama ve güvenilir harici işler için tek, politika kontrollü bir yazma yolu tutar.
echo "# Research" | publish /backend/findings.md
cat change.diff | patch /backend/api.md
sed -i 's/old/new/g' /backend/runbook.md
Yazmalar, tüm nesne atomik takaslarıdır. Karşılaştır-ve-değiştir koruması varsayılan olarak eski düzenlemeleri reddeder, belge seti izinleri hedefi kısıtlar ve eklentiler kaydetmeden önce bir yazmayı doğrulayabilir veya erteleyebilir.
Kullanıcıya yönelik kurulum için Writing and publishing ve uygulama modeli için Write system internals bölümüne bakın.
Kurulum
Homebrew, Linux ve Windows sürümleri ve hangi kurulumların kontrol panelini içerdiği için Quickstart bölümüne bakın. OpenLore'u kendiniz oluşturmak için Building from source bölümüne bakın.
Belgeleri bir ikili dosyaya gömün
Dokümantasyonu assets/lore/ içine yerleştirin ve oluşturun. Ortaya çıkan ikili dosya belgeleri içerir ve dizin bağımsız değişkeni olmadan çalıştırıldığında bunları /docs adresinde salt okunur olarak sunar:
make dashboard-build # optional: include the web UI
go build -o my-docs ./cmd/openlore
GitHub Action ile oluşturun
Belgeleriniz gömülü platformlar arası ikili dosyalar üretin:
- uses: aakarim/openlore@v1
with:
docs-dir: ./docs
config: ./openlore.yml
Doğrudan VS Code düzenleme, MCP stdio, MCPB masaüstü paketleme, SSHFS ve Go kitaplığı kullanımı için Ways to use OpenLore bölümüne bakın.
Özelleştirilmiş bir dağıtım oluşturun
setup becerisini kullanarak, resmi bir OpenLore sürümüne sabitlenmiş ince bir Containerfile içeren küçük, müşteriye ait bir depo olan <team>-lore oluşturun ve openlore.yml ve dağıtım artefaktlarını içerir. Dağıtımdan önce çalışan bir yerel sunucu oluşturur ve HTTP, MCP, kimliği doğrulanmış SSH, yazmalar ve kalıcılığı doğrular:
ssh openlore.sh setup | amp
Oluşturulan depo, ilk lore.json politikasını ve SSH tarafından görülebilen dosyaları gitignore edilmiş .local/ altında tutar. İlk dağıtım, bu durumdan boş bir kalıcı birim başlatır. Kök openlore.yml, Git/IaC yetkilisi olarak kalır ve /var/lib/openlore/config/openlore.yml öğesine ayrı olarak dağıtılır; görüntüye gömülmez. Sunucudaki sonraki lore.json ve dosya sistemi düzenlemeleri yetkilidir ve görüntü güncellemeleri tarafından asla üzerine yazılmaz.
Ek talimat komutları tam yaşam döngüsünü destekler:
onboardingyerel olarak ilk kimlikleri, rolleri, ana dizinleri ve klasörleri ekler;deployFly.io, Railway, AWS, Google Cloud, Azure, DigitalOcean veya özel bir dağıtım seçer ve paylaşılan bir kalıcılık/ağ oluşturma sözleşmesini doğrular;upgradeyalnızca sabitlenmiş temel görüntü sürümü değişikliğini hazırlar; böylece mevcut CD bunu dağıtabilir.
Sağlayıcı dağıtımları HTTPS/MCP, kimliği doğrulanmış OpenLore SSH, yönetim kabuğu erişimi ve kalıcı bir /var/lib/openlore birimi gerektirir. Sağlayıcı desteklediğinde, dağıtım genel bağlantı noktası 22'yi OpenLore bağlantı noktası 2222'ye iletmek üzere yapılandırır. Aksi takdirde atanan bağlantı noktasını bildirir ve harici bir TCP iletme sistemi önerir.
Yayınlanan kapsayıcı yalnızca OpenLore içerir. Kasıtlı olarak hiçbir katılım politikası veya sunucu yapılandırması içermez. Hizmet başlamadan önce, dağıtım openlore.yml ve lore.json öğelerini kalıcı yapılandırma dizinine koymalı ve şunu çalıştırmalıdır:
./out --config /var/lib/openlore/config/openlore.yml
Bu, yapılandırmayı bağımsız olarak dağıtılabilir tutar: basit bir dağıtım openlore.yml öğesini birime kopyalayabilirken, Kubernetes aynı dosyayı bir ConfigMap'ten yansıtabilir. Fly.io, Railway, AWS, Google Cloud, Azure, DigitalOcean veya özel altyapı için deploy becerisini kullanın. Deponun Railpack ve Fly dosyaları görüntüyü, kalıcı birimi ve bağlantı noktası kablolamasını sağlar; işlem başlangıcında yapılandırmayı tohumlamaz veya değiştirmez.
Özelleştirilmiş bir depo olmadan hızlı bir barındırılan sunucu için Deploy to Render düğmesini kullanın. Railpack ve Fly dosyalarının aksine, başlangıç betiği ilk önyüklemede boş bir diske bir başlangıç openlore.yml ve lore.json yazar. Render yalnızca HTTPS, MCP ve web görünümünü sunar; OpenLore SSH için genel TCP girişi yoktur.
Railway, SSH TCP proxy'sine genel bir ana bilgisayar adı ve bağlantı noktası atar. Standart SSH bağlantı noktası 22, harici bir ham TCP yük dengeleyici gerektirir. Fly.io, genel bağlantı noktası 22'yi özel bir adresle OpenLore'un dahili bağlantı noktası 2222'ye eşleyebilir. Ham SSH'de ana bilgisayar adı veya SNI yönlendirmesi yoktur, bu nedenle tek bir dinleyici bağlantı noktası 22'de birden çok alan adını yönlendiremez.
Kapsayıcı iş akışı main öğesinden latest yayınlar; sürümler ayrıca VERSION, vVERSION, ana ve alt görüntü etiketlerini yayınlar.
Dokümantasyon
Aynı sayfalar, aynı gruplar halinde openlore.sh/docs adresinde yayınlanır.
Giriş
| Sayfa | İçerik |
|---|---|
| OpenLore nedir | Tek sayfada sunun, bağlayın, kapsamlandırın, yönetin ve gözlemleyin |
| Değişiklik günlüğü | Geçerli sürüm, sürüm notları, uyumluluk notları ve sürümlü dokümantasyon |
Başlangıç
| Sayfa | İçerik |
|---|---|
| Hızlı başlangıç | OpenLore'u kurun, bir klasör sunun ve bir aracı bağlayın |
| Claude Code | Claude Code'u MCP üzerinden bağlayın ve gördüklerini kapsamlandırın |
| Codex | Codex'i MCP üzerinden bağlayın |
| Cursor | Cursor'ı MCP üzerinden bağlayın |
| OpenCode | OpenCode'u MCP üzerinden bağlayın |
| SSH üzerinden herhangi bir aracı | Bir kodlama aracını veya CI işini SSH üzerinden bağlayın ve ona bir kimlik verin |
Kavramlar
OpenLore nasıl çalışır: docset'ler, aktarım katmanları, kimlik, yazma, kurallar ve gözlem.
| Sayfa | İçerik |
|---|---|
| Docset'ler | Docset'in ne olduğu, erişimin neden bunlar etrafında düzenlendiği ve iç içe yerleştirme, izinler, takma adlar ve kapalı-kal başarısız doğrulamanın nasıl çalıştığı |
| Aktarım katmanları | SSH, SFTP, MCP, JSON API ve web'in tek bir dosya sistemini, MCP araçlarını, komut sonuçlarını, oturumları ve talimat komutlarını nasıl paylaştığı |
| Kimlik doğrulama | Kimlik doğrulama duruşu, SSH anahtarlarının, sertifikaların, geçiş anahtarlarının, OAuth belirteçlerinin ve gelen kutusu kimlik bilgilerinin bir kimliğe, rollere, docset'lere, takma adlara, ana dizinlere ve iş yükü kimliği federasyonuna nasıl çözümlendiği |
| Yazma ve yayımlama | Yazma modları, gelen kutuları, çakışma yönetimi, başarılı bir yazmanın neyi kontrol ettiğini ve neyi kontrol etmediğini ve işler |
| Klasör kuralları | .lore/config.yaml ve lore.json kuralları, katmanlama, izinler, reddetme mesajları ve büyüme sınırları |
| Eklentiler ve biçimler | Sağlayıcı arayüzleri, Open Knowledge Format doğrulaması, lore validate, lore meta ve Agent Skills eklentisi |
| Pano ve ölçümler | Pano kimlik doğrulaması, gerçekler ile etkinlik arasındaki fark ve dosya görüntüleyici |
Nasıl yapılır
Görev anlatımları.
| Sayfa | İçerik |
|---|---|
| OpenLore'u kullanma yolları | SSH, HTTP ve stdio üzerinden MCP, web görünümü, SSHFS, gömülü ikili dosyalar, GitHub Action, MCPB ve kitaplık kullanımı kurulumu |
| Sunucuyu yapılandırma | openlore.yml oluşturun, gömülü yapılandırma ve bayraklar üzerinde öncelik, analizler ve hata ayıklama günlüğü |
| Bir aracının gelen kutusuna yayımlamasına izin verme | Bir aracının başka hiçbir şeyi düzenlemesine izin vermeden katkılarını kabul edin |
| Bir düzenleyiciden göz atma ve düzenleme | Yerel bir proje yansıması olmadan doğrudan VS Code ve SFTP düzenleyici kurulumu |
| Headlong / shellm ile çalıştırma | OpenLore'u headlong'un shellm motoru üzerinden SSH ile kullanın, bakım becerisi dahil |
| Kaynaktan derleme | Web arayüzünü ve ikili dosyayı kendiniz derleyin veya web arayüzü olmadan derleyin |
| OpenLore'u Render'a dağıtma | Tek tıklamayla Render dağıtımı, ilk geçiş anahtarı oturumu, yükseltmeler ve özel alan adları |
Başvuru
Arama materyali: komutlar, anahtarlar, uç noktalar, arayüzler ve iç işleyiş.
| Sayfa | İçerik |
|---|---|
| Komut başvurusu | Eksiksiz kabuk, içgözlem, yayımlama, sözdizimi, CLI komutu ve bayrak başvurusu |
| openlore.yml başvurusu | openlore.yml'in kabul ettiği her anahtar için oluşturulan başvuru |
| Kurallar standart kitaplığı | Derlenmiş kural üyeleri ve parametreleri için oluşturulan başvuru |
| HTTP gelen kutusu API'si | Taşıyıcı veya HMAC kimlik bilgileriyle POST /inbox/{docset} ve belirteç uç noktaları |
| OAuth istemcileri | CIMD istemci kimliği, private_key_jwt, mTLS doğrulaması ve imzalama anahtarı döndürme |
| Yazma sistemi iç işleyişi | Dosya sistemi katmanlama, yazma dikişi, kabul ara katmanı ve zaman uyumsuz işler |
| Panoyu derleme | Ön uç derlemesi ve yalnızca arka uç Go derlemeleri |
| Güvenlik değerlendirmesi | Tehdit modeli ve güvenlik özellikleri |
Güvenlik
- Komutlar,
os/execüzerinden değil, saf Go yorumlayıcısında çalışır. - Sanal dosya sistemi yolları temizler ve docset sınırlarını zorlar.
- İzin verilen dosya desenleri ve yok sayılan dizinler, sırları görünümden uzak tutar.
- RBAC, okuma, yayımlama, yazma, onaylar ve güvenilir yetenekleri kontrol eder.
- Web uç noktası, ilk kullanımda kör güveni önlemek için SSH ana bilgisayar anahtarını TLS üzerinden yayımlayabilir; SSH kullanıcı ve ana bilgisayar sertifikaları da desteklenir.
Tam güvenlik değerlendirmesi için SECURITY.md dosyasına bakın.
Lisans
Apache License 2.0 — Telif Hakkı © 2026 Adil Karim
OpenLore, üçüncü taraf açık kaynak bileşenlerini birlikte sunar. Bunların lisansları ve gerekli bildirimleri
assets/legal/THIRD_PARTY_NOTICES.md içinde listelenir; tam lisans metinleri
assets/legal/licenses/ içindedir. Bunlar ikili dosyaya gömülüdür ve çalışan hizmet tarafından /legal adresinde sunulur.