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 endpoints, HTTP routes,…
Compute the blast radius of modifying a symbol through transitive graph impact. Use when the user asks about blast radius, impact, what breaks, risk, upstream callers, downstream dependencies, or consequences of modifying a symbol, before or during source-code changes. Do not
$ npx -y skills add syncable-dev/memtrace-public --skill memtrace-impact --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/memtrace-impactContext preview
The summary Claude sees to decide when to auto-load this skill.
Compute the blast radius of modifying a symbol through transitive graph impact. Use when the user asks about blast radius, impact, what breaks, risk, upstream callers, downstream dependencies, or consequences of modifying a symbol, before or during source-code changes. Do not
name: memtrace-impact description: "Compute the blast radius of modifying a symbol through transitive graph impact. Use when the user asks about blast radius, impact, what breaks, risk, upstream callers, downstream dependencies, or consequences of modifying a symbol, before or during source-code changes. Do not use Grep or manual reference search; Memtrace computes transitive graph impact. For a full risk-rated plan covering a multi-part change, use memtrace-change-impact-analysis."
Compute the blast radius of changing a specific symbol. Traces upstream (what depends on this) and downstream (what this depends on) through the knowledge graph to quantify risk before making modifications.
| Tool | Purpose | |------|---------| | `get_impact` | Blast radius from a symbol **name** (`target`) | | `detect_changes` | Scope symbols affected by a diff/patch |
> **Parameter types:** MCP parameters are strictly typed. Numbers (`depth`, `limit`, etc.) must be JSON numbers — not strings.
| Parameter | Required | Default | Notes | |---|---|---|---| | `repo_id` | yes | — | | | `target` | yes | — | Symbol name (e.g. `"validateToken"`) — **not** `symbol_id` | | `direction` | no | `"both"` | `"upstream"` \| `"downstream"` \| `"both"` | | `depth` | no | `5` | BFS depth (max 15) | | `as_of` | no | now | ISO-8601 for time-travel |
{ "repo_id": "memdb", "target": "validateToken", "direction": "both", "depth": 5 }Full parameter spec for every Memtrace tool: `references/mcp-parameters.md` (bundled at the memtrace-skills plugin root).
If you don't know the exact name:
Use the returned **`name`** (and optional `file_path` hint) — graph tools resolve by name, not internal IDs.
{
"repo_id": "memdb",
"target": "validateToken",
"direction": "upstream",
"depth": 5
}| Risk | Meaning | Action | |------|---------|--------| | **Low** | Few dependents, leaf node | Safe to modify; minimal testing needed | | **Medium** | Moderate dependents | Test direct callers; review interface contracts | | **High** | Many dependents across modules | Coordinate changes; comprehensive test coverage | | **Critical** | Core infrastructure, many transitive dependents | Plan migration strategy; backward-compatible changes |
When you have an actual code diff, use `detect_changes`:
{ "repo_id": "memdb", "diff": "<unified git diff text>" }Or pass `changed_files: ["path/a.rs", "path/b.ts"]` when no diff text is available.
| Situation | Action | |-----------|--------| | Changing a single function | `get_impact` with `direction: "both"` | | Reviewing a PR or diff | `detect_changes` with the diff content | | Renaming/removing a public API | `get_impact` with `direction: "upstream"`, higher `depth` | | Refactoring internals | `get_impact` with `direction: "downstream"` |
`get_impact` returns the blast radius for the target symbol:
| Field | Example / meaning | |---|---| | Risk rating | `High` — one of `Low` / `Medium` / `High` / `Critical` (interpret via step 3) | | Upstream | Transitive dependents (callers/importers) within `depth` hops — what breaks if the target changes | | Downstream | Transitive dependencies — what the target relies on |
`detect_changes` returns the set of symbols affected by the supplied `diff` / `changed_files`, plus the affected processes (execution flows).
| Mistake | Reality | |---------|---------| | Passing `symbol_id` or `name` | Required param is **`target`** | | Omitting `repo_id` | Both `repo_id` and `target` are required | | Defaulting `depth` to 3 | API default is **5** |
Structural memory for AI coding agents. Bi-temporal graph, MCP-native, zero LLM calls. Cursor · Claude Code · Codex · DeepSeek Harness · Hermes · VS Code · Windsurf.
Repo: syncable-dev/memtrace-public
Map API endpoints, outbound HTTP calls, and cross-repo service topology in indexed source code. Use when the user asks about API endpoints, HTTP routes,…
Compute what a planned source-code change will break — blast radius, affected processes, cross-repo callers, temporal stability, and Cortex decision-memory…
Find files that historically co-change with a target symbol or file, ranked by co-occurrence across git episodes. Use when the user asks about historical…
Review GitHub pull requests with Memtrace's local graph-backed review engine. Use when the user asks to review a GitHub pull request, run Memtrace code review,…
Map an indexed source-code repo into a structured overview — scale, communities, central symbols, execution flows, API surface, recent activity. Use when the…
Keep the Memtrace index fresh while editing by watching a repo for live, incremental re-indexing. Use when the user asks to keep Memtrace fresh while editing,…