# Overview The transient memory module (`@agent-smith/tmem`) provides a key-value store backed by IndexedDB via [localForage](https://localforage.github.io/localForage/). It enables persistent in-browser storage that survives page reloads, with an API modeled after synchronous local storage but implemented entirely asynchronously. ## Install ```bash npm i @agent-smith/tmem ``` ## Quick Start Import the `useTmem` factory function, create a store with an initial data object, and call `init()` to populate it: ```typescript import { useTmem } from "@agent-smith/tmem"; const tmem = useTmem("myStore", { greeting: "hello", count: 0 }); await tmem.init(); // Store a new value await tmem.set("greeting", "world"); // Read a value (throws if key doesn't exist) const greeting = await tmem.get("greeting"); console.log(greeting); // "world" // Delete and list keys await tmem.del("count"); const keys = await tmem.keys(); console.log(keys); // ["greeting"] ``` ## Browser Only `tmem` uses IndexedDB through localForage, so it only works in browser environments. It is not suitable for Node.js server-side use — use `@agent-smith/smem` (LanceDB) for persistent memory on the server side. Next: Usage