/memtrace-impact
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.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/memtrace-impact
Context 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
SKILL.md
memtrace-impact.SKILL.mdname: 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."
Overview
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.
Quick Reference
| 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.
Required parameters — `get_impact`
| 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).
Steps
1. Identify the symbol name
If you don't know the exact name:
- `find_symbol(name="...")` for exact identifiers
- `find_code(query="...")` for natural-language queries
Use the returned **`name`** (and optional `file_path` hint) — graph tools resolve by name, not internal IDs.
2. Run impact analysis
{
"repo_id": "memdb",
"target": "validateToken",
"direction": "upstream",
"depth": 5
}3. Interpret the risk rating
| 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 |
4. For diff-based analysis
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.
Decision Points
| 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"` |
Output
`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).
Common Mistakes
| 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** |
Read more
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."
Overview
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.
Quick Reference
| 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.
Required parameters — `get_impact`
| 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).
Steps
1. Identify the symbol name
If you don't know the exact name:
- `find_symbol(name="...")` for exact identifiers
- `find_code(query="...")` for natural-language queries
Use the returned **`name`** (and optional `file_path` hint) — graph tools resolve by name, not internal IDs.
2. Run impact analysis
{
"repo_id": "memdb",
"target": "validateToken",
"direction": "upstream",
"depth": 5
}3. Interpret the risk rating
| 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 |
4. For diff-based analysis
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.
Decision Points
| 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"` |
Output
`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).
Common Mistakes
| 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 · Hermes · VS Code · Windsurf.
Repo: syncable-dev/memtrace-public
Other skills on memtrace-public.
- /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, fetch/client calls, REST surface, service dependencies, cross-repo dependencies, or API topology. Do not use Grep, Glob, rg,
Open skill - /memtrace-change-impact-analysis
Compute what a planned source-code change will break — blast radius, affected processes, cross-repo callers, temporal stability, and Cortex decision-memory constraints — and produce a risk-rated change plan. Use for multi-symbol or multi-part edits, refactors, API changes,
Open skill - /memtrace-cochange
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 coupling, co-change, what changes with this, hidden dependencies, or what else needs to move for source code. Do not use git
Open skill - /memtrace-code-review
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, post Memtrace review comments, create a PR with a review step, or publish local graph-backed review findings to GitHub.
Open skill - /memtrace-codebase-exploration
Map an indexed source-code repo into a structured overview — scale, communities, central symbols, execution flows, API surface, recent activity. Use when the user wants to explore, understand, onboard to, map, or get an overview of an indexed source-code repo, architecture,
Open skill - /memtrace-continuous-memory
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, watch a repo, enable live or incremental indexing, set up always-on memory (meaning Memtrace index watching, not generic
Open skill

