Saya sedang mengerjakan sesuatu yang disebut **[Neotoma](/posts/truth-layer-agent-memory)**.[^1]

Belum ada yang perlu dicoba. Ini bukan postingan peluncuran, dan saya tidak mengumumkan produk atau meminta pendaftaran. Masalah ini telah mengganggu saya selama beberapa waktu, dan yang lebih penting, masalah ini secara aktif menghalangi pekerjaan yang saya coba lakukan.

Selama setahun terakhir, saya menghabiskan banyak waktu bereksperimen dengan sistem agen: mengotomatiskan alur kerja, mendelegasikan tugas ke agen, membiarkan sistem beroperasi di seluruh sesi alih-alih memulai dari awal setiap saat. Berkali-kali, saya menemui tembok yang sama. Sistemnya mampu, seringkali sangat mengesankan, namun saya tidak dapat mempercayai sistem tersebut dengan keadaan yang nyata dan berkelanjutan.

Keterbatasan ini tidak hanya bersifat teoretis. Ini merupakan penghambat praktis otomatisasi.

## Sistem AI diam-diam mengubah peran

Itu biasanya adalah sesuatu yang baru saja Anda konsultasikan: Anda mengajukan pertanyaan, mendapat jawaban, dan melanjutkan. Semakin banyak mereka bertindak. Mereka menulis file dan dokumen, memanggil alat dan API, merujuk pada percakapan masa lalu di seluruh sesi, dan mengambil keputusan berantai dari waktu ke waktu tanpa diminta secara eksplisit untuk setiap langkah.

Pada titik ini, data pribadi tidak lagi menjadi bahan referensi dan mulai menjadi *negara*.

Dan negara bagian memiliki persyaratan yang berbeda.

## Yang terus rusak bukanlah kecerdasan, tapi kepercayaan

Sistem memori AI saat ini dibangun berdasarkan kenyamanan. Mereka mengoptimalkan ingatan, kecepatan, dan kelancaran, dan apakah sistem *terasa* seperti mengingat Anda. Tidak ada yang dibangun berdasarkan asal usul, kemampuan inspeksi, pemutaran ulang, atau sebab akibat yang jelas.

Dalam praktiknya, itu berarti saya bisa meminta agen untuk melakukan sesuatu satu kali, namun saya ragu membiarkannya melakukan sesuatu *lagi*. Memori berubah secara implisit. Konteksnya melayang. Asumsi bertambah. Dan ketika terjadi kesalahan, saya tidak dapat menjawab apa yang berubah, mengapa berubah, atau apakah sistem akan mengambil keputusan yang sama jika saya menjalankannya kembali dari awal.

Hal ini dapat ditoleransi jika AI bersifat penasehat, namun tidak dapat ditoleransi jika AI berfungsi.

## Sebagian masalahnya adalah ketidakcocokan kategori

Kami masih memperlakukan data pribadi seperti catatan, gumpalan teks, atau konteks longgar. Sementara itu, agen memperlakukan data yang sama seperti masukan, batasan, pemicu, dan status jangka panjang. Anda tidak dapat mengotomatisasi dengan aman terhadap data yang tidak dapat Anda periksa, bedakan, audit, atau putar ulang.

Ini bukan masalah UX. Ini masalah sistem.

## Apa yang terasa hilang adalah dasar primitif

Keadaan pribadi yang eksplisit, dapat diperiksa, dan dapat diputar ulang.

Domain lain telah menyelesaikan masalah ini sejak lama. Basis data membuat status aplikasi dapat diandalkan. Log peristiwa membuat sistem terdistribusi dapat dimengerti. Buku besar membuat sejarah keuangan dapat diaudit. Data pribadi tidak pernah memerlukan tingkat ketelitian seperti itu sebelumnya, karena manusia dapat mengingat konteksnya atau merekonstruksinya dengan meninjau catatan secara manual.

Agen mengubah asumsi itu.

## Implikasi yang tidak menyenangkan adalah melakukan hal ini dengan benar akan menambah gesekan

Perubahan negara bagian tidak boleh bersifat implisit.

Pembaruan memori harus diberi nama operasi, bukan efek samping. Masukan harus terlihat, bukan disimpulkan. Sejarah harus dapat direkonstruksi, bukan hanya sekedar lamban tangan.

Anda melepaskan sedikit keajaiban dan menerima lebih banyak upacara. Jika tidak, Anda dan agen Anda akan hidup bersama secara tidak dapat diandalkan melalui sudut pandang realitas yang berbeda.

Tidak ada jalan pintas dalam hal ini. Sistem yang mengutamakan kenyamanan dan sistem yang aman bagi agen mempunyai arah yang berlawanan.

## Saya memperlakukan data pribadi seperti sistem produksi memperlakukan negara

Hal ini menyebabkan beberapa konsekuensi yang tidak dapat dihindari. Perilaku harus mengutamakan kontrak: perubahan status bersifat eksplisit, operasi yang diketik, bukan pembaruan ad hoc. Mutasi harus eksplisit. Tidak ada yang "hanya memperbarui memori".

Jika agen akan bertindak, mereka memerlukan antarmuka yang terbatas dan dapat diaudit, bukan perintah atau penyematan yang tidak jelas. Pemutaran ulang sama pentingnya dengan jawaban saat ini: kemampuan menjelaskan bagaimana Anda sampai di sini adalah bagian dari kebenaran.

Masukan yang sama selalu menghasilkan keluaran yang sama karena lapisan memori bersifat deterministik dan agen memiliki substrat yang andal. Perubahan tidak dapat diubah dan dapat dikueri sehingga Anda dapat melihat status entitas kapan saja.

Memori berasal dari dokumen yang Anda unggah dan agen data yang menulis selama percakapan, satu grafik terstruktur yang menyatukan entitas dan peristiwa sehingga agen dapat mempertimbangkan semuanya.

Ini bukanlah preferensi estetika. Mereka langsung gagal dalam mencoba, dan berulang kali gagal, untuk mengotomatiskan alur kerja nyata tanpa kehilangan kepercayaan pada sistem yang melakukan pekerjaan tersebut.

## Mengapa saya mendesainnya seperti ini

Saya menyimpannya MCP dan CLI terlebih dahulu. Tidak ada UI web dan tidak ada memori tersembunyi. Secara default, ini mengutamakan lokal, dengan antarmuka eksplisit untuk agen. Saya hanya menyerap apa yang saya berikan secara eksplisit tanpa pemindaian otomatis atau penyerapan latar belakang. Itu bukan kelalaian, itu adalah pagar pembatas. Mereka mempersulit, baik disengaja maupun tidak, untuk berbohong tentang apa yang diketahui sistem dan bagaimana sistem sampai ke sana.

Saya juga menjadikannya lintas platform dan mengutamakan privasi berdasarkan desain. Ia bekerja dengan ChatGPT, Claude, dan Cursor melalui MCP, tidak terkunci pada satu penyedia. Data Anda tetap menjadi milik Anda, dikontrol oleh pengguna, dan tidak pernah digunakan untuk pelatihan. Itu bukanlah kenyamanan; itu adalah prasyarat untuk kepercayaan.

## Apa yang bukan

Ini bukan aplikasi pencatatan atau "otak kedua"; ini adalah substrat memori terstruktur untuk agen.

Ini bukan Memori ChatGPT atau Proyek Claude yang dikontrol penyedia; itu adalah media Anda sendiri, diekspos melalui MCP sehingga agen mana pun dapat menggunakannya.

Ini bukan penyimpanan vektor atau lapisan RAG; ini adalah memori terstruktur yang mengutamakan skema dengan asal.

Ini bukan agen otonom atau mesin alur kerja atau asisten AI dengan memori tak terlihat; itu adalah agen lapisan memori yang membaca dan menulis, dan Anda mengontrolnya.


Dan itu belum merupakan sesuatu yang saya sebut dapat diandalkan. Saya mencoba membangun lapisan pondasi sebelum berpura-pura ada jaminan.

## Mengapa sekarang

Kami menormalisasi sistem yang mengambil tindakan atas nama kami, mempertahankan keyakinan, dan mengumpulkan keputusan seiring berjalannya waktu. Ketika sistem tersebut gagal, dan memang akan terjadi, pertanyaan pertama yang muncul adalah, "Bagaimana hal ini bisa terjadi?"

Saat ini, sebagian besar alat tidak mampu menjawabnya. Dan selama setahun terakhir, ketidakmampuan itu menjadi hal utama yang menghalangi saya untuk mempercayai agen dengan segala hal yang penting. Masalah itu akan semakin besar.

Web agen mulai muncul. Kami memerlukan sistem di mana pengguna tetap memegang kendali atas memori, bukan di mana kami menyerahkannya ke platform terpusat dan agen bertindak atas nama kami menggunakan metode yang tidak jelas dan tidak dapat diandalkan. Saya membangun Neotoma untuk menyediakan: substrat yang dapat diperiksa, diputar ulang, dan dikontrol pengguna seiring berkembangnya web agen.

## Pratinjau pengembang mendatang

Saya sedang berupaya merilis pratinjau pengembang untuk penggunaan saya sendiri dan pengujian publik. Ini akan menjadi kasar dan jelas tidak dapat diandalkan (misalnya API dapat berubah). Tujuannya adalah untuk menguji ide-ide ini agar dapat digunakan secara nyata, bukan untuk menjual apa pun.

Cara saya mendekati pembangunan: Saya melakukan dogfood terlebih dahulu di tumpukan agen saya sendiri sehingga saya dapat melihat di mana determinisme dan asal usul benar-benar membantu dan di mana hal-hal tersebut menghalangi. Kasus penggunaan meliputi:

- **Tugas dan pelaksanaan** — Tugas, rencana, proyek, dan hasil dengan tanggal jatuh tempo dan pengingat tindak lanjut
- **Kontak dan hubungan** — Catatan kontak dan grafik hubungan yang ditautkan ke komunikasi, tugas, dan acara
- **Komunikasi** — Triase email, pemrosesan yang dipicu alur kerja, dan pelacakan percakapan
- **Keuangan** — Transaksi, arus, pendapatan, kepemilikan, transfer, dan pencatatan biaya
- **Pencatatan** — Laporan pembelian, akun, properti, dan analisis satu kali
- **Konten** — Postingan, riwayat pribadi, media favorit, dan sumber konsumsi
- **Kesehatan** — Kebiasaan, olahraga, dan pelacakan berkelanjutan

Saya memprioritaskan stabilitas MCP dan CLI minimal sebelum menambahkan lebih banyak area permukaan, entitas pengujian stres, dan resolusi hubungan serta kueri garis waktu seiring skala penggunaan.

Jika pembingkaian ini bergema, pekerjaan terjadi secara terbuka di sini:
[https://github.com/markmhendrickson/neotoma](https://github.com/markmhendrickson/neotoma)

Membintangi repo adalah cara paling sederhana untuk memantau perkembangannya. Masukan dari orang-orang yang memikirkan sistem agen dan keadaan yang dapat diskalakan selalu diterima.

[^1]: Dinamakan berdasarkan genus *Neotoma* (packrats), yang dikenal suka mengumpulkan dan mengawetkan material.