Compound Memory
Resumen
Descripción del creador (original en inglés)
Local-first shared memory for multiple AI agents that compounds with use; Markdown + git, MCP + CLI.
Los tres pilares de PopNx MCP
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
- Opinión de usuariosiAún no hay reseñasLas reseñas se abrirán junto con las cuentas en una etapa posterior
- Nuestras revisiones básicasi1 de 1 superadasRevisado con información pública; el código aún no se ha escaneado
- UsoiMuy nuevo↓ 135/sem · ★ –
Qué puedes hacer con él
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
- Conexión: Se ejecuta en tu computadora
- Transporte: stdio
- Categoría: Búsqueda y memoria de IA
Instalación
Elige la app de IA que usas y copia la configuración.
Antes de instalar
- Revisiones básicas: 1 de 1 superadas
- Se ejecuta en tu computadora con los permisos de tu usuario (archivos, red, apps).
- Debes completar tú:
COMPOUND_MEMORY_ROOT,COMPOUND_MEMORY_AGENT_ID
Necesitas
- PyPIuv de Python instalado (para el comando uvx)
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"compound-memory": {
"command": "uvx",
"args": [
"compound-memory"
],
"env": {
"COMPOUND_MEMORY_ROOT": "your-value",
"COMPOUND_MEMORY_AGENT_ID": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add compound-memory --env COMPOUND_MEMORY_ROOT=your-value --env COMPOUND_MEMORY_AGENT_ID=your-value -- uvx compound-memoryCompleta los valores vacíos antes de ejecutarlo.
O copia la configuración tú
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"compound-memory": {
"command": "uvx",
"args": [
"compound-memory"
],
"env": {
"COMPOUND_MEMORY_ROOT": "your-value",
"COMPOUND_MEMORY_AGENT_ID": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
O copia la configuración tú
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"compound-memory": {
"type": "stdio",
"command": "uvx",
"args": [
"compound-memory"
],
"env": {
"COMPOUND_MEMORY_ROOT": "your-value",
"COMPOUND_MEMORY_AGENT_ID": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
Valores que debes completar
COMPOUND_MEMORY_ROOTenvStore root directory. A leading ~ or $HOME/${HOME} is expanded; unset or blank falls back to $HOME/.agents/memoryCOMPOUND_MEMORY_AGENT_IDenvStable host agent id (e.g. agent-claude). Required for a multi-agent store: process identity wins over a self-reported source. Unset is only for a single trusted caller; stats.attestation.warning and…
Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Qué puede hacer
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisiones básicasi
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 8 nov 2026
- ✓ Superada
El creador coincide con el repo
El nombre en el registro se verificó con la cuenta de GitHub chinwe, dueña del repo
- … Aún sin revisar
Sigue en mantenimiento
Todavía no hemos leído este repo en GitHub
- … Aún sin revisar
Tiene licencia
Todavía no hemos leído este repo en GitHub
- – No aplica
El endpoint responde
Este se ejecuta en tu computadora; no hay endpoint en internet
- – No aplica
Inicio de sesión con OAuth
Se ejecuta en tu computadora y usa ajustes locales en su lugar
- … Aún sin revisar
Sin instrucciones ocultas en las descripciones de herramientas
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con otros en Búsqueda y memoria de IAi
- Más estrellas que el 0% de los otros 5696 servidores de esta categoría
- Publicado en el registro más recientemente que el 81% de los otros 5696 servidores de esta categoría
- Revisiones básicas iguales o mejores que el 100% de los otros 5696 servidores de esta categoría
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Preguntas frecuentes
¿Es seguro Compound Memory?
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
¿Qué claves o códigos necesita?
El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.
¿Se ejecuta en mi computadora o en la nube?
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
¿Sigue en mantenimiento?
El repo de GitHub cambió por última vez –, y la última versión (0.5.12) llegó al registro hace 9 días.
¿Qué apps pueden usarlo?
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Python (uv) en tu computadora.
¿Qué puedo usar en su lugar?
En la misma categoría: Context7, Codebase Memory, Exa
Alternativas
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
Codebase Memory
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Exa
Connect AI agents to Exa for web search, content fetching, and multi-step research.
README del creador
Abrir el README
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
compound-memory
English | 简体中文
Local-first shared memory for multiple AI agents — plain Markdown files that compound in value as they are used. Memory lives on your disk as frontmatter-annotated Markdown, gets stronger with every confirmed use, decays into a revivable archive when neglected, and auto-commits to a local git history on every write.
Why
Every agent session starts from zero: preferences get re-asked, project conventions get re-discovered, the same pitfall gets hit twice. compound-memory gives all your agents one shared store:
- Local-first — nothing leaves your machine; memories are human-readable Markdown files, not rows in an opaque database.
- MCP-native — exactly 5 tools (
memory_write/memory_search/memory_get/memory_link/memory_feedback) as the single read-write boundary; works with any MCP host (Claude Code, ZCode, WorkBuddy, …), plus a full CLI for operations. - Compounding — confirmed usage raises confidence, related memories are recalled as neighbors, validation from a *different* host counts as independent evidence, and distillation merges many raw memories into fewer, denser ones.
- Multi-agent by design — a
_sharednamespace everyone reads, plusagent-*private namespaces each host owns; cross-host validation is tracked per host. - Optional semantic recall — vector search via sqlite-vec + BGE embeddings, with automatic graceful fallback to pure lexical search when unavailable. Override the model with
COMPOUND_MEMORY_EMBEDDING_MODEL(defaultXenova/bge-small-zh-v1.5) andCOMPOUND_MEMORY_EMBEDDING_DIM(default 512); changing either is an ops action and needs an explicitrebuild-index.
Quick Start
For AI agents
Paste this one-liner into your coding agent (Claude Code, Cursor, ZCode, …) and let it do the rest:
Set up compound-memory (https://github.com/chinwe/compound-memory) — a local-first multi-agent shared memory (MCP server + CLI) — on this machine. Do not clone the repo for a normal install. Initialize the store with `uvx --from compound-memory compound-memory init` (defaults to ~/.agents/memory). Register its stdio MCP server in this host's MCP config: command `uvx`, args `--from compound-memory compound-memory-server`, env `COMPOUND_MEMORY_ROOT=$HOME/.agents/memory` and `COMPOUND_MEMORY_AGENT_ID=agent-<your-host-id>`. Verify by calling `memory_search` and expecting a `{"hits": [...]}` response; if the host needs a restart to load MCP servers, tell me. Use `uv run --directory <repo>` only when developing against a local checkout. Short English setup and the search → feedback → write loop: docs/agent-integration.en.md. Full per-host configs: docs/agent-integration.md.
For humans
1. Install
Python ≥ 3.11. The default does not clone the repo:
# Default: PyPI. Hosts launch the MCP server with
uvx --from compound-memory compound-memory-server
Optional CLI on PATH:
uv tool install compound-memory # or: pip install compound-memory
Developer / local checkout only — not the default host launch
git clone https://github.com/chinwe/compound-memory.git cd compound-memory && uv sync --extra dev
2. Initialize your store
Defaults to ~/.agents/memory; override with the COMPOUND_MEMORY_ROOT env var. A leading ~ or $HOME is expanded; a blank override falls back to the default.
uvx --from compound-memory compound-memory init
after uv tool install: compound-memory init
3. Wire it into your MCP host (recommended)
This lets your everyday agents read/write the shared store automatically. No repo path:
{
"mcpServers": { "compound-memory": { "type": "stdio", "command": "uvx", "args": ["--from", "compound-memory", "compound-memory-server"], "env": { "COMPOUND_MEMORY_ROOT": "$HOME/.agents/memory", "COMPOUND_MEMORY_AGENT_ID": "agent- " } } } }
uvx takes the package name; the server console script is compound-memory-server, so --from is required. If uvx is not on PATH, set command to the absolute path ~/.local/bin/uvx. COMPOUND_MEMORY_AGENT_ID is required for any multi-agent store: the process identity wins over whatever the model claims, so a forged source cannot write another host's namespace or inflate cross-host validation. Unset or blank is a hard failure for shared _shared use: stats and doctor exit 1 (the diagnosis is still printed). MCP tools keep running, and the server logs the same warning at startup. Without the id, identity is self-reported and can be forged.
A local checkout is the developer path, not a second default: command uv, args ["run", "--directory", " ", "compound-memory-server"] after uv sync --extra dev.
Verify: ask your agent to call memory_search (any keyword) — a {"hits": [...]} response means you're connected. Or run uvx --from compound-memory compound-memory doctor (exit 0 when COMPOUND_MEMORY_AGENT_ID is set and the store is writable; exit 1 when it is unset or blank).
Claude Code plugin
Requires Claude Code and uv (uvx on PATH). This repository hosts a self-hosted marketplace. Submitting the plugin to Anthropic's official Directory is out of scope.
claude plugin marketplace add chinwe/compound-memory
claude plugin install compound-memory@compound-memory
That installs integrations/claude, which launches uvx --from compound-memory compound-memory-server with COMPOUND_MEMORY_AGENT_ID=agent-claude (override that env var in the host if you need a different id). A SessionStart hook adds a short reminder on new sessions; verify and disable steps are in the plugin README. Those marketplace and plugin files are not in the PyPI sdist or wheel: MANIFEST.in prunes them, and scripts/wheel_smoke.sh checks the built artifacts.
WorkBuddy / CodeBuddy plugin
Requires WorkBuddy or CodeBuddy and uv (uvx on PATH). This repository hosts a self-hosted marketplace at .codebuddy-plugin/marketplace.json.
/plugin marketplace add chinwe/compound-memory
/plugin install compound-memory@compound-memory
That installs integrations/workbuddy, which launches the same PyPI server with COMPOUND_MEMORY_AGENT_ID=agent-workbuddy. A SessionStart hook prints a short hard-rule reminder on new sessions and does not read the store. The Claude marketplace file is unchanged.
ZCode plugin
Requires the ZCode desktop app and uv (uvx on PATH). ZCode reads this repository's .claude-plugin/marketplace.json as its marketplace catalog, so no separate marketplace file is needed.
Clone the repository, then in ZCode: Plugin Marketplace → Add → Add Plugin Marketplace, paste the clone path (the directory containing .claude-plugin/), and install Compound Memory (ZCode) under Personal → compound-memory. That installs integrations/zcode, which launches the same PyPI server with COMPOUND_MEMORY_AGENT_ID=agent-zcode, plus a SessionStart hard-rule reminder and the short skill. The plugin's MCP server is named compound-memory; if ~/.zcode/cli/config.json already registers a server with that name (the hand-written path, §3 of docs/agent-integration.md), keep only one of the two.
4. Next step
Inject the usage protocol from skills/compound-memory/SKILL.md into your host (the search → feedback → write loop). The short English version is docs/agent-integration.en.md; the full protocol is docs/agent-integration.md §6.
Demo
One full loop: write → search → feedback (with cross-host first-validation bonus) → store health. Real output from v0.4.0, long payloads trimmed:
uv run compound-memory init
{ "ok": true, "root": "~/.agents/memory" }
Two different hosts each write one stable fact (new memories start at confidence 0.5, uses 0):
uv run compound-memory write \
"Deploy serverless functions on this platform times out at 10s — keep handlers under that budget" \ fact agent-claude --key vercel-timeout
{
"id": "20261007_86adf1", "ns": "_shared", "type": "fact", "source": "agent-claude", "content": "Deploy serverless functions on this platform times out at 10s — keep handlers under that budget", "confidence": 0.5, "uses": 0, "key": "vercel-timeout", "validated_by": [] ... }
uv run compound-memory write \
"User prefers concise replies with tables and code examples" \ fact agent-zcode --key user-style
Search ranks by score (--explain attaches per-hit ranking components for debugging):
uv run compound-memory search "serverless timeout"
[
{ "id": "20261007_86adf1", "score": 1.0292, "similarity": 1.0, "type": "fact", "source": "agent-claude", "content": "Deploy serverless functions on this platform times out at 10s — keep handlers under that budget", "neighbors": [] }, { "id": "20261007_6a0c0c", "score": 0.5211, "similarity": 0.4919, "type": "fact", "source": "agent-zcode", "content": "User prefers concise replies with tables and code examples", "neighbors": [] } ]
A different host used this memory and reported it back with the default success outcome — uses +1, conf +0.1; and since the reporter agent-workbuddy ≠ source agent-claude, the first cross-host validation adds another +0.15:
uv run compound-memory feedback 20261007_86adf1 agent-workbuddy
{
"id": "20261007_86adf1", "confidence": 0.75, "uses": 1, "last_used": "2026-10-07", "validated_by": ["agent-workbuddy"], "evidence": { "success_count": 1, "failure_count": 0, "contradiction_count": 0, "last_verified": "2026-10-07", "recent": [{ "date": "2026-10-07", "agent": "agent-workbuddy", "outcome": "success" }] } ... }
Store health at a glance (fixed-bucket histograms, liveness, distillation yield):
uv run compound-memory stats
{
"total": 2, "archived": 0, "active": 2, "avg_confidence": 0.625, "by_type": { "fact": 2 }, "by_ns": { "_shared": 2 }, "review_queue_entries": 0, "uses_histogram": { "0": 1, "1-2": 1, "3-5": 0, "6-9": 0, "10+": 0 }, "confidence_histogram": { "<0.3": 0, "0.3-0.6": 1, "0.6-0.8": 1, "0.8-1.0": 0 }, "recent_feedback_7d": 1, "cross_validated": 0, "distilled_total": 0, "distilled_recent_7d": 0 }
Current stats also includes retrieval (mode: vector or lexical, plus reason when the vector channel is off), attestation (attested, plus a warning when COMPOUND_MEMORY_AGENT_ID is unset), and expired_active (active-area memories whose valid_until has passed; 0 in this snapshot). cross_validated counts memories whose validated_by lists at least two distinct agents — the single cross-host validation above correctly leaves it at 0. memory_search carries the same retrieval object. CLI search stays a bare array. CLI stats exits 1 when COMPOUND_MEMORY_AGENT_ID is unset or blank; doctor is the one-page check (attestation, retrieval, write lock, git) and uses the same rule, plus root / lock / git failures. MCP tools do not stop f
Solo se muestra el principio; lee el resto en el repo