impact
Maps a code change's blast radius by fanning out from one or more nodes to affected or dependent code, returning ranked, deduplicated locations with reasons and dead-code markers.
Instructions
Blast radius in one call: fan out from one or more nodes to everything they affect (forward) or depend on / are used by (backward), returned as a deduped, ranked, located closure. Ranking is co-change first where the repo has git history synced, then Personalized PageRank. Each row carries path:line, the edge via reason it's in scope, and a ⊘ when the engine finds it unreachable from any entry point (likely dead). Structural import/containment fan-out is excluded, so there's no noise. A large radius comes back as the top rows plus the areas and files the rest fall in; page with offset, drill in with scope. Depth-1 in both directions is a node's immediate neighbours. Pass several comma-separated nodes to assess a whole diff at once.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"nodes": "<nodes>"
},
"name": "impact"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| full | No | Every row, uncut. Can be thousands of rows on a hub node; prefer scope/offset. | |
| depth | No | How many hops to fan out. Default 4. | |
| nodes | Yes | One or more node names/qnames, comma-separated. A diff touching N symbols is one call. | |
| scope | No | Only rows under this repo-relative path or project label. Use an area's scope from the footer to drill into it. | |
| top_k | No | Rows to return. 0 = the engine's overview: the top 25 rows plus the areas the rest fall in, so you can drill down with `scope`. | |
| budget | No | Max chars in the result. 0 = no cap. | |
| offset | No | Skip the first N ranked rows to read the next page. The footer names the next offset. | |
| direction | No | 'forward' (what it affects), 'backward' (what it depends on / who uses it), or 'both'. (Aliases: downstream=forward, upstream=backward.) | both |
| live_only | No | Drop nodes not reachable from any entry point (likely-dead code). Default False = show all, marking dead ones ⊘. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |