le0nardomartins/ClaudeMemorySync-Server

Despliega, opera y diagnostica el servidor de Claude Memory Sync (Node + Postgres en Railway), un almacén de versiones cifradas con control de concurrencia que guarda la configuración de Claude Code desde varios PCs. Úsalo cuando el usuario solicite levantar o actualizar el servidor de memory sync, autorizar o revocar un PC (CLIENT_PUBLIC_KEYS), consultar el tamaño o el historial de la base de datos, reiniciar el historial (ej. al cambiar la SYNC_KEY), o investigar errores 401/409/413/415/429/503 vistos por los clientes.

¿Qué es ClaudeMemorySync-Server?

Esta skill permite gestionar el servidor del sistema Claude Memory Sync, que almacena de forma cifrada y con control de concurrencia las configuraciones de Claude Code de varios equipos. El servidor está implementado en Node.js con Postgres y está diseñado para ejecutarse en Railway. Esta skill facilita el despliegue inicial, la autorización y revocación de clientes mediante claves públicas (CLIENT_PUBLIC_KEYS), la consulta y mantenimiento de la base de datos, el diagnóstico de errores comunes (como 409 Conflict o 503 Service Unavailable) y la actualización tanto del servidor como de los clientes emparejados. Es útil para desarrolladores que utilizan Claude Code en múltiples máquinas y necesitan sincronizar su configuración de forma segura sin exponer datos sensibles.

Compatible con✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/le0nardomartins/ClaudeMemorySync-Server/tree/HEAD/docs

Installed? Explore more Productividad y colaboración skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Claude Memory Sync: servidor

Repositorios:

El servidor no realiza fusión ni lee el contenido. Almacena manifiestos y blobs sellados, y solo acepta una versión nueva si parte de la más reciente (409 conflict en caso contrario).

Lea bajo demanda, en esta carpeta:

  • deploy.md: subir a Railway o a otro proveedor, actualizar
  • api.md: protocolo, para depurar solicitudes
  • operations.md: SQL de consulta y mantenimiento, copia de seguridad, revocación, diagnóstico

Reglas que siempre aplican

  1. Datos. Con SYNC_KEY en los PCs, la base de datos solo contiene datos cifrados. Sin ella, contiene claves de API del usuario. En cualquier caso, nunca exponga Postgres públicamente y nunca comparta DATABASE_URL.
  2. Claves. CLIENT_PUBLIC_KEYS solo contiene claves públicas, que pueden aparecer. CLIENT_PRIVATE_KEY y SYNC_KEY nunca van al servidor ni al chat.
  3. Confirme antes de hacer deploy, push, cambios de variables en Railway, TRUNCATE, DELETE o cualquier otra acción irreversible. Realice una copia de seguridad (pg_dump, vea operations.md) antes de modificar datos.
  4. Protocolo acoplado. El cliente y el servidor deben estar en la misma versión del protocolo. Al actualizar uno, recuerde al usuario que actualice el otro en todos los PCs.
  5. Reiniciar el servidor no elimina nada en los PCs. Cada PC guarda la base de datos localmente y la reenvía todo en la siguiente ronda. Para eliminar un archivo de todos los PCs, basta con eliminarlo en un PC: no toque el servidor para eso.

Tareas

Despliegue inicial

Siga deploy.md → "Railway". El usuario necesita:

  • crear el proyecto y Postgres en el panel, o autorizar el uso de la Railway CLI;
  • pegar las claves públicas.

Al final, verifique en el log la línea memory server en el puerto ... | PCs autorizados: ....

Autorizar un PC

  1. En el PC, genere las claves: python src/components/remote_client.py keygen <nombre> (cliente) o npm run keygen -- <nombre> (aquí).
  2. Agregue <nombre>:<base64> en CLIENT_PUBLIC_KEYS, separado por coma, sin borrar los demás.
  3. Railway se reinicia automáticamente. Verifique el nombre en PCs autorizados en el log.

Revocar un PC

Elimine su entrada de CLIENT_PUBLIC_KEYS. Si la máquina se vio comprometida, indique que cambie la SYNC_KEY en todos los PCs (solución de problemas del cliente) y reinicie el historial (operations.md).

Diagnosticar

Lea los logs del servicio (panel de Railway o railway logs) y compárelos con operations.md → "Diagnóstico". Del lado del cliente, el archivo es sync.log. 409 seguido de 201 es normal.

Consultar o mantener la base de datos

Use las consultas de operations.md. Para acceso puntual, use railway connect Postgres. Prefiera consultas de solo lectura y confirme cualquier escritura.

Actualizar el servidor

  1. Haga push en el repositorio: Railway realiza el despliegue mediante el Dockerfile. Las migraciones se ejecutan automáticamente al inicio (db.migrate).
  2. Después, solicite actualizar los clientes.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

Skills relacionados