IWE: A Markdown‑Based Agent Memory System
Use IWE to manage agent memory with markdown files, providing persistence, structure, and query capabilities.
Clone the IWE repo, set up a directory of markdown notes, and start using `iwe find` and `iwe update` commands
Summary
The article introduces IWE, a Rust binary that treats a directory of markdown files as a knowledge graph. Links between files become edges, allowing inclusion, reference, and hierarchical relationships. IWE exposes a query language similar to Mongo filters, supporting filters, includes, references, and structural anchors. Writeback is achieved with `iwe update` commands that can set or unset frontmatter fields across multiple notes. Forgetting is handled by `iwe delete` with reference‑aware cleanup and a dry‑run preview. The system avoids vector databases and proprietary formats, keeping data human‑readable and version‑controlled. The article walks through each of the five components—persistence, structure, retrieval, writeback, forgetting—highlighting how IWE provides a single source of truth that is auditable and reversible.
Key changes
- Persistence via markdown files in a directory
- Graph structure through inclusion and reference links
- Query language with Mongo‑style filters and structural anchors
- Writeback with `iwe update` applying changes across matches
- Forgetting with `iwe delete` that cleans links and supports dry‑run
- No vector database or proprietary format
- Audit trail via Git commits
- Single source of truth readable by humans