PyFix — Python Environment Mechanic for VS Code
Fix broken Python environments instantly.
PyFix is a lightweight VS Code extension that detects and repairs common Python environment problems — missing virtual environments, broken interpreter paths, uninstalled dependencies, and more — in one click.
Features
🩺 Environment Health Check
PyFix scans your workspace automatically and shows a status indicator in the bottom status bar:
- ✅ Healthy — Everything looks good
- ⚠️ Warning — Minor issues detected
- ❌ Broken — Critical problems found
⚡ One-Click Repairs
When issues are detected, PyFix can:
- Create a missing
.venv virtual environment
- Install missing dependencies from
requirements.txt or pyproject.toml
- Switch to the correct Python interpreter
- Run all repairs automatically via Auto-Fix
📊 Environment Dashboard
Open the visual dashboard (click the status bar item or run PyFix: Show Dashboard) to see:
- Python version and interpreter path
- Virtual environment status
- Package install status and missing packages
- All active issues with fix buttons
The PyFix Environment panel in the Explorer sidebar shows:
- Current health status
- All detected issues with inline fix actions
- Detailed environment info (venv path, Python version, package counts)
🔍 Supported Project Types
venv / virtualenv (.venv, venv, env directories)
pip + requirements.txt
pyproject.toml (PEP 517/518)
- Poetry projects
- Conda projects (detection only, MVP)
Getting Started
- Install the extension from the VS Code Marketplace
- Open a Python project folder
- PyFix will automatically scan your environment on startup
- Check the status bar at the bottom left for health status
- Click the status bar item or run
PyFix: Show Dashboard for details
Commands
| Command |
Description |
PyFix: Run Health Check |
Manually trigger an environment scan |
PyFix: Show Dashboard |
Open the visual dashboard |
PyFix: Create Virtual Environment |
Create a .venv in the workspace root |
PyFix: Install Dependencies |
Install packages from requirements.txt or pyproject.toml |
PyFix: Select Python Interpreter |
Open the interpreter picker |
PyFix: Repair Environment (One-Click Fix) |
Run all detected repairs automatically |
PyFix: Refresh Diagnostics |
Re-run the health check |
Settings
| Setting |
Default |
Description |
pyfix.autoCheck |
true |
Auto-check environment on workspace open |
pyfix.checkOnSave |
false |
Re-check when a Python file is saved |
pyfix.showStatusBar |
true |
Show health indicator in the status bar |
pyfix.pythonPath |
"" |
Override Python executable path |
Development
# Clone the repo
git clone https://github.com/yourname/pyfix
cd pyfix
# Install dependencies
npm install
# Compile TypeScript
npm run compile
# Open in VS Code and press F5 to launch Extension Development Host
code .
Project Structure
pyfix/
├── src/
│ ├── extension.ts # Entry point, command registration
│ ├── types.ts # Shared TypeScript types
│ ├── environmentDetector.ts # Workspace scanner & issue detection
│ ├── environmentRepairer.ts # Repair actions (create venv, install deps, etc.)
│ ├── statusBarManager.ts # Bottom status bar item
│ ├── diagnosticsManager.ts # VS Code Problems panel integration
│ ├── dashboardPanel.ts # Webview dashboard UI
│ └── environmentTreeProvider.ts # Sidebar tree view
├── resources/
│ └── icon.png # Extension icon (add your own)
├── package.json
├── tsconfig.json
└── README.md
Roadmap
Phase 1 (Current MVP)
- [x] Environment detection (venv, pip, poetry, conda)
- [x] One-click repairs
- [x] Status bar health indicator
- [x] Visual dashboard
- [x] Sidebar tree view
- [x] Problems panel integration
Phase 2 — Power Features
- [ ] Lockfile mismatch warnings
- [ ] Dependency drift detection
- [ ] Environment recreation history
- [ ] Package update suggestions
- [ ] Project setup templates
Phase 3 — Premium
- [ ] Smart dependency conflict diagnostics
- [ ] Environment snapshots & restore
- [ ] Team setup profiles
- [ ] Repair history & rollback
- [ ] Workspace health dashboard with security alerts
License
MIT