impact-analyst-ast

Analyze Python codebases with AST to locate symbol definitions and usages.

Updated Mar 4, 2026
One-click install
npx skills add https://github.com/djpTester44/iocane --skill impact-analyst-ast
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: impact-analyst-ast
Source: https://github.com/djpTester44/iocane/tree/main/%7B%7Bcookiecutter.framework_folder%7D%7D/skills/impact-analyst-ast
Command: npx skills add https://github.com/djpTester44/iocane --skill impact-analyst-ast

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve?

This Skill helps developers identify potential breaking changes in Python codebases by pinpointing all definitions and usages of a specific symbol, reducing the risk of introducing bugs during refactoring or renaming operations.

Core Features & Use Cases

  • Symbol Definition Tracking: Locates where a class, function, or variable is defined.
  • Symbol Usage Tracking: Finds all instances where a symbol is used throughout the codebase.
  • Impact Analysis: Predicts the ripple effect of changes to a symbol, aiding in safe refactoring.
  • Use Case: Before renaming a widely used function, use this Skill to ensure all its occurrences are identified and updated correctly.

Quick Start

Run the find_usages.py script to find all usages of the 'MyClass' symbol within the current directory.

Frequently Asked Questions about impact-analyst-ast

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I find all usages of a function before refactoring Python code?

Finding all usages of a function before refactoring Python code requires static analysis that parses ASTs to locate symbol definitions and references. This identifies usages to predict impact and prevent breaking changes.

What is AST-based impact analysis for Python?

AST-based impact analysis is a static analysis technique that uses Abstract Syntax Trees to map definitions and usages of classes, functions, or variables. It predicts the ripple effect of refactoring or symbol renaming.

How do I perform a safe symbol rename across a Python project?

Performing a safe symbol rename across a Python project uses AST matching to locate every definition and usage of the target symbol. This static impact analysis ensures all occurrences are identified to prevent introducing bugs.

Does this impact analysis tool require external dependencies to parse Python files?

This impact analysis tool requires no external dependencies to parse Python files and locate symbol usages. It operates purely on Python files using built-in AST parsing to match symbols by name for refactoring preparation.

What are the limitations of using AST matching for codebase impact analysis?

Limitations of using AST matching for codebase impact analysis include relying on static analysis that matches symbols strictly by name. It requires accessible Python files and cannot track dynamic usages or runtime symbol modifications.