Analyzes how a code change will ripple through your codebase before you make
it, using tree-sitter and a language server for accurate tracing, then LLM
agents to explain the risk and fix anything that would break.
Architectural Diagram
The diagram below shows how Change Impact Analyzer traces the ripple effects of a code change before any AI gets involved. Tree-sitter and a language server build a dependency graph of your codebase up front, so figuring out what's affected by an edit is a local, deterministic lookup with no API cost. Only the specific slice of code touched by your change ever gets passed to an LLM, and it never sees anything else in your project.
How it works
Parses every Python file in the project with tree-sitter, and
resolves what calls what using a language server (pylsp).
Detects whatever you've actually edited and saved, via git.
Traces the blast radius - every other piece of code that depends on
what you changed, directly or through any number of hops - deterministically,
with no API cost.
Asks an LLM to explain the risk in plain English, and give you a
clear recommendation.
If you decide to go ahead with the change, a fix agent can update
every other affected piece of code so it still works.
Everything happens in a panel right inside VS Code - it asks you which
change you mean (if there's more than one), shows you what's affected, gives
you its verdict, and asks for confirmation before touching anything.
Setup
Nothing to install manually. The first time you run it:
It'll ask permission for a one-time Python environment setup (creates a
private .venv and installs a few packages) - you'll see this run in a
real terminal panel so you can watch it happen.
It'll ask for your OpenAI API key (the tool uses gpt-4o-mini). This is
stored using VS Code's own encrypted SecretStorage - never written to a
file, never logged, and never seen by anyone but you.
Usage
Open the project you want to analyze in VS Code.
Run "Change Impact Analyzer: Analyze Change" from the Command
Palette (Cmd+Shift+P / Ctrl+Shift+P).
The very first run just establishes a baseline - it commits the current
state of the project to git so there's something to compare future edits
against. It'll tell you there are no uncommitted changes yet, and that's
expected.
Edit a file in your project and save it. The tool can only see
changes that are actually written to disk.
A panel opens inside VS Code. It'll ask which change you mean (if there's
more than one uncommitted file), then walk you through what's affected
and give you its recommendation.
Answer its yes/no questions in the panel - it can revert the change, or
fix every other affected piece of code for you.
You can also just type into the panel at any time (e.g. "check the change I
made in utils.py") - you don't have to wait to be asked.
Requirements
An OpenAI API key
Python 3 (used only to build the extension's own private environment -
nothing is installed into your system Python)