[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-1965":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":25,"hasPages":23,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":47,"readmeContent":48,"aiSummary":49,"trendingCount":16,"starSnapshotCount":16,"syncStatus":14,"lastSyncTime":50,"discoverSource":51},1965,"memtrace-public","syncable-dev\u002Fmemtrace-public","syncable-dev","Structural memory for AI coding agents. Bi-temporal graph, MCP-native, zero LLM calls. Cursor · Claude Code · Codex · Hermes · VS Code · Windsurf.","https:\u002F\u002Fmemtrace.io",null,"Python",182,13,2,6,0,3,8,29,9,56.34,"Other",false,"main",true,[27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],"agent-memory","ai-agents","bi-temporal-graph","claude-code","code-intelligence","code-search","coding-agents","cursor","developer-tools","knowledge-graph","llm","local-first","mcp","mcp-server","rag","rust","semantic-search","structural-memory","temporal-analysis","tree-sitter","2026-06-12 04:00:12","\u003Cp align=\"center\">\n  \u003Cimg src=\"docs\u002Fmemtrace-hero.svg\" alt=\"Memtrace — structural memory for AI coding agents\" width=\"100%\"\u002F>\n\u003C\u002Fp>\n\n\u003Ch1 align=\"center\">Your agents deserve \u003Ci>structural memory\u003C\u002Fi>.\u003C\u002Fh1>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"docs\u002F\">📖 Docs\u003C\u002Fa> &nbsp;·&nbsp;\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fsyncable-dev\u002Fmemtrace-public\u002Fstargazers\">⭐ Star us\u003C\u002Fa> &nbsp;·&nbsp;\n  \u003Ca href=\"https:\u002F\u002Fmemtrace.io\">memtrace.io\u003C\u002Fa> &nbsp;·&nbsp;\n  \u003Ca href=\"https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002Fmemtrace\">npm\u003C\u002Fa> &nbsp;·&nbsp;\n  \u003Ca href=\"https:\u002F\u002Fdiscord.gg\u002FgzedUSNbna\">Discord\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  Memtrace turns your codebase into a live knowledge graph that AI coding agents can query in milliseconds — every function, class, call edge, and version, across every session, without re-reading files or breaking things they can't see.\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cb>Get your fleet on shared structural memory in under 90 seconds.\u003C\u002Fb>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cb>Structural\u003C\u002Fb> · zero LLM calls &nbsp;·&nbsp; \u003Cb>Bi-temporal\u003C\u002Fb> · time-travel queries &nbsp;·&nbsp; \u003Cb>Replay-aware\u003C\u002Fb> · zero blind refactors\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fsyncable-dev\u002Fmemtrace-public\u002Fstargazers\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fsyncable-dev\u002Fmemtrace-public?style=flat-square&color=00d4b8&logo=github&logoColor=white&label=stars&cacheSeconds=300\" alt=\"Stars\"\u002F>\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002Fmemtrace\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002Fmemtrace?style=flat-square&color=00d4b8&logo=npm&logoColor=white&label=npm&cacheSeconds=300\" alt=\"npm version\"\u002F>\u003C\u002Fa>\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-Proprietary%20EULA-E879F9?style=flat-square\" alt=\"License\"\u002F>\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fruntime-Rust-orange?style=flat-square&logo=rust\" alt=\"Rust\"\u002F>\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FMCP-native-00d4b8?style=flat-square\" alt=\"MCP\"\u002F>\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flanguages-20%2B-22d3ee?style=flat-square\" alt=\"Languages\"\u002F>\n  \u003Ca href=\"https:\u002F\u002Fdiscord.gg\u002FgzedUSNbna\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDiscord-join-5865F2?style=flat-square&logo=discord&logoColor=white\" alt=\"Discord\" \u002F>\u003C\u002Fa>\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fprivate%20beta-active-f59e0b?style=flat-square\" alt=\"Private Beta\"\u002F>\n\u003C\u002Fp>\n\n---\n\n## What it does\n\n**Three things, every release.**\n\n🧭 &nbsp; **Run a fleet of coding agents on the same repo without merge hell.**\nEach agent reads the same call graph, sees the same blast radius, inherits the same temporal history. No collisions. No stale context.\n\n🔁 &nbsp; **Replay any refactor with full causal awareness.**\nAgents see exactly what depends on what, and what changed when. No more *\"I refactored a function and 14 tests broke that nobody saw.\"*\n\n⚡ &nbsp; **Index a 50k-file repo in under 90 seconds.**\nRust + 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.\n\n🆕 &nbsp; **LeanCTX Native — compressed reads, smart trees, and a value ledger.**\nFour 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\u002Fleanctx-native.md`](docs\u002Fleanctx-native.md). Available in v0.3.57+.\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fe7d6a1e9-c912-4e65-a421-bd0256dffa5a\n\n---\n\n## Numbers\n\n| Operation | Memtrace | Best alternative | Δ |\n|---|---|---|---|\n| Index 1,500 files | **1.5s · $0** | Mem0: 31 min · $10–50 | **~1,200× faster** |\n| Exact symbol query (acc@1, lat) | **96.6% · 0.07 ms** | GitNexus: 97.0% · 8.95 ms | 128× lower latency |\n| Graph callers recall (Django) | **81.6%** | GitNexus: 5.3% | **15.4×** |\n| Incremental re-index p95 | **42.5 ms** | CodeGrapher: 613.7 ms | 14.4× |\n| Hybrid acc@1 (Django, 3K cases) | **73.9%** | GitNexus: 38.6% | 1.91× |\n| PR code-review F1 (50 PRs) | **0.7268** | Cubic v2: 0.6077 | **+19.60%** |\n| RSS \u002F process | **26 MB** | ChromaDB: 1,060 MB | **41× tighter** |\n| Languages | **16+** (Tree-sitter) | varies | — |\n\nReproducible benchmark suite: [`benchmarks\u002F`](benchmarks\u002FREADME.md). 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.**\n\nDetailed breakdowns: [BENCHMARKS-v0.3.22.md](BENCHMARKS-v0.3.22.md) · [BENCHMARKS-v0.3.29.md](BENCHMARKS-v0.3.29.md) · [Code reviewer benchmark](docs\u002Fcode-reviewer.md#offline-benchmark-snapshot)\n\n---\n\n## GitHub Star Growth\n\n\u003Ca href=\"https:\u002F\u002Fwww.star-history.com\u002Fsyncable-dev\u002Fmemtrace-public\">\n  \u003Cpicture>\n    \u003Csource media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fapi.star-history.com\u002Fchart?repos=syncable-dev\u002Fmemtrace-public&type=date&theme=dark&legend=top-left\" \u002F>\n    \u003Csource media=\"(prefers-color-scheme: light)\" srcset=\"https:\u002F\u002Fapi.star-history.com\u002Fchart?repos=syncable-dev\u002Fmemtrace-public&type=date&legend=top-left\" \u002F>\n    \u003Cimg alt=\"Memtrace GitHub star growth over time\" src=\"https:\u002F\u002Fapi.star-history.com\u002Fchart?repos=syncable-dev\u002Fmemtrace-public&type=date&legend=top-left\" \u002F>\n  \u003C\u002Fpicture>\n\u003C\u002Fa>\n\n---\n\n## Get access\n\nMemtrace 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.\n\n→ **Join the waitlist at [memtrace.io](https:\u002F\u002Fmemtrace.io).**\n\nAlready have access? `npm install -g memtrace` and you're indexing in 90 seconds. Full setup below.\n\n> 🔒 **Privacy.** Memtrace runs entirely on your machine. Source code never leaves it. The only network traffic is license validation, aggregate node\u002Fedge counts, and opt-out crash telemetry — no source, no file paths, no symbol names. Full breakdown: [PRIVACY.md](PRIVACY.md), [TELEMETRY.md](TELEMETRY.md). Disable telemetry with `MEMTRACE_TELEMETRY=off`.\n\n---\n\n## Why Memtrace exists\n\nGood code-intelligence tools already exist. GitNexus and CodeGrapherContext build AST-based graphs that work for *\"what's in my repo right now.\"*\n\n**Memtrace is a bi-temporal episodic structural knowledge graph.** It builds on the same AST foundation and adds two dimensions:\n\n- **Temporal memory** — every symbol carries its full version history. Six scoring algorithms (impact, novelty, recency, directional, compound, overview) let agents ask different temporal questions: *\"what changed?\"*, *\"what's unexpected?\"*, *\"what'll break?\"*.\n- **Cross-service API topology** — Memtrace maps HTTP call graphs *between* repositories, detecting which services call which endpoints across your architecture.\n\nOn top of that, the structural layer is comprehensive:\n\n| | |\n|---|---|\n| **Symbols are nodes** | functions, classes, interfaces, types, endpoints |\n| **Relationships are edges** | `CALLS`, `IMPLEMENTS`, `IMPORTS`, `EXPORTS`, `CONTAINS` |\n| **Community detection** | Louvain algorithm identifies architectural modules automatically |\n| **Hybrid retrieval** | Tantivy BM25 + vector embeddings + Reciprocal Rank Fusion + cross-encoder rerank |\n| **Rust-native** | compiled binary, no Python\u002FJS runtime overhead, sub-8 ms p95 query latency |\n\nThe agent doesn't just search your code. **It remembers it.**\n\n---\n\n## Memtrace vs. general memory systems (Mem0, Graphiti)\n\nMem0 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.\n\n**Graphiti** processes data through `add_episode()`, which triggers multiple LLM calls per episode — entity extraction, relationship resolution, deduplication. At ~50 episodes\u002Fminute ([source](https:\u002F\u002Fgithub.com\u002Fgetzep\u002Fgraphiti)), ingesting 1,500 code files takes **1–2 hours**.\n\n**Mem0** processes data through `client.add()`, which queues async LLM extraction and conflict resolution per memory item ([source](https:\u002F\u002Fmem0.ai)). Bulk ingestion with `infer=True` (default) means every file passes through an LLM pipeline. Throughput is bounded by your LLM provider's rate limits.\n\n**Both** accumulate $10–50+ in API costs for large codebases because every relationship is inferred rather than parsed.\n\n**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.\n\n---\n\n## 25+ MCP tools\n\nMemtrace exposes a full structural toolkit via the Model Context Protocol.\n\n\u003Ctable>\n\u003Ctr>\n\u003Ctd>\n\n**Search & Discovery**\n- `find_code` — hybrid BM25 + semantic + RRF\n- `find_symbol` — exact \u002F fuzzy with Levenshtein\n\n**Relationships**\n- `analyze_relationships` — callers, callees, hierarchy, imports\n- `get_symbol_context` — 360° view in one call\n\n**Impact Analysis**\n- `get_impact` — blast radius with risk rating\n- `detect_changes` — diff-to-symbols scope mapping\n\n**Code Quality**\n- `find_dead_code` — zero-caller detection\n- `find_most_complex_functions` — complexity hotspots\n- `calculate_cyclomatic_complexity`\n- `get_repository_stats`\n\n\u003C\u002Ftd>\n\u003Ctd>\n\n**Temporal Analysis**\n- `get_evolution` — 6 scoring modes\n- `get_timeline` — full version history\n- `detect_changes` — diff-based scope\n\n**Graph Algorithms**\n- `find_bridge_symbols` — betweenness centrality\n- `find_central_symbols` — PageRank \u002F degree\n- `list_communities` — Louvain modules\n- `list_processes` \u002F `get_process_flow`\n\n**API Topology**\n- `get_api_topology` — cross-repo HTTP graph\n- `find_api_endpoints`\n- `find_api_calls`\n\n**Indexing & Watch**\n- `index_directory` — parse, resolve, embed\n- `watch_directory` — live incremental\n- `execute_cypher` — direct graph queries\n\n\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftable>\n\n---\n\n## 17 agent skills\n\nMemtrace ships skills\u002Fguidance that teach agents how to use the graph. They fire automatically based on what you ask — no prompt engineering required.\n\n| Skill | You say… |\n|---|---|\n| `memtrace-search` | \"find this function\", \"where is X defined\" |\n| `memtrace-relationships` | \"who calls this\", \"show class hierarchy\" |\n| `memtrace-evolution` | \"what changed this week\", \"how did this evolve\" |\n| `memtrace-impact` | \"what breaks if I change this\", \"blast radius\" |\n| `memtrace-quality` | \"find dead code\", \"complexity hotspots\" |\n| `memtrace-graph` | \"show me the architecture\", \"find bottlenecks\" |\n| `memtrace-api-topology` | \"list API endpoints\", \"service dependencies\" |\n| `memtrace-index` | \"index this project\", \"parse this codebase\" |\n| `memtrace-cochange` | \"what else changes with this\", \"hidden coupling\" |\n\nPlus 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`.\n\n---\n\n## Temporal Engine\n\nSix scoring algorithms for different temporal questions:\n\n| Mode | Best for |\n|---|---|\n| `compound` | General-purpose \"what changed?\" — weighted blend of impact, novelty, recency |\n| `impact` | \"What broke?\" — ranks by blast radius (`in_degree^0.7 × (1 + out_degree)^0.3`) |\n| `novel` | \"What's unexpected?\" — anomaly detection via surprise scoring |\n| `recent` | \"What changed near the incident?\" — exponential time decay |\n| `directional` | \"What was added vs removed?\" — asymmetric scoring |\n| `overview` | Quick module-level summary |\n\nUses **Structural Significance Budgeting** to surface the minimum set of changes covering ≥80% of total significance.\n\n---\n\n## Compatibility\n\n| Editor \u002F Agent | MCP Tools (25+) | Skills \u002F Guidance | Install |\n|---|---|---|---|\n| Claude Code | ✅ | ✅ | `npm install -g memtrace` — fully automatic |\n| Claude Desktop | ✅ | ✅ | Automatic — shared with Claude Code |\n| Cursor (v2.4+) | ✅ | ✅ | `npm install -g memtrace` — fully automatic |\n| Codex CLI | ✅ | ✅ | `npm install -g memtrace` — fully automatic |\n| Windsurf | ✅ | ✅ | `npm install -g memtrace` — fully automatic |\n| VS Code (Copilot) | ✅ | ✅ | `npm install -g memtrace` — fully automatic |\n| Hermes | ✅ | ✅ | `npm install -g memtrace` — fully automatic |\n| OpenCode | ✅ | ✅ | `npm install -g memtrace` — fully automatic |\n| Kiro | ✅ | Steering | `npm install -g memtrace` — fully automatic |\n| Cline \u002F Roo Code | ✅ | — | Add MCP server manually |\n| Any MCP client | ✅ | — | Add MCP server manually |\n\nSkills 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.\n\n---\n\n## Setup\n\n### Claude Code + Claude Desktop\n\n```bash\nnpm install -g memtrace\n```\n\nHandles everything — binary, 17 skills, MCP server, plugin, marketplace. One command, both editors.\n\nFor manual setup:\n\n```bash\nclaude plugin marketplace add https:\u002F\u002Fgithub.com\u002Fsyncable-dev\u002Fmemtrace-public.git\nclaude plugin install memtrace-skills@memtrace --scope user\nclaude mcp add memtrace -- memtrace mcp -e MEMTRACE_ARCADEDB_BOLT_URL=bolt:\u002F\u002Flocalhost:7687\n```\n\n### Cursor\n\n`npm install -g memtrace` handles everything automatically. Cursor v2.4+ reads the same `SKILL.md` format as Claude.\n\nFor project-local install (skills travel with your repo):\n\n```bash\nnpx memtrace-skills install --only cursor --local\n```\n\n### Codex, Windsurf, VS Code, Hermes, OpenCode, and Kiro\n\nThe installer also writes skills\u002Fguidance and MCP configuration for the newer agent surfaces:\n\n| Agent | Global skills \u002F guidance | Global MCP config | Project-local support |\n|---|---|---|---|\n| Codex | `~\u002F.agents\u002Fskills\u002F` | `~\u002F.codex\u002Fconfig.toml` | `.agents\u002Fskills\u002F`, `.codex\u002Fconfig.toml` |\n| Windsurf | `~\u002F.codeium\u002Fwindsurf\u002Fskills\u002F` | `~\u002F.codeium\u002Fwindsurf\u002Fmcp_config.json` | `.windsurf\u002Fskills\u002F`; MCP remains user-level |\n| VS Code \u002F Copilot | `~\u002F.copilot\u002Fskills\u002F` | VS Code user `mcp.json` | `.github\u002Fskills\u002F`, `.vscode\u002Fmcp.json` |\n| Hermes | `~\u002F.hermes\u002Fskills\u002F` | `~\u002F.hermes\u002Fconfig.yaml` | user-level only |\n| OpenCode | `~\u002F.config\u002Fopencode\u002Fskills\u002F` | `~\u002F.config\u002Fopencode\u002Fopencode.json` | `.opencode\u002Fskills\u002F`, `opencode.json` |\n| Kiro | `~\u002F.kiro\u002Fsteering\u002F` | `~\u002F.kiro\u002Fsettings\u002Fmcp.json` | `.kiro\u002Fsteering\u002F`, `.kiro\u002Fsettings\u002Fmcp.json` |\n\nInstall only selected integrations:\n\n```bash\nnpx memtrace-skills install --only codex,windsurf,vscode,hermes,opencode,kiro\n```\n\nInstall project-local config where supported:\n\n```bash\nnpx memtrace-skills install --only codex,vscode,opencode,kiro --local\n```\n\n### Other MCP clients\n\nFor Cline, Roo Code, or any client that only needs MCP tools, add this server manually:\n\n```json\n{\n  \"mcpServers\": {\n    \"memtrace\": {\n      \"command\": \"memtrace\",\n      \"args\": [\"mcp\"],\n      \"env\": {\n        \"MEMTRACE_ARCADEDB_BOLT_URL\": \"bolt:\u002F\u002Flocalhost:7687\"\n      }\n    }\n  }\n}\n```\n\n| Editor | Config file |\n|---|---|\n| Windsurf | `~\u002F.codeium\u002Fwindsurf\u002Fmcp_config.json` |\n| VS Code (Copilot) | `.vscode\u002Fmcp.json` in your project root |\n| Codex | `~\u002F.codex\u002Fconfig.toml` or `.codex\u002Fconfig.toml` |\n| Hermes | `~\u002F.hermes\u002Fconfig.yaml` |\n| OpenCode | `~\u002F.config\u002Fopencode\u002Fopencode.json` or project `opencode.json` |\n| Kiro | `~\u002F.kiro\u002Fsettings\u002Fmcp.json` or `.kiro\u002Fsettings\u002Fmcp.json` |\n| Cline | Cline MCP settings in the extension panel |\n\n### Uninstall\n\n```bash\nmemtrace uninstall      # removes skills, MCP server, plugin, settings\nnpm uninstall -g memtrace\n```\n\nAlready ran `npm uninstall` first? The cleanup script is at `~\u002F.memtrace\u002Funinstall.js`:\n\n```bash\nnode ~\u002F.memtrace\u002Funinstall.js\n```\n\n### Install troubleshooting\n\n`npm install -g memtrace` ships a small main package + a platform-specific binary (one of `@memtrace\u002Fdarwin-arm64`, `@memtrace\u002Flinux-x64`, `@memtrace\u002Fwin32-x64`). If `memtrace start` ever says *\"Could not find binary for your platform\"*:\n\n```bash\n# Re-run install, asking npm to keep optional deps\nnpm install -g memtrace --include=optional\n\n# Or refresh from latest\nmemtrace install         # built-in self-update\nnpm install -g memtrace@latest --force\n\n# Or install the platform binary directly (Apple Silicon shown — swap for your platform)\nnpm install -g @memtrace\u002Fdarwin-arm64\n```\n\nThis typically only happens on machines where npm is configured to skip optional dependencies (corporate npmrc, certain CI caches).\n\n---\n\n## Languages\n\n**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.\n\n**Infrastructure & config:** **YAML** · **HCL \u002F Terraform** · **JSON** · **TOML** · **SQL** (including PostgreSQL `CREATE POLICY` for RLS, with cross-language edges from policies to Drizzle \u002F Prisma \u002F TS schema symbols).\n\n**Framework-aware scanners** on top of the AST layer:\n\n- **Backend HTTP:** Express · NestJS · Encore · Fastify · Vapor · Hummingbird · FastAPI · Flask · Django · Gin · Chi · Echo · Actix · Lapis · Kong · OpenResty · Rails routes\n- **Frontend \u002F client:** RTK Query · TanStack Query · SWR · URLSession · AsyncHTTPClient · axios · fetch · SwiftUI views\n- **CI \u002F infra:** GitHub Actions workflows (jobs, steps, `needs:` edges) · Terraform variables \u002F modules \u002F data sources · Helm charts · K8s manifests\n- **Package & dependency graphs:** `package.json` scripts + deps · `Cargo.toml` deps · `pyproject.toml` (best-effort)\n- **Database:** PostgreSQL RLS policies + triggers + functions, with heuristic edges to ORM schema\n\n---\n\n## Requirements\n\nMemtrace runs locally — first index is CPU\u002FRAM intensive, subsequent queries and incremental indexing are much lighter.\n\n| | Minimum | Recommended |\n|---|---|---|\n| CPU | 4 cores | 8+ cores for large monorepos |\n| Memory | 8 GB RAM | 16–32 GB RAM |\n| Disk | 5 GB free | 10–20 GB free |\n| GPU | Not required | Not required |\n| Node.js | ≥ 18 | Current LTS |\n| Git | Required for temporal analysis | Full repo history for best results |\n\n---\n\n## Telemetry\n\nSince v0.3.17 Memtrace ships with **opt-out** telemetry that helps us catch crashes, regressions, and performance issues before someone files an issue.\n\n- **Collected:** app-start events, indexing\u002Fembedding durations, panic reports, WARN\u002FERROR log lines from Memtrace's own crates.\n- **NOT collected:** source code, file contents, symbol names, embeddings, repository names or paths, branch names, commit data.\n- **Sanitisation:** every payload is run through a sanitiser that strips home-dir paths, token-shaped strings, and email addresses before it touches disk.\n\nDisable with one env var:\n\n```bash\nMEMTRACE_TELEMETRY=off memtrace start                    # per-run\nexport MEMTRACE_TELEMETRY=off                             # permanent (~\u002F.zshrc, ~\u002F.bashrc)\n```\n\nOr in your editor's MCP config: `\"env\": { \"MEMTRACE_TELEMETRY\": \"off\" }`.\n\nFull 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](TELEMETRY.md).\n\n---\n\n## License & ownership\n\n**Proprietary EULA.** Free to use during private beta and after general availability for individual developers. Indexer + database (MemDB) are closed-source.\n\nBenchmark suite under MIT in [`benchmarks\u002F`](benchmarks\u002F) — fully reproducible, no proprietary code required to run them.\n\n---\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fmemtrace.io\">memtrace.io\u003C\u002Fa> &nbsp;·&nbsp;\n  \u003Ca href=\"https:\u002F\u002Fdiscord.gg\u002FgzedUSNbna\">Discord\u003C\u002Fa> &nbsp;·&nbsp;\n  \u003Ca href=\"https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002Fmemtrace\">npm\u003C\u002Fa> &nbsp;·&nbsp;\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fsyncable-dev\u002Fmemtrace-public\u002Fissues\">Issues\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  Built by \u003Ca href=\"https:\u002F\u002Fsyncable.dev\">Syncable\u003C\u002Fa> · Copenhagen 🇩🇰\n\u003C\u002Fp>\n\n\n[![MseeP.ai Security Assessment Badge](https:\u002F\u002Fmseep.net\u002Fpr\u002Fsyncable-dev-memtrace-public-badge.png)](https:\u002F\u002Fmseep.ai\u002Fapp\u002Fsyncable-dev-memtrace-public)\n","Memtrace 是一个为AI编码代理提供结构化内存的工具。它通过构建双时态图，使得AI代理可以在毫秒级查询代码库中的每个函数、类、调用关系及其版本，而无需重新读取文件或破坏不可见的内容。其核心功能包括零LLM调用、时间旅行查询支持以及无盲重构意识，确保了代码修改的安全性和高效性。此外，该工具基于Rust和Tree-sitter开发，支持20多种编程语言，并且能够快速索引大型代码库。Memtrace适用于需要多个AI编码代理协同工作而不产生合并冲突的场景，特别适合于复杂项目管理和持续集成环境下的代码智能分析与维护。","2026-06-11 02:47:07","CREATED_QUERY"]