Solo yo
Instala un binario, arranca un servidor local y lanza tu agente. El servidor se enlaza a 127.0.0.1:49374, así que nada fuera de esta máquina puede llegar a él y no necesita token.
Instala el binario
mise descarga el archivo de la versión para tu sistema y tu chip, y lo verifica contra el archivo
.sha256publicado. No necesita el toolchain de Rust ni Docker.Terminal mise use -g github:akitaonrails/ai-memoryCrea el directorio de datos y arranca el servidor
initsolo crea el directorio de datos.servetiene que seguir corriendo, así que dale su propia terminal. Solo escucha en esta máquina y no necesita token.Terminal ai-memory init ai-memory serve --transport http --bind 127.0.0.1:49374Lanza tu agente a través de él
El primer lanzamiento de un harness instala sus hooks y su entrada MCP si faltan. Lanzar
claudedirectamente sigue funcionando después.Terminal ai-memory run claude
Instala el paquete
El paquete
-bines un binario precompilado para x86_64 o aarch64. Los dos paquetes traen una unidad de usuario y una unidad de sistema para systemd.Terminal yay -S ai-memory-bin # binario precompilado para Linux x86_64/aarch64 yay -S ai-memory # compila desde el código fuenteCrea el directorio de datos
Terminal mkdir -p ~/.config/ai-memory ~/.local/share/ai-memory ai-memory --data-dir ~/.local/share/ai-memory \ --config ~/.config/ai-memory/config.toml initArranca el servicio de usuario
No necesita sudo, y todo el estado se queda en tu directorio home. La sección de servicios cubre la unidad de sistema y cómo seguir corriendo después de cerrar sesión.
Terminal systemctl --user enable --now ai-memory.serviceLanza tu agente a través de él
Terminal ai-memory run claude
Descarga y descomprime
Este archivo es para Apple Silicon. En un Mac con Intel, cambia
aarch64porx86_64. Una descarga hecha con el navegador necesitaxattr -d com.apple.quarantine ./ai-memoryuna vez. Una descarga con curl no.Terminal mkdir -p ~/Applications/ai-memory && cd ~/Applications/ai-memory curl -fsSL -O https://github.com/akitaonrails/ai-memory/releases/latest/download/ai-memory-macos-aarch64.tar.gz tar -xzf ai-memory-macos-aarch64.tar.gzCrea el directorio de datos y arranca el servidor
Deja
servecorriendo en esta terminal. Como alternativa, el agente de launchd lo arranca al iniciar sesión.Terminal ./ai-memory init ./ai-memory serve --transport http --bind 127.0.0.1:49374Conecta tu agente desde una segunda terminal
Deja el binario descomprimido donde está, porque los comandos de los hooks apuntan a esa ruta.
Terminal cd ~/Applications/ai-memory ./ai-memory install-hooks --agent claude-code --apply ./ai-memory install-mcp --client claude-code --apply
Instala el script wrapper
El wrapper es un script de shell pequeño que queda en
~/.local/bin/ai-memory. El README tiene el script de instalación, que verifica la descarga contra su archivo SHA-256 antes de instalarla. Cópialo de ahí.Arranca el servidor
La imagen cubre
linux/amd64ylinux/arm64. En un host con Podman, cambiadockerporpodman. El wrapper usa Podman rootless por su cuenta cuando Docker no está instalado.Terminal docker run -d --name ai-memory \ --restart unless-stopped \ -p 127.0.0.1:49374:49374 \ -v ai-memory-data:/data \ docker.io/akitaonrails/ai-memory:latestConecta tu agente
Después de esto, arranca Claude Code como siempre. Esta ruta tiene un límite: los hooks de shell del wrapper no aplican las reglas de captura
ignore_pathspor repositorio. El binario nativo sí.Terminal ai-memory install-mcp --client claude-code --apply ai-memory install-hooks --agent claude-code --apply
Decide dónde corre tu agente
Un agente lanzado dentro de WSL2 necesita ai-memory dentro de WSL2. Esa ruta tiene soporte y es la misma que la pestaña de Docker: instala el wrapper desde el README en tu shell de WSL2. Con Docker Desktop, activa antes la integración con WSL para la distro.
Arranca el servidor dentro de WSL2
Terminal docker run -d --name ai-memory \ --restart unless-stopped \ -p 127.0.0.1:49374:49374 \ -v ai-memory-data:/data \ akitaonrails/ai-memory:latestConecta tu agente, también dentro de WSL2
Windows nativo es experimental. Tiene un zip de la versión con
ai-memory.exe, un wrapper de Docker en PowerShell y una receta de servicio con WinSW. La guía de Windows tiene los tres.Terminal ai-memory install-mcp --client claude-code --apply ai-memory install-hooks --agent claude-code --apply

ai-memory run es el lanzador recomendado y es opcional. Conecta un harness en el primer lanzamiento y añade la reanudación nativa de sesiones entre harness. Los hooks por sí solos ya llevan el traspaso, así que lanzar tu agente directamente sigue funcionando. Lee cómo funcionan los lanzamientos gestionados.
Comprueba que funciona
Tres comprobaciones, desde la red hasta el agente.
El servidor responde
Un error de JSON-RPC es la respuesta correcta. Significa que el puerto es accesible y que el servidor está respondiendo.
curl http://127.0.0.1:49374/mcp
La CLI llega a él
La CLI es un cliente HTTP ligero. Si esto imprime un estado, los hooks también pueden llegar al servidor.
ai-memory status
El agente recuerda
Trabaja unos minutos, sal y abre una segunda sesión en el mismo directorio. Luego pregúntale:
“¿Dónde lo dejamos?”
Después del primer agente
Las tres cosas son opcionales. Hazlas cuando las necesites.
Añade otro agente
Ejecuta los mismos dos comandos con otro nombre. A partir de ahí, los dos agentes comparten una misma memoria del proyecto.
ai-memory install-mcp --client codex --apply
ai-memory install-hooks --agent codex --apply
Opcional: mejores resúmenes con un LLM
Sin proveedor, la captura, la búsqueda y los resúmenes basados en reglas funcionan sin coste. Un proveedor reescribe las páginas de sesión como narrativas legibles. Define estas dos variables en el entorno del servidor (flags -e para Docker, ~/.config/ai-memory/env para el servicio de usuario de systemd) y reinícialo.
AI_MEMORY_LLM_PROVIDER=anthropic
ANTHROPIC_API_KEY=sk-ant-...
Compara proveedores, incluidas suscripciones y modelos locales
Deshazlo todo
Esto quita solo lo que instaló ai-memory. Los comandos de instalación son idempotentes, y cada uno escribe una copia de seguridad con marca de tiempo junto a cada archivo que toca.
ai-memory uninstall --apply
Mi equipo
Un servidor al que llegan todas las máquinas y todos los compañeros de equipo. No hay replicación entre servidores: memoria compartida significa que todos se conectan al mismo.

Arranca el servidor compartido con un token
Elige un equipo del homelab o cualquier host de la LAN. Un servidor enlazado más allá de loopback necesita tanto un bearer token como una allowlist de hosts. La allowlist contiene todos los nombres o IP que usan tus máquinas para llegar a él.
en el servidor TOKEN=$(ai-memory generate-auth-token) docker run -d --name ai-memory \ --restart unless-stopped \ -p 0.0.0.0:49374:49374 \ -v ai-memory-data:/data \ -e AI_MEMORY_AUTH_TOKEN="$TOKEN" \ -e AI_MEMORY_ALLOWED_HOSTS="<server-ip>,localhost,127.0.0.1" \ akitaonrails/ai-memory:latestCrea a las personas
Ejecuta esto con el token root exportado. La contraseña temporal se imprime una vez, y la persona la cambia en su primer inicio de sesión. No emite ninguna clave de API. La guía de usuarios cubre la identidad root en
[auth].Terminal ai-memory user add-human --username alice --email alice@home --name "Alice Smith"Dale a cada persona una clave de API
El secreto
aim_se muestra una sola vez.ai-memory api-key rotate <id>yai-memory api-key revoke <id>surten efecto de inmediato.Terminal ai-memory api-key add --username alice --label codex-laptopApunta cada máquina al servidor
Cada persona usa su propia clave como token. Se guarda en un archivo
0600dentro del directorio de datos y no aparece en la línea de comandos de los hooks.--as-usersolo etiqueta la instalación.en cada portátil # Aquí TOKEN es la clave aim_ de esta persona, no el token root export AI_MEMORY_SERVER_URL="http://<server-ip>:49374" export AI_MEMORY_AUTH_TOKEN="$TOKEN" ai-memory install-mcp --client claude-code --apply ai-memory install-hooks --apply --agent claude-code \ --as-user alice --auth-token aim_XGq...<secret>Añade TLS antes de salir de la LAN
Un bearer token autentica una petición y no la cifra. Las claves y las cookies web viajan en claro por HTTP plano, así que pon Caddy, nginx o un Cloudflare Tunnel por delante en cuanto existan cuentas o el servidor sea accesible más allá de tu escritorio.
¿Atascado en un paso?
El cookbook de instalación en GitHub tiene los comandos por agente, los servidores remotos y Windows. El issue tracker está abierto.