Seamless Pixi Python Environment & Package Management for Visual Studio Code
Pixi Python integrates Pixi environments with VS Code's official Python Environments extension, allowing your Pixi environments to appear natively alongside conda, venv, and other environments.
[!NOTE]
Pixi Python is an actively maintained fork based on renan-r-santos/pixi-code (v0.2.0), featuring per-file environment auto-resolution, native package inspection, dual-marketplace continuous delivery, and robust multi-platform compatibility.
✨ Features
Automatic Environment Discovery: Instantly detects Pixi projects with pixi.toml or pyproject.toml.
Dynamic Per-File Environment Resolution: Map file/directory patterns (e.g. tests/** → dev) to automatically switch Python interpreters for different files.
Native Pixi Tasks Integration: Auto-discovers Pixi tasks as native VS Code Tasks (Terminal: Run Task...) and provides a quick Command Palette runner (Pixi: Run Task).
Native Package Inspection: Full package tree view with explicit (direct) vs transitive (indirect) dependency distinction and package channels (conda / pypi).
Pixi Features Support: Discovers and exposes Pixi features (dev, test, lint, etc.) as distinct selectable environments.
Interpreter & Terminal Integration: Automatic interpreter selection for editing, running, debugging, and terminal activation.
Multi-Platform Safe: Gracefully handles platform-specific environments without interrupting workspace discovery.
⚙️ Extension Settings
Setting
Type
Default
Scope
Description
pixi-python.environmentRules
string[]
[]
Resource
Map glob patterns to Pixi environment names (e.g. tests/**=dev). Also supports object format in JSON.
pixi-python.pixiExecutable
string
""
Machine
Path to the Pixi binary. Supports ${workspaceFolder} and relative paths. Uses PATH discovery if empty.
pixi-python.searchIgnorePatterns
string[]
["**/node_modules/**", ...]
Resource
Glob patterns to exclude when scanning the workspace for Pixi projects.
Example Configuration
Add this to your project's .vscode/settings.json (or add items directly in the VS Code Settings UI):