Shared memory for a team of AI agents — the memory component of iapeer.
iapeer-memory gives a team of iapeer agents one shared, long-term memory. One agent writes down a finding; the whole team retrieves it by search, across session restarts and context compaction. The package is the whole system — a daemon, search, and curators over plain markdown files.
Built for iapeer. It isn't a standalone product — it runs only inside iapeer, alongside
notifier-runtime. It occupies iapeer's single memory slot and reaches agents through iapeer's own mechanisms: the system prompt, messaging, and schedules. Here it's simply the memory part of iapeer.
an agent writes an agent searches
a note into the vault memory_search("…")
│ │
▼ ▼
┌───────────────────────────────────────────┐
│ memoryd — index · search · delivery │
│ one daemon over a plain-markdown vault │
└───────────────────────────────────────────┘
│ │
▼ ▼
curators (on a tick) system prompt:
links · health · consolidation the agent's note map
Requirements: macOS, plus a working iapeer and notifier-runtime — memory is delivered by iapeer's system prompt and driven by notifier's events and schedules.
# install and provision: vault, daemon, curators, the memory slot
npx @agfpd/iapeer-memory initinit asks for the vault path and the folder-layout language (English or Russian), then sets everything up. Once the slot is claimed, every peer gets memory automatically when it's created or onboarded in iapeer (iapeer create / iapeer init) — no separate step. (Running iapeer onboard to set up the host installs memory for you.)
Check the chain:
iapeer-memory status # vault, daemon, slot, search- Shared team memory. One agent's finding is available to all — not per-agent silos. Notes survive session restarts and context compaction.
- One personality, one memory, across runtimes. The same peer on Claude and on Codex works with one memory —
memorydkeys it to the personality, not the runtime. - Memory in the system prompt, not SessionStart shards. The guide and the agent's note map ride iapeer's system-prompt layer, so they survive compaction without re-injected duplicates.
- A plain-markdown vault, Obsidian-compatible. Your data is yours. Open it, edit it by hand, put it in git — no proprietary store.
- Capture goes straight to canon. Write into a typed folder; the write hook fills the metadata (no model) and, at write time, flags a possible duplicate and suggests links — so knowledge doesn't fragment.
- Curation runs on a tick, lean by default, configurable. Ephemeral curators handle link enrichment, proofreading, weekly consolidation, and archive-by-status. Only the daemon is persistent; any curator — or the tick itself — can be turned off.
- Search out of the box. Full-text BM25 with zero external services; optional pluggable vector search and reranking, with a graceful fallback to BM25.
docs/ — what it is and how to use it (English; Russian in docs/ru/). This repository is the implementation.
Apache-2.0. Platform: macOS. iapeer-memory is the reference memory provider for the iapeer ecosystem — a component of iapeer, not a standalone system.