myAI Memory Sync

Sincroniza plantillas de memoria entre diferentes interfaces de Claude.

Documentación

myAI Memory Sync

smithery badge

¿Cansado de repetirte a Claude cada vez que inicias un nuevo chat? myAI Memory Sync es una herramienta MCP revolucionaria que sincroniza sin problemas tus preferencias, datos personales y estándares de código en TODAS tus interfaces de Claude. ¡Solo actualiza una vez y tus cambios aparecen al instante en todas partes, desde Claude Desktop hasta Claude Code, Windsurf y la web de Claude.ai! Con nuestro sistema de caché de vanguardia, las consultas relacionadas con la memoria son hasta 2000 veces más rápidas. Deja de gastar tokens en instrucciones repetitivas y disfruta de una experiencia de IA verdaderamente personalizada.

Cómo se compara myAImemory-mcp con otras herramientas de memoria

Aunque existen varias herramientas de memoria excelentes para sistemas de IA, myAImemory-mcp cumple un propósito específico como herramienta del Protocolo de Contexto de Modelo (MCP):

HerramientaEnfoque principalModelo de privacidadIntegraciónFortaleza única
myAImemory-mcpPreferencias de usuario en todas las interfaces de ClaudeLocal primero, sin envío de datos a servidores externosMCP específico de ClaudeSincronización multiplataforma con caché de alto rendimiento
GraphitiGrafos de conocimiento temporalesDependiente de la base de datosMarco general de agentesConciencia temporal en la representación del conocimiento
Letta/MemGPTMarco de agentes con estadoBasado en servidorSoporte multimodeloArquitectura completa de agentes
Mem0Interacciones de IA personalizadasBasado en APIMultiplataformaJerarquía de memoria multinivel
MemaryMemoria similar a la humana para agentesBase de datos de grafosEnfocado en agentesEmulación de memoria humana
CogneeMemoria confiable para aplicaciones de IAMúltiples opciones de almacenamientoEnfocado en pipelines de datosIntegración extensa de fuentes de datos

Ventajas clave de myAImemory-mcp:

  • Privacidad primero: Todos los datos permanecen en tu dispositivo, sin información personal enviada a servidores externos
  • Rendimiento: Aprovecha las capacidades de caché de Claude para mejoras drásticas de velocidad
  • Simplicidad: Actualizaciones en lenguaje natural de tus preferencias en todas las interfaces de Claude
  • Integración MCP: Diseñado específicamente como un MCP de Claude para una integración perfecta

🚀 Inicio rápido

# Clone repository
git clone https://github.com/Jktfe/myaimemory-mcp.git
cd myaimemory-mcp

# Install dependencies
npm install

# Build TypeScript code
npm run build

# Start MCP server (with stdio transport)
npm start

# Or start with HTTP transport
npm run start:http

🧠 Opciones del servidor

El script de servidor unificado admite múltiples opciones:

# Start with stdio transport (default)
./start-server.sh

# Start with HTTP transport
./start-server.sh --http

# Start with HTTP transport on custom port
./start-server.sh --http --port=8080

# Start with direct implementation (no SDK)
./start-server.sh --direct

# Start with direct implementation and HTTP transport
./start-server.sh --direct --http

# Enable debug mode
./start-server.sh --debug

🔄 Método de sincronización directa (alternativa simple)

Para un enfoque más simple que no requiere ejecutar un servidor MCP, puedes usar la CLI unificada:

# One-time sync of all memory files
npm run sync

# Or for emergency sync (fixes permissions)
npm run sync:emergency

Este script:

  • Lee de tu archivo "myAI Master.md"
  • Actualiza todos los archivos CLAUDE.md en tus proyectos
  • Actualiza la configuración de memoria de Windsurf
  • Todo sin almacenar información sensible en el repositorio git

🔒 Privacidad y seguridad

  • El archivo "myAI Master.md" con tu información personal está excluido del seguimiento de git
  • Todos los archivos CLAUDE.md también están excluidos para proteger tu privacidad
  • Usa el .gitignore incluido para garantizar que los archivos sensibles permanezcan privados

🗣️ Comandos de lenguaje natural admitidos

Puedes interactuar con myAI Memory usando estos patrones de lenguaje natural:

Patrón de comandoEjemploPropósito
Use myAI Memory to remember [information]"Usa myAI Memory para recordar que prefiero TypeScript sobre JavaScript"Agrega información a la sección apropiada según el contenido
Remember that [information]"Recuerda que vivo en Londres"Alternativa más corta para agregar información a la memoria
Add to my memory that [information]"Agrega a mi memoria que tengo dos autos"Otra forma de agregar información a la memoria
Use myAI Memory to add to [section] [information]"Usa myAI Memory para agregar a Preferencias de codificación que prefiero el modo oscuro"Agrega información a una sección específica
Update my [section] to include that [information]"Actualiza mi Información de usuario para incluir que mi cumpleaños es el 29 de marzo"Actualiza una sección específica con nueva información

Nota: Para realizar una sincronización completa en todas las plataformas, usa la línea de comandos: node sync-memory.js

You: Use myAI Memory to remember I prefer TypeScript over JavaScript
Claude: ✅ Added to your Coding Preferences! I'll remember you prefer TypeScript over JavaScript.

📋 Opciones de instalación

Opción 1: Instalación directa (recomendada)

Instala desde npm:

npm install -g myai-memory-sync

Inicia el servidor:

# Start with stdio transport (default)
myai

# Start with HTTP transport
myai server --transport http

# Process memory commands
myai remember "I prefer dark mode"

# Sync across platforms
myai sync

Opción 2: Ejecutar desde el código fuente

Clona y compila desde el código fuente:

git clone https://github.com/Jktfe/myaimemory-mcp.git
cd myaimemory-mcp
npm install
npm run build
npm start  # Start with stdio transport
# or
npm run start:http  # Start with HTTP transport

Opción 3: Docker

Compila y ejecuta con Docker:

docker build -t myai-memory-sync .
docker run -v myai-memory:/app/data -p 3000:3000 myai-memory-sync

🔌 Configuración de MCP

Configuración de Claude Desktop

Agrega esto a tu claude_desktop_config.json:

{
  "mcpServers": {
    "myai-memory-sync": {
      "command": "npx",
      "args": [
        "-y",
        "myai"
      ],
      "env": {
        "TEMPLATE_PATH": "/path/to/custom/template.md",
        "ENABLE_ANTHROPIC": "true",
        "ANTHROPIC_API_KEY": "your-api-key-here"
      }
    }
  }
}

Claude.ai con Smithery

  1. Visita Smithery.ai
  2. Agrega el MCP de myAI Memory Sync:
    @Jktfe/myaimemory-mcp
    
  3. Configura con tu clave de API en la configuración de Smithery

Integración con Windsurf

En Windsurf, agrega a tu .codeium/config.json:

{
  "mcp": {
    "servers": {
      "myai-memory-sync": {
        "command": "npx",
        "args": [
          "-y",
          "myai"
        ]
      }
    }
  }
}

Modo de servidor HTTP

Para transporte HTTP en lugar de stdio:

# Using npm scripts:
npm run start:http

# Using the unified CLI:
myai server --transport http

# Using the shell script with custom port:
./start-server.sh --http --port=8080

# Using environment variable:
PORT=8080 npm run start:http

Variables de entorno

Crea un archivo .env con las siguientes opciones:

# Basic configuration
DEBUG=true                      # Enable debug logging
TEMPLATE_PATH=./data/template.md  # Custom template location
PORT=3000                       # Port for HTTP transport (default: 3000)
USE_DIRECT=true                 # Use direct implementation (no SDK)

# Platform-specific paths
WINDSURF_MEMORY_PATH=~/.codeium/windsurf/memories/global_rules.md
CLAUDE_PROJECTS_PATH=~/CascadeProjects

# Performance optimization
ENABLE_ANTHROPIC=true           # Enable Anthropic API integration
ANTHROPIC_API_KEY=your-api-key  # Your Anthropic API key
ENABLE_PROMPT_CACHE=true        # Enable prompt caching system
CACHE_TTL=300000                # Cache TTL in milliseconds (5 minutes)

# Claude web sync (optional)
CLAUDE_WEB_SYNC_ENABLED=false   # Enable Claude.ai web synchronization
CLAUDE_WEB_EMAIL=you@email.com  # Your Claude.ai email
CLAUDE_WEB_HEADLESS=true        # Run browser in headless mode

🧙‍♂️ Integración del prompt del sistema

Para obtener mejores resultados, agrega esto al prompt del sistema de Claude:

Memory Integration Instructions:
When you receive a command that starts with "use myAI Memory to", you should:

1. Process the rest of the instruction as a memory management command
2. Try to determine the appropriate section to update based on the content
3. Use the myAI Memory Sync MCP to update your memory
4. Confirm the update with a brief acknowledgment

For example:
"use myAI Memory to remember I prefer dark mode" 
→ Update the preferences section with dark mode preference

When asked questions about preferences or personal information, first check your memory via the myAI Memory Sync MCP. Always reference information from memory rather than making assumptions.

✨ Características

  • 🔄 Sincronización multiplataforma: Actualiza una vez, sincroniza en todas partes
  • Recuperación ultrarrápida: Sistema de caché con hasta 2000 veces más rendimiento
  • 🗣️ Interfaz de lenguaje natural: Solo habla naturalmente para actualizar tus preferencias
  • 🧩 Múltiples perfiles de persona: Cambia entre diferentes ajustes preestablecidos con facilidad
  • 🔐 Enfocado en seguridad: Almacenamiento local con protección .gitignore
  • 🛠️ Amigable para desarrolladores: Implementación completa en TypeScript con API integral

🧩 Arquitectura central

myAI Memory Sync utiliza una arquitectura modular con estos componentes clave:

  • Analizador de plantillas: Conversión bidireccional entre objetos de memoria estructurados y markdown
  • Almacenamiento de plantillas: Almacenamiento persistente con caché en memoria y en sistema de archivos
  • Sincronizadores de plataforma: Implementa la interfaz PlatformSyncer para cada plataforma objetivo
  • Procesador de lenguaje natural: Extrae datos estructurados de comandos de memoria en lenguaje natural
  • Servicio de caché de memoria: Optimiza el rendimiento con estrategias de caché multinivel

🔍 Características detalladas

Sincronización multiplataforma

  • ClaudeCodeSyncer: Actualiza archivos CLAUDE.md en todos los repositorios
  • WindsurfSyncer: Gestiona global_rules.md en el entorno de Windsurf
  • ClaudeWebSyncer: Sincronización opcional basada en Puppeteer con la interfaz web de Claude.ai

Gestión inteligente de memoria

  • Extracción basada en patrones: Convierte lenguaje natural en pares clave-valor estructurados
  • Algoritmo de detección de secciones: Determina automáticamente la sección apropiada para nuevos recuerdos
  • Formato de plantilla de memoria: Estructura basada en markdown con secciones, descripciones y elementos clave-valor
  • Preservación del contexto: Actualiza secciones de memoria mientras conserva otro contenido de la plantilla

Optimización del rendimiento

  • Caché multinivel: Caché en memoria a nivel de plantilla y de sección
  • Gestión de caché basada en TTL: Tiempo de vida configurable para contenido en caché
  • Precalentamiento: Precarga de caché después de actualizaciones de plantilla
  • Integración opcional con la API de Anthropic: Acelera consultas relacionadas con la memoria hasta 2000 veces

Seguridad

  • Arquitectura local primero: Todos los datos permanecen en tu dispositivo
  • Gestión de Gitignore: Agrega automáticamente CLAUDE.md a .gitignore en todos los repositorios
  • Manejo de permisos de archivos: Corrige problemas de permisos para máxima compatibilidad
  • Almacenamiento cifrado: Compatible con sistemas de archivos cifrados

📋 Formato de plantilla de memoria

El sistema utiliza un formato markdown estructurado para organizar tus preferencias:

# myAI Memory

# User Information
## Use this information if you need to reference them directly
-~- Name: Your Name
-~- Location: Your Location
-~- Likes: Reading, Hiking, Technology

# General Response Style
## Use this in every response
-~- Style: Friendly and concise
-~- Use UK English Spellings: true
-~- Include emojis when appropriate: true

# Coding Preferences
## General Preference when responding to coding questions
-~- I prefer TypeScript over JavaScript
-~- Show step-by-step explanations

🛠️ Implementación técnica

Esquema de MemoryTemplate

interface MemoryTemplate {
  sections: TemplateSection[];
}

interface TemplateSection {
  title: string;
  description: string;
  items: TemplateItem[];
}

interface TemplateItem {
  key: string;
  value: string;
}

Interfaz de sincronización de plataformas

interface PlatformSyncer {
  sync(templateContent: string): Promise<SyncStatus>;
}

type PlatformType = 'claude-web' | 'claude-code' | 'windsurf' | 'master';

interface SyncStatus {
  platform: PlatformType;
  success: boolean;
  message: string;
}

🔌 API de integración MCP

La herramienta myAI Memory Sync implementa el Protocolo de Contexto de Modelo (MCP) con las siguientes funciones:

FunciónDescripciónParámetros
get_templateRecupera la plantilla de memoria completaNinguno
get_sectionRecupera una sección específicasectionName: string
update_sectionActualiza una sección específicasectionName: string, content: string
update_templateReemplaza toda la plantillacontent: string
list_presetsLista los ajustes preestablecidos disponiblesNinguno
load_presetCarga un ajuste preestablecido específicopresetName: string
create_presetCrea un nuevo ajuste preestablecidopresetName: string
sync_platformsSincroniza entre plataformasplatform?: string
list_platformsLista las plataformas disponiblesNinguno

Interfaz de lenguaje natural

Los usuarios pueden interactuar con el sistema mediante comandos de lenguaje natural:

You: Use myAI Memory to remember I prefer TypeScript over JavaScript
Claude: ✅ Added to your Coding Preferences! I'll remember you prefer TypeScript over JavaScript.

You: Use myAI Memory to load preset developer
Claude: ✅ Loaded developer preset! I'll now use your developer preferences.

🧙‍♂️ Uso avanzado

Ajustes preestablecidos de memoria

Cambia fácilmente entre diferentes personas:

You: Use myAI Memory to list presets
Claude: Available presets: personal, work, developer

You: Use myAI Memory to load preset developer
Claude: ✅ Loaded developer preset!

Sincronización de emergencia

Cuando necesitas solucionar problemas de sincronización en todas las plataformas:

# Sync everything immediately
./emergency-sync.sh

Interfaz de línea de comandos

# View all available commands
node dist/cli.js --help

# Process memory commands directly
node dist/cli.js --remember "remember I prefer dark mode"

# Start HTTP server for SSE transport
npm run start:http

# Start stdio server for MCP transport
npm run start

Flujo de trabajo de desarrollo

# Run in development mode with auto-reload
npm run dev

# Run in development mode with HTTP server
npm run dev:http

# Watch TypeScript compilation
npm run build:watch

# Run tests
npm test

# Run specific test
npm test -- -t "platformSync"

# Lint code
npm run lint

# Type check without emitting files
npm run typecheck

⚡ Puntos de referencia de rendimiento

Nuestro sistema de caché ofrece mejoras de rendimiento increíbles:

OperaciónSin cachéCon cachéMejora
Consulta de memoria~2000ms~1ms2000x
Búsqueda de sección~1600ms~0.8ms2000x
Análisis de plantilla~120ms~0.1ms1200x
Sincronización de plataforma~850ms~350ms2.4x

🔒 Seguridad y privacidad

Nos tomamos tu privacidad en serio:

  • Todos los datos permanecen localmente en tu dispositivo
  • Los archivos CLAUDE.md se agregan automáticamente a .gitignore
  • No se envían datos a servidores externos (excepto cuando se usa la integración opcional con la API de Anthropic)
  • Funciona con sistemas de archivos cifrados para máxima seguridad

🛠️ Solución de problemas

Problemas comunes

  1. CLAUDE.md no se actualiza

    • Verifica los permisos de archivo con ls -la CLAUDE.md
    • Prueba la sincronización de emergencia con ./emergency-sync.sh
    • Verifica las rutas de plataforma en tu archivo .env
  2. Fallos de conexión MCP

    • Asegúrate de que el servidor MCP esté ejecutándose con ps aux | grep myai-memory
    • Revisa los registros de Claude Desktop para errores de MCP
    • Verifica tu archivo de configuración de Claude Desktop
  3. Problemas de caché

    • Limpia la caché con node dist/cli.js --clear-cache
    • Verifica que la clave de API de Anthropic esté configurada correctamente
    • Comprueba la integridad del archivo de memoria con node dist/cli.js --validate
  4. Los comandos de lenguaje natural no funcionan

    • Asegúrate de usar exactamente uno de los patrones de comando admitidos (consulta la sección de Comandos de lenguaje natural admitidos)
    • Si Claude no reconoce tu comando, prueba con un patrón diferente
    • Para sincronizar en todas las plataformas, usa el script directo: node sync-memory.js

Sincronización manual

Si tienes problemas con los comandos de lenguaje natural o el servidor MCP:

# Direct sync approach (most reliable)
cd /path/to/myAImemory
node sync-memory.js

# Alternative emergency sync (if permissions need fixing)
cd /path/to/myAImemory
./safe-memory.sh sync

Estos métodos leen directamente de tu archivo maestro y actualizan todas las plataformas sin depender del servidor MCP ni del procesamiento de lenguaje natural.

Registros y depuración

Habilita el modo de depuración para ver registros detallados:

DEBUG=true npm run start

Los archivos de registro se almacenan en:

  • Linux/macOS: ~/.local/share/myai-memory/logs/
  • Windows: %APPDATA%\myai-memory\logs\

🤝 Contribuciones

¡Las contribuciones son bienvenidas! No dudes en enviar una solicitud de extracción.

  1. Haz un fork del repositorio
  2. Crea tu rama de características (git checkout -b feature/amazing-feature)
  3. Realiza tus cambios (git commit -m 'Add some amazing feature')
  4. Empuja a la rama (git push origin feature/amazing-feature)
  5. Abre una solicitud de extracción

Seguimos un flujo de trabajo estándar de Git y un proceso de CI:

  • Todas las solicitudes de extracción requieren pruebas y linting aprobados
  • Las nuevas características deben incluir pruebas
  • Los cambios importantes deben actualizar la documentación
  • Sigue el estilo y los patrones de código existentes

📚 Documentación

Para documentación más detallada, consulta la Wiki.

La documentación de la API está disponible en el directorio /docs:

# Generate API documentation
npm run docs

📄 Licencia

Este proyecto está licenciado bajo la Licencia MIT; consulta el archivo LICENSE para más detalles.

📬 Contacto

Enlace del proyecto: https://github.com/Jktfe/myaimemory-mcp


Hecho con ❤️ para la comunidad de IA