OmniMem
resmiOturumlar, projeler ve makineler arasında AI Ajanlarına kalıcı bellek sağlayan, kendi kendine barındırılan bir MCP sunucusu.
OmniMem MCP ile neler yapabilirsiniz?
Yapay zeka ajanınıza kalıcı, kendi kendine barındırılan bir hafıza verin — oturumlar, projeler ve makineler arasında — ve ona "zaten başarısız olmuş bir kütüphaneyi önermeden önce mezarlığı kontrol etmesini" söyleyin.
- Oturum brifingi — Proje bağlamı, deneyim istatistikleri, bayat anılar, yeni makaleler ve beceri önerilerini tek bir çağrıda almak için
briefingisteyin. - Geçmiş çıkmazlardan kaçının — Ajanın, daha önce başarısız olmuş bir kütüphane veya desen önermeden önce mezarlığı kontrol etmesini sağlayın.
- Geçmiş kararları hatırlayın — Projeler arasındaki önceki oturumlardan kararları, düzeltmeleri ve desenleri yüzeye çıkarmak için
recallkullanın. - Zor kazanılmış deneyimi kaydedin — Gerçek çaba gerektiren derslerin bir dahaki sefere daha kolay yüzeye çıkması için
record_experienceile bir düzeltmeyi günlüğe kaydedin. - Anıları tekilleştirin — Neredeyse aynı saklanan anıları işaretlemek ve toplu olarak temizlemek için
find_duplicatesçalıştırın. - Hafızanızı yedekleyin —
dump_to_fileile her şeyi size ait bir JSON dosyasına dışa aktarın.
Dokümantasyon
Self-hosted yapay zeka ajanları için anlamsal bellek. Kalıcı oturumlar, deneyim puanlama ve çıkmaz sokaklar için bir mezarlık; okuduğunuz RSS'lerden edinilen bilgiyle desteklenen, Valkey vektör aramasında saklanan ve bir MCP sunucusu olarak sunulan. https://omnimem.org
<OmniMem>omnimem.org
Geliştirme Codeberg üzerinde yapılıyor — sorunlar ve PR'lar lütfen oraya.
Aynı oturumu iki kez yaşamayı bırak.
Her Claude Code oturumu sıfırdan başlar. Projenizin hafızası yok. Geçen hafta neyin başarısız olduğuna dair hafıza yok. Geçen Salı, işe yarayan bir şey bulmadan önce onnxruntime'nin Alpine'da neden patladığını keşfetmek için üç saat harcadığınıza dair hafıza yok.
Bu yüzden projeyi tekrar anlatırsınız. Claude yine aynı bozuk kütüphaneyi önerir. Aynı alarm. Aynı şarkı. Siz Bill Murray'siniz ve Claude da Punxsutawney.
OmniMem bunu düzeltir. Yapay zeka ajanınıza oturumlar, projeler ve makineler arasında kalıcı bellek sağlayan, kendi kendine barındırılan bir MCP sunucusudur. Kendi donanımınızda çalışır ve sonsuza dek ücretsizdir.
claude> use onnxruntime for the embeddings
⚠ WARNING: previously abandoned approach
onnxruntime — SIGILL crash on Alpine musl libc (effort: 4/5)
→ switched to sentence-transformers instead
Bu uyarı bellekten geldi, şanstan değil. Zaten ödediğiniz hata, sizden iki kez ücret alamaz.
Hızlıca başlayın
İpucu
Tek bir komut, önceden derlenmiş Docker Hub görüntülerinden tüm yığını çalıştırır:
curl -fsSL https://codeberg.org/ric_harvey/omnimem/raw/branch/main/install.sh | bashArdından ajanınızı ona yönlendirin — hızlı başlangıç geri kalanını adım adım anlatır veya aşağıdaki daha kapsamlı hızlı başlangıç bölümüne atlayın.
Neleri hatırlar
Beş tür bellek, hatırlama anında hepsi birlikte aranır:
- Epizodik — verdiğiniz kararlar, düzelttiğiniz hatalar, keşfettiğiniz kalıplar. Gerçekten çaba gerektiren ve her sabah yeniden öğrenilmek zorunda olmaması gereken şeyler.
- Proje bağlamı — yığınınız, hedefleriniz ve mevcut durumunuz. Ajan her oturuma soğuk başlamak yerine önceden bilgilendirilmiş olarak gelir.
- Bilgi — yapılandırdığınız RSS akışları, bir zamanlamayla getirilir, Claude Haiku tarafından özetlenir, gömülür ve saklanır. Geçen hafta ilgili bir makale yayınlandıysa, okumaya değer bir başlangıç noktası olarak yüzeye çıkar.
- Tercihler — nasıl çalışmak istediğinize dair kuralcı kurallar ("bir özellik tamamlandıktan sonra README'yi her zaman güncelle"), konuşmalarınızdan otomatik olarak çıkarılır ve geçerli olduklarında yüzeye çıkarılır.
- Beceriler — bir alandaki birikmiş deneyiminizden derlenen SKILL.md belgeleri, böylece ajan ilk istemden itibaren sizin yolunuzla çalışır. Diğer ad alanlarından türetilir, asla elle düzenlenmez ve her değişiklik sizin incelemenizden geçer. Beceri derleyicisine bakın. En üstteki hatırlama sonucu, altı ay önce farklı bir projeden alınmış bir karar, dünkü bir çözüm veya Salı gecesi yayınlanmış bir makale olabilir. Faydalı olduğu sürece nereden geldiği önemli değildir.
Farkını yaratan nedir?
Sadece MCP sarmalayıcılı bir anahtar-değer deposu değil. OmniMem, hafızanın gerçekte nasıl çalıştığını modeller: şeyler zamanla kaybolur, bazen birbirleriyle çelişir ve zor kazanılan bilgiler yerini hak eder.
- Mezarlık — her çıkmaz sokak, denedikleriniz, neden başarısız olduğu ve ne kadar zaman harcadığınızla birlikte kaydedilir. Ajan, bir kütüphane veya desen önermeden önce bunu kontrol eder.
- Deneyim puanlaması — dört deneme ve tuhaf bir platform geçici çözümü gerektiren bir şey altındır. Ne kadar zorsa, bir dahaki sefere o kadar kolay yüzeye çıkar.
- Hafıza yaşam döngüsü —
ACTIVE → DEPRIORITISED → ARCHIVED → DELETED. "X'i unut" genellikle onu gündeme getirmeyi bırak anlamına gelir, varlığından silmek değil. Önceliği düşürülen anılar geri kazanılabilir. - Çelişki tespiti — yeni bir anı saklanan bir şeyle çelişirse, OmniMem bunu yakalar. Her yazmada hızlı sezgisel yöntem, Claude Haiku ile isteğe bağlı daha derin analiz.
- Anlamsal yineleme temizliği — neredeyse aynı anılar yazma sırasında işaretlenir ve
find_duplicates()ile toplu olarak temizlenir. - Tek çağrıda brifing — tek bir
briefing()proje bağlamını, deneyim istatistiklerini, bayat anıları, yeni makaleleri, çelişki uyarılarını ve beceri önerilerini döndürür. Üç adımlı ısınma yok. - Beceri derleyicisi — pekiştirilmiş dersleri ve çıkmaz sokakları yüklenebilir becerilere dönüştürür; öner-ve-kabul kapısının arkasında, kötü derslerin sessizce politika haline gelmemesi için.
- Otomatik bakım — yinelenenler arşivlenir, çelişkiler işaretlenir, süresi dolan bilgiler temizlenir, hepsi arka planda.
- Web arayüzü — htmx panosundan her şeye göz atın, arayın ve yönetin; telemetri ve bir Prometheus
/metricsuç noktasıyla.
Her hatırlamanın arkasındaki sıralama formülü:
score = similarity x surface_score x recency x experience_weight
Geri dönen şeyi dört faktör belirler. Yalnızca anlamsal benzerlik yeterli değildir — yaşam döngüsü durumu, yaş ve dersin ne kadar zor öğrenildiği de rol oynar.
Herhangi bir MCP ajanıyla çalışır
Hepsi için tek hafıza katmanı: claude.ai, Claude Code, Claude Desktop, Cursor, GitHub Copilot, GitLab Duo, AWS Kiro, OpenCode, OpenAI Codex CLI ve Open Design.
Mimari
Dört konteyner. Hiçbir şey makinenizden çıkmaz. sentence-transformers ile yerel yerleştirmeler, vektör aramalı Valkey'de depolama ve her iki ön kapı da aynı hafıza motorunu paylaşır.
flowchart TB
agent["AI agent<br/>Claude Code · claude.ai · Cursor · Copilot · ..."]
browser["Browser"]
agent -- "MCP · Streamable HTTP / SSE · :8765" --> mcp
browser -- "HTTP · :8080" --> webui
subgraph stack["Docker Compose stack"]
mcp["MCP server<br/>Python · FastMCP<br/><i>remember · recall · briefing<br/>compile_skill · record_experience</i>"]
webui["Web UI<br/>Starlette · htmx · Jinja2<br/><i>dashboard · search · skills<br/>projects · backups · /metrics</i>"]
rss["RSS worker<br/>feedparser · APScheduler<br/>Claude Haiku summaries"]
valkey[("Valkey + valkey-search<br/>HNSW vector indexes<br/><i>idx:episodic · idx:project · idx:knowledge<br/>idx:preference · idx:skill</i>")]
mcp <--> valkey
webui <--> valkey
rss --> valkey
end
Tam resim — hatırlama hattı, depolama modeli ve tasarım kararları — docs/architecture.md içindedir.
Kendi kendine barındırılan, açık kaynak, sizin
SaaS yok. Satıcıya bağımlılık yok. Başkasının sunucusuna gönderilen bağlam yok.
- Valkey, açık kaynaklı bir Redis çatalıdır. Tüm verileriniz kendi makinenizde adlandırılmış bir Docker biriminde kalır.
- Çok mimarili Docker görüntüleri amd64 ve arm64 için. Raspberry Pi, AWS Graviton veya Apple Silicon'da x86 kadar iyi çalışır.
- sentence-transformers yerleştirmeleri API çağrısı olmadan yerel olarak çalıştırır.
- MIT lisanslı olması, çatallayabileceğiniz, genişletebileceğiniz ve istediğiniz yerde çalıştırabileceğiniz anlamına gelir.
- Tek yedekleme komutu
dump_to_file()çağırır ve her şeyi sahip olduğunuz bir JSON dosyasına dışa aktarır.
MCP bağlantı noktasını ters proxy'niz aracılığıyla açın ve çalıştığınız her makine aynı hafızayı paylaşsın. Tek dağıtım, her yerde — bkz. docs/remote-access.md.
Hızlı başlangıç
Yükleyici, Docker'ın kurulu olduğunu kontrol eder, güvenli parolalar üretir, mantıklı bir .env yazar ve önceden oluşturulmuş Docker Hub görüntülerinden her şeyi başlatır:
curl -fsSL https://codeberg.org/ric_harvey/omnimem/raw/branch/main/install.sh | bash
Veya kaynaktan derleyin:
git clone https://codeberg.org/ric_harvey/omnimem.git && cd omnimem
cp .env.example .env
# Set VALKEY_PASSWORD and ANTHROPIC_API_KEY in .env
docker compose up -d
Ardından ajanınızı ona yönlendirin — Claude Code (~/.claude.json):
{
"mcpServers": {
"omnimem": {
"type": "sse",
"url": "http://localhost:8765/sse"
}
}
}
Sunucu, kullanım kılavuzunu MCP instructions alanı aracılığıyla bağlanan herhangi bir ajana otomatik olarak iletir — yapılandırma dosyası gerekmez. Web panosu http://localhost:8080 adresindedir.
Kimlik doğrulama belirteçleri, izin ayarları ve diğer ajanlar dahil tam yol gösterici docs/quick-start.md içindedir.
Dokümantasyon
| Hızlı başlangıç | Yükleyici, kaynaktan derleme, ajanınızı bağlama |
| Derinlemesine özellikler | Yaşam döngüsü, mezarlık, deneyim puanlaması, yineleme temizliği, çelişkiler, brifing |
| Beceri derleyicisi | Deneyimi yüklenebilir becerilere derleme |
| MCP araç referansı | 30'dan fazla aracın tümü |
| Yapılandırma referansı | Her ortam değişkeni |
| RSS ve bilgi | Pasif bilgi alımı ve yükseltme |
| Birden çok makine | Ters proxy, claude.ai için OAuth 2.1, sorun giderme |
| Web arayüzü | Yönetim panosu ve Prometheus metrikleri |
| Mimari | Konteynerler, hatırlama hattı, tasarım kararları |
| Hafıza türü özellikleri | Depolama modeli, alan alan |
| Bağlantı kılavuzları | Ajan başına kurulum |
| Dağıtım kılavuzları | macOS · Raspberry Pi · AWS · GCP · Linux + Tailscale Funnel |
Valkey'e tam olarak neyin ve kim tarafından yazıldığını bilmek istiyorsanız, ad alanı başına depolama özellikleri: genel bakış · epizodik · proje · bilgi · tercih · beceri
Katkıda bulunma
Sorunlar ve çekme istekleri memnuniyetle karşılanır. Geliştirme Codeberg üzerinde yapılır — lütfen sorunları ve çekme isteklerini oraya iletin. OmniMem genişletilebilecek şekilde tasarlanmıştır ve puanlama hattı, çekirdeğe dokunmadan yeni çarpanlar eklenebilecek şekilde yapılandırılmıştır. Yeni MCP araçları, ek ad alanı türleri ve alternatif yerleştirme arka uçları makul yönlerdir.
Lisans
MIT. Kullanmak, çatallamak ve değiştirmek ücretsizdir. Kurumsal katman yok, barındırılan sürüm yok, hiçbir koşul yok.
Araçlarına sahip olmayı tercih edenler için bir yapay zeka ve otomasyon danışmanlık şirketi olan SquareCows Ltd bünyesinde Ric Harvey tarafından geliştirilmiştir.