Structural memory for AI coding agents. Bi-temporal graph, MCP-native, zero LLM calls. Cursor · Claude Code · Codex · Hermes · VS Code · Windsurf.
> /plugin marketplace add syncable-dev/memtrace-public> /plugin install memtrace-skills@memtrace
Repo: syncable-dev/memtrace-public
What's inside
Three things, every release.
🧭 Run a fleet of coding agents on the same repo without merge hell. Each agent reads the same call graph, sees the same blast radius, inherits the same temporal history. No collisions. No stale context.
🔁 Replay any refactor with full causal awareness. Agents see exactly what depends on what, and what changed when. No more "I refactored a function and 14 tests broke that nobody saw."
⚡ Index a 50k-file repo in under 90 seconds. Rust + Tree-sitter, $0 in API costs, 20+ languages plus framework-aware scanners (Vapor, Lapis, Kong, GitHub Actions, Terraform, RLS policies, …), fully local. Your code never leaves your machine.
🆕 LeanCTX Native — compressed reads, smart trees, and a value ledger.
Four new compression modes on get_source_window, single-call directory maps, real-time token-savings dashboard, and an opt-in adaptive learner that beats the static table by ~14%. Full breakdown: docs/leanctx-native.md. Available in v0.3.57+.
https://github.com/user-attachments/assets/e7d6a1e9-c912-4e65-a421-bd0256dffa5a
| Operation | Memtrace | Best alternative | Δ |
|---|---|---|---|
| Index 1,500 files | 1.5s · $0 | Mem0: 31 min · $10–50 | ~1,200× faster |
| Exact symbol query (acc@1, lat) | 96.6% · 0.07 ms | GitNexus: 97.0% · 8.95 ms | 128× lower latency |
| Graph callers recall (Django) | 81.6% | GitNexus: 5.3% | 15.4× |
| Incremental re-index p95 | 42.5 ms | CodeGrapher: 613.7 ms | 14.4× |
| Hybrid acc@1 (Django, 3K cases) | 73.9% | GitNexus: 38.6% | 1.91× |
| PR code-review F1 (50 PRs) | 0.7268 | Cubic v2: 0.6077 | +19.60% |
| RSS / process | 26 MB | ChromaDB: 1,060 MB | 41× tighter |
| Languages | 16+ (Tree-sitter) | varies | — |
Reproducible benchmark suite: benchmarks/. Same machine, same corpora, same adapter contract. Ground truth from Python's ast and pyright LSP — never from any tool's own index. No system gets a home-field advantage in the dataset.
Detailed breakdowns: BENCHMARKS-v0.3.22.md · BENCHMARKS-v0.3.29.md · Code reviewer benchmark
Memtrace is in private beta. We're rolling out access in batches to keep the feedback loop tight — every cohort lands in a Discord channel where we ship fixes from real bug reports inside a week.
→ Join the waitlist at memtrace.io.
Already have access? npm install -g memtrace and you're indexing in 90 seconds. Full setup below.
🔒 Privacy. Memtrace runs entirely on your machine. Source code never leaves it. The only network traffic is license validation, aggregate node/edge counts, and opt-out crash telemetry — no source, no file paths, no symbol names. Full breakdown: PRIVACY.md, TELEMETRY.md. Disable telemetry with
MEMTRACE_TELEMETRY=off.
Good code-intelligence tools already exist. GitNexus and CodeGrapherContext build AST-based graphs that work for "what's in my repo right now."
Memtrace is a bi-temporal episodic structural knowledge graph. It builds on the same AST foundation and adds two dimensions:
On top of that, the structural layer is comprehensive:
| Symbols are nodes | functions, classes, interfaces, types, endpoints |
| Relationships are edges | CALLS, IMPLEMENTS, IMPORTS, EXPORTS, CONTAINS |
| Community detection | Louvain algorithm identifies architectural modules automatically |
| Hybrid retrieval | Tantivy BM25 + vector embeddings + Reciprocal Rank Fusion + cross-encoder rerank |
| Rust-native | compiled binary, no Python/JS runtime overhead, sub-8 ms p95 query latency |
The agent doesn't just search your code. It remembers it.
Mem0 and Graphiti are strong conversational memory engines designed for tracking entity knowledge (e.g. User -> Likes -> Apples). They excel at that. For code intelligence specifically, the tradeoff is that they rely on LLM inference to build their graphs — which adds cost and time when processing thousands of source files.
Graphiti processes data through add_episode(), which triggers multiple LLM calls per episode — entity extraction, relationship resolution, deduplication. At ~50 episodes/minute (source), ingesting 1,500 code files takes 1–2 hours.
Mem0 processes data through client.add(), which queues async LLM extraction and conflict resolution per memory item (source). Bulk ingestion with infer=True (default) means every file passes through an LLM pipeline. Throughput is bounded by your LLM provider's rate limits.
Both accumulate $10–50+ in API costs for large codebases because every relationship is inferred rather than parsed.
Memtrace takes a different approach: it indexes 1,500 files in 1.2–1.8 seconds for $0.00 — no LLM calls, no API costs, no rate limits. Native Tree-sitter AST parsers resolve deterministic symbol references (CALLS, IMPLEMENTS, IMPORTS) locally. The tradeoff is that Memtrace is purpose-built for code — it doesn't handle conversational entity memory the way Mem0 and Graphiti do.
Memtrace exposes a full structural toolkit via the Model Context Protocol.
Search & Discovery
find_code — hybrid BM25 + semantic + RRFfind_symbol — exact / fuzzy with LevenshteinRelationships
analyze_relationships — callers, callees, hierarchy, importsget_symbol_context — 360° view in one callImpact Analysis
get_impact — blast radius with risk ratingdetect_changes — diff-to-symbols scope mappingCode Quality
find_dead_code — zero-caller detectionfind_most_complex_functions — complexity hotspotscalculate_cyclomatic_complexityget_repository_statsTemporal Analysis
get_evolution — 6 scoring modesget_timeline — full version historydetect_changes — diff-based scopeGraph Algorithms
find_bridge_symbols — betweenness centralityfind_central_symbols — PageRank / degreelist_communities — Louvain moduleslist_processes / get_process_flowAPI Topology
get_api_topology — cross-repo HTTP graphfind_api_endpointsfind_api_callsIndexing & Watch
index_directory — parse, resolve, embedwatch_directory — live incrementalexecute_cypher — direct graph queriesMemtrace ships skills/guidance that teach agents how to use the graph. They fire automatically based on what you ask — no prompt engineering required.
| Skill | You say… |
|---|---|
memtrace-search | "find this function", "where is X defined" |
memtrace-relationships | "who calls this", "show class hierarchy" |
memtrace-evolution | "what changed this week", "how did this evolve" |
memtrace-impact | "what breaks if I change this", "blast radius" |
memtrace-quality | "find dead code", "complexity hotspots" |
memtrace-graph | "show me the architecture", "find bottlenecks" |
memtrace-api-topology | "list API endpoints", "service dependencies" |
memtrace-index | "index this project", "parse this codebase" |
memtrace-cochange | "what else changes with this", "hidden coupling" |
Plus 8 workflow skills that chain multiple tools with decision logic: memtrace-first, codebase-exploration, change-impact-analysis, incident-investigation, refactoring-guide, continuous-memory, episode-replay, and session-continuity.
Six scoring algorithms for different temporal questions:
| Mode | Best for |
|---|---|
compound | General-purpose "what changed?" — weighted blend of impact, novelty, recency |
impact | "What broke?" — ranks by blast radius (in_degree^0.7 × (1 + out_degree)^0.3) |
novel | "What's unexpected?" — anomaly detection via surprise scoring |
recent | "What changed near the incident?" — exponential time decay |
directional | "What was added vs removed?" — asymmetric scoring |
overview | Quick module-level summary |
Uses Structural Significance Budgeting to surface the minimum set of changes covering ≥80% of total significance.
| Editor / Agent | MCP Tools (25+) | Skills / Guidance | Install |
|---|---|---|---|
| Claude Code | ✅ | ✅ | npm install -g memtrace — fully automatic |
| Claude Desktop | ✅ | ✅ | Automatic — shared with Claude Code |
| Cursor (v2.4+) | ✅ | ✅ | npm install -g memtrace — fully automatic |
| Codex CLI | ✅ | ✅ | npm install -g memtrace — fully automatic |
| Windsurf | ✅ | ✅ | npm install -g memtrace — fully automatic |
| VS Code (Copilot) | ✅ | ✅ | npm install -g memtrace — fully automatic |
| Hermes | ✅ | ✅ | npm install -g memtrace — fully automatic |
| OpenCode | ✅ | ✅ | npm install -g memtrace — fully automatic |
| Kiro | ✅ | Steering | npm install -g memtrace — fully automatic |
| Cline / Roo Code | ✅ | — | Add MCP server manually |
| Any MCP client | ✅ | — | Add MCP server manually |
Skills are workflow prompts that teach the agent how to chain tools. Kiro does not use SKILL.md, so Memtrace writes equivalent auto steering files instead.
npm install -g memtrace
Handles everything — binary, 17 skills, MCP server, plugin, marketplace. One command, both editors.
For manual setup:
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
npm install -g memtrace handles everything automatically. Cursor v2.4+ reads the same SKILL.md format as Claude.
For project-local install (skills travel with your repo):
npx memtrace-skills install --only cursor --local
The installer also writes skills/guidance and MCP configuration for the newer agent surfaces:
| Agent | Global skills / guidance | Global MCP config | Project-local support |
|---|---|---|---|
| Codex | ~/.agents/skills/ | ~/.codex/config.toml | .agents/skills/, .codex/config.toml |
| Windsurf | ~/.codeium/windsurf/skills/ | ~/.codeium/windsurf/mcp_config.json | .windsurf/skills/; MCP remains user-level |
| VS Code / Copilot | ~/.copilot/skills/ | VS Code user mcp.json | .github/skills/, .vscode/mcp.json |
| Hermes | ~/.hermes/skills/ | ~/.hermes/config.yaml | user-level only |
| 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 |
Install only selected integrations:
npx memtrace-skills install --only codex,windsurf,vscode,hermes,opencode,kiro
Install project-local config where supported:
npx memtrace-skills install --only codex,vscode,opencode,kiro --local
For Cline, Roo Code, or any client that only needs MCP tools, add this server manually:
{
"mcpServers": {
"memtrace": {
"command": "memtrace",
"args": ["mcp"],
"env": {}
}
}
}
| Editor | Config file |
|---|---|
| Windsurf | ~/.codeium/windsurf/mcp_config.json |
| VS Code (Copilot) | .vscode/mcp.json in your project root |
| Codex | ~/.codex/config.toml or .codex/config.toml |
| Hermes | ~/.hermes/config.yaml |
| OpenCode | ~/.config/opencode/opencode.json or project opencode.json |
| Kiro | ~/.kiro/settings/mcp.json or .kiro/settings/mcp.json |
| Cline | Cline MCP settings in the extension panel |
memtrace uninstall # removes skills, MCP server, plugin, settings
npm uninstall -g memtrace
Already ran npm uninstall first? The cleanup script is at ~/.memtrace/uninstall.js:
node ~/.memtrace/uninstall.js
npm install -g memtrace ships a small main package + a platform-specific binary (one of @memtrace/darwin-arm64, @memtrace/linux-x64, @memtrace/win32-x64). If memtrace start ever says "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
This typically only happens on machines where npm is configured to skip optional dependencies (corporate npmrc, certain CI caches).
Programming: Rust · Go · TypeScript · JavaScript · Python · Java · C · C++ · C# · Swift · Kotlin · Ruby · PHP · Dart · Scala · Perl · Lua — full AST: functions, classes, types, calls, complexity.
Infrastructure & config: YAML · HCL / Terraform · JSON · TOML · SQL (including PostgreSQL CREATE POLICY for RLS, with cross-language edges from policies to Drizzle / Prisma / TS schema symbols).
Framework-aware scanners on top of the AST layer:
needs: edges) · Terraform variables / modules / data sources · Helm charts · K8s manifestspackage.json scripts + deps · Cargo.toml deps · pyproject.toml (best-effort)Memtrace runs locally — first index is CPU/RAM intensive, subsequent queries and incremental indexing are much lighter.
| Minimum | Recommended | |
|---|---|---|
| CPU | 4 cores | 8+ cores for large monorepos |
| Memory | 8 GB RAM | 16–32 GB RAM |
| Disk | 5 GB free | 10–20 GB free |
| GPU | Not required | Not required |
| Node.js | ≥ 18 | Current LTS |
| Git | Required for temporal analysis | Full repo history for best results |
Since v0.3.17 Memtrace ships with opt-out telemetry that helps us catch crashes, regressions, and performance issues before someone files an issue.
Disable with one env var:
MEMTRACE_TELEMETRY=off memtrace start # per-run
export MEMTRACE_TELEMETRY=off # permanent (~/.zshrc, ~/.bashrc)
Or in your editor's MCP config: "env": { "MEMTRACE_TELEMETRY": "off" }.
Full breakdown — including the on-disk queue layout, where data is stored on the receiving end, and how to inspect what would have shipped — is in TELEMETRY.md.
Proprietary EULA. Free to use during private beta and after general availability for individual developers. Indexer + database (MemDB) are closed-source.
Benchmark suite under MIT in benchmarks/ — fully reproducible, no proprietary code required to run them.
.claude-plugin/
marketplace.json
.gitignore
assets/
benchmarks/
benchmark-overview.svg
indexing-speed.svg
search-accuracy.svg
search-latency.svg
token-context.svg
logo.svg
memtrace-demo.mp4
benchmark-overview.svg
benchmarks/
BENCHMARKS-v0.3.22.md
BENCHMARKS-v0.3.29.md
.gitignore
analyze_failures.py
bench_memtrace_only.py
benchmark_full.py
benchmark_results.json
code-reviewer-offline-results.json
competitor_ingestion_test.py
competitor_search_test.py
contextbench-memtrace/
agent_runner.py
agent_tool_client.py
aws/
00-preflight.sh
01-provision.sh
02-bootstrap.sh
03-run.sh
04-status.sh
05-evaluate-and-collect.sh
06-teardown.sh
07-watch.sh
common.sh
config.env.example
full_preflight_runner.py
full_preflight_tracker.py
manual-exact-checkpoint.py
MONITOR_EVERY_10.md
monitor-every-10.sh
README.md
remote/
bootstrap-remote.sh
build-memtrace-remote.sh
evaluate-remote.sh
run-remote.sh
spot-watcher.sh
status-remote.sh
watchdog_remote.py
repatriate-preflight-cache.py
replay-codex-projection.py
shard-orchestrator.py
test-monitor-every-10.sh
codex_runner.py
compare_runs.py
dev_query_plans_3.json
evaluate_mixed.py
gpt5_small_slice_result.json
INFRASTRUCTURE.md
offline_packing_counterfactual.py
parallel_driver.py
parse_swebench_report.py
post_selector_policy.py
README.md
reconcile_predictions.py
report.py
runner.py
smoke_result.json
test_agent_runner.py
test_codex_runner.py
test_compare_runs.py
test_evaluate_mixed.py
test_manual_exact_checkpoint.py
test_offline_packing_counterfactual.py
test_parallel_driver.py
test_parse_swebench_report.py
test_post_selector_policy.py
test_reconcile_predictions.py
test_report.py
test_runner.py
test_shard_orchestrator.py
test_triage.py
test_watchdog_remote.py
tests/
test_full_preflight_runner.py
test_full_preflight_tracker.py
test_repatriate_preflight_cache.py
test_shard_orchestrator.py
TRACKER.md
triage.py
datasets/
generate_dataset.py
real_code_dataset.json
sample_dataset.json
fair/
corpus.json
dataset.json
extract_ground_truth.py
README.md
results_1k_django_v0_3_22.json
results_1k_mempalace_v0_3_22.json
results_hybrid_1k_django_v0_3_21.json
results_hybrid_1k_django_v0_3_29.json
results_hybrid_1k_mempalace_v0_3_21.json
results_hybrid_1k_mempalace_v0_3_29.json
results_iso_1k_django_chromadb.json
results_iso_1k_django_gitnexus.json
results_iso_1k_django_memtrace.json
results_iso_1k_mempalace_cgc.json
results_iso_1k_mempalace_chromadb.json
results_iso_1k_mempalace_gitnexus.json
results_iso_1k_mempalace_memtrace.json
results.json
run_fair_benchmark.py
run_hybrid_retrieval_benchmark.py
README.md
runners/
benchmark_runner.py
chromadb_baseline.py
evaluator.py
memtrace_baseline.py
suite/
__init__.py
__main__.py
adapters/
__init__.py
cgc.py
chromadb.py
code_context_engine.py
codebase_memory.py
gitnexus.py
memtrace.py
benches/
__init__.py
bench_0_exact_symbol/
__init__.py
run.py
bench_1_snr_mrr/
__init__.py
run.py
bench_3_graph_queries/
__init__.py
driver_django.py
driver.py
run.py
bench_4_incremental/
__init__.py
driver.py
edits.py
run.py
bench_5_agent_level/
__init__.py
run.py
contract.py
corpora/
__init__.py
django.py
mempalace.py
scratch_fixture/
scratch_fixture_corpus.py
__init__.py
backoff.py
cli.py
config.py
errors.py
events.py
health.py
logger.py
metrics.py
middleware.py
queue.py
README.md
retry.py
scheduler.py
storage.py
task.py
tests/
__init__.py
test_queue.py
test_retry.py
test_scheduler.py
test_worker.py
worker.py
datasets/
__init__.py
bench_3_graph_django.json
bench_3_graph.json
bench_4_edits.json
bench_5_tasks.json
generators/
__init__.py
edit_script.py
pyright_graph_django.py
pyright_graph.py
README.md
reporting.py
runner.py
scoring.py
scripts/
bootstrap.sh
tests/
__init__.py
conftest.py
fakes.py
fixtures/
__init__.py
canned_bench0_rows.jsonl
golden_bench0_rollup.md
test_adapter_cgc.py
test_adapter_chromadb.py
test_adapter_code_context_engine.py
test_adapter_codebase_memory.py
test_adapter_gitnexus.py
test_adapter_memtrace.py
test_bench_0.py
test_bench_1.py
test_bench_4.py
test_contract.py
test_corpus_mempalace.py
test_edit_script.py
test_reporting.py
test_runner.py
test_scoring.py
test_smoke.py
versions.toml
swebench-retrieval/
.gitignore
01_methodology.md
02_sampling.py
03_instances_25.csv
04_instances_100.csv
05_repro.sh
data/
verified_500.parquet
prompts/
agentic_system.md
memtrace_query.md
vector_query.md
README.md
requirements.txt
run_benchmark.sh
runners/
__init__.py
check_env.py
clone_repos.py
common.py
orchestrate.py
run_agentic.py
run_memtrace.py
run_vector.py
scoring/
__init__.py
aggregate.py
scorer.py
test_scorer.py
terminal-bench-memtrace/
.env.example
.gitignore
agent.py
README.md
scripts/
run_smoke.sh
summarize_harbor.py
CONTRIBUTING.md
docs/
architecture.md
cli-reference.md
code-reviewer-flow.svg
code-reviewer.md
cortex.md
data-directories.md
embedding-providers.md
environment-variables.md
getting-started.md
indexing-and-ignore-rules.md
leanctx-native.md
mcp-and-transports.md
memtrace-hero.png
memtrace-hero.svg
performance-tuning.md
pre-avx2-cpus.md
privacy-and-telemetry.md
README.md
telemetry-compliance-datasheet.md
tools.md
troubleshooting.md
v0.4.60-release-notes.md
workflows.md
workspaces.md
favicon.ico
LICENSE
Memtrace-Logo.svg
plugins/
memtrace-skills/
.claude-plugin/
plugin.json
references/
mcp-parameters.md
skills/
memtrace-api-topology/
SKILL.md
memtrace-change-impact-analysis/
SKILL.md
memtrace-cochange/
SKILL.md
memtrace-code-review/
SKILL.md
memtrace-codebase-exploration/
SKILL.md
memtrace-continuous-memory/
SKILL.md
memtrace-daily/
SKILL.md
memtrace-decision-memory/
SKILL.md
memtrace-docs/
SKILL.md
memtrace-episode-replay/
SKILL.md
memtrace-evolution/
SKILL.md
memtrace-first/
SKILL.md
memtrace-fleet-first/
SKILL.md
memtrace-fleet-publish-intent/
SKILL.md
memtrace-fleet-record-episode/
SKILL.md
memtrace-fleet-resolve/
SKILL.md
memtrace-graph/
SKILL.md
memtrace-impact/
SKILL.md
memtrace-incident-investigation/
SKILL.md
memtrace-index/
SKILL.md
memtrace-preflight/
SKILL.md
memtrace-quality/
SKILL.md
memtrace-refactoring-guide/
SKILL.md
memtrace-relationships/
SKILL.md
memtrace-search/
SKILL.md
memtrace-session-continuity/
SKILL.md
memtrace-style-fingerprint/
SKILL.md
PRIVACY.md
README.md
RELEASE-NOTES-v0.3.85.md
RELEASE-NOTES-v0.3.89.md
RELEASE-NOTES-v0.4.0.md
RELEASE-NOTES-v0.4.62.md
TELEMETRY.mdFAQ
memtrace-public is a Claude Code plugin with 27 hand-picked skills for development work, indexed on Flowy. Install it with the command on its page. It includes memtrace-api-topology, memtrace-change-impact-analysis, memtrace-cochange. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.