memtrace

Memtrace proporciona a los agentes de codificación de IA una memoria estructural: tu base de código como un grafo de conocimiento en vivo, para que los agentes dejen de derivar la estructura del código desde cero y comiencen a razonar a partir de hechos.

Documentación

Memtrace — structural memory for AI coding agents

Tus agentes merecen memoria estructural.

Memtrace oficial de Syncable. Comienza en memtrace.io/docs. El paquete oficial es memtrace en npm, y el repositorio público es syncable-dev/memtrace-public. Otros proyectos con el mismo nombre no están relacionados. Compara memtrace --version con el historial de versiones Stable y Nightly.

Para soporte de instalación, abre un issue en el repositorio público oficial con tu sistema operativo, versión de Memtrace y el error exacto. Elimina credenciales y código privado de los registros compartidos. El equipo de Syncable mantiene este paquete y sus canales de soporte.

📖 Documentación · ⭐ Danos una estrella · memtrace.io · npm · Discord

Memtrace convierte tu base de código en un grafo de conocimiento en vivo que los agentes de IA pueden consultar en milisegundos — cada función, clase, borde de llamada y versión, en cada sesión, sin volver a leer archivos ni romper cosas que no pueden ver.

Lleva a tu flota a memoria estructural compartida en menos de 90 segundos.

Estructural · cero llamadas LLM · Bi-temporal · consultas de viaje en el tiempo · Consciente de reproducción · cero refactorizaciones a ciegas

Stars npm version License Rust MCP Languages Discord DeepSeek Harness Private Beta


DeepSeek Harness

Memtrace se ejecuta como un plugin de DeepSeek Harness. Instala Harness primero (npm install -g @deepseek-ai/dsh — ese es el comando dsh), luego agrega Memtrace:

npx -y @deepseek-ai/dsh plugin --profile web add github:syncable-dev/dsh-plugin-memtrace

Luego pide al agente que indexe el espacio de trabajo y extraiga radio de explosión, evolución o un informe de arquitectura. Detalles: syncable-dev/dsh-plugin-memtrace.


Qué hace

Tres cosas, en cada versión.

🧭 Ejecuta una flota de agentes de codificación en el mismo repositorio sin infierno de fusiones. Cada agente lee el mismo grafo de llamadas, ve el mismo radio de explosión, hereda el mismo historial temporal. Sin colisiones. Sin contexto obsoleto.

🔁 Reproduce cualquier refactorización con plena conciencia causal. Los agentes ven exactamente qué depende de qué, y qué cambió y cuándo. Se acabó el "refactoricé una función y 14 pruebas se rompieron que nadie vio."

⚡ Indexa un repositorio de 50k archivos en menos de 90 segundos. Rust + Tree-sitter, $0 en costos de API, 20+ lenguajes más escáneres conscientes del framework (Vapor, Lapis, Kong, GitHub Actions, Terraform, políticas RLS, …), totalmente local. Tu código nunca sale de tu máquina.

🆕 LeanCTX Native — lecturas comprimidas, árboles inteligentes y un libro mayor de valor. Cuatro nuevos modos de compresión en get_source_window, mapas de directorio de una sola llamada, panel de ahorro de tokens en tiempo real y un aprendiz adaptativo opcional que supera la tabla estática en ~14%. Desglose completo: docs/leanctx-native.md. Disponible en v0.3.57+.

memtrace-demo.mp4


Números

OperaciónMemtraceMejor alternativaΔ
Indexar 1,500 archivos1.5s · $0Mem0: 31 min · $10–50~1,200× más rápido
Consulta exacta de símbolo (acc@1, lat)96.6% · 0.07 msGitNexus: 97.0% · 8.95 ms128× menor latencia
Recuerdo de llamadores del grafo (Django)81.6%GitNexus: 5.3%15.4×
Re-indexación incremental p9542.5 msCodeGrapher: 613.7 ms14.4×
Híbrido acc@1 (Django, 3K casos)73.9%GitNexus: 38.6%1.91×
F1 de revisión de código PR (50 PRs)0.7268Cubic v2: 0.6077+19.60%
RSS / proceso26 MBChromaDB: 1,060 MB41× más compacto
Lenguajes16+ (Tree-sitter)varía—

Suite de benchmarks reproducible: benchmarks/. Misma máquina, mismos corpus, mismo contrato de adaptador. Verdad fundamental del ast y pyright LSP de Python — nunca del índice de ninguna herramienta. Ningún sistema obtiene ventaja de campo en el conjunto de datos.

Desgloses detallados: BENCHMARKS-v0.3.22.md · BENCHMARKS-v0.3.29.md · Benchmark de revisor de código


Crecimiento de estrellas en GitHub


Obtén acceso

Memtrace está en beta privada. Estamos otorgando acceso en lotes para mantener el ciclo de retroalimentación ajustado — cada cohorte llega a un canal de Discord donde publicamos correcciones de informes de errores reales en menos de una semana.

→ Únete a la lista de espera en memtrace.io.

¿Ya tienes acceso? npm install -g memtrace y estarás indexando en 90 segundos. Configuración completa abajo.

🔒 Privacidad. Memtrace se ejecuta completamente en tu máquina. El código fuente nunca la abandona. El único tráfico de red es la validación de licencia, conteos agregados de nodos/bordes y telemetría de fallos opcional de exclusión — sin código fuente, sin rutas de archivos, sin nombres de símbolos. Desglose completo: PRIVACY.md, TELEMETRY.md. Desactiva la telemetría con MEMTRACE_TELEMETRY=off.


Por qué existe Memtrace

Ya existen buenas herramientas de inteligencia de código. GitNexus y CodeGrapherContext construyen grafos basados en AST que funcionan para "qué hay en mi repositorio ahora mismo."

Memtrace es un grafo de conocimiento estructural episódico bi-temporal. Se construye sobre la misma base de AST y agrega dos dimensiones:

  • Memoria temporal — cada símbolo lleva su historial completo de versiones. Seis algoritmos de puntuación (impacto, novedad, actualidad, direccional, compuesto, resumen) permiten a los agentes hacer diferentes preguntas temporales: "¿qué cambió?", "¿qué es inesperado?", "¿qué se romperá?".
  • Topología de API entre servicios — Memtrace mapea grafos de llamadas HTTP entre repositorios, detectando qué servicios llaman a qué endpoints en tu arquitectura.

Además, la capa estructural es integral:

Los símbolos son nodosfunciones, clases, interfaces, tipos, endpoints
Las relaciones son bordesCALLS, IMPLEMENTS, IMPORTS, EXPORTS, CONTAINS
Detección de comunidadesEl algoritmo Louvain identifica módulos arquitectónicos automáticamente
Recuperación híbridaTantivy BM25 + incrustaciones vectoriales + Fusión de Rango Recíproco + reordenamiento con cross-encoder
Nativo en Rustbinario compilado, sin sobrecarga de runtime Python/JS, latencia de consulta p95 inferior a 8 ms

El agente no solo busca en tu código. Lo recuerda.


Memtrace vs. sistemas de memoria generales (Mem0, Graphiti)

Mem0 y Graphiti son potentes motores de memoria conversacional diseñados para rastrear conocimiento de entidades (p. ej. User -> Likes -> Apples). Sobresalen en eso. Para inteligencia de código específicamente, la compensación es que dependen de inferencia LLM para construir sus grafos — lo que agrega costo y tiempo al procesar miles de archivos fuente.

Graphiti procesa datos a través de add_episode(), lo que dispara múltiples llamadas LLM por episodio — extracción de entidades, resolución de relaciones, deduplicación. A ~50 episodios/minuto (fuente), ingerir 1,500 archivos de código toma 1–2 horas.

Mem0 procesa datos a través de client.add(), que pone en cola extracción LLM asíncrona y resolución de conflictos por elemento de memoria (fuente). La ingesta masiva con infer=True (predeterminado) significa que cada archivo pasa por un pipeline LLM. El rendimiento está limitado por los límites de tasa de tu proveedor LLM.

Ambos acumulan $10–50+ en costos de API para bases de código grandes porque cada relación se infiere en lugar de analizarse.

Memtrace toma un enfoque diferente: indexa 1,500 archivos en 1.2–1.8 segundos por $0.00 — sin llamadas LLM, sin costos de API, sin límites de tasa. Los analizadores AST nativos de Tree-sitter resuelven referencias de símbolos deterministas (CALLS, IMPLEMENTS, IMPORTS) localmente. La compensación es que Memtrace está construido específicamente para código — no maneja memoria de entidades conversacionales como lo hacen Mem0 y Graphiti.


25+ herramientas MCP

Memtrace expone un kit de herramientas estructural completo a través del Protocolo de Contexto de Modelo.

Búsqueda y Descubrimiento - find_code — híbrido BM25 + semántico + RRF - find_symbol — exacto / difuso con Levenshtein Relaciones - analyze_relationships — llamadores, llamados, jerarquía, importaciones - get_symbol_context — vista de 360° en una sola llamada Análisis de Impacto - get_impact — radio de explosión con calificación de riesgo - detect_changes — mapeo de alcance diff-a-símbolos Calidad de Código - find_dead_code — detección de cero llamadores - find_most_complex_functions — puntos críticos de complejidad - calculate_cyclomatic_complexity - get_repository_statsAnálisis Temporal - get_evolution — 6 modos de puntuación - get_timeline — historial completo de versiones - detect_changes — alcance basado en diff Algoritmos de Grafo - find_bridge_symbols — centralidad de intermediación - find_central_symbols — PageRank / grado - list_communities — módulos Louvain - list_processes / get_process_flow Topología de API - get_api_topology — grafo HTTP entre repositorios - find_api_endpoints - find_api_calls Indexación y Vigilancia - index_directory — analizar, resolver, incrustar - watch_directory — incremental en vivo - execute_cypher — consultas directas al grafo

17 habilidades de agente

Memtrace incluye habilidades/orientación que enseñan a los agentes cómo usar el grafo. Se activan automáticamente según lo que preguntes — sin necesidad de ingeniería de prompts.

HabilidadTú dices…
memtrace-search"encuentra esta función", "dónde está definido X"
memtrace-relationships"quién llama a esto", "muestra la jerarquía de clases"
memtrace-evolution"qué cambió esta semana", "cómo evolucionó esto"
memtrace-impact"qué se rompe si cambio esto", "radio de explosión"
memtrace-quality"encuentra código muerto", "puntos críticos de complejidad"
memtrace-graph"muéstrame la arquitectura", "encuentra cuellos de botella"
memtrace-api-topology"lista endpoints de API", "dependencias de servicios"
memtrace-index"indexa este proyecto", "analiza esta base de código"
memtrace-cochange"qué más cambia con esto", "acoplamiento oculto"

Más 8 habilidades de flujo de trabajo que encadenan múltiples herramientas con lógica de decisión: memtrace-first, codebase-exploration, change-impact-analysis, incident-investigation, refactoring-guide, continuous-memory, episode-replay y session-continuity.


Motor Temporal

Seis algoritmos de puntuación para diferentes preguntas temporales:

ModoMejor para
compound"¿Qué cambió?" de propósito general — mezcla ponderada de impacto, novedad, actualidad
impact"¿Qué se rompió?" — clasifica por radio de explosión (in_degree^0.7 × (1 + out_degree)^0.3)
novel"¿Qué es inesperado?" — detección de anomalías mediante puntuación de sorpresa
recent"¿Qué cambió cerca del incidente?" — decaimiento exponencial en el tiempo
directional"¿Qué se agregó vs. se eliminó?" — puntuación asimétrica
overviewResumen rápido a nivel de módulo

Utiliza Presupuesto de Significancia Estructural para mostrar el conjunto mínimo de cambios que cubre ≥80% de la significancia total.


Compatibilidad

Editor / AgenteHerramientas MCP (25+)Habilidades / OrientaciónInstalación
Claude Code✅✅npm install -g memtrace — totalmente automática
Claude Desktop✅✅Automática — compartida con Claude Code
DeepSeek Harness✅✅npx -y @deepseek-ai/dsh plugin --profile web add github:syncable-dev/dsh-plugin-memtrace
Cursor (v2.4+)✅✅npm install -g memtrace — totalmente automática
Codex CLI✅✅npm install -g memtrace — totalmente automática
Windsurf✅✅npm install -g memtrace — totalmente automática
VS Code (Copilot)✅✅npm install -g memtrace — totalmente automática
Hermes✅✅npm install -g memtrace — totalmente automática
OpenCode✅✅npm install -g memtrace — totalmente automática
Kiro✅Direcciónnpm install -g memtrace — totalmente automática
Cline / Roo Code✅—Agregar servidor MCP manualmente
Cualquier cliente MCP✅—Agregar servidor MCP manualmente

Las habilidades son prompts de flujo de trabajo que enseñan al agente cómo encadenar herramientas. Kiro no usa SKILL.md, por lo que Memtrace escribe archivos de dirección automática equivalentes en su lugar.


Configuración

DeepSeek Harness

dsh proviene de @deepseek-ai/dsh, no de Memtrace.

npm install -g @deepseek-ai/dsh
dsh plugin --profile web add github:syncable-dev/dsh-plugin-memtrace

O sin un CLI global:

npx -y @deepseek-ai/dsh plugin --profile web add github:syncable-dev/dsh-plugin-memtrace

Ese bundle registra las habilidades de Memtrace e inicia memtrace mcp dentro del perfil de Harness. El primer lanzamiento puede descargar el binario de Memtrace mediante npx; fija una instalación local con npm install -g memtrace y MEMTRACE_BIN=memtrace.

Claude Code + Claude Desktop

npm install -g memtrace

Maneja todo: binario, 17 habilidades, servidor MCP, plugin, marketplace. Un solo comando, ambos editores.

Para configuración manual:

claude plugin marketplace add https://github.com/syncable-dev/memtrace-public.git
claude plugin install memtrace-skills@memtrace --scope user
claude mcp add memtrace -- memtrace mcp

Cursor

npm install -g memtrace maneja todo automáticamente. Cursor v2.4+ lee el mismo formato SKILL.md que Claude.

Para instalación local al proyecto (las habilidades viajan con tu repositorio):

npx memtrace-skills install --only cursor --local

Codex, Windsurf, VS Code, Hermes, OpenCode y Kiro

El instalador también escribe habilidades/guía y configuración de MCP para las superficies de agente más nuevas:

AgenteHabilidades/guía globalesConfig MCP globalSoporte local al proyecto
Codex~/.agents/skills/~/.codex/config.toml.agents/skills/, .codex/config.toml
Windsurf~/.codeium/windsurf/skills/~/.codeium/windsurf/mcp_config.json.windsurf/skills/; MCP permanece a nivel de usuario
VS Code / Copilot~/.copilot/skills/Usuario de VS Code mcp.json.github/skills/, .vscode/mcp.json
Hermes~/.hermes/skills/~/.hermes/config.yamlsolo a nivel de usuario
OpenCode~/.config/opencode/skills/~/.config/opencode/opencode.json.opencode/skills/, opencode.json
Kiro~/.kiro/steering/~/.kiro/settings/mcp.json.kiro/steering/, .kiro/settings/mcp.json

Instala solo integraciones seleccionadas:

npx memtrace-skills install --only codex,windsurf,vscode,hermes,opencode,kiro

Instala configuración local al proyecto donde sea compatible:

npx memtrace-skills install --only codex,vscode,opencode,kiro --local

Otros clientes MCP

Para Cline, Roo Code o cualquier cliente que solo necesite herramientas MCP, agrega este servidor manualmente:

{
  "mcpServers": {
    "memtrace": {
      "command": "memtrace",
      "args": ["mcp"],
      "env": {}
    }
  }
}
EditorArchivo de configuración
Windsurf~/.codeium/windsurf/mcp_config.json
VS Code (Copilot).vscode/mcp.json en la raíz de tu proyecto
Codex~/.codex/config.toml o .codex/config.toml
Hermes~/.hermes/config.yaml
OpenCode~/.config/opencode/opencode.json o proyecto opencode.json
Kiro~/.kiro/settings/mcp.json o .kiro/settings/mcp.json
ClineConfiguración MCP de Cline en el panel de extensiones

Desinstalación

memtrace uninstall      # removes skills, MCP server, plugin, settings
npm uninstall -g memtrace

¿Ya ejecutaste npm uninstall primero? El script de limpieza está en ~/.memtrace/uninstall.js:

node ~/.memtrace/uninstall.js

Solución de problemas de instalación

npm install -g memtrace incluye un paquete principal pequeño + un binario específico de plataforma (uno de @memtrace/darwin-arm64, @memtrace/linux-x64, @memtrace/win32-x64). Si memtrace start alguna vez dice "Could not find binary for your platform":

# Re-run install, asking npm to keep optional deps
npm install -g memtrace --include=optional

# Or refresh from latest
memtrace install         # built-in self-update
npm install -g memtrace@latest --force

# Or install the platform binary directly (Apple Silicon shown — swap for your platform)
npm install -g @memtrace/darwin-arm64

Esto normalmente solo ocurre en máquinas donde npm está configurado para omitir dependencias opcionales (npmrc corporativo, ciertos cachés de CI).


Idiomas

Programación: Rust · Go · TypeScript · JavaScript · Python · Java · C · C++ · C# · Swift · Kotlin · Ruby · PHP · Dart · Scala · Perl · Lua — AST completo: funciones, clases, tipos, llamadas, complejidad.

Infraestructura y configuración: YAML · HCL / Terraform · JSON · TOML · SQL (incluido PostgreSQL CREATE POLICY para RLS, con bordes entre lenguajes desde políticas hasta símbolos de esquema Drizzle / Prisma / TS).

Escáneres conscientes de frameworks sobre la capa AST:

  • Backend HTTP: Express · NestJS · Encore · Fastify · Vapor · Hummingbird · FastAPI · Flask · Django · Gin · Chi · Echo · Actix · Lapis · Kong · OpenResty · rutas de Rails
  • Frontend / cliente: RTK Query · TanStack Query · SWR · URLSession · AsyncHTTPClient · axios · fetch · vistas SwiftUI
  • CI / infra: flujos de trabajo de GitHub Actions (trabajos, pasos, bordes needs:) · variables / módulos / fuentes de datos de Terraform · gráficos Helm · manifiestos K8s
  • Gráficos de paquetes y dependencias: scripts + dependencias de package.json · dependencias de Cargo.toml · pyproject.toml (mejor esfuerzo)
  • Base de datos: políticas RLS de PostgreSQL + disparadores + funciones, con bordes heurísticos al esquema ORM

Requisitos

Memtrace se ejecuta localmente: el primer índice es intensivo en CPU/RAM; las consultas posteriores y la indexación incremental son mucho más ligeras.

MínimoRecomendado
CPU4 núcleos8+ núcleos para monorepos grandes
Memoria8 GB RAM16–32 GB RAM
Disco5 GB libres10–20 GB libres
GPUNo requeridaNo requerida
Node.js≥ 18LTS actual
GitRequerido para análisis temporalHistorial completo del repositorio para mejores resultados

Telemetría

Desde v0.3.17 Memtrace incluye telemetría opt-out que nos ayuda a detectar fallos, regresiones y problemas de rendimiento antes de que alguien abra un issue.

  • Recopilado: eventos de inicio de la aplicación, duraciones de indexación/embedding, informes de pánico, líneas de registro WARN/ERROR de los propios crates de Memtrace.
  • NO recopilado: código fuente, contenido de archivos, nombres de símbolos, embeddings, nombres o rutas de repositorios, nombres de ramas, datos de commits.
  • Sanitización: cada payload pasa por un sanitizador que elimina rutas del directorio home, cadenas con forma de token y direcciones de correo antes de tocar el disco.

Desactívalo con una variable de entorno:

MEMTRACE_TELEMETRY=off memtrace start                    # per-run
export MEMTRACE_TELEMETRY=off                             # permanent (~/.zshrc, ~/.bashrc)

O en la configuración MCP de tu editor: "env": { "MEMTRACE_TELEMETRY": "off" }.

El desglose completo — incluido el diseño de la cola en disco, dónde se almacenan los datos en el extremo receptor y cómo inspeccionar lo que se habría enviado — está en TELEMETRY.md.


Licencia y propiedad

EULA propietario. Uso gratuito durante la beta privada y después de la disponibilidad general para desarrolladores individuales. El indexador + la base de datos (MemDB) son de código cerrado.

Suite de benchmarks bajo MIT en benchmarks/ — totalmente reproducible, sin código propietario requerido para ejecutarlos.


memtrace.io · Discord · npm · Issues

Construido por Syncable · Copenhague 🇩🇰

MseeP.ai Security Assessment Badge