Claude Code Buddy (CCB)

Añade memoria persistente del proyecto y enrutamiento inteligente de tareas a Claude Code. Deja de repetir el contexto en cada sesión: Claude finalmente recuerda tu arquitectura, decisiones y patrones para siempre. 100% local, 17 herramientas MCP.

Documentación

🌐 English | 繁體中文

MeMesh

Una capa de colaboración local para agentes de codificación con IA.
Un solo archivo SQLite. Sin Docker. Sin necesidad de nube.

npm MIT Node MCP


Qué hace

Cambiar de sesión o de agente de codificación puede significar repetir una decisión, explicar la misma arquitectura o revisitar una corrección que ya se había encontrado.

MeMesh permite que los agentes compartan memoria e intercambien mensajes localmente. Sus usos principales son: llevar tus preferencias, decisiones y lecciones entre sesiones; enviar trabajo, preguntas, progreso y resultados entre agentes; y mantener un traspaso de dónde se detuvo el trabajo para que una sesión posterior tenga contexto para revisar. Claude Code y Codex son ejemplos principales; Cursor y otros clientes MCP pueden usar las integraciones documentadas. La captura y entrega automáticas dependen de la integración del host que se indica a continuación.

   you work with the agent
            |
            v
   +------------------+      +------------------+
   |  Claude Code     |      |  Claude Code     |
   |  capture         |      |  recall          |
   |  sessions,       | ---> |  at session      |
   |  commits, fixes  |      |  start and       |
   |  (automatic)     |      |  before edits    |
   +------------------+      +------------------+
            |                         ^
            v                         |
   +----------------------------------------+
   |  ~/.memesh/knowledge-graph.db           |
   |  decisions, lessons, links between them |
   +----------------------------------------+
  • Captura, recuperación, recordatorios y salvaguardas en el momento adecuado. MeMesh incluye 10 hooks (diez comandos de hook) en sus integraciones de Claude Code y Codex: nueve hooks de Claude Code se ejecutan al inicio de la sesión, antes de ediciones de archivos, después de git commit, después de que un plan sea aprobado o una pregunta respondida, cuando Claude se detiene (dos veces: capturando conocimiento de la sesión, y bloqueando la detención una vez por mensaje de agente en espera), antes de la compactación de contexto, cuando dices "recuerda esto" (5 idiomas), y antes de un comando riesgoso que repite una lección aceptada. Los hooks de plan/pregunta y "recuerda esto" solo recuerdan al agente llamar a remember; el décimo comando maneja tanto Codex SessionStart como SessionEnd para registrar y retirar una sesión ordinaria elegible de Codex CLI.
  • Una memoria para todas tus herramientas. Una decisión almacenada desde Claude Code está disponible para Codex o Cursor al día siguiente.
  • Los agentes pueden dejarse mensajes entre sí. Una bandeja de entrada duradera sobrevive a los reinicios; en macOS o Linux, un hilo ordinario de Codex CLI con el plugin de MeMesh puede mantener una ventana de cola nativa acotada posterior al turno y consumir el mensaje aceptado cuando ese mismo hilo se reanuda.
  • Mantén un traspaso de trabajo. Claude Code puede guardar su respuesta sustantiva más reciente para la próxima sesión en el mismo proyecto. Usa task_state para registrar un objetivo declarado, siguiente paso, bloqueador o finalización, y message para enviar ubicaciones de evidencia o preguntas de seguimiento a un destinatario exacto.
  • Un panel de control para explorarlo todo: 4 pestañas, 11 idiomas, en http://localhost:3737/dashboard.

Compatible con

PlataformaCómoNotas
Claude CodePlugin: hooks, herramientas MCP, habilidad /memeshCaptura y recuperación automáticas completas
Codex CLIPlugin, o servidor MCP (memesh-mcp)Instalación de plugin sin configuración, o codex mcp add memesh -- memesh-mcp
Gemini CLIServidor MCP (memesh-mcp)gemini mcp add -s user memesh memesh-mcp
Cursor, Cline y otros clientes MCPServidor MCP (memesh-mcp)Apunta el cliente a memesh-mcp
Hermes AgentPlugin nativo de proveedor de memoriadocs/platforms/hermes-agent.md
OpenClawPlugin nativo de memoriaSolo fuente; no publicado ni probado en vivo: docs/platforms/openclaw.md
Tus propios scripts y aplicacionesAPI HTTP desde memesh servedocs/platforms/universal.md
ChatGPT, Gemini web y otros chats alojadosAPI HTTP a través de un puente local que ejecutasdocs/platforms/README.md

Los nueve hooks de Claude Code proporcionan captura automática, recuperación, recordatorios y salvaguardas. El plugin de Codex carga el mismo archivo de hooks: una vez que Codex puede ejecutar los hooks del plugin, su hook SessionStart inyecta el mismo bloque de memoria y inicia el compañero de mensajería para hilos CLI ordinarios elegibles. Cuáles de los otros hooks se activan bajo Codex aún no está verificado. Con el plugin de Codex, llama a briefing solo cuando ese bloque falte; en clientes solo MCP, llama a briefing al inicio de la sesión. Usa recall para preguntas específicas.

La recuperación y captura son locales y deterministas: búsqueda SQLite FTS5, herramientas de memoria explícitas y hooks basados en reglas. Esta versión no configura ni llama a un proveedor de LLM, embeddings o vectores. Los ajustes de proveedores retirados de versiones anteriores permanecen en disco pero se ignoran; memesh doctor nombra las claves de nivel superior sin leer ni imprimir sus valores.


Instalación

Las instalaciones de plugin y la CLI global de npm comparten una sola base de datos. La mayoría de los usuarios de Claude Code quieren su plugin más la CLI; Codex puede usar su propio plugin o el servidor MCP de la CLI.

   Claude Code chat                Terminal, Codex, Cursor
         |                                  |
         v                                  v
   +-----------------+              +------------------+
   | A: plugin       |              | B: npm global    |
   | /plugin install |              | npm install -g   |
   | hooks + tools   |              | memesh CLI       |
   | + /memesh skill |              | + memesh-mcp     |
   +-----------------+              +------------------+
         |                                  |
         +---------------+------------------+
                         v
            ~/.memesh/knowledge-graph.db
               (one file, both paths)

A. Dentro de Claude Code (hooks, herramientas y la habilidad /memesh están configurados por ti):

/plugin marketplace add PCIRCLE-AI/memesh
/plugin install memesh@pcircle-memesh

Reinicia Claude Code. Una línea ◉ MeMesh aparece en la parte superior de la próxima sesión.

B. En una terminal (requiere Node 22.13+):

npm install -g @pcircle/memesh
memesh doctor          # checks local install health and prints fixes
memesh install-hooks   # only if you skipped A: wires Claude Code, keeps your own hooks

Para una instalación de Codex sin configuración, ejecuta codex plugin marketplace add PCIRCLE-AI/memesh y codex plugin add memesh@pcircle-memesh. La alternativa manual es codex mcp add memesh -- memesh-mcp. Para Cursor, agrega { "mcpServers": { "memesh": { "command": "memesh-mcp" } } } a ~/.cursor/mcp.json. El banner de doctor del panel puede aplicar las dos reparaciones locales recuperables que sabe verificar; nunca cambia archivos solo porque se abrió la página.

El plugin no instala la CLI. Después de /plugin install, escribir memesh en una terminal dice command not found hasta que también ejecutes npm install -g @pcircle/memesh. Si solo usas el chat de Claude Code, solo A es suficiente.

Actualización: Plugin de Claude Code: memesh upgrade-plugin (o npx @pcircle/memesh upgrade-plugin sin la CLI). Plugin de Codex: codex plugin marketplace upgrade pcircle-memesh && codex plugin add memesh@pcircle-memesh. CLI global de npm: memesh update. ¿Instalando con un agente de IA? Apúntalo a llms-install.md.


Primeros pasos

memesh remember "Login uses OAuth 2.0 with PKCE"
memesh recall "login"
# -> finds the PKCE decision

memesh briefing        # what the agent knows about this project
memesh serve           # starts the local server and prints the dashboard URL

Mantén memesh serve ejecutándose y abre la URL impresa. En Claude Code ni siquiera necesitas la terminal para las herramientas de memoria: di "recuerda esto" en el chat, y una vez que haya algo que mostrar, el informe llega solo al inicio de la sesión.

Dos cosas que vale la pena saber una vez que tengas memorias:

  • forget archiva una memoria en lugar de eliminarla. Una memoria más nueva puede reemplazar a una más antigua.
  • Un agente en ejecución puede llamar a work_package para preparar un resumen de calendario o turnos visibles acotados de la transcripción elegible más reciente de Claude Code. El modo de transcripción requiere la raíz de archivo MCP única coincidente del cliente; raíces faltantes o ambiguas y escaneos acotados fallidos fallan de forma cerrada. El envío retiene turnos fuente redactados y solo prepara la revisión humana pendiente; los agentes no pueden aplicarla ni rechazarla, y MeMesh no llama a ningún proveedor. Los límites exactos de descubrimiento están en la referencia de API.

Para un traspaso, el hook Stop de Claude Code guarda su respuesta sustantiva más reciente como una nota de proyecto reemplazable. Una nota reciente y confiable aparece antes de las memorias clasificadas en la próxima sesión de Claude Code y en briefing en cualquier cliente; es un recordatorio para verificar, no un reinicio garantizado de tarea. Registra solo el estado de trabajo que realmente conoces con task_state, y envía ubicaciones de evidencia o preguntas de seguimiento con message (guía de mensajería de agentes). Un mensaje almacenado está disponible para recuperación, pero la entrega, la obtención y la aceptación de la cola nativa no significan que el destinatario completó la tarea.

En el informe, las decisiones recientes del proyecto tienen prioridad sobre la actividad rutinaria, y hasta cinco lecciones del proyecto se seleccionan por separado. El traspaso, el estado de tarea mostrado, las memorias clasificadas, la memoria global en full y el índice inyectado comparten un límite de bloque de memoria de 4000 caracteres. Si el índice dice que se omitieron más memorias, usa recall; memesh briefing --index muestra el índice independiente bajo sus límites separados de 40 líneas/3072 bytes.

Referencia completa de comandos y herramientas: docs/api/API_REFERENCE.md. Cómo está construido: docs/ARCHITECTURE.md. Contribuciones: CONTRIBUTING.md.


Las 12 herramientas de memoria y coordinación

HerramientaQué hace
work_packagePrepara un resumen de calendario no confiable acotado o un paquete de transcripción de Claude Code bajo una raíz de espacio de trabajo MCP coincidente; envía un resultado estricto para revisión humana pendiente, o difiere sin cambio duradero. El envío de transcripción retiene turnos fuente redactados acotados; no se expone ninguna ruta de archivo, razonamiento oculto, proveedor, embedding o dato vectorial.
rememberAlmacena conocimiento como observaciones, relaciones y etiquetas — o pasa texto libre como note y el título, las observaciones y el nombre se derivan; replace corrige una memoria en su lugar
recallBúsqueda local FTS5 con puntuación multifactorial (relevancia, actualidad, frecuencia, confianza, impacto de recuerdo)
forgetArchivo suave (nunca elimina) o elimina observaciones específicas
exportRespaldar, migrar o mover memorias como JSON entre agentes compatibles
importImportar memorias con estrategias de fusión (omitir / sobrescribir / agregar)
learnRegistrar lecciones estructuradas de errores (error, causa raíz, corrección, prevención)
task_stateLeer o registrar dónde está el trabajo — objetivo, siguiente paso, bloqueador, qué se acaba de terminar
briefingLa topología de trabajo ensamblada para cualquier cliente MCP — un traspaso de proyecto elegible precede a las memorias clasificadas en cada nivel; minimal luego muestra las decisiones, lecciones, conocimiento y actividad reciente de este proyecto, standard agrega estado de tarea fresco y un índice de memoria duradera limitado, y full agrega otros proyectos y memoria global; project + recipient exactos pueden mostrar solo las entregas no obtenidas de ese destinatario
user_patternsAnaliza tus patrones de trabajo — horario, herramientas, fortalezas, áreas de aprendizaje
improvementPrepara una mejora de producto vinculada a evidencia para revisión humana, o lee su estado; los agentes no pueden aceptarla ni rechazarla
messageDescubre agentes activos, luego intercambia mensajes no confiables de destinatario exacto. Carga útil JSON duradera máx.: 64 KiB; envoltura nativa completa máx.: 16 KiB con fallos distintos de native_message_too_large y recipient_unavailable. La aceptación nativa, el descubrimiento, la consulta y la obtención nunca implican reconocimiento o disposición

La letra pequeña

Clasificación puntuada — Resultados clasificados por relevancia (30%) + actualidad (25%) + frecuencia (18%) + confianza (17%) + impacto de recuerdo (10%).

Mensajería de agentes, las reglas exactas (guía completa: docs/platforms/agent-messaging.md):

  • Funciona hoy: un remitente MCP, HTTP o CLI puede enviar de forma duradera una carga útil JSON no confiable de como máximo 65,536 bytes UTF-8 (64 KiB) a un destinatario local con nombre. Un receptor puede recuperarla por separado, reanudar desde un cursor opaco después de un reinicio, y registrar la ingesta, el acuse de recibo, la disposición del flujo de trabajo y la activación del host como hechos separados.
  • Con el plugin MeMesh Codex habilitado, cada hilo ordinario de Codex CLI que se inicia o reanuda con una identidad de hilo válida y un directorio de trabajo existente se registra automáticamente bajo una identidad con ámbito de hilo; no se requiere agent setup manual. SessionStart lanza un acompañante privado del propietario. SessionEnd mantiene una ventana de cola inactiva limitada de 45 segundos, la reanudación reemplaza la generación exacta anterior y la expiración elimina el registro. Un mensaje aceptado durante esa ventana inactiva se vuelve visible para el modelo cuando el mismo hilo se reanuda; no es una afirmación de que una interfaz detenida fue despertada. memesh agent setup codex-session sigue disponible solo cuando un espacio de trabajo necesita un principal nombrado estable. El sobre nativo completo, incluidos los metadatos de enrutamiento y la carga útil, está limitado por separado a 16,384 bytes (16 KiB). Un envío de sesión exacta devuelve éxito solo después de que esa cola nativa lo acepte; un sobre completo sobredimensionado reporta native_message_too_large, un enrutador local inalcanzable reporta router_unreachable, y otras sesiones no disponibles o rechazadas reportan recipient_unavailable. Los datos de recuperación con ámbito permanecen duraderos para todas las fallas del lado del remitente y del lado del receptor. Los principales objetivos conservan el comportamiento duradero de almacenar y reenviar. La aceptación nativa no es acuse de recibo ni disposición, y los mensajes nativos no deben contener secretos.
  • Una sesión de Codex detenida, faltante o desconectada no se despierta ni se reemplaza, y una entrega nativa de sesión exacta fallida no se reproduce automáticamente; el remitente debe reintentar deliberadamente. Sus datos de recuperación con ámbito permanecen disponibles; memesh message storage report muestra lo que está almacenado. La entrega nativa funciona solo en macOS y Linux.
  • Esta ruta nativa documentada cubre el Codex CLI ordinario. No asuma que Codex Desktop o una tarea no adjunta se registra a menos que esa sesión exacta en ejecución aparezca en message discover; este es un límite de evidencia, no una afirmación de que esos hosts son universalmente incompatibles.
  • Emparejar Claude Channel con el registro automático de Codex no necesita ningún valor de --project copiado entre los dos: cada host deriva su propio proyecto de enrutamiento de su propio directorio de trabajo (Claude) o --workspace (Codex), por lo que iniciar ambos en el mismo repositorio los coloca en el mismo proyecto automáticamente (#474).

Licencia MIT