Code exploration tool for GitHub Copilot's client-side codebase
Top 50.4% on sourcepulse
This repository provides a tool for exploring the client-side codebase of the GitHub Copilot VSCode extension, specifically version 1.57.7193. It aims to demystify how Copilot processes code and generates suggestions by visualizing module dependencies, displaying code, and offering insights into module functionality, targeting developers interested in understanding AI-assisted coding tools.
How It Works
The tool analyzes the Copilot extension's JavaScript bundle, reverse-engineering module structures and dependencies. It employs automated techniques, including Codex-based naming and categorization of modules, alongside manual annotations for clarity. The output is presented in a web interface with three panels: a dependency graph, prettified code, and module metadata, facilitating navigation and comprehension of the extension's internal workings.
Quick Start & Requirements
npm install
node index.js
(optional, if modifying extension code)manifest-ml
: pip install manifest-ml
codeviz/.openai-api-key
with your OpenAI API key (optional).python3 codeviz/app.py
localhost:5000
.Highlighted Details
prompt-extractor.js
and get-prompt-actual.js
.3197
) and Panel Completion (e.g., 2388
).OpenAIFetcher
(4419
).Maintenance & Community
This is a personal project with no explicit mention of maintainers, community channels, or a roadmap. Contributions via issues or PRs are welcomed.
Licensing & Compatibility
The repository does not specify a license.
Limitations & Caveats
The project is described as "hacky" and "work in progress," with potential for inaccuracies in module naming, categorization, and analysis. Some features, like snippet description, may not function optimally. Annotations are stored in local storage, requiring manual export.
2 years ago
1 day