<p align="center">
  <img src="../assets/hero-banner-dark.svg" alt="TrueMemory" width="800">
</p>

<p align="center">
  <em>Memori yang seharusnya sudah dimiliki AI Anda sejak awal.</em>
</p>

<p align="center">
  <a href="../README.md"><img alt="English" src="https://img.shields.io/badge/English-d9d9d9"></a>
  <a href="./README.zh-CN.md"><img alt="简体中文" src="https://img.shields.io/badge/简体中文-d9d9d9"></a>
  <a href="./README.hi.md"><img alt="हिन्दी" src="https://img.shields.io/badge/हिन्दी-d9d9d9"></a>
  <a href="./README.es.md"><img alt="Español" src="https://img.shields.io/badge/Español-d9d9d9"></a>
  <a href="./README.fr.md"><img alt="Français" src="https://img.shields.io/badge/Français-d9d9d9"></a>
  <a href="./README.ar.md"><img alt="العربية" src="https://img.shields.io/badge/العربية-d9d9d9"></a>
  <a href="./README.bn.md"><img alt="বাংলা" src="https://img.shields.io/badge/বাংলা-d9d9d9"></a>
  <a href="./README.pt-BR.md"><img alt="Português" src="https://img.shields.io/badge/Português-d9d9d9"></a>
  <a href="./README.ru.md"><img alt="Русский" src="https://img.shields.io/badge/Русский-d9d9d9"></a>
  <a href="./README.ja.md"><img alt="日本語" src="https://img.shields.io/badge/日本語-d9d9d9"></a>
  <a href="./README.ko.md"><img alt="한국어" src="https://img.shields.io/badge/한국어-d9d9d9"></a>
  <a href="./README.de.md"><img alt="Deutsch" src="https://img.shields.io/badge/Deutsch-d9d9d9"></a>
  <a href="./README.id.md"><img alt="Bahasa Indonesia" src="https://img.shields.io/badge/Indonesia-d9d9d9"></a>
  <a href="./README.vi.md"><img alt="Tiếng Việt" src="https://img.shields.io/badge/Tiếng Việt-d9d9d9"></a>
  <a href="./README.tr.md"><img alt="Türkçe" src="https://img.shields.io/badge/Türkçe-d9d9d9"></a>
  <a href="./README.it.md"><img alt="Italiano" src="https://img.shields.io/badge/Italiano-d9d9d9"></a>
  <a href="./README.th.md"><img alt="ไทย" src="https://img.shields.io/badge/ไทย-d9d9d9"></a>
  <a href="./README.pl.md"><img alt="Polski" src="https://img.shields.io/badge/Polski-d9d9d9"></a>
  <a href="./README.uk.md"><img alt="Українська" src="https://img.shields.io/badge/Українська-d9d9d9"></a>
  <a href="./README.nl.md"><img alt="Nederlands" src="https://img.shields.io/badge/Nederlands-d9d9d9"></a>
</p>

<p align="center">
  <a href="https://github.com/buildingjoshbetter/TrueMemory"><img src="https://img.shields.io/github/stars/buildingjoshbetter/TrueMemory?style=social" alt="Stars"></a>
  <a href="https://pypi.org/project/truememory/"><img src="https://img.shields.io/badge/installs-7.3k+-brightgreen" alt="Installs"></a>
  <a href="https://arxiv.org/abs/2605.04897"><img src="https://img.shields.io/badge/arXiv-2605.04897-b31b1b" alt="arXiv"></a>
  <a href="https://discord.gg/ZJ74JB2gVW"><img src="https://img.shields.io/badge/Discord-Join%20us-5865F2?logo=discord&logoColor=white" alt="Discord"></a>
</p>

<p align="center">
  <img src="https://img.shields.io/badge/LoCoMo-93.0%25-blueviolet" alt="LoCoMo">
  <img src="https://img.shields.io/badge/LongMemEval-92.0%25-blue" alt="LongMemEval">
  <img src="https://img.shields.io/badge/BEAM--1M-76.6%25_(SOTA)-orange" alt="BEAM-1M">
</p>

<p align="center">
  <a href="#mengapa-truememory">Mengapa</a> · <a href="#mulai-cepat">Mulai Cepat</a> · <a href="#perbandingan-truememory">Perbandingan</a> · <a href="#tingkatan">Tingkatan</a> · <a href="#benchmark">Benchmark</a> · <a href="#python-api">API</a> · <a href="#dokumentasi">Dokumentasi</a> · <a href="#faq">FAQ</a>
</p>

<p align="center">
  <img src="../assets/terminal-demo.svg" alt="Demo terminal TrueMemory" width="750">
</p>

---

## Mengapa TrueMemory

**Ia menemukan sinyal di tengah kebisingan.** AI Anda melihat ribuan pesan. TrueMemory menentukan mana yang benar-benar penting, dan membuang sisanya. Tanpa penandaan manual, tanpa prompt engineering. Ia hanya tahu.

**Ia semakin tajam seiring waktu.** Ini bukan database statis. Ini adalah memori hidup yang tumbuh bersama Anda. Ia menyelesaikan kontradiksi saat Anda berubah pikiran, memperbarui fakta yang usang, dan mengonsolidasikan apa yang ia ketahui. Semakin lama Anda menggunakannya, semakin baik hasilnya.

**Ia bekerja tanpa Anda perlu memikirkannya.** TrueMemory secara otomatis menangkap memori dari percakapan Anda dan secara otomatis menyuntikkan memori yang tepat ke sesi berikutnya. Anda tidak perlu menyimpan atau mencari apa pun secara manual. Semuanya terjadi begitu saja.

**100% lokal.** Satu file SQLite di mesin Anda. Tidak ada yang meninggalkan perangkat Anda. Tanpa cloud, tanpa kunci API yang diperlukan. Data Anda adalah milik Anda.

> **Tanpa TrueMemory:** "Framework apa yang kita pakai?" Ditanyakan untuk ke-12 kalinya minggu ini. Agen Anda memulai setiap sesi dengan amnesia. Ia tidak tahu nama Anda, stack Anda, atau apa pun yang Anda ceritakan kemarin.
>
> **Dengan TrueMemory:** Agen Anda sudah tahu bahwa Anda menggunakan FastAPI, lebih suka Pydantic v2, dan bahwa middleware auth Anda ada di `src/auth/`. Ia mengingat koreksi Anda, preferensi Anda, dan keputusan Anda. Di setiap sesi, selamanya.

---

## Perbandingan TrueMemory

| Sistem | LoCoMo | LongMemEval | Lokal-utama | Tangkap Otomatis | Lisensi |
|--------|--------|-------------|:-----------:|:------------:|---------|
| **TrueMemory Pro** | **93.0%** | **92.0%** | ✅ | ✅ | AGPL-3.0 |
| **TrueMemory Base** | **87.7%** | **84.1%** | ✅ | ✅ | AGPL-3.0 |
| Mem0 | 61.4% | — | Sebagian | ❌ | Apache-2.0 |
| Supermemory | 65.4% | — | ❌ | ❌ | Cloud API |
| MemOS | 75.8% | — | ✅ | ❌ | Apache-2.0 |
| ReadAgent | 79.5% | — | ❌ | ❌ | Research |

> Semua benchmark dapat direproduksi secara independen. Skrip tersedia di [`benchmarks/`](../benchmarks/).

---

## Mulai Cepat

### Untuk Claude Code / Claude CLI / Cursor / Codex CLI / Gemini CLI

```bash
curl -LsSf https://raw.githubusercontent.com/buildingjoshbetter/TrueMemory/main/install.sh | sh
```

> Menginstal semuanya di lingkungan terisolasi. Mengunduh ~1,5 GB model AI. Tidak ada data yang meninggalkan mesin Anda. Tidak perlu sudo.

<details><summary>Baru mengenal terminal? Klik di sini untuk petunjuk langkah demi langkah.</summary>

1. **Buka terminal:** Mac: `Cmd + Space`, ketik `Terminal`. Linux: `Ctrl + Alt + T`. Windows: buka PowerShell.
2. **Tempel perintah di atas** dan tekan Enter.
3. **Tunggu 3-5 menit** untuk model diunduh.
4. **Tutup alat AI Anda sepenuhnya** dan buka kembali (Mac: `Cmd+Q`).
5. **Ketik "Set up TrueMemory"** dan pilih tingkatan.

**Windows (PowerShell):**
```powershell
irm https://raw.githubusercontent.com/buildingjoshbetter/TrueMemory/main/install.ps1 | iex
```

</details>

Itu saja. TrueMemory mengingat percakapan Anda secara otomatis mulai sekarang.

### Untuk pengembang (pustaka Python)

```bash
pip install truememory
```

```python
from truememory import Memory

m = Memory()
m.add("Prefers dark mode and TypeScript", user_id="alex")
print(m.search("preferences", user_id="alex"))
```

---

## Tingkatan

Arsitektur yang sama, tiga tingkatan. Semua termasuk dalam satu instalasi. Beralih kapan saja dengan mengatakan "switch to Pro" atau "switch to Base."

| | Edge | Base | Pro |
|---|------|------|-----|
| **LoCoMo** | 89.6% | 92.0% | **93.0%** |
| **LongMemEval** | — | — | **92.0%** |
| **BEAM-1M** | — | — | **76.6% (SOTA)** |
| **Model embedding** | 8 MB ringan | 600 MB akurasi tinggi | 600 MB akurasi tinggi |
| **Reranker** | 22M parameter | 149M parameter | 149M parameter |
| **Pencarian HyDE** | — | — | ✅ (memerlukan kunci API LLM) |
| **Berjalan di** | Mesin apa pun, hanya CPU | 4 GB+ RAM | 4 GB+ RAM + kunci API |

**Edge** berfungsi di mana saja. **Base** adalah tingkatan offline penuh terkuat. **Pro** menambahkan ekspansi kueri berbasis AI untuk skor tertinggi.

---

## Benchmark

<p align="center">
  <img src="../assets/charts/leaderboard-bar.png" alt="Papan Peringkat Benchmark" width="700" />
</p>

Diuji di tiga benchmark utama dengan semua sistem menggunakan model jawaban yang sama (GPT-4.1-mini), juri yang sama (GPT-4o-mini, 3x suara mayoritas), dan pipeline penilaian yang sama.

| Benchmark | Apa yang diuji | TrueMemory Pro |
|-----------|--------------|:--------------:|
| [LoCoMo](https://github.com/snap-research/locomo) | 1.540 pertanyaan dari 10 percakapan | **93.0%** |
| [LongMemEval](https://github.com/xiaowu0162/LongMemEval) | 500 pertanyaan multi-sesi | **92.0%** |
| [BEAM-1M](https://github.com/mohammadtavakoli78/BEAM) | 700 pertanyaan pada 1M+ token | **76.6% (SOTA)** |
| BEAM-10M | 200 pertanyaan pada 10M token | **65.0%** |

### Reproduksi hasilnya sendiri

Setiap skrip benchmark berdiri sendiri dan berjalan di [Modal](https://modal.com).

- **[Skrip LoCoMo](../benchmarks/locomo/scripts/)** — 8 sistem (TrueMemory, Mem0, Zep, Engram, dll.)
- **[Hasil LoCoMo](../benchmarks/locomo/BENCHMARK_RESULTS.md)** — rincian per kategori, latensi, biaya
- **[Konfigurasi Eval LoCoMo](../benchmarks/locomo/EVAL_CONFIG.md)** — model, prompt, parameter yang tepat
- **[Skrip LongMemEval](../benchmarks/longmemeval/)** — varian oracle + strict
- **[Hasil LongMemEval](../benchmarks/longmemeval/results/)** — 6 run TM Pro + 5 hasil kompetitor
- **[Skrip BEAM-1M](../benchmarks/beam/bench_truememory_pro_beam1m.py)** — 35 percakapan pada 1M+ token
- **[Skrip BEAM-10M](../benchmarks/beam/bench_truememory_pro_beam10m.py)** — 10 percakapan pada 10M token
- **[Hasil BEAM](../benchmarks/beam/)** — 3 run (1M) + 1 run (10M)

Semua benchmark menggunakan pipeline evaluasi yang sama. Tidak ada yang disembunyikan. Detail lengkap: [LoCoMo](../benchmarks/locomo/EVAL_CONFIG.md) | [LongMemEval](../benchmarks/longmemeval/README.md) | [BEAM](../benchmarks/beam/README.md)

---

## Kompatibel Dengan

<p align="center">
  <strong>Claude Code</strong> · <strong>Claude CLI</strong> · <strong>Cursor</strong> · <strong>Codex CLI</strong> · <strong>Gemini CLI</strong> · <strong>Claude Desktop</strong>
</p>

Lifecycle hook menangkap percakapan secara otomatis. Tidak perlu kerja manual. Memori Anda tetap lokal dalam satu file SQLite.

---

## Python API

```python
from truememory import Memory

m = Memory()

m.add("Prefers dark mode and TypeScript", user_id="alex")
m.add("Works at Anthropic as a senior engineer", user_id="alex")

results = m.search("What are Alex's preferences?", user_id="alex")
results = m.search_deep("career history?", user_id="alex")  # multi-round, higher accuracy
```

| Metode | Deskripsi |
|--------|-----------|
| `m.add(content, user_id)` | Menyimpan memori |
| `m.search(query, user_id)` | Pencarian (pipeline 6-lapis + reranker) |
| `m.search_deep(query, user_id)` | Pencarian agentik multi-ronde |
| `m.get(id)` / `m.get_all(user_id)` | Mengambil memori |
| `m.update(id, content)` / `m.delete(id)` | Mengubah atau menghapus |
| `m.stats()` | Statistik sistem |

[Referensi API lengkap →](../docs/python-api.md)

---

## Dokumentasi

| | |
|---|---|
| [Memulai](../docs/guides/getting-started.md) | Dari instalasi ke memori pertama |
| [Referensi Python API](../docs/python-api.md) | Referensi lengkap kelas `Memory` |
| [Referensi MCP Tool](../docs/mcp-tools.md) | Semua 8 MCP tool |
| [Referensi CLI](../docs/cli.md) | `truememory-mcp` dan `truememory-ingest` |
| [Variabel Lingkungan](../docs/env-vars.md) | Semua opsi konfigurasi `TRUEMEMORY_*` |
| [Arsitektur Mendalam](../docs/architecture.md) | Pipeline pengambilan 6-lapis, encoding gate |
| [Panduan Pemilihan Tingkatan](../docs/guides/tier-selection.md) | Edge vs Base vs Pro |
| [Debugging](../docs/guides/debugging.md) | Log, trace, masalah umum |

---

## FAQ

<details><summary><strong>Di mana data saya disimpan? Apakah ada yang dikirim ke cloud?</strong></summary>

Semuanya tersimpan secara lokal di `~/.truememory/memories.db`. Tingkatan Edge dan Base tidak melakukan panggilan eksternal sama sekali. Pro hanya mengirim teks kueri pencarian Anda ke LLM untuk ekspansi kueri. Memori Anda tidak pernah dikirimkan.
</details>

<details><summary><strong>Apakah saya perlu menginstal Python?</strong></summary>

Tidak. Installer menggunakan [uv](https://docs.astral.sh/uv/) untuk mengelola Python 3.12 yang terisolasi. Python sistem Anda tidak akan diubah.
</details>

<details><summary><strong>Mengapa tidak menggunakan context window yang lebih besar saja?</strong></summary>

Context window itu mahal, lambat, dan kosong di awal setiap sesi. TrueMemory memberikan pengingatan instan tanpa token konteks, dalam waktu kurang dari 200 ms.
</details>

<details><summary><strong>Apakah TrueMemory mengumpulkan telemetri?</strong></summary>

Telemetri penggunaan anonim (panggilan tool, jumlah sesi, info platform) aktif secara default. Kami **tidak pernah** melacak konten memori, kueri, path file, atau kunci API. Nonaktifkan: `export TRUEMEMORY_TELEMETRY=off`
</details>

---

## Mulai dalam 60 Detik

```bash
pip install truememory
```

Pertanyaan? [Buka Diskusi](https://github.com/buildingjoshbetter/TrueMemory/discussions). Jika TrueMemory menghemat waktu Anda, [beri kami bintang](https://github.com/buildingjoshbetter/TrueMemory)

---

## Terima Kasih kepada Kontributor Kami

<table>
  <tr>
    <td align="center"><a href="https://github.com/buildingjoshbetter"><img src="https://avatars.githubusercontent.com/u/236675935?v=4" width="80" alt="buildingjoshbetter"/><br><sub>buildingjoshbetter</sub></a></td>
    <td align="center"><a href="https://github.com/SoilChang"><img src="https://avatars.githubusercontent.com/u/12407044?v=4" width="80" alt="SoilChang"/><br><sub>SoilChang</sub></a></td>
    <td align="center"><a href="https://github.com/Huntehhh"><img src="https://avatars.githubusercontent.com/u/66277108?v=4" width="80" alt="Huntehhh"/><br><sub>Huntehhh</sub></a></td>
    <td align="center"><a href="https://github.com/mseep-ai"><img src="https://avatars.githubusercontent.com/u/207640208?v=4" width="80" alt="mseep-ai"/><br><sub>mseep-ai</sub></a></td>
    <td align="center"><a href="https://github.com/adityajha2005"><img src="https://avatars.githubusercontent.com/u/147301021?v=4" width="80" alt="adityajha2005"/><br><sub>adityajha2005</sub></a></td>
    <td align="center"><a href="https://github.com/shivamverma1999"><img src="https://avatars.githubusercontent.com/u/33162868?v=4" width="80" alt="shivamverma1999"/><br><sub>shivamverma1999</sub></a></td>
    <td align="center"><a href="https://github.com/Adarsh-031"><img src="https://avatars.githubusercontent.com/u/185399508?v=4" width="80" alt="Adarsh-031"/><br><sub>Adarsh-031</sub></a></td>
    <td align="center"><a href="https://github.com/nareshkarthigeyan"><img src="https://avatars.githubusercontent.com/u/130460278?v=4" width="80" alt="nareshkarthigeyan"/><br><sub>nareshkarthigeyan</sub></a></td>
  </tr>
</table>

---

## Riset

TrueMemory didukung oleh makalah riset yang telah ditinjau sejawat tentang memori agen berbasis pengambilan.

**[Storage Is Not Memory: A Retrieval-Centered Architecture for Agent Recall](https://arxiv.org/abs/2605.04897)** — arXiv 2605.04897

```bibtex
@article{adler2025storage,
  title   = {Storage Is Not Memory: A Retrieval-Centered Architecture for Agent Recall},
  author  = {Sauron Labs},
  journal = {arXiv preprint arXiv:2605.04897},
  year    = {2025},
  url     = {https://arxiv.org/abs/2605.04897}
}
```

---

## Komunitas

- [Bergabung dengan Discord kami](https://discord.gg/ZJ74JB2gVW) untuk bantuan, masukan, dan pembaruan
- Ikuti [@Building_Josh](https://x.com/Building_Josh) di X untuk pembaruan
- Ikuti [@Sauron_Labs](https://x.com/Sauron_Labs) untuk berita perusahaan
- [Buka Diskusi](https://github.com/buildingjoshbetter/TrueMemory/discussions) untuk pertanyaan atau ide
- Baca makalahnya di [arXiv](https://arxiv.org/abs/2605.04897) · [Google Scholar](https://scholar.google.com/citations?user=YOUR_ID) · [Semantic Scholar](https://www.semanticscholar.org/)
- Kunjungi [truememory.net](https://truememory.net) · [sauronlabs.ai](https://sauronlabs.ai)

Jika TrueMemory menghemat waktu Anda, [beri kami bintang](https://github.com/buildingjoshbetter/TrueMemory)

---

## Lisensi

[AGPL-3.0](../LICENSE). Gratis untuk penggunaan pribadi dan riset. Penggunaan komersial memerlukan lisensi terpisah. Hubungi josh@sauronlabs.ai.

---

<p align="center">
  <em>TrueMemory, sebuah perusahaan <a href="https://sauronlabs.ai"><strong>sauron</strong></a></em>
</p>
