memtrace-api-topology
Map API endpoints, outbound HTTP calls, and cross-repo service topology in indexed source code. Use when the user asks about API…
Find source code with Memtrace hybrid BM25+semantic search: symbols, functions, classes, types, constants, definitions, implementations, logic, or error strings inside code. Use when the user wants to find, search, locate, or look up code or asks where code lives. Do not use
Claude Code
$ npx -y skills add syncable-dev/memtrace-public --skill memtrace-search --agent claude-code
Codex
$ npx skills add syncable-dev/memtrace-public --skill memtrace-search -a codex -y
Cursor
$ npx skills add syncable-dev/memtrace-public --skill memtrace-search -a cursor -y
Gemini CLI
$ npx skills add syncable-dev/memtrace-public --skill memtrace-search -a gemini-cli -y
GitHub Copilot
$ npx skills add syncable-dev/memtrace-public --skill memtrace-search -a github-copilot -y
OpenCode
$ npx skills add syncable-dev/memtrace-public --skill memtrace-search -a opencode -y
Windsurf
$ npx skills add syncable-dev/memtrace-public --skill memtrace-search -a windsurf -y
name: memtrace-search description: "Find source code with Memtrace hybrid BM25+semantic search: symbols, functions, classes, types, constants, definitions, implementations, logic, or error strings inside code. Use when the user wants to find, search, locate, or look up code or asks where code lives. Do not use Grep, Glob, rg, find, or manual file search for code discovery. If Memtrace returns 0 results, broaden the Memtrace query and diagnose/reindex; do not switch to grep."
Find code using hybrid BM25 + semantic search (RRF). Primary discovery tool — use before relationship or impact analysis.
| Tool | Best For | |------|----------| | `find_code` | Natural-language queries, broad searches | | `find_symbol` | Exact identifier names | | `get_source_window` | Bounded source read when harness lacks `Read(offset, limit)` |
> **Parameter types:** Numbers must be JSON numbers — not strings.
| Param | Required | Default | Notes | |---|---|---|---| | `query` | yes | — | Natural language or symbol text | | `repo_id` | no | all repos | | | `limit` | no | 20 | Max 100 | | `file_path` | no | — | Path/directory substring filter | | `as_of` | no | now | ISO-8601 time-travel | | `include_diagnostics` | no | false | Set true for `id`, `score` in results |
**No `kind` param on `find_code`** — use `find_symbol(kind=...)` to filter by symbol type.
{ "query": "authentication middleware", "repo_id": "memdb", "limit": 20 }| Param | Required | Default | Notes | |---|---|---|---| | `name` | yes | — | Symbol name to search | | `repo_id` | no | all repos | | | `fuzzy` | no | false | API field exists; currently exact-match in backend | | `edit_distance` | no | 2 | Only when fuzzy enabled | | `kind` | no | — | `Function`, `Class`, `Method`, etc. | | `file_path` | no | — | Path substring filter | | `limit` | no | 10 | Max 50 |
{ "name": "validateToken", "repo_id": "memdb", "file_path": "auth" }Full parameter spec for every Memtrace tool: `references/mcp-parameters.md` (bundled at the memtrace-skills plugin root).
Result shape: see [Output](#output) below.
Save **`name`**, **`scope_path`**, and **`file_path`** — **not** internal IDs:
{ "repo_id": "memdb", "symbol": "validateToken" }
{ "repo_id": "memdb", "target": "validateToken", "direction": "both" }
{ "repo_id": "memdb", "target": "validateToken", "query_type": "find_callers" }Read source only when editing — bounded `Read(offset, limit)` at returned lines.
1. Try verbatim `find_code` query. 2. If weak, fan out: camelCase, snake_case, domain identifiers. 3. Dedupe top hits by `file_path:start_line`.
One `find_code` / `find_symbol` result entry:
{
"name": "validateToken",
"kind": "Function",
"file_path": "src/auth/token.rs",
"start_line": 42,
"scope_path": "auth::token"
}`score` (and `id`) appear only with `include_diagnostics: true`.
| Mistake | Reality | |---------|---------| | `find_code(kind=...)` | **`kind` only on `find_symbol`** | | Passing symbol `id` to graph tools | Use **`name`** as `symbol` / `target` | | Assuming `fuzzy: true` always works | Backend is exact-match today — try spelling variants | | Skipping `list_indexed_repositories` | Verify repo is indexed first |
Structural memory for AI coding agents. Bi-temporal graph, MCP-native, zero LLM calls. Cursor · Claude Code · Codex · DeepSeek Harness · Hermes · VS Code · Windsurf.
Map API endpoints, outbound HTTP calls, and cross-repo service topology in indexed source code. Use when the user asks about API…
Compute what a planned source-code change will break — blast radius, affected processes, cross-repo callers, temporal stability,…
Find files that historically co-change with a target symbol or file, ranked by co-occurrence across git episodes. Use when the…
Review GitHub pull requests with Memtrace's local graph-backed review engine. Use when the user asks to review a GitHub pull…
Map an indexed source-code repo into a structured overview — scale, communities, central symbols, execution flows, API surface,…
Keep the Memtrace index fresh while editing by watching a repo for live, incremental re-indexing. Use when the user asks to keep…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.