OmniMem

resmi

Oturumlar, 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 briefing isteyin.
  • 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 recall kullanın.
  • Zor kazanılmış deneyimi kaydedin — Gerçek çaba gerektiren derslerin bir dahaki sefere daha kolay yüzeye çıkması için record_experience ile 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_file ile 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

Ric Harvey 50fde316a1

Güvenlik Taramaları / Bandit SAST (push) 7s içinde başarılı

Detaylar

Güvenlik Taramaları / Bağımlılık Denetimi (mcp_server) (push) 40s içinde başarılı

Detaylar

Güvenlik Taramaları / Bağımlılık Denetimi (rss_worker) (push) 30s içinde başarılı

Detaylar

Güvenlik Taramaları / Bağımlılık Denetimi (web_ui) (push) 27s içinde başarılı

Detaylar

Güvenlik Taramaları / Test Kapsamı (push) 1m23s içinde başarılı

Detaylar

Güvenlik Taramaları / Gizli Tarama (push) 4s içinde başarılı

Detaylar

Docker Derleme ve Yayınlama / mcp_server Derle (push) 17m57s içinde başarılı

Detaylar

Docker Derleme ve Yayınlama / web_ui Derle (push) 15m23s içinde başarılı

Detaylar

Docker Derleme ve Yayınlama / rss_worker Derle (push) 2m5s içinde başarılı

Detaylar

'v6.4.x' (#25) dalını v6.4.x'ten main'e birleştir
2026-07-20 01:19:39 +02:00
.forgejo/workflowsci: buildx derlemelerini çoklu mimari derleyiciye sabitle2026-07-17 15:08:57 +00:00
claude_configözellik: otomatik beceri taraması, projeler arası ders kalıplarından taslaklar önerir2026-07-19 17:50:40 +00:00
docsözellik: otomatik beceri taraması, projeler arası ders kalıplarından taslaklar önerir2026-07-19 17:50:40 +00:00
guideschore: dağıtım kılavuzlarından çalıştırılabilir biti kaldır2026-07-17 12:09:52 +00:00
mcp_serverci: kasıtlı 0.0.0.0 test fikstürlerinde bandit B104'ü sustur2026-07-19 23:15:31 +00:00
rss_workerci: kasıtlı 0.0.0.0 test fikstürlerinde bandit B104'ü sustur2026-07-19 23:15:31 +00:00
scriptsdocs: beceri demo oyun kitabı — moo-reports becerisini yükle, derle, göster ve temizle2026-07-17 12:28:05 +00:00
web_uici: kasıtlı 0.0.0.0 test fikstürlerinde bandit B104'ü sustur2026-07-19 23:15:31 +00:00
.env.exampledocs: 6.3.1 — web UI girişi changelog, README, env örneği, geliştirici kılavuzu genelinde2026-07-13 20:44:03 +00:00
.gitignoretest: tüm kod tabanında kapsamı %99,9'a çıkar2026-07-19 19:20:36 +00:00
.gitleaks.tomlci: valkey test dizesindeki gitleaks yanlış pozitifini beyaz listeye al2026-07-19 23:17:59 +00:00
CHANGELOG.mdchore: sürümü 6.4.2'ye yükselt, 6.4.2 hattı için changelog2026-07-19 22:38:45 +00:00
CLAUDE.mdchore: sürümü 6.4.2'ye yükselt, 6.4.2 hattı için changelog2026-07-19 22:38:45 +00:00
docker-compose.hub.ymlözellik: Docker Hub görüntülerini kullanan tek satırlık kurulum betiği2026-07-16 21:29:09 +00:00
docker-compose.test.ymlözellik: Docker tabanlı test çalıştırıcısıyla kapsamlı test paketi ekle2026-03-12 16:44:58 +00:00
docker-compose.ymldüzelt(oauth+security): yenileme belirteci hoşgörü penceresi + sunucu yüzeyini sertleştir2026-07-08 10:40:53 +01:00
install.shdüzelt: install.sh'in curl|bash altında takılmasını durdur ve adım adım ilerleme ekle [skip ci]2026-07-17 16:13:10 +00:00
LICENSEchore: MIT lisansı ekle2026-03-10 19:42:51 +00:00
OMNIMEM_BUILD_PROMPT.mdözellik: ilk proje iskeleti2026-03-09 22:13:35 +00:00
README.mddocs: katkı bölümünde Codeberg geliştirme bildirimini tekrarla2026-07-17 12:10:22 +00:00
TODO.mddocs: gelecekteki özellik fikirleriyle TODO.md ekle2026-03-17 17:46:16 +00:00

<OmniMem>omnimem.org

Security Scans Docker Build Coverage

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 | bash

Ardı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 /metrics uç 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 özelliklerYaşam döngüsü, mezarlık, deneyim puanlaması, yineleme temizliği, çelişkiler, brifing
Beceri derleyicisiDeneyimi 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 bilgiPasif bilgi alımı ve yükseltme
Birden çok makineTers proxy, claude.ai için OAuth 2.1, sorun giderme
Web arayüzüYönetim panosu ve Prometheus metrikleri
MimariKonteynerler, hatırlama hattı, tasarım kararları
Hafıza türü özellikleriDepolama 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.